:root{--table:#0b7a45;--table-dark:#086337;--slot:#0000002e;--card:#fffaf0;--card-edge:#e6dcc6;--ink:#2e2a24;--muted:#7a7062;--gold:#c58a12;--back:#2e86de;--back-light:#5aa7f0;--accent:#ffd45c;--panel:#fffaf0;--panel-ink:#2e2a24;--target:#ffe27a;--gap:8px;--card-w:calc((min(100vw, 480px) - 5 * var(--gap)) / 4);--card-h:calc(var(--card-w) * 1.32);--peek:26px;--strip:9px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--table:#0c4a2c;--table-dark:#083820;--card:#ece6d6;--card-edge:#cfc6b0;--panel:#1f2a24;--panel-ink:#eef2ee;--back:#2467ad;--back-light:#3a85d0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{background:var(--table);color:#fff;-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button{font:inherit;color:inherit;cursor:pointer;border:0}h1,h2{margin:0}.home,.page,.game{width:min(100vw,480px);padding:16px var(--gap) 32px;padding-top:max(16px, env(safe-area-inset-top));margin:0 auto}.home h1{text-align:center;font-size:2rem}.lead{text-align:center;opacity:.85;margin:6px 0 20px}.grid{gap:var(--gap);grid-template-columns:repeat(4,1fr);display:grid}.level{aspect-ratio:1;background:var(--card);color:var(--ink);box-shadow:0 2px 0 var(--card-edge);border-radius:14px;place-items:center;gap:2px;display:grid}.level strong{font-size:1.3rem}.level span{color:var(--muted);font-size:.7rem}.level.done{background:#c8e9c4}.level.next{outline:3px solid var(--accent)}.links{justify-content:center;gap:16px;margin-top:24px;display:flex}.ghost{background:0 0;border-radius:10px;padding:8px 12px}.page p,.page li{line-height:1.5}.page a{color:var(--accent)}.reports{gap:8px;padding:0;list-style:none;display:grid}.reports li{background:#0003;border-radius:10px;justify-content:space-between;gap:8px;padding:10px 12px;display:flex}.bar{align-items:center;gap:8px;margin-bottom:12px;display:flex}.bar h1{text-align:center;flex:1;font-size:1.2rem}.page .bar h1{text-align:left}.moves{background:var(--accent);color:#3a2d00;border-radius:10px;justify-items:center;min-width:56px;padding:4px 10px;font-size:.7rem;display:grid}.moves strong{font-size:1.2rem}.card{width:var(--card-w);height:var(--card-h);background:var(--card);border:1px solid var(--card-edge);box-shadow:0 1px 0 var(--card-edge);color:var(--ink);text-align:center;-webkit-user-select:none;user-select:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;display:flex;position:relative}.card .main{overflow-wrap:anywhere;font-size:clamp(.72rem,3.4vw,.95rem);font-weight:700;line-height:1.1}.card .sub{color:var(--muted);font-size:clamp(.58rem,2.6vw,.72rem);line-height:1.15}.card .chip{color:var(--muted);background:#e9e0cd;border-radius:8px;padding:1px 5px;font-size:.55rem}.card.anchor .main{color:var(--gold)}.card .crown{color:var(--gold);font-size:.85rem;line-height:1;position:absolute;top:2px;right:5px}.card .progress{color:var(--muted);font-size:.7rem}.card.selected{outline:3px solid var(--accent)}.card.compact{height:var(--peek);box-shadow:none;justify-content:flex-start;padding-top:4px}.card.compact .main{font-size:clamp(.65rem,3vw,.8rem)}.card.compact .crown{top:1px}.card .info{width:22px;height:22px;color:var(--muted);background:#efe6d2;border-radius:50%;padding:0;font-size:.7rem;font-style:italic;font-weight:700;position:absolute;bottom:3px;right:4px}.card.back{background:repeating-linear-gradient(135deg, var(--back) 0 8px, var(--back-light) 8px 16px);border-color:#fff}.card.back.strip{height:var(--strip);border-radius:6px 6px 0 0;margin-bottom:0}.card.empty{background:var(--slot);box-shadow:none;color:#fff9;border:0;font-size:1.6rem}.deck-row{justify-content:flex-end;gap:var(--gap);margin-bottom:var(--gap);display:flex}.cell{width:var(--card-w);height:var(--card-h);background:0 0;padding:0;position:relative}.stock .count{min-width:22px;color:var(--ink);background:#fff;border-radius:10px;padding:2px 5px;font-size:.7rem;font-weight:700;position:absolute;top:-6px;right:-4px}.board{width:calc(var(--cols) * var(--card-w) + (var(--cols) - 1) * var(--gap));margin:0 auto}.foundations,.columns{grid-template-columns:repeat(var(--cols), var(--card-w));gap:var(--gap);display:grid}.foundations{margin-bottom:14px}.columns .drop{min-height:var(--card-h);align-content:start}.drop{border-radius:12px;position:relative}.drop.target{box-shadow:0 0 0 3px var(--target)}.drop.over{background:#ffe27a40}.slot{width:var(--card-w);height:var(--card-h);background:var(--slot);color:#ffffff59;border-radius:12px;place-items:center;font-size:1.6rem;display:grid}.card.placed{box-shadow:0 0 0 2px var(--gold)}.draggable{touch-action:none;position:relative}.draggable.dragging{z-index:20;filter:drop-shadow(0 8px 10px #00000059)}.draggable>.card.compact,.draggable>.card+.card{margin-bottom:0}.draggable>.card.compact+.card,.draggable>.card.compact+.card.compact{margin-top:0}.actions{justify-content:center;gap:12px;margin-top:24px;display:flex}.actions button,.row button,.report button{background:#00000040;border-radius:12px;padding:10px 16px}.actions button:disabled{opacity:.4}button.primary{background:var(--accent);color:#3a2d00;font-weight:700}.scrim{z-index:50;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:min(100vw,480px);max-height:88vh;padding:16px 16px max(20px, env(safe-area-inset-bottom));background:var(--panel);color:var(--panel-ink);border-radius:20px 20px 0 0;overflow:auto}.sheet header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sheet .reveal{background:#7f7f7f26;border-radius:12px;width:100%;padding:12px;font-size:1.1rem}.sheet dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:12px 0;display:grid}.sheet dt{color:var(--muted)}.sheet dd{margin:0;font-weight:600}.definition,.topic{color:var(--muted);font-size:.9rem}.report{gap:8px;display:grid}.report textarea{border:1px solid var(--card-edge);width:100%;min-height:64px;font:inherit;color:inherit;background:0 0;border-radius:10px;padding:8px}.kinds{gap:6px;display:flex}.kinds button{background:#7f7f7f26;border-radius:10px;flex:1;padding:8px}.kinds button.on{background:var(--accent);color:#3a2d00;font-weight:700}.report-open{color:var(--muted)}.result h2{margin-bottom:4px}.learned{gap:4px;max-height:34vh;margin:12px 0;padding:0;list-style:none;display:grid;overflow:auto}.learned li{justify-content:space-between;gap:8px;font-size:.9rem;display:flex}.learned span{color:var(--muted);text-align:right}.row{justify-content:flex-end;gap:10px;display:flex}
