:root{--bg: #f6f1ec;--surface: #ffffff;--surface-2: #f1e9e4;--text: #211a1c;--muted: #66585d;--border: #e0d4cf;--accent: #9b2c4f;--accent-ink: #ffffff;--gold: #a87a1f;--felt: #6d1a39;--felt-2: #4b0f26;--felt-text: #f9eff2;--good: #1f8a5b;--good-bg: #e3f4ea;--bad: #c0392b;--bad-bg: #fbe6e3;--ring-track: #e8dcd6;--card-red: #c0392b;--side-p: #2f6fdb;--side-b: #c0392b;--side-t: #1f8a5b;--shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 4px 14px rgba(0, 0, 0, .06);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #141011;--surface: #1e1719;--surface-2: #2a2023;--text: #f0e9eb;--muted: #ab9ca1;--border: #3a2d31;--accent: #e27796;--accent-ink: #1c0710;--felt: #5c1530;--felt-2: #3a0c1d;--good-bg: #12301f;--bad-bg: #3a1714;--good: #4cc98f;--bad: #f0776b;--ring-track: #3a2d31;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .3);color-scheme:dark}}:root[data-theme=dark]{--bg: #141011;--surface: #1e1719;--surface-2: #2a2023;--text: #f0e9eb;--muted: #ab9ca1;--border: #3a2d31;--accent: #e27796;--accent-ink: #1c0710;--felt: #5c1530;--felt-2: #3a0c1d;--good-bg: #12301f;--bad-bg: #3a1714;--good: #4cc98f;--bad: #f0776b;--ring-track: #3a2d31;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .3);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}h1,h2,h3{margin:0;line-height:1.2}.muted{color:var(--muted)}.small{font-size:.85rem}.page{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom)}.container{max-width:920px;margin:0 auto;padding:16px}.container.narrow{max-width:600px}.container.wide{max-width:880px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:10px;padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top));background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.topbar h1{font-size:1.05rem;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:var(--felt);color:#fff}.icon-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-size:1.5rem;line-height:1;padding-bottom:3px}.bank{font-weight:700;font-variant-numeric:tabular-nums;color:var(--gold)}.btn{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 18px;font-weight:600;min-height:48px}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}.btn.ghost{background:transparent}.btn:disabled{opacity:.45}.btn.wide{width:100%}.link-btn{background:none;border:0;color:var(--muted);text-decoration:underline}.row{display:flex;gap:10px;justify-content:space-between}.row .btn{flex:1}.col{display:flex;flex-direction:column;gap:8px}kbd{display:none}@media (hover: hover) and (min-width: 760px){kbd{display:inline-block;margin-left:6px;font:600 .7rem ui-monospace,monospace;padding:1px 5px;border-radius:4px;border:1px solid currentColor;opacity:.55}}.hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.hero h2{font-size:1.3rem}.hero p{margin:6px 0 0}.eyebrow{margin:0 0 4px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.quick-card{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:12px;box-shadow:var(--shadow)}.quick-card strong,.quick-card .small{display:block}.quick-card.felt{background:radial-gradient(circle at 30% 20%,var(--felt),var(--felt-2));color:var(--felt-text);border-color:transparent}.quick-card.felt .muted{color:#e8c9d4}.quick-icon{font-size:1.6rem;line-height:1}.rules-toggle{width:100%;text-align:left;background:none;border:0;padding:8px 2px;font-weight:600;color:var(--muted)}.rules{background:var(--surface-2);border-radius:12px;padding:4px 14px 10px;margin-bottom:8px}.rules ul{padding-left:18px;margin:10px 0}.section-h{font-size:.95rem;margin:20px 0 10px;display:flex;align-items:center;gap:8px}.tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:99px;background:var(--surface-2);color:var(--gold);border:1px solid var(--border)}.track-note{margin:-4px 0 10px}.levels{list-style:none;margin:0;padding:0;display:grid;gap:10px}@media (min-width: 760px){.levels{grid-template-columns:1fr 1fr}}.level{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;min-height:76px;box-shadow:var(--shadow);transition:transform .12s}.level:not(:disabled):active{transform:scale(.98)}.level.locked{opacity:.55;box-shadow:none}.level.mastered{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.level-text{display:flex;flex-direction:column;min-width:0}.level-title{font-weight:650}.level-blurb{color:var(--muted);font-size:.85rem}.level-meta{font-size:.75rem;color:var(--muted);margin-top:2px}.level-meta.ok{color:var(--good)}.lvl-num{font-weight:700;font-size:.9rem}.foot{text-align:center;padding:28px 0 16px}.ring{position:relative;flex-shrink:0}.ring-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.card{--w: 64px;width:var(--w);height:calc(var(--w) * 1.4);border-radius:calc(var(--w) * .1);background:#fff;color:#1c1f1d;border:1px solid #d6d6d6;box-shadow:0 2px 6px #00000040;position:relative;flex-shrink:0;font-family:Georgia,Times New Roman,serif;animation:deal .28s ease-out both}.card.small{--w: 48px}.card.red{color:var(--card-red)}.card.back{background:repeating-linear-gradient(45deg,#27467c 0,#27467c 6px,#1d3660 6px,#1d3660 12px);border:3px solid #fff}.corner{position:absolute;top:4px;left:5px;font-size:calc(var(--w) * .24);font-weight:700;line-height:1;text-align:center}.corner.br{top:auto;left:auto;bottom:4px;right:5px;transform:rotate(180deg)}.pip{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:calc(var(--w) * .52)}@keyframes deal{0%{opacity:0;transform:translateY(-14px) scale(.92)}}@media (min-width: 760px){.card{--w: 76px}.card.small{--w: 58px}}.hand-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.hand{display:flex;justify-content:center}.hand .card+.card{margin-left:calc(var(--w) * -.42)}.hand-label{font-size:.8rem;font-weight:600;opacity:.85}.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border-radius:12px;padding:4px;margin-bottom:14px}.tabs button{border:0;background:none;padding:9px;border-radius:9px;font-weight:600;color:var(--muted)}.tabs button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.slide{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px;min-height:300px;box-shadow:var(--shadow);animation:fade .25s ease-out}.slide h2{font-size:1.3rem;margin-bottom:8px}.slide p{margin:8px 0}@keyframes fade{0%{opacity:0;transform:translate(10px)}}.mini-felt,.felt-box{margin-top:14px;background:radial-gradient(ellipse at 50% 30%,var(--felt),var(--felt-2));color:var(--felt-text);border-radius:14px;padding:14px;display:flex;flex-wrap:wrap;justify-content:center;gap:18px 28px}.caption{flex-basis:100%;text-align:center;font-weight:600}.caption.plain{margin-top:12px;padding:10px;border-radius:10px;background:var(--surface-2)}.lesson-nav{position:sticky;bottom:0;padding:10px 0 max(12px,env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--bg) 30%)}.dots{display:flex;justify-content:center;gap:6px;margin:14px 0}.dot{width:8px;height:8px;border-radius:99px;border:0;padding:0;background:var(--border)}.dot.on{background:var(--accent);width:20px}.mastery{display:flex;align-items:center;gap:12px;margin-bottom:12px}.mastery-text{flex:1;min-width:0}.streak{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-top:4px}.streak-bar{flex:1;height:6px;background:var(--ring-track);border-radius:99px;overflow:hidden;max-width:160px}.streak-bar span{display:block;height:100%;background:var(--gold);transition:width .3s}.question{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow);position:relative;overflow:hidden}.question.good{border-color:var(--good)}.question.bad{border-color:var(--bad)}.prompt{font-weight:650;font-size:1.05rem;margin:0 0 4px}.note{text-align:center;color:var(--muted);font-size:.85rem;margin:10px 0 0}.timer{position:absolute;top:0;left:0;right:0;height:4px;background:var(--ring-track)}.timer span{display:block;height:100%;background:var(--accent);transition:width .1s linear}.timer span.low{background:var(--bad)}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.choice{min-height:52px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);font-weight:600;padding:10px}.choice.right,.act.right{background:var(--good-bg);border-color:var(--good);color:var(--good)}.choice.wrong,.act.wrong{background:var(--bad-bg);border-color:var(--bad);color:var(--bad)}.choice.dim,.act.dim{opacity:.45}.actions{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:16px}.actions>*{grid-column:span 3}.actions.n3>*{grid-column:span 2}.actions.n5>:nth-child(-n+3){grid-column:span 2}@media (min-width: 560px){.actions.n4{grid-template-columns:repeat(4,1fr)}.actions.n5{grid-template-columns:repeat(5,1fr)}.actions.n4>*,.actions.n5>*{grid-column:auto!important}}.actions.two{grid-template-columns:1fr 1fr}.act{min-height:56px;border-radius:12px;border:0;font-weight:700;color:#fff;background:var(--muted);padding:8px}.act-S{background:var(--side-b)}.act-D{background:var(--side-p)}.act.right,.act.wrong{border:2px solid}.act:disabled:not(.right):not(.wrong):not(.dim){opacity:.3}.feedback{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);animation:fade .2s ease-out}.verdict{font-weight:700;margin:0}.question.good .verdict{color:var(--good)}.question.bad .verdict{color:var(--bad)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:grid;place-items:center;padding:16px;z-index:50;animation:fade .2s}.modal{background:var(--surface);border-radius:20px;padding:22px;max-width:400px;width:100%;text-align:center}.burst{font-size:3rem;animation:pop .5s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{transform:scale(.2)}}.felt.table{background:radial-gradient(ellipse at 50% 0%,var(--felt) 0%,var(--felt-2) 80%);color:var(--felt-text);border-radius:22px;padding:18px 12px;min-height:360px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;box-shadow:inset 0 0 0 6px #5a3a1d,inset 0 0 0 8px #3d2712,var(--shadow);position:relative}.seat{display:flex;justify-content:center;min-height:120px;align-items:center}.placeholder{opacity:.7;font-size:.9rem;text-align:center;border:1px dashed rgba(255,255,255,.35);border-radius:12px;padding:14px 18px}.player-hands{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.phand{padding:8px;border-radius:14px;border:2px solid transparent;text-align:center;transition:border-color .2s}.phand.active{border-color:#f5d27a;background:#ffffff0d}.hand-bet{font-size:.8rem;margin-top:4px;color:#f5d27a;font-weight:600}.result{margin-top:4px;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.res-win .result,.res-blackjack .result{color:#7ff0b4}.res-lose .result,.res-bust .result{color:#ff9d92}.count-hud{align-self:center;font-size:.8rem;background:#0000004d;padding:4px 12px;border-radius:99px;font-variant-numeric:tabular-nums}.shuffle-note{align-self:center;font-size:.75rem;opacity:.8}.coach{margin-top:12px;padding:10px 14px;border-radius:12px;font-size:.9rem;border:1px solid}.coach.ok{background:var(--good-bg);border-color:var(--good)}.coach.bad{background:var(--bad-bg);border-color:var(--bad)}.summary{text-align:center;font-weight:700;margin-top:10px}.controls{margin-top:12px;min-height:176px}.chips{display:flex;justify-content:center;gap:8px;margin-bottom:10px}.chip{width:50px;height:50px;border-radius:50%;border:4px dashed rgba(255,255,255,.75);color:#fff;font-weight:800;font-size:.85rem;box-shadow:0 2px 5px #0000004d;transition:transform .12s}.chip.on{transform:translateY(-5px);outline:3px solid var(--gold);outline-offset:2px}.chip:disabled{opacity:.3}.chip-5{background:#c0392b}.chip-10{background:#2f6fdb}.chip-25{background:#1f8a5b}.chip-50{background:#e67e22}.chip-100{background:#222}.btn.deal{min-height:54px;font-size:1.05rem}.session{text-align:center;margin:12px 0}.toggles{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;font-size:.9rem;padding:10px;background:var(--surface-2);border-radius:12px}.toggles label{display:flex;align-items:center;gap:6px}.toggles .locked{opacity:.5}.toggles select{font:inherit;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.peek{font-size:.85rem;display:flex;gap:4px;align-items:center}.legend{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.legend span{font-size:.75rem;padding:3px 8px;border-radius:6px;color:#fff;font-weight:600}@media (min-width: 900px){.charts{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}}.chart-wrap{overflow-x:auto}.chart-wrap.locked .chart td{color:transparent!important;background:var(--surface-2)!important}.chart{border-collapse:separate;border-spacing:2px;width:100%;font-size:.8rem;font-variant-numeric:tabular-nums}.chart th{font-weight:600;color:var(--muted);padding:4px 2px;white-space:nowrap}.chart td{text-align:center;padding:6px 0;border-radius:4px;font-weight:700;color:#fff;min-width:26px}.sync{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:4px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.sync p{margin:0}.sync-head{display:flex;align-items:center;gap:8px}.sync-head strong{flex:1}.sync-dot{width:9px;height:9px;border-radius:50%;background:var(--muted);flex-shrink:0}.sync-dot.ok{background:var(--good)}.sync-dot.syncing{background:var(--gold);animation:pulse 1s infinite alternate}.sync-dot.offline{background:var(--bad)}@keyframes pulse{to{opacity:.35}}.sync-code{font:700 1.35rem/1.2 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.08em;text-align:center;padding:10px;border-radius:10px;background:var(--surface-2);-webkit-user-select:all;user-select:all}.sync-form{display:flex;gap:8px;flex-wrap:wrap}.sync-form input{flex:1 1 100%;min-height:48px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:0 14px;font:600 1.05rem ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase}.sync-form .btn{flex:1}.sync-err{color:var(--bad)}.sync-ok{color:var(--good)}.sync .link-btn{align-self:flex-start}.sync.compact{flex-direction:row;align-items:center;gap:10px;width:100%;text-align:left;padding:12px 14px;min-height:48px}.sync-compact-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spots{display:flex;justify-content:center;align-items:center;gap:6px;margin-bottom:12px}.spots .small{margin-right:4px}.spots button{width:44px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-weight:700}.spots button.on{background:var(--accent);color:var(--accent-ink);border-color:transparent}.spots button:disabled{opacity:.35}.spot-tag{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.75;margin-bottom:4px}.player-hands{gap:8px 10px}.phand{padding:6px}.topbar-right{display:flex;align-items:center;gap:10px}.btn.small-btn{min-height:34px;padding:5px 12px;font-size:.85rem;border-radius:10px}.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width: 760px){.tiles{grid-template-columns:repeat(6,1fr)}}.tile{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;display:flex;flex-direction:column;box-shadow:var(--shadow)}.tile span{font-size:.75rem;color:var(--muted);font-weight:600}.tile b{font-size:1.35rem;font-variant-numeric:tabular-nums}.tile small{color:var(--muted);font-size:.72rem}.chart-box{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:8px 6px 2px}.linechart{width:100%;height:auto;display:block;touch-action:pan-y}.linechart .grid{stroke:var(--border);stroke-width:1}.linechart .zero{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3}.linechart .axis{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.series-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.series-dot{fill:var(--accent);stroke:var(--surface);stroke-width:2}.linechart .crosshair{stroke:var(--muted);stroke-width:1}.tooltip{position:absolute;top:6px;transform:translate(-50%);background:var(--text);color:var(--bg);border-radius:8px;padding:5px 9px;font-size:.78rem;pointer-events:none;display:flex;flex-direction:column;white-space:nowrap;max-width:70%}.sessions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.sessions li{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.sess-row{width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:none;border:0;padding:12px 14px;min-height:60px}.sess-main{flex:1;display:flex;flex-direction:column;min-width:0}.sess-net{font-weight:700;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:6px}.sess-net:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--muted)}.sess-net.up:before{background:var(--good)}.sess-net.down:before{background:var(--bad)}.chev{color:var(--muted)}.sess-detail{padding:0 14px 14px;border-top:1px solid var(--border)}.sess-detail h4{margin:14px 0 6px;font-size:.85rem}.spark{margin-top:12px}.spark svg{width:100%;height:56px;display:block}.spark-labels{display:flex;justify-content:space-between}.kv{margin-top:10px;display:grid;gap:4px}.kv div{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}.kv span{color:var(--muted)}.types{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.type{background:var(--surface-2);border-radius:10px;padding:8px;display:flex;flex-direction:column;align-items:center}.misses{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-direction:column;gap:6px}.misses li{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;border:0;background:none;font-size:.88rem}.legacy-note{margin:0;padding:0 14px 12px}.quick-history{text-decoration:underline}.bac-hands{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:150px;align-items:start}.bac-side{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 2px;border-radius:14px;border:2px solid transparent;min-width:0}.bac-side.won{border-color:#f5d27a;background:#ffffff0f}.bac-total{font-size:1.5rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.bac-side .card{--w: 46px}@media (min-width: 560px){.bac-side .card{--w: 64px}.bac-hands{min-height:186px}}.bac-result{text-align:center;font-weight:800;letter-spacing:.03em;min-height:1.5em}.bac-zones{display:grid;grid-template-columns:1fr 1fr;gap:8px}.zone{position:relative;min-height:74px;border-radius:12px;border:2px solid rgba(255,255,255,.4);background:#0000002e;color:var(--felt-text);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 6px;font-weight:700;line-height:1.2}.zone small{font-weight:500;opacity:.85}.zone.wide{grid-column:1 / -1;min-height:56px}.zone.z-player{border-color:#8db4f5}.zone.z-banker{border-color:#f09a8f}.zone.z-tie{border-color:#84d9ae}.zone.placed{background:#f5d27a33}.zone:disabled{cursor:default}.zone-chip{position:absolute;top:5px;right:6px;background:#f5d27a;color:#3a2410;border-radius:99px;padding:1px 8px;font-size:.78rem;font-weight:800}.zone-net{position:absolute;top:5px;left:6px;font-size:.78rem;font-weight:800}.zone-net.up{color:#7ff0b4}.zone-net.down{color:#ffb1a8}.call-box{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px}.call-box .prompt{text-align:center;margin-bottom:0}.call-box .actions{margin-top:10px}.bet-actions{display:flex;gap:8px}.bet-actions .btn.deal{flex:1}.road-box{margin-top:12px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:10px 12px}.road-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:.82rem}.road-scroll{overflow-x:auto}.road{display:grid;grid-template-rows:repeat(6,22px);grid-auto-flow:column;grid-auto-columns:22px;gap:2px;width:max-content;background:var(--surface-2);padding:3px;border-radius:8px}.road-cell{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.66rem;font-weight:800;color:#fff;position:relative}.road-cell.m-P{background:var(--side-p)}.road-cell.m-B{background:var(--side-b)}.road-cell.m-T{background:var(--side-t)}.road-cell.ring-P,.road-cell.ring-B{background:transparent;border:3px solid;color:var(--text)}.road-cell.ring-P{border-color:var(--side-p)}.road-cell.ring-B{border-color:var(--side-b)}.road-empty{width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--border) 40%,transparent)}.slide .road-wrap,.question .road-wrap{margin-top:14px}.sheet{display:grid;gap:12px}@media (min-width: 760px){.sheet{grid-template-columns:1fr 1fr;align-items:start}}.sheet-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;box-shadow:var(--shadow);min-width:0}.sheet-card h3{font-size:1rem;margin-bottom:8px}.sheet-table{width:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}.sheet-table th,.sheet-table td{text-align:left;padding:6px 4px;border-top:1px solid var(--border)}.sheet-table thead th{border-top:0;color:var(--muted);font-size:.78rem}.sheet-table td.num,.sheet-table th.num{text-align:right}.sheet-table tr.best td{color:var(--good);font-weight:700}.sheet-table tr.trap td{color:var(--bad)}.draw-grid{border-collapse:separate;border-spacing:2px;width:100%;font-size:.8rem;font-variant-numeric:tabular-nums}.draw-grid th{color:var(--muted);font-weight:600;padding:3px 1px}.draw-grid td{text-align:center;padding:5px 0;border-radius:4px;font-weight:700;color:#fff}.draw-grid td.d{background:var(--side-p)}.draw-grid td.s{background:var(--side-b)}.sheet-card p{margin:8px 0 0}
