@font-face{font-family:Arcade;src:url('pixel.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--cyan:#79dce4;--magenta:#d6a2e8;--pixel-edge:#40533b}
body{background-color:var(--bg);background-image:radial-gradient(#b6d87f0b 1px,transparent 1px);background-size:18px 18px}
h1,.mode h3,.hero .metric strong,.page:has(.xp-panel)>.metrics .metric strong{font-family:Arcade,monospace;font-weight:400;letter-spacing:0;line-height:1.04}
h1{font-size:clamp(40px,5.2vw,66px)}.hero h1{max-width:620px}.mode h3{font-size:30px}.hero .metric strong,.page:has(.xp-panel)>.metrics .metric strong{font-size:38px}
h1.long-heading{font-family:TableBook,Georgia,serif;font-size:clamp(28px,4vw,44px);line-height:1.25}
.mode,.panel,.metrics,.tag,.notice,.definition,.modal-content,.toast,.choices button,.quiz-options button,.chart-pickers select,.setting select,.setting input[type=checkbox],.progress-track,.statbar,.grid-info{border-radius:0}
.mode,.panel,.metrics,.notice,.modal-content{box-shadow:-2px 0 0 var(--line),2px 0 0 var(--line),0 -2px 0 var(--line),0 2px 0 var(--line),4px 4px 0 #080d09}
button:not(.cell){border-radius:0;box-shadow:3px 3px 0 #070c08;transform:none;transition:none}
button:not(.cell):active{transform:translate(3px,3px);box-shadow:none}
button.primary,.actions button.aggressive{box-shadow:3px 3px 0 #617b3f}
button:not(.cell):focus-visible{outline-offset:6px}.cell{box-shadow:none}.cell:active{transform:none}
.brand,.nav button,.footer button,.back,.session-head button{box-shadow:none!important}
.brand:active,.nav button:active,.footer button:active,.back:active,.session-head button:active{transform:translate(1px,1px)!important}
.top{border-bottom:2px solid var(--line)}.logo{width:35px;height:35px}.logo svg,.hero-mascot svg,.result-mascot svg{display:block;width:100%;height:100%;image-rendering:pixelated}
.hero-intro{position:relative;padding-top:6px}.hero-mascot{width:80px;height:80px;margin-bottom:16px}.hero{gap:48px;padding-top:36px}
.mode{min-height:200px;padding:24px}.mode .num{margin-bottom:24px}.mode.first{border-color:#668146;box-shadow:-2px 0 0 #668146,2px 0 0 #668146,0 -2px 0 #668146,0 2px 0 #668146,4px 4px 0 #080d09}
.mode[data-mode="6"] .num{color:var(--cyan)}.mode[data-mode="4"] .num{color:var(--magenta)}.modes{gap:19px}
.modes .mode:last-child{grid-column:auto}.section-title>.tag{color:var(--cyan);border-color:#3c6465;font-variant-numeric:tabular-nums}
.notebook{box-shadow:none}.exploit{border-left-color:#d4a25c}.home-game{color:#e0b473}.study-list button{gap:12px}
.page,.reading,.quiz{background:var(--bg)}.session{background:var(--bg)}
.session .metric strong,.equity-figures strong,.equity-pot,.equity-entry input{font-family:inherit;font-variant-numeric:tabular-nums}
.stage-banner{display:inline-block;border:2px solid var(--accent);padding:8px 13px;margin:0 0 20px;box-shadow:3px 3px 0 #46602c;font-size:13px;font-weight:700;letter-spacing:2px;color:var(--accent)}.result-mascot{float:right;width:80px;height:80px}
.xp-panel{margin:22px 0}.xp-panel .stats-row{border:0;color:var(--cyan)}.xp-bar{display:grid;grid-template-columns:repeat(25,minmax(0,1fr));gap:3px;padding:6px;border:1px solid #3c6465;background:#101b19;height:31px}.xp-bar i{background:#243630}.xp-bar i.earned{background:var(--cyan)}.xp-panel p{margin:9px 0 0}
.equity-session{max-width:920px;overflow:auto;min-height:600px}.equity-session .feedback{min-height:80px;max-height:none;flex:1;overflow:visible}.equity-felt{background:#1d2b21;box-shadow:inset 0 2px 12px #0006;border:1px solid #43503b;padding:12px;flex-shrink:0}.equity-hands{display:flex;justify-content:center;gap:52px;text-align:center}.equity-hands .hero-hand,.villain-hand{display:flex;gap:8px;justify-content:center;margin:4px 0 12px}.equity-felt>.board{justify-content:center;margin:0}.equity-felt>.board .card{width:38px;height:52px;font-size:19px}.equity-pot{font-size:13px;text-align:center;color:var(--accent);margin:9px 0 0}.equity-prompt{font-size:13px;margin:12px 0 3px}.equity-entry{display:flex;gap:12px;align-items:stretch;margin-top:7px}.equity-entry input{width:130px;min-width:70px;background:var(--panel);border:1px solid var(--accent);color:var(--ink);padding:10px 12px;font-size:20px;min-height:56px;border-radius:0}.equity-entry input:focus{outline:2px solid var(--accent);outline-offset:3px}.equity-entry>button{flex:1;min-height:56px}.equity-decisions{display:flex;gap:10px;flex:1}.equity-decisions button{flex:1;min-height:56px}.equity-decisions small{display:block;font-size:10px}.equity-session form>label{font-size:13px}.equity-session form .source{margin:9px 0 0}.equity-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}.equity-figures>div{border:1px solid var(--line);padding:9px;background:var(--panel)}.equity-figures span{display:block;font-size:11px;color:var(--muted)}.equity-figures strong{display:block;font-size:20px;color:var(--accent)}.equity-next{width:100%;min-height:56px}.equity-session .feedback p{font-size:12px}.equity-session .source{font-size:10px}
@media(max-width:700px){.mode h3{font-size:26px}.hero h1{font-size:46px}.page h1{font-size:43px}.page h1.long-heading{font-size:30px}.modes{gap:15px}.mode{padding:17px;min-height:206px}.hero{gap:24px}.hero-mascot{width:60px;height:60px}.logo{width:28px;height:28px}.brand{font-size:14px}.hero .metric strong,.page:has(.xp-panel)>.metrics .metric strong{font-size:32px}.wrap{padding:0 18px}.equity-hands{gap:28px}.equity-session .card{width:44px;height:58px;font-size:23px}.equity-hands .card .suit{font-size:20px}.equity-felt>.board .card{width:29px;height:39px;font-size:16px}.equity-felt{padding:9px}.equity-figures>div{padding:7px}.equity-figures strong{font-size:18px}.equity-prompt{font-size:12px}.equity-session .feedback{min-height:60px}.equity-entry input{width:100px}.equity-entry{gap:8px}.result-mascot{width:60px;height:60px}.section-title{gap:12px}.section-title>.tag{max-width:46%}.nav button{padding:8px 6px}.xp-bar{gap:2px}.equity-session .action-zone{padding-bottom:8px}.home-game{margin-top:5px}}
@media(prefers-reduced-motion:reduce){button:not(.cell):active{transform:none!important}}
@media(max-width:700px){.top{gap:8px}.brand{white-space:nowrap;flex-shrink:0}.nav{min-width:0}.nav button{padding-inline:5px}}
/* Arcade system: shared chrome across practice, study, charts, and settings. */
.brand,.nav button,.section-title h2,.page h2,.page h3,.session-title,.notebook-divider,.verdict strong,.grade,.stage-banner,.mode .num,.study-index,button:not(.cell),select,.setting>span,.setting>div:first-child,.xp-panel .stats-row,.session-head,.session-label,.tag{font-family:Arcade,monospace;font-weight:400;letter-spacing:0}
.brand{font-size:30px;gap:13px}.top{height:94px;border-bottom:3px solid #3e5038;box-shadow:0 3px 0 #080d09}.nav{gap:8px}.nav button{font-size:24px;padding:7px 14px;line-height:1}.nav button.active{border:1px solid #8aaa60;background:#26371e;box-shadow:2px 2px 0 #080d09!important}.section-title h2{font-size:30px}.tag{font-size:17px;line-height:1.15;padding:5px 10px}.mode .num{font-size:20px}.mode{border-width:2px}.mode h3{font-size:32px}.page h2{font-size:35px}.page h3{font-size:28px;line-height:1.15}.page>.eyebrow{display:flex;align-items:center;gap:8px}.page>.eyebrow:before{content:'';width:7px;height:7px;background:var(--accent);box-shadow:3px 3px 0 #3b5428}.page>.panel:not(.notebook){border-top:3px solid #6d8656}.page>.panel.exploit{border-top-color:#a77d43}.panel{background-color:#171f18}.page{background:transparent}.page .panel>p,.reading,.source{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.byline{font-family:TableBook,Georgia,serif}
button:not(.cell){font-size:23px;line-height:1.1;min-height:40px}.choices{gap:12px}.choices button{border-width:2px;padding:8px 14px;min-height:44px}.choices button.selected{box-shadow:3px 3px 0 #5b753b}.primary{border-width:2px}.start{font-size:27px!important}.nav button{min-height:36px}.footer button{font-family:inherit;font-size:11px;min-height:24px}.back{font-size:21px!important;display:inline-flex;align-items:center;gap:8px}.help{min-height:24px!important;padding:0!important;vertical-align:middle}.help .ui-icon{width:18px;height:18px}.close{font-size:20px;min-height:36px;display:inline-flex;align-items:center;justify-content:center}.setting{gap:16px}.setting>div:first-child,.setting>span{font-size:24px;line-height:1.1}.setting .source{font:10px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:8px 0 0}.setting select,.chart-pickers select{font-size:22px;border-width:2px;padding-block:9px;min-height:46px}.setting input[type=checkbox]{border:2px solid #6d8656;box-shadow:3px 3px 0 #080d09}.study-list button{min-height:60px;padding:17px 15px;border-width:2px;font-family:inherit;font-size:15px;line-height:1.5}.study-list button>span:first-child{display:flex;align-items:flex-start;gap:12px}.study-index{font-size:23px;line-height:1.1;color:var(--accent);flex-shrink:0;border:1px solid #4b603a;min-width:31px;text-align:center;padding:2px 4px}.exploit .study-index{color:#e0b473;border-color:#705734}.notebook-divider{font-size:30px!important}.home-game{font-family:inherit;font-size:11px}.notebook .study-list button:hover{border-color:#b6d87f}.notebook.exploit .study-list button:hover{border-color:#d4a25c}.statbar{height:7px;background:#273025}.statbar i{background:repeating-linear-gradient(90deg,var(--accent) 0 8px,transparent 8px 11px)}.xp-panel .stats-row{font-size:22px}.xp-panel .source{font-size:10px}.stats-row{gap:12px}.stats-row span:last-child{text-align:right}.chart-pickers{gap:12px}.chart-pickers select{min-width:150px}.grid-info{border-left:3px solid var(--accent)}
/* Training labels stay distinct from the body copy and data figures. */
.session-title{font-size:30px;line-height:1.05}.session-head{font-size:19px;line-height:1.15}.session-head button{font-size:19px;min-height:32px;padding:3px 0}.session-head>span:last-child{white-space:nowrap}.session-label{font-size:17px;line-height:1.2}.actions button{font-size:27px}.actions small{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:10px}.sizes button{font-family:inherit;font-size:12px;min-height:0}.after button{font-size:25px}.after button:first-child{font-size:23px}.verdict strong{font-size:29px;line-height:1.1}.grade{font-size:20px;border-radius:0;line-height:1.1;white-space:nowrap}.quiz-options button{font-family:inherit;font-size:15px;line-height:1.5;min-height:56px;border-width:2px;border-left:4px solid #647b50}.quiz-options button.picked{border-left-color:var(--accent)}.quiz.exploit .quiz-options button{border-left-color:#d4a25c}.quiz h2{font-family:inherit;font-size:24px}.session .source,.session .freq,.session .line,.session .math-strip,.session .card,.grid .cell{font-family:inherit}.session .card{font-family:TableBook,Georgia,serif}.session .freq,.session .line,.session .math-strip{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.stage-banner{font-size:26px;padding:7px 17px;letter-spacing:2px}.metric strong{font-variant-numeric:tabular-nums}.result-mascot{width:90px;height:90px}
/* Answered Equity Lab hands grow with their feedback; text can never spill into the action bar. */
.equity-session{height:auto;min-height:100dvh;overflow:visible;padding-bottom:24px}.equity-session:not(.answered){height:100dvh;min-height:650px}.equity-session.answered .feedback{flex:0 0 auto;min-height:0;max-height:none;overflow:visible;margin-top:9px;padding-bottom:18px}.equity-session.answered .action-zone{flex:0 0 auto;clear:both;border-top:2px solid var(--line);padding-top:16px;background:var(--bg)}.equity-session.answered .action-zone:before{display:none}.equity-session:not(.answered) .feedback{flex:1 1 auto;min-height:35px}.equity-next{display:flex;align-items:center;justify-content:center;gap:13px;position:relative;isolation:isolate;min-height:60px!important;font-size:29px!important;color:#18200f!important;line-height:1!important;padding:16px 20px}.equity-next>span{display:block;line-height:1;white-space:nowrap}.equity-next .ui-icon{display:block;width:23px;height:23px}.equity-session .action-zone form{background:var(--bg)}.equity-session .feedback>.source{display:block;position:static;float:none;clear:both;overflow-wrap:anywhere;line-height:1.5}.equity-entry button{font-size:26px}.equity-entry input{border-width:2px}.equity-decisions small{font-family:inherit;font-size:12px}.equity-felt{border:2px solid #506642;box-shadow:-2px 0 0 #263724,2px 0 0 #263724,0 3px 0 #080d09,inset 0 2px 12px #0006}.equity-felt .source{font-family:Arcade,monospace;font-size:18px;line-height:1.1}.equity-figures>div{border-width:2px;box-shadow:2px 2px 0 #080d09}.dirty-outs{border:1px solid #a77d43;border-left-width:4px;background:#2a2419;padding:9px 12px;margin:12px 0}.dirty-outs>strong{font-family:Arcade,monospace;font-size:24px;font-weight:400;color:#e0b473;line-height:1.1}.dirty-outs p{margin:5px 0!important}.excluded-card{font-weight:700;color:#f0c891}
@media(max-width:700px){.top{display:grid;grid-template-columns:1fr;height:auto;min-height:98px;gap:8px;padding:12px 0 9px}.top .brand{font-size:25px;gap:9px;justify-self:start}.top .logo{height:27px;width:27px}.nav{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.nav button{font-size:20px;padding:4px 2px;min-height:30px}.nav .optional{display:none}.section-title h2{font-size:28px}.section-title>.tag{font-size:16px}.mode .num{font-size:18px;margin-bottom:19px}.mode h3{font-size:29px}.mode{min-height:210px}.tag{font-size:16px}.page h3{font-size:26px}.choices button{font-size:22px;padding-inline:10px}.page .choices{gap:11px}.notebook-divider{font-size:28px!important}.study-list button{font-size:14px;padding:14px 11px}.study-index{font-size:21px;min-width:27px}.study-list button>span:first-child{gap:9px}.setting>div:first-child,.setting>span{font-size:22px}.setting select{font-size:20px;max-width:60%}.chart-pickers select{font-size:21px}.xp-panel .stats-row{font-size:21px}.session-title{font-size:27px;margin-top:2px}.session-head{font-size:16px;gap:8px}.session-head button{font-size:16px}.session-head>span:nth-child(2){max-width:46%;text-align:center}.session-label{font-size:16px}.actions button{font-size:25px;padding-block:6px}.actions small{font-size:10px}.after button,.after button:first-child{font-size:23px}.verdict strong{font-size:27px}.grade{font-size:18px}.equity-session .feedback p{font-size:12px;line-height:1.55}.equity-session .equity-prompt{line-height:1.5}.equity-felt .source{font-size:16px}.equity-hands{gap:26px}.equity-session:not(.answered){min-height:660px}.equity-next{font-size:27px!important}.equity-session.answered{padding-bottom:22px}.equity-session.answered .feedback{padding-bottom:15px}.equity-figures{gap:8px}.equity-figures>div{padding:6px}.equity-entry button{font-size:25px}.dirty-outs>strong{font-size:23px}.result-mascot{width:65px;height:65px}.stage-banner{font-size:23px}}
@media(max-height:700px){.session:not(.equity-session) .session-title{font-size:23px}.session:not(.equity-session) .session-label{font-size:14px}.session:not(.equity-session) .session-head,.session:not(.equity-session) .session-head button{font-size:15px}.session:not(.equity-session) .verdict strong{font-size:24px}}
/* Pixel-built rail and seats; playing cards and range cells retain their readable faces. */
.felt{--rail-shape:polygon(20% 0,80% 0,80% 5%,90% 5%,90% 15%,96% 15%,96% 30%,100% 30%,100% 70%,96% 70%,96% 85%,90% 85%,90% 95%,80% 95%,80% 100%,20% 100%,20% 95%,10% 95%,10% 85%,4% 85%,4% 70%,0 70%,0 30%,4% 30%,4% 15%,10% 15%,10% 5%,20% 5%);clip-path:var(--rail-shape);border:0;border-radius:0;outline:0;background:#263523;box-shadow:none;isolation:isolate}.felt:before,.felt:after{content:'';position:absolute;clip-path:var(--rail-shape);pointer-events:none}.felt:before{inset:3px;background:#5b6d47;z-index:-2}.felt:after{inset:5px;background-color:#1d2b21;background-image:repeating-linear-gradient(0deg,#ffffff03 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#00000008 0 1px,transparent 1px 3px);box-shadow:inset 0 6px 18px #0007;z-index:-1}.seat{border-radius:0;box-shadow:2px 2px 0 #080d09}.seat strong{font-family:Arcade,monospace;font-size:16px;font-weight:400;line-height:1}.seat .you-marker{border-radius:0;font-family:Arcade,monospace;font-size:12px;width:24px;height:20px;vertical-align:middle}.dirty-outs{border-color:#9e73a4;background:#261e29}.dirty-outs>strong{color:#dfb4e6}.excluded-card{color:#edc8f1}.equity-session.answered .feedback{margin-bottom:10px}
@media(max-width:700px){.seat strong{font-size:14px}.seat .you-marker{font-size:11px;width:21px;height:18px}}

/* Table-size controls share the arcade chrome. */
.top{flex-wrap:wrap}.header-table{display:flex;align-items:center;gap:16px;flex-wrap:wrap;width:100%;padding:8px 0}.header-table .source{margin:0}.table-switch{display:flex;gap:4px;flex-wrap:wrap}.table-switch button{font-family:Arcade,monospace;font-size:20px;padding:7px 12px;border:2px solid var(--line);background:var(--panel);color:var(--muted)}.table-switch button.selected{background:var(--raise);color:#14200e;border-color:var(--raise)}.panel .table-switch{margin:12px 0}#range-file{max-width:100%}

.opponents h4{font-family:Arcade,monospace;font-size:25px;margin:28px 0 10px}.sample-badge{display:inline-block;font:18px Arcade,monospace;padding:2px 6px;border:1px solid var(--line);white-space:nowrap}.sample-badge.graded{color:var(--raise)}.sample-badge.lean{color:#cbb4f6}.sample-badge.hidden,.small-sample{color:var(--muted);opacity:.65}.study-rule{padding:16px 0;border-bottom:1px solid var(--line)}.study-rule p{margin:8px 0}.text-link{color:var(--raise);text-decoration:underline;background:none;border:0;padding:4px 0}.opponent-stats{border-collapse:collapse;width:100%;min-width:650px;font-size:12px}.opponent-stats th,.opponent-stats td{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line);vertical-align:top}.opponent-stats th{font-weight:500}.opponent-stats button{font-size:12px;text-align:left;background:none;color:inherit;border:0;padding:0;text-decoration:underline;text-underline-offset:3px}.stat-table-wrap{overflow-x:auto}.stat-focus{outline:2px solid var(--raise);outline-offset:3px}.opponents .notice{line-height:1.7}.nav{flex-wrap:wrap}

.villain-filters{display:flex;flex-wrap:wrap;gap:18px}.villain-filters label{display:flex;flex-direction:column;gap:8px;flex:1 1 160px;max-width:100%}.villain-filters select{background:var(--panel);color:var(--text);border:2px solid var(--line);border-radius:0;padding:10px;max-width:100%;font:18px Arcade,monospace}.villain-filters p{width:100%}.villain-session{height:auto;min-height:100svh;max-width:1000px;margin:auto;padding:22px;display:flex;flex-direction:column;gap:18px}.villain-session .feedback{flex:0 0 auto;overflow:visible}.villain-session .action-zone{position:static;flex:0 0 auto;padding:12px 0}.villain-session .equity-felt{padding:24px 12px}.villain-session .board{position:static;transform:none;justify-content:center;margin:20px auto}.villain-session .hero-hand{margin:0 auto}.villain-session .equity-felt p{text-align:center}.villain-session .hand-history{margin:0;padding:18px}.hand-history ol{padding-left:22px;line-height:1.8;font-size:13px}.villain-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.villain-options button{padding:14px 8px;font:22px Arcade,monospace}.villain-options small{color:var(--muted)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison section{padding:14px;border:1px solid var(--line)}.driver-stats{padding:12px 0}.driver-stats>div{padding:8px 0;border-bottom:1px solid var(--line)}.driver-stats p{font-size:12px}.villain-session .feedback .comparison h3{font:26px Arcade,monospace}.villain-session .feedback p{line-height:1.7}@media(max-width:600px){.comparison{grid-template-columns:1fr}.villain-session{padding:14px}.top .nav{gap:8px;width:100%}.header-table{gap:8px}.villain-session .session-title{font-size:30px}}

.reference-grid .outside-range{opacity:.45}.reference-grid .outside-range:focus-visible,.reference-grid .outside-range.highlight{opacity:1}.chart-pickers label{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.chart-pickers label select{width:100%}.checks p{font-size:12px;line-height:1.8;margin:10px 0}.reference-grid+.legend{flex-wrap:wrap}
