
    #banana-solitaire{--io-paper:#ecebdc;--io-ink:#253127;--io-muted:#a9b7a3;--io-line:#475547;--io-accent:#c5e79e;position:relative;color:#e4e9df;font:14px/1.45 system-ui,sans-serif;color-scheme:dark}
    #banana-solitaire *{box-sizing:border-box}
    #banana-solitaire [hidden]{display:none!important}
    #banana-solitaire .io-game{background:#111a16;border:1px solid #52624f;border-radius:8px;overflow:hidden}
    #banana-solitaire .io-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px 16px;background:linear-gradient(120deg,#2b3829,#17241d)}
    #banana-solitaire .io-brand{font:11px/1.4 ui-monospace,monospace;letter-spacing:1.3px;color:#b9c6ac;margin-bottom:6px}
    #banana-solitaire h1{margin:0;font-size:26px;line-height:1.15;font-weight:500;letter-spacing:-.7px;color:#eef0e0}
    #banana-solitaire .io-edition{font:11px/1.4 ui-monospace,monospace;color:#b5c2a8;text-align:right}
    #banana-solitaire .io-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 22px;border-top:1px solid #46523e;border-bottom:1px solid #4e5b45;background:#1c291e}
    #banana-solitaire .io-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
    #banana-solitaire .io-hints{display:flex;align-items:center;gap:7px;min-height:44px;padding:5px 6px;color:#e0e7d1;font-size:12px;white-space:nowrap}
    #banana-solitaire .io-hints input{width:17px;height:17px;margin:0;accent-color:#adc58e}
    #banana-solitaire .io-family-guide{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;padding:12px 20px;background:#16221b;border-bottom:1px solid #354739}
    #banana-solitaire .io-family-pair{min-width:0;padding-left:10px;border-left:2px solid #699f8b}
    #banana-solitaire .io-family-pair:last-of-type{border-left-color:#c59a74}
    #banana-solitaire .io-family-pair strong{display:block;font:500 12px/1.4 system-ui,sans-serif;color:#dce8db}
    #banana-solitaire .io-family-pair span{display:block;font:11px/1.5 system-ui,sans-serif;color:#b7c8b4}
    #banana-solitaire .io-family-guide>p{grid-column:1/-1;margin:0;font:11px/1.4 system-ui,sans-serif;color:#b7c8b4}
    #banana-solitaire .io-control{border:1px solid #68765b;border-radius:4px;background:#263529;color:#e4e9df;min-height:40px;padding:8px 13px;font:500 12px/1.4 system-ui,sans-serif;touch-action:manipulation}
    #banana-solitaire .io-control:disabled{opacity:.4}
    #banana-solitaire .io-control:active{background:#3b4b33}
    #banana-solitaire .io-win{position:relative;isolation:isolate;overflow:hidden;margin:0 0 22px;padding:27px 18px 24px;border:1px solid #b6a96f;border-radius:8px;background:radial-gradient(ellipse at 50% 0,#506348 0,transparent 70%),#20372b;text-align:center;box-shadow:inset 0 0 0 5px #263d2e,inset 0 0 0 6px #d8c99433,0 9px 22px #06100855}
    #banana-solitaire .io-win-content{position:relative;z-index:1}
    #banana-solitaire .io-win-kicker{margin:0 0 14px;font:11px/1.4 ui-monospace,monospace;letter-spacing:1.4px;text-transform:uppercase;color:#dacd97}
    #banana-solitaire .io-win-medal{display:flex;align-items:center;justify-content:center;width:88px;height:88px;margin:0 auto 14px;border:1px solid #ccbf82;border-radius:50%;box-shadow:0 0 0 4px #253f2f,0 0 0 5px #cbbf7966,inset 0 0 0 5px #d8cda20d;background:#2c4935;color:#f1e4b7;font:500 42px/1 Georgia,serif}
    #banana-solitaire .io-win h3{margin:0;color:#fff3cf;font:500 34px/1.15 Georgia,serif;letter-spacing:-.5px}
    #banana-solitaire .io-win-copy{max-width:340px;margin:10px auto 19px;color:#d6e0c8;font:13px/1.5 system-ui,sans-serif}
    #banana-solitaire .io-win-actions{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
    #banana-solitaire .io-win-actions .io-control{min-height:44px}
    #banana-solitaire .io-win-primary{background:#e1d39e;color:#24372a;border-color:#ebdfb8}
    #banana-solitaire .io-win-primary:active{background:#c8bc88}
    #banana-solitaire .io-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}
    #banana-solitaire .io-confetti-piece{position:absolute;top:-18px;width:6px;height:12px;border-radius:1px;opacity:0;animation:io-celebrate 2.8s ease-in forwards;animation-delay:var(--delay,0ms)}
    #banana-solitaire .io-preview-row{grid-column:1/-1;display:flex;justify-content:flex-end;padding-top:4px}
    #banana-solitaire .io-preview-button{background:transparent;border:1px solid #53664d;color:#c4d2b4}
    #banana-solitaire .io-celebrating .io-foundation{animation:io-win-pulse 1.35s ease-out 1}
    @keyframes io-celebrate{0%{opacity:0;transform:translate3d(0,-15px,0) rotate(0)}8%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift,20px),390px,0) rotate(var(--spin,540deg))}}
    @keyframes io-win-pulse{0%{box-shadow:0 0 0 0 #ecde9755}38%{box-shadow:0 0 0 5px #ecde97aa,0 0 26px #cfd98566}100%{box-shadow:0 0 0 1px #ecde9700}}
    @media(prefers-reduced-motion:reduce){#banana-solitaire .io-confetti-piece{display:none;animation:none}#banana-solitaire .io-celebrating .io-foundation{animation:none}}
    #banana-solitaire .io-controls-note{color:#c1ceaf;font:12px/1.4 ui-monospace,monospace;font-variant-numeric:tabular-nums}
    #banana-solitaire .io-desk{--io-gap:10px;--io-card-h:148px;--io-up-step:68px;--io-down-step:12px;padding:20px 18px 24px;background:radial-gradient(ellipse at 50% 0,#314c36aa,transparent 75%),repeating-linear-gradient(45deg,#ffffff02 0 1px,transparent 1px 4px),#14281d;box-shadow:inset 0 5px 16px #030a0644}
    #banana-solitaire .io-upper{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--io-gap);align-items:start}
    #banana-solitaire .io-zone-label{display:block;color:#a9bca0;font:11px/1.4 ui-monospace,monospace;letter-spacing:.5px;margin-bottom:7px;white-space:nowrap}
    #banana-solitaire .io-stock-zone{grid-column:1}
    #banana-solitaire .io-waste-zone{grid-column:2 / span 3;min-width:0}
    #banana-solitaire .io-stock{display:flex;width:100%;height:var(--io-card-h);align-items:center;justify-content:center;flex-direction:column;gap:7px;border:1px solid #9ba57b;border-radius:5px;background:repeating-linear-gradient(45deg,#80936612 0 1px,transparent 1px 6px),#33482e;box-shadow:inset 0 0 0 4px #20391f,inset 0 0 0 5px #728262,0 3px 4px #050d0644;color:#d9e5bf;font:11px/1.4 ui-monospace,monospace;touch-action:manipulation}
    #banana-solitaire .io-stock[disabled]{opacity:.45}
    #banana-solitaire .io-stock-count{font-size:25px;font-weight:500;line-height:1.2}
    #banana-solitaire .io-waste{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--io-gap);min-height:var(--io-card-h)}
    #banana-solitaire .io-drawn-slot{display:flex;flex-direction:column;gap:6px;min-width:0}
    #banana-solitaire .io-drawn-slot>.io-card{position:relative;width:100%;min-width:0;flex-shrink:0}
    #banana-solitaire .io-drawn-slot>.io-card[aria-hidden="true"]{opacity:.65}
    #banana-solitaire .io-drawn-state{font:11px/1.3 ui-monospace,monospace;text-align:center;color:#b4c4a7}
    #banana-solitaire .io-drawn-slot[data-active="true"] .io-drawn-state{color:#e2efc2}
    #banana-solitaire .io-drawn-slot[data-active="true"]>.io-card{box-shadow:0 0 0 2px #b0c797,0 3px 7px #0007}
    #banana-solitaire .io-drawn-slot[data-active="true"]>.io-card[data-selected="true"]{box-shadow:0 0 0 3px #e3f6b6,0 3px 7px #0007}
    #banana-solitaire .io-foundation-zone{min-width:0}
    #banana-solitaire .io-foundation{position:relative;height:var(--io-card-h)}
    #banana-solitaire .io-foundation-origin{display:block;min-height:15px;margin-top:6px;text-align:center;font:11px/1.3 system-ui,sans-serif;color:#c3d2b2;white-space:nowrap}
    #banana-solitaire .io-slot{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:100%;height:var(--io-card-h);border:1px dashed #819a6c66;border-radius:5px;background:#0b1e1255;color:#a8bd9366;font:400 26px/1.2 Georgia,serif;touch-action:manipulation}
    #banana-solitaire .io-slot small{font:11px/1.4 ui-monospace,monospace}
    #banana-solitaire .io-foundation>.io-card{position:absolute;inset:0}
    #banana-solitaire .io-divider{height:1px;background:linear-gradient(90deg,transparent,#a0b58755,transparent);margin:23px 0 15px}
    #banana-solitaire .io-columns{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:24px var(--io-gap);align-items:start;min-height:260px}
    #banana-solitaire .io-column-wrap{min-width:0}
    #banana-solitaire .io-column-label{display:block;margin-bottom:8px;color:#c5d5b7;font:11px/1.4 ui-monospace,monospace}
    #banana-solitaire .io-column{position:relative;min-width:0;min-height:var(--io-card-h);border-radius:5px;isolation:isolate}
    #banana-solitaire [data-drop].io-drop-hover{box-shadow:0 0 0 4px #d6e2cb,0 0 0 8px #d6e2cb33}
    #banana-solitaire .io-column>.io-card{position:absolute;left:0;width:100%}
    #banana-solitaire .io-column>.io-back{position:absolute;left:0;width:100%;height:var(--io-card-h);border:1px solid #a99e75;border-radius:6px;background:repeating-linear-gradient(45deg,#d5cdab15 0 1px,transparent 1px 7px),repeating-linear-gradient(-45deg,#d5cdab15 0 1px,transparent 1px 7px),#254237;box-shadow:inset 0 0 0 3px #19362b,inset 0 0 0 4px #a5aa7b,inset 0 0 0 7px #19362b}
    #banana-solitaire .io-card{--io-card-accent:#334b3e;--io-card-wash:#e7e8d5;--io-card-paper:#f4efdd;display:block;position:relative;height:var(--io-card-h);padding:0;margin:0;border:1px solid #aca17c;border-radius:7px;background:linear-gradient(130deg,#fffbed,var(--io-card-paper) 75%);color:#263e30;box-shadow:0 3px 7px #0007,inset 0 0 0 3px #fcf8e8,inset 0 0 0 4px #b8ad892e;text-align:left;touch-action:none;user-select:none;-webkit-user-select:none;overflow:hidden}
    #banana-solitaire .io-card[data-family="n"]{--io-card-accent:#245c48;--io-card-wash:#dbe9db;--io-card-paper:#eaf1e2}
    #banana-solitaire .io-card[data-family="h"]{--io-card-accent:#7a452d;--io-card-wash:#f0dfc5;--io-card-paper:#f8eddb}
    #banana-solitaire .io-card[data-selected="true"]{box-shadow:0 0 0 3px #c5e79e,0 5px 14px #06100799}
    #banana-solitaire .io-card.io-run-selected{box-shadow:0 0 0 2px #c5e79e}
    #banana-solitaire .io-card-top{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;position:relative;z-index:1}
    #banana-solitaire .io-rank{display:flex;align-items:center;justify-content:space-between;height:26px;padding:0 7px;background:linear-gradient(110deg,var(--io-card-accent),#22392e);color:#faf2d7;font:500 24px/1 Georgia,serif;border-bottom:1px solid #b2a16e}
    #banana-solitaire .io-rank small{font:11px/1.2 ui-monospace,monospace;letter-spacing:.2px;color:#eee4c7}
    #banana-solitaire .io-mini{display:block;padding:2px 1px;text-align:center;font:500 14px/1.2 ui-monospace,monospace;white-space:nowrap;color:#1d3225;background:var(--io-card-wash);border-bottom:1px solid #b7c0a866;letter-spacing:-.3px}
    #banana-solitaire .io-class-tag{display:block;height:18px;text-align:center;color:var(--io-card-accent);background:var(--io-card-paper);font:500 11px/18px system-ui,sans-serif;white-space:nowrap;letter-spacing:.1px}
    #banana-solitaire .io-card-center{position:absolute;inset:71px 3px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
    #banana-solitaire .io-card-center::before{content:"";position:absolute;left:7%;right:7%;top:0;bottom:13px;border:1px solid #9f986947;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 7px,#867e5312 8px 9px);box-shadow:0 0 0 3px #9f98690c;pointer-events:none}
    #banana-solitaire .io-card[data-class="p"] .io-card-center::before{border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 6px,#245c4819 7px 8px)}
    #banana-solitaire .io-card[data-class="d"] .io-card-center::before{border-radius:2px;background:repeating-linear-gradient(135deg,transparent 0 9px,#245c4817 10px 11px)}
    #banana-solitaire .io-card[data-class="f"] .io-card-center::before{border-radius:50%;background:repeating-conic-gradient(from 22deg,#7a452d12 0 1deg,transparent 1deg 30deg)}
    #banana-solitaire .io-card[data-class="a"] .io-card-center::before{border-radius:2px;background:repeating-linear-gradient(0deg,transparent 0 9px,#7a452d14 10px 11px),repeating-linear-gradient(90deg,transparent 0 9px,#7a452d14 10px 11px)}
    #banana-solitaire .io-chemical{position:relative;font:500 36px/1.05 Georgia,serif;letter-spacing:-1px;color:var(--io-card-accent);text-shadow:0 1px 0 #fff9}
    #banana-solitaire .io-mass{vertical-align:top;font:500 12px/1.3 ui-monospace,monospace;letter-spacing:0;margin-right:2px}
    #banana-solitaire .io-name{position:relative;font:11px/1.2 system-ui,sans-serif;color:#43573f;margin-top:7px;max-width:100%;overflow-wrap:anywhere;background:var(--io-card-paper);padding:0 2px}
    #banana-solitaire .io-card.io-banana-card{border-color:#b59a4a;background:linear-gradient(130deg,#fff9da,var(--io-card-paper) 80%)}
    #banana-solitaire .io-banana-card .io-rank{background:linear-gradient(110deg,#64542b,#35432a);border-bottom-color:#cbb66a}
    #banana-solitaire .io-rank small.io-banana-corner{display:block;font:17px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif}
    #banana-solitaire .io-banana-art{position:relative;display:block;font:42px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif;filter:drop-shadow(0 2px 1px #594a2b26);pointer-events:none}
    #banana-solitaire .io-banana-card .io-name{margin-top:4px}
    #banana-solitaire .io-notice{display:flex;align-items:center;gap:9px;min-height:58px;padding:12px 20px;border-bottom:1px solid #637651;background:#17251a;color:#e1eacd;font-size:13px}
    #banana-solitaire .io-status-mark{display:block;width:6px;height:6px;background:#c5e79e;border-radius:50%;flex:none}
    #banana-solitaire .io-notice[data-kind="error"]{color:#ebc0a4}
    #banana-solitaire .io-notice[data-kind="error"] .io-status-mark{background:#dda07c}
    #banana-solitaire .io-notice[data-kind="success"]{color:#d8efb2}
    #banana-solitaire .io-reference-bar{padding:0 20px 12px;background:#111d15;display:grid;grid-template-columns:1fr 1fr;gap:16px}
    #banana-solitaire details{min-width:0;color:#b5c4a7;font-size:12px}
    #banana-solitaire summary{min-height:44px;padding:13px 0}
    #banana-solitaire .io-reference-content{color:#d7dfce;padding-bottom:4px}
    #banana-solitaire .io-reference-content p{margin:0 0 8px}
    #banana-solitaire .io-reference-content strong{font-weight:500;color:#edf0dd}
    #banana-solitaire .io-reference-content a{color:#c5e79e;text-underline-offset:3px}
    #banana-solitaire .io-rules{margin:0 0 8px;padding-left:17px}
    #banana-solitaire .io-rules li{margin-bottom:6px}
    #banana-solitaire .io-scope{font-size:11px;color:#a0b494;margin:6px 0}
    #banana-solitaire .io-deck-guide{grid-column:1/-1;border-top:1px solid #354c37}
    #banana-solitaire .io-deck-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
    #banana-solitaire .io-deck-list h3{font-size:14px;font-weight:500;margin:0 0 4px;color:#e1eacd}
    #banana-solitaire .io-deck-list{padding-left:12px;border-left:2px solid #699f8b}
    #banana-solitaire .io-deck-list[data-family="h"]{border-left-color:#c59a74}
    #banana-solitaire .io-deck-list>p{font-size:11px;margin:0 0 9px;color:#afc29d}
    #banana-solitaire .io-deck-list ol{list-style:none;padding:0;margin:0}
    #banana-solitaire .io-deck-list li{display:flex;gap:10px;align-items:baseline;padding:5px 0;border-bottom:1px solid #344934;color:#e0e8d5;font-size:12px}
    #banana-solitaire .io-deck-list li b{width:20px;font:500 16px/1.2 Georgia,serif;color:#c5e79e;flex:none}
    #banana-solitaire .io-ghost{position:absolute!important;z-index:100;pointer-events:none;transform:rotate(3deg);opacity:.94;box-shadow:0 12px 25px #0007}
    #banana-solitaire .io-reject{animation:io-reject .22s ease-out}
    @keyframes io-reject{25%,75%{transform:translateX(-3px)}50%{transform:translateX(3px)}}
    @media(prefers-reduced-motion:reduce){#banana-solitaire .io-reject{animation:none}#banana-solitaire .io-ghost{transform:none}}
    @media(max-width:660px){
      #banana-solitaire .io-header{padding:16px 12px;gap:8px}
      #banana-solitaire h1{font-size:23px}
      #banana-solitaire .io-toolbar{padding:9px 12px;gap:8px}
      #banana-solitaire .io-family-guide{padding:10px 12px;gap:8px 12px}
      #banana-solitaire .io-desk{--io-gap:8px;--io-card-h:144px;--io-up-step:68px;--io-down-step:10px;padding:15px 10px 20px}
      #banana-solitaire .io-upper{--io-card-h:68px;grid-template-columns:repeat(4,minmax(0,1fr));row-gap:18px}
      #banana-solitaire .io-upper .io-card-center{display:none}
      #banana-solitaire .io-stock-zone{grid-column:1}
      #banana-solitaire .io-waste-zone{grid-column:2/span 3}
      #banana-solitaire .io-chemical{font-size:30px}
      #banana-solitaire .io-rank{padding-left:5px;padding-right:5px}
      #banana-solitaire .io-rank small{font-size:11px}
      #banana-solitaire .io-mini{font-size:14px}
      #banana-solitaire .io-stock-count{font-size:20px}
      #banana-solitaire .io-zone-label{font-size:11px;letter-spacing:0}
      #banana-solitaire .io-columns{grid-template-columns:repeat(4,minmax(0,1fr));min-height:0}
      #banana-solitaire .io-notice{padding:11px 12px;font-size:12px;min-height:67px}
      #banana-solitaire .io-reference-bar{padding:0 12px 10px;gap:10px}
      #banana-solitaire .io-control{min-height:44px}
    }
    @media(max-width:390px){
      #banana-solitaire .io-desk{--io-gap:6px;padding-left:7px;padding-right:7px}
      #banana-solitaire .io-mini{font-size:13px;letter-spacing:-.3px}
      #banana-solitaire .io-rank small{display:none}
      #banana-solitaire .io-edition{max-width:65px;font-size:11px}
      #banana-solitaire .io-reference-bar{grid-template-columns:1fr 1fr;gap:0 10px}
      #banana-solitaire .io-deck-lists{grid-template-columns:1fr}
    }
  /* Standalone page shell; game styles remain scoped to #banana-solitaire. */
:root { color-scheme:dark;background:#060908;color:#e4e9df;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body { margin:0; }
.bs-topbar,.bs-page-footer { width:min(100% - 48px,960px);margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;font:12px/1.6 ui-monospace,monospace; }
.bs-topbar { min-height:76px;border-bottom:1px solid #334139; }
.bs-topbar a { color:#c5e79e;text-decoration:none;padding:12px 0; }
.bs-topbar a:hover { text-decoration:underline;text-underline-offset:5px; }
.bs-brand span { color:#9ba69e; }
.bs-shell { width:min(100% - 48px,960px);margin:32px auto; }
.bs-page-footer { padding:0 0 28px;color:#9ba69e;font-size:11px;flex-wrap:wrap; }
.bs-page-footer p { margin:0; }
.bs-page-footer p:last-child { flex-basis:100%; }
.bs-skip { position:fixed;top:8px;left:8px;z-index:110;transform:translateY(-200%);padding:12px 16px;background:#c5e79e;color:#152012; }
.bs-skip:focus { transform:none; }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible { outline:2px solid #c5e79e;outline-offset:3px; }
#banana-solitaire .cursor-interaction { cursor:pointer; }
#banana-solitaire button:disabled { cursor:default; }
/* Anchor headers explicitly; native buttons center normal-flow content. */
#banana-solitaire .io-card-top { position:absolute;top:0;left:0;right:0; }
.bs-noscript { margin:0 0 16px;padding:16px;border:1px solid #c5e79e;background:#17241d;color:#e4e9df;line-height:1.5; }
@media(max-width:660px) {
  .bs-topbar,.bs-page-footer { width:calc(100% - 24px);font-size:11px; }
  .bs-topbar { min-height:66px;gap:10px; }
  .bs-brand span { display:block; }
  .bs-topbar>a:last-child { white-space:nowrap; }
  .bs-shell { width:100%;margin:18px auto 24px; }
  #banana-solitaire .io-game { border-radius:0; }
  .bs-page-footer { gap:5px; }
}
