:root {
  --bg: #071512; --surface: #0d211c; --panel: #102a23; --line: #244239;
  --text: #f0f7f3; --muted: #94aaa2; --green: #62e6a6; --green-deep: #173f31;
  --blue: #4285f4; --red: #f05a67; --yellow: #eabf5b; --purple: #b480f5;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "PingFang SC", sans-serif;
  color: var(--text); background: var(--bg); font-synthesis: none;
}
.workflow-head-shell{min-width:0}.workflow-head-shell.has-history .workflow-head .back{display:none}.workflow-head-shell.has-history .workflow-head.compact{grid-template-columns:minmax(0,1fr) auto!important}.workflow-compact .workflow-head.compact h1{font-size:clamp(9px,3vw,14px)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis}.workflow-review-nav{margin:9px 0 5px!important}.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand.entry:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand.call:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand.open:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand.shove:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand[class~="3bet"]:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand[class~="3bet_shove"]:not(.missing):not(.extra):not(.wrong_action),.workflow-matrix:not(.layered-aggressive-matrix) .hand-grid .hand[class~="4bet_shove"]:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand.entry:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand.call:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand.open:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand.shove:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand[class~="3bet"]:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand[class~="3bet_shove"]:not(.missing):not(.extra):not(.wrong_action),.recall-layout:not(.layered-aggressive-matrix) .hand-grid .hand[class~="4bet_shove"]:not(.missing):not(.extra):not(.wrong_action){color:#071d26;background:#78b9d4;border-color:#78c6e4;box-shadow:inset 0 0 0 1px #bce7f833}.layered-aggressive-matrix .hand.open,.layered-aggressive-matrix .hand[class~="3bet"],.layered-aggressive-matrix .hand[class~="3bet_shove"],.layered-aggressive-matrix .hand[class~="4bet_shove"],.layered-aggressive-matrix .hand.shove{color:#271608!important;background:#d99855!important;border-color:#e0a05c!important;box-shadow:inset 0 0 0 1px #ffe1b044!important}
.layered-aggressive-matrix .hand-grid .hand.missing{background:#d3b35b!important;color:#302507!important}.layered-aggressive-matrix .hand-grid .hand.extra{background:#d4777e!important;color:#351115!important}.layered-aggressive-matrix .hand-grid .hand.wrong_action{background:#a98bd2!important;color:#241333!important}
@media(max-width:850px){.workflow-review-panel{grid-template-columns:1fr}.workflow-review-nav{flex-wrap:wrap}}

/* Rule-chain answer cards: keep the requested readable size after all responsive rules. */
.rule-chain-step .workflow-choices button,
.rule-chain-step .workflow-choices button:disabled,
.rule-chain-step .workflow-choices button.answer-selected {
  font-size: 14px !important;
}
.rule-chain-step .boundary-feedback{min-height:18px;margin:5px 0 0;line-height:18px;overflow:hidden}.rule-chain-step .feedback-placeholder{visibility:hidden}
.rule-chain-title{display:flex;align-items:center;justify-content:space-between;gap:10px;white-space:nowrap}.rule-chain-title>span{overflow:hidden;text-overflow:ellipsis}.rule-chain-title>i{display:flex;flex:none;gap:4px;font-style:normal;color:var(--muted);font-size:12px}.rule-chain-title b{font-size:14px}.rule-chain-title b.correct{color:var(--green)}.rule-chain-title b.wrong{color:var(--red)}
.rule-chain-step .workflow-choices button{display:flex;align-items:center;justify-content:space-between;gap:8px}.option-result{font-size:15px;line-height:1}.option-result.correct{color:var(--green)}.option-result.wrong{color:var(--red)}
.rule-chain-step .workflow-choices button.answer-wrong{border-color:var(--red)!important;background:#3a171b!important;color:var(--text)}
.rule-chain-step .workflow-choices button.answer-selected.answer-wrong,.rule-chain-step .workflow-choices button.answer-selected.answer-wrong:hover,.rule-chain-step .workflow-choices button.answer-selected.answer-wrong:focus{border-color:var(--red)!important;background:#3a171b!important;color:var(--text)!important}
.rule-chain-step-title{font-size:14px!important;line-height:21px}
.rule-chain-step .workflow-choices button{min-height:44px;padding:8px 10px;line-height:1.3}
.rule-chain-step .workflow-choices button{font-size:14px}
.rule-chain-feedback{min-height:24px;margin-top:10px;padding:5px 8px;color:transparent;font-size:11px;line-height:14px}.rule-chain-feedback.has-feedback{border-radius:6px}.rule-chain-feedback.feedback-correct{color:var(--green);background:#173f31}.rule-chain-feedback.feedback-wrong{color:var(--red);background:#3a171b}.rule-chain-feedback span{display:block}
* { box-sizing: border-box; }
html,body{max-width:100%;overflow-x:hidden}
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 72% -10%, #173b2f 0, transparent 32%), var(--bg); }
button { font: inherit; }
button:not(:disabled) { cursor: pointer; }
.topbar { height: 72px; display: flex; align-items: center; justify-content: space-between; max-width: 1240px; margin: auto; padding: 0 24px; border-bottom: 1px solid #ffffff0c; }
.brand { border: 0; background: none; color: white; display: flex; gap: 12px; align-items: center; font-weight: 750; font-size: 18px; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #5cdb9d88; border-radius: 10px; color: var(--green); font-size: 12px; letter-spacing: -1px; }
.top-meta { color: var(--muted); font-size: 13px; display: flex; align-items: center; gap: 8px; }
.account-menu{display:flex;min-width:0;align-items:center;gap:8px;color:var(--muted);font-size:12px}.account-menu>span{max-width:140px;margin-right:4px;overflow:hidden;color:var(--text);font-weight:700;white-space:nowrap;text-overflow:ellipsis}.account-menu button{flex:none;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--muted);padding:6px 9px;font-size:10px}.account-menu button:hover{border-color:var(--green);color:var(--text)}
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--green); }
main { max-width: 1240px; margin: auto; padding: 46px 24px 80px; }
footer { text-align: center; color: #688078; font-size: 12px; padding: 24px; border-top: 1px solid #ffffff0c; }
.auth-main{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(100%,390px);padding:32px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#102821,#0b1d18);box-shadow:0 24px 70px #0005}.auth-brand{display:flex;align-items:center;gap:11px;margin-bottom:32px}.auth-card h1{margin:0 0 8px;font-size:30px;letter-spacing:-.04em}.auth-card>p{margin:0 0 26px;color:var(--muted);font-size:12px;line-height:1.6}.auth-card form{display:grid;gap:15px}.auth-card label{display:grid;gap:7px;color:#bdcdc7;font-size:11px}.auth-card input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:9px;outline:none;background:#0a1916;color:var(--text);font-size:14px}.auth-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px #62e6a612}.auth-error{min-height:16px;color:#ef8b92;font-size:11px}.auth-switch{display:block;margin:20px auto 0;border:0;background:transparent;color:var(--muted);font-size:11px}.auth-switch:hover{color:var(--green)}
.hero { display: flex; justify-content: space-between; align-items: end; padding: 42px 48px; min-height: 250px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(120deg, #102c24, #0b1d19 70%); position: relative; overflow: hidden; }
.hero::after { content:""; position:absolute; width:330px; height:330px; border:55px solid #59d99a0b; border-radius:50%; right:-70px; top:-115px; }
.eyebrow { color: var(--green); font-size: 11px; letter-spacing: .18em; font-weight: 750; margin: 0 0 12px; }
.hero h1, .page-head h1 { font-size: clamp(38px, 5vw, 64px); margin: 0 0 12px; letter-spacing: -.055em; }
.hero p:not(.eyebrow), .page-head p { color: var(--muted); max-width: 620px; line-height: 1.7; margin: 0; }
.hero-stat { width: 140px; height: 140px; border-radius: 50%; border: 1px solid #5bdd9e55; display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 1; }
.hero-stat strong { font:750 44px Inter,ui-sans-serif,system-ui,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:-.04em; color:var(--green); }.hero-stat span { color: var(--muted); font-size: 12px; }
.section-head { margin: 42px 2px 18px; }.section-head h2 { margin: 0 0 5px; font-size: 20px; }.section-head p { margin: 0; color: var(--muted); font-size: 13px; }
.home-head{margin:26px 2px 28px}.home-head h1{margin:0 0 7px;font-size:clamp(32px,5vw,48px);letter-spacing:-.045em}.home-head p{margin:0;color:var(--muted);font-size:13px}
.stack-switch { display:flex; width:max-content; margin:22px 0 0; padding:4px; gap:3px; border:1px solid var(--line); border-radius:11px; background:#0c201b; }
.stack-switch button { min-width:76px; padding:9px 16px; border:0; border-radius:8px; color:var(--muted); background:transparent; font-weight:750; }
.stack-switch button.active { color:#052016; background:var(--green); }
.scenario-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.module-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.stack-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stack-card{min-width:0;padding:28px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#102821,#0b1d18);animation:rise .5s both;animation-delay:var(--delay)}.stack-card.coming-soon{opacity:.58}.stack-card-head{display:flex;min-width:0;align-items:start;justify-content:space-between;margin-bottom:26px}.stack-card h2{margin:0;font:760 39px Inter,ui-sans-serif,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.045em}.stack-progress{margin:15px 0}.stack-progress>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px}.stack-progress span{color:var(--muted)}.stack-progress strong{font:700 14px Inter,ui-sans-serif,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.stack-progress i{display:block;height:5px;border-radius:8px;background:#20382f;overflow:hidden}.stack-progress b{display:block;height:100%;border-radius:inherit;background:var(--green)}.stack-progress.mastery b{background:#78b9d4}.stack-card>.wide{margin-top:22px}
.stack-card.simple{position:relative;padding:30px 24px 24px;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.stack-card.simple:hover{transform:translateY(-2px);border-color:#4d7969;background:#112d25}.stack-card.simple .stack-card-head{align-items:center;margin:0 0 25px}.stack-card.simple .stack-card-head>span{color:var(--green);font-size:22px}.stack-card h2 .table-size{margin-left:7px;color:var(--muted);font:600 9px Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.04em;vertical-align:middle}.stack-source{position:absolute;top:10px;left:14px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.08em}.stack-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stack-stats>div{display:flex;align-items:baseline;gap:7px}.stack-stats strong{font-size:17px;font-variant-numeric:tabular-nums}.stack-stats small{color:var(--muted);font-size:11px}
.module-card { background:linear-gradient(145deg,#102821,#0c1d19); border:1px solid var(--line); padding:26px; border-radius:18px; animation:rise .5s both; animation-delay:var(--delay); }
.module-card.featured { border-color:#4a806c; background:linear-gradient(145deg,#15392e,#0c211b); }
.module-card > div:first-child { display:flex; justify-content:space-between; margin-bottom:24px; }
.module-card h2 { margin:7px 0 10px; font-size:24px; }.module-card > p:not(.eyebrow) { color:var(--muted); min-height:38px; font-size:11px; line-height:1.7; }
.module-card .wide { margin-top:14px; }
.simple-page-head{padding-bottom:24px}.simple-page-head .back{margin-bottom:24px}.simple-page-head h1{font-size:clamp(34px,5vw,48px);margin-bottom:7px}.module-card.simple-scenario{padding:24px}.module-card.simple-scenario>h2{margin:0 0 8px;font-size:22px}.module-card.simple-scenario>p:not(.eyebrow){min-height:0;margin:0;color:var(--muted);font-size:11px;line-height:1.6}.module-card.simple-scenario .module-progress-summary{margin:18px 0 0!important}.module-card.simple-scenario .workflow-entry-actions{margin-top:14px}.workflow-review-nav{display:flex;align-items:center;gap:9px;margin:0 0 10px}.workflow-review-nav button{padding:7px 11px;font-size:11px}.workflow-review-nav small{color:var(--muted);font-size:10px}.workflow-review-panel{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1fr);gap:18px;align-items:start}.workflow-review-copy{padding:22px;border:1px solid var(--line);border-radius:16px;background:#102821}.workflow-review-copy h2{margin:0 0 8px}.workflow-review-copy p,.workflow-review-copy small{color:var(--muted);line-height:1.6}
.module-progress-summary{display:flex!important;justify-content:flex-start!important;gap:8px;margin:17px 0 2px!important}.module-progress-summary span{padding:6px 9px;border-radius:7px;background:#ffffff08;color:var(--muted);font-size:10px}
.daily-recommendation,.combined-daily{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:900px;margin:0 auto 14px;padding:16px 18px;border:1px solid #31594b;border-radius:12px;background:#102820}.daily-recommendation>div,.combined-daily>div{display:flex;min-width:0;flex-direction:column;gap:3px}.daily-recommendation small{color:var(--green);font-size:9px;font-weight:700;letter-spacing:.12em}.daily-recommendation strong,.combined-daily strong{font-size:15px}.daily-recommendation span,.combined-daily span{color:var(--muted);font-size:10px}.daily-recommendation button,.combined-daily button{flex:none}.combined-daily{border-color:#29483e;background:#0c211b}.unit-daily-stats{display:flex;gap:7px;margin:12px 0}.unit-daily-stats span{padding:5px 7px;border-radius:6px;background:#ffffff08;color:var(--muted);font-size:9px}.unit-daily-stats strong{color:var(--text);font-size:11px}
.daily-drawer-list{display:grid;max-width:900px;margin:0 auto;gap:7px}.daily-position-drawer{position:relative;display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:#0c211b;color:var(--text);font-family:inherit;text-align:left;cursor:pointer;appearance:none;transition:border-color .15s,background .15s,transform .15s}.daily-position-drawer:hover{border-color:#477967;background:#102820;transform:translateY(-1px)}.daily-position-drawer.recommended-unit{border-color:#477967;background:#102820}.daily-position-drawer.combined-drawer{border-color:#344f46}.daily-drawer-main{display:flex;min-width:0;align-items:baseline;gap:12px}.daily-drawer-main h2{flex:none;margin:0;font-size:18px}.daily-drawer-main p{margin:0;overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.recommendation-badge{position:absolute;top:4px;right:31px;color:var(--green);font-size:8px;font-weight:700}.drawer-arrow{flex:none;color:var(--green);font-size:18px}
.scenario-card { background: linear-gradient(145deg, #102821, #0c1d19); border: 1px solid var(--line); padding: 26px; border-radius: 18px; animation: rise .5s both; animation-delay: var(--delay); transition: transform .2s, border-color .2s; }
.scenario-card:hover { transform: translateY(-3px); border-color: #4d7969; }
.hero-unit-card > .muted { min-height:38px; line-height:1.6; }
.hero-unit-card .workflow-entry-actions,.hero-unit-card > .wide { margin-top:22px; }
.hero-unit-card.locked-unit { opacity:.48; }
.hero-unit-card.locked-unit:hover { transform:none; border-color:var(--line); }
.unit-lock-note { margin-top:22px; padding:11px; border:1px dashed var(--line); border-radius:9px; color:var(--muted); text-align:center; font-size:11px; }
@keyframes rise { from { opacity:0; transform:translateY(8px); } }
.card-top { display:flex; justify-content:space-between; align-items:center; }.position-chip { display:grid; place-items:center; width:48px; height:32px; background:#173b30; color:var(--green); border-radius:8px; font-weight:800; font-size:12px; }
.scenario-card .position-chip { width:auto; min-width:48px; padding:0 10px; }
.status { font-size:11px; padding:6px 10px; border-radius:20px; color:var(--muted); background:#ffffff08; }.status.mastered { color:var(--green); background:#62e6a612; }.status.learning { color:var(--yellow); background:#eabf5b12; }
.scenario-card h2 { margin:22px 0 5px; font-size:24px; letter-spacing:-.03em; }.scenario-card h2 span, .page-head h1 span { font:italic 400 .7em Inter,ui-sans-serif,system-ui,sans-serif; color:var(--green); margin:0 5px; }
.muted { color:var(--muted); font-size:12px; }.scores { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:24px 0; }
.scores div { border-left:2px solid var(--line); padding-left:12px; }.scores small { display:block; color:var(--muted); font-size:10px; margin-bottom:4px; }.scores strong { font:600 22px Inter,ui-sans-serif,system-ui,sans-serif; }
.card-actions { display:flex; gap:10px; }.primary,.secondary,.ghost { border-radius:9px; padding:11px 16px; border:1px solid var(--line); color:white; background:transparent; font-weight:700; font-size:13px; }
.primary { color:#052016; background:var(--green); border-color:var(--green); }.secondary:hover,.ghost:hover { border-color:var(--green); }.card-actions button { flex:1; }.wide { width:100%; }
.primary:disabled,.secondary:disabled { color:#71857d; background:#24362f; border-color:#344a41; cursor:not-allowed; }
.layered-range-intro{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:22px;background:#03100dcc;backdrop-filter:blur(5px)}.layered-range-intro>section{width:min(100%,360px);padding:25px;border:1px solid #3b6657;border-radius:17px;background:#102820;box-shadow:0 24px 70px #0009}.layered-range-intro h2{margin:13px 0 8px;font-size:20px}.layered-range-intro p{margin:0 0 20px;color:#b3c6bf;font-size:12px;line-height:1.7}.layered-range-swatch{display:flex;gap:7px}.layered-range-swatch i,.layered-range-swatch b{display:block;width:31px;height:22px;border-radius:5px}.layered-range-swatch i{background:#78b9d4}.layered-range-swatch b{background:#d99855}
.layer-transition-note{position:fixed;left:50%;top:18px;z-index:170;max-width:calc(100vw - 24px);padding:9px 14px;border:1px solid #65b99a;border-radius:9px;background:#173a2f;color:#eafff6;box-shadow:0 8px 28px #0008;font-size:12px;font-weight:700;white-space:nowrap;opacity:0;transform:translate(-50%,-8px);transition:opacity .18s,transform .18s;pointer-events:none}.layer-transition-note.visible{opacity:1;transform:translate(-50%,0)}.layered-range-legend{order:3;display:flex;align-items:center;gap:5px;margin-left:16px;color:var(--muted);font-size:10px;white-space:nowrap}.layered-range-legend span{width:9px;height:9px;margin-left:6px;border-radius:2px}.layered-range-legend .passive{background:#78b9d4}.layered-range-legend .aggressive{background:#d99855}.layered-range-legend .fold{background:#263a33}
.page-head { display:flex; align-items:end; justify-content:space-between; padding-bottom:30px; }.page-head h1 { font-size:44px; }.back { border:0; background:none; color:var(--muted); padding:0; margin-bottom:30px; font-size:12px; }
.version-pill { border:1px solid var(--line); padding:8px 13px; border-radius:30px; color:var(--green); font-size:11px; text-transform:uppercase; }
.page-context { display:flex; align-items:center; gap:10px; padding-bottom:7px; }
.page-context strong { color:var(--green); font-size:11px; letter-spacing:.12em; white-space:nowrap; }
.study-layout,.recall-layout { display:grid; grid-template-columns:minmax(0, 1fr) 330px; gap:18px; align-items:start; }
.panel,.summary-panel,.range-copy,.tool-panel,.result-panel { background:#0c201b; border:1px solid var(--line); border-radius:18px; }
.grid-panel { padding:18px; overflow:auto; }.legend { display:flex; justify-content:flex-end; gap:10px; align-items:center; color:var(--muted); font-size:11px; margin-bottom:12px; }
.legend span { width:8px;height:8px;border-radius:2px;margin-left:10px; }.legend .call {background:var(--blue)}.legend [class~="3bet"]{background:var(--red)}.legend [class~="3bet_shove"]{background:#d47788}.legend [class~="4bet_shove"]{background:#d9935f}.legend .open{background:#d59b42}.legend .shove{background:#b480f5}.legend .fold{background:#344740}
.hand-grid { display:grid; grid-template-columns:repeat(13, minmax(42px, 1fr)); gap:4px; min-width:650px; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
.hand-grid * { user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
.hand { aspect-ratio:1; min-width:0; border:1px solid #29433a; border-radius:5px; color:#8ba098; background:#14251f; position:relative; font-size:clamp(9px, 1.1vw, 12px); font-weight:700; transition:filter .12s, transform .12s; -webkit-tap-highlight-color:transparent; }
.hand:focus{outline:none}.hand:focus-visible{outline:2px solid var(--green);outline-offset:1px}
.hand-grid .hand:not(:disabled) { touch-action:none; }
.hand.call { color:#dbeaff; background:#173d72; border-color:#3876ca; }.hand[class~="3bet"] { color:#ffe4e5; background:#712b34; border-color:#d65360; }
.hand.entry,.hand.open {color:#e4f5ff;background:#245f78;border-color:#78c6e4}
.hand.shove {color:#fff2dc;background:#744b1f;border-color:#e0a05c}.hand[class~="3bet_shove"]{color:#fff2dc;background:#74411f;border-color:#e58b58}.hand[class~="4bet_shove"]{color:#fff0e5;background:#71401f;border-color:#d9935f}
.hand:not(:disabled):hover { filter:brightness(1.28); transform:scale(1.04); z-index:2; }
@media(hover:none),(pointer:coarse){
  .hand:not(:disabled):hover{filter:none;transform:none;z-index:auto}
  .hand:not(:disabled):active{filter:brightness(1.12);transform:scale(.96);z-index:2}
  .workflow-choices button:not(:disabled):hover,.workflow-choices button:disabled:hover{border-color:var(--line);background:#132b24}
  .workflow-choices button:not(:disabled):active{border-color:var(--green);background:#17372d}
}
.hand.locked { opacity:.28; }
.hand.locked:not(.fold) { opacity:1; filter:saturate(.68) brightness(.9); }
.hand.correct { box-shadow:inset 0 0 0 2px var(--green); }.hand.missing { background:#6c551d; border-color:var(--yellow); color:#fff1c3; }.hand.extra { background:#722a31; border-color:var(--red); }.hand.wrong_action { background:#533071; border-color:var(--purple); }
.hand.change-added{background:#245f78;border-color:#78c6e4;color:#e5f8ff}.hand.change-removed{background:#775126;border-color:#dea65b;color:#fff1dc}
.hand.boundary-focus { background:#234d3f; border-color:var(--green); color:#e9fff5; box-shadow:0 0 0 1px #62e6a644; }
.hand.rule-eligible { border-color:#5a8173; box-shadow:inset 0 0 0 1px #5a817344; }
.layered-aggressive-matrix .hand.locked{opacity:.16!important;filter:saturate(.35) brightness(.62)!important}.layered-aggressive-matrix .hand.rule-eligible:not(.locked){z-index:1;opacity:1;filter:brightness(1.08);border-color:#78c6e4;box-shadow:none}.layered-aggressive-matrix .hand.rule-eligible:not(.locked):active{filter:brightness(1.25);box-shadow:none}
.hand-grid.focus-family .hand.family-dim{opacity:.16;filter:saturate(.3)}
.hand-grid.focus-family .hand.family-highlight{position:relative;z-index:1;box-shadow:inset 0 0 0 1px #62e6a688}
.hand.drag-target{z-index:3!important;box-shadow:inset 0 0 0 2px #e9fff5,0 0 0 2px #62e6a6!important}
.drag-range-hint{position:fixed;left:0;top:0;z-index:120;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;width:116px;padding:7px 9px;border:1px solid #8bd9c0;border-radius:10px;background:#102b24f2;color:#eafff6;box-shadow:0 8px 24px #0009;pointer-events:none;opacity:0}
.drag-range-hint.visible{opacity:1}.drag-range-hint.removing{border-color:#df858c;background:#382226f2}
.drag-range-hint small{font-size:9px;color:#8bd9c0}.drag-range-hint.removing small{color:#ef9aa1}
.drag-range-hint strong{grid-row:1/3;grid-column:2;font:700 23px Inter,ui-sans-serif,system-ui,sans-serif;align-self:center;margin-left:8px}
.drag-range-hint span{font-size:9px;color:#b3c6bf;white-space:nowrap}
.hand i { position:absolute; right:3px; top:1px; font-style:normal; font-size:9px; }
.study-aside,.recall-aside { display:flex; flex-direction:column; gap:12px; }.summary-panel,.tool-panel,.result-panel { padding:24px; }.summary-panel h2,.tool-panel h2 { margin:0 0 16px; font-size:19px; }
.big-score,.result-score { font:650 44px Inter,ui-sans-serif,system-ui,sans-serif; color:var(--green); margin-bottom:20px; }.big-score small,.result-score small { display:block; font:500 10px Inter,ui-sans-serif,system-ui,sans-serif; color:var(--muted); margin-top:4px; }
.metric { margin:18px 0; position:relative; padding-bottom:8px; border-bottom:2px solid #20342d; }.metric div {display:flex;justify-content:space-between;font-size:12px}.metric small { color:var(--muted);font-size:10px}.metric i {position:absolute;height:2px;bottom:-2px;left:0}.metric i.call{background:var(--blue)}.metric i.threebet{background:var(--red)}.metric i[class~="3bet_shove"]{background:#d47788}.metric i[class~="4bet_shove"]{background:#d9935f}.metric i.open{background:#d59b42}.metric i.shove{background:var(--purple)}
.range-copy { padding:18px; }.range-copy h3 { margin:0 0 9px;color:#72aaff;font-size:12px}.range-copy p{margin:0;color:#b7c7c1;line-height:1.6;font-size:11px}.threebet-copy h3{color:#fa7c85}.range-copy[class~="3bet_shove-copy"] h3{color:#ec91a1}.range-copy[class~="4bet_shove-copy"] h3{color:#e6a16f}.open-copy h3{color:#e8b868}.shove-copy h3{color:#c49bf5}
.scenario-nav { display:flex;justify-content:space-between;margin-top:18px}.scenario-nav button{border:0;background:none;color:var(--muted)}
.recall-top { display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.mode-tabs{display:flex;background:#0c201b;border:1px solid var(--line);padding:4px;border-radius:10px}.mode-tabs button{border:0;background:none;color:var(--muted);padding:8px 14px;border-radius:7px;font-size:12px}.mode-tabs button.active{background:#24483c;color:white}
.combo-counter {order:2;display:flex;align-items:baseline;gap:5px;margin-left:auto}.combo-counter small,.combo-counter span{color:var(--muted);font-size:11px}.combo-counter strong{font:700 14px Inter,ui-sans-serif,system-ui,sans-serif;font-variant-numeric:tabular-nums;color:var(--green)}.combo-counter b{margin-left:6px;padding-left:10px;border-left:1px solid var(--line);color:var(--green);font-size:13px;font-variant-numeric:tabular-nums}
.tools{display:grid;gap:8px}.tool{display:flex;justify-content:space-between;border:1px solid var(--line);background:#122a23;color:white;padding:12px;border-radius:8px;text-align:left}.tool.active.call{border-color:var(--blue);background:#173d72}.tool.active[class~="3bet"]{border-color:var(--red);background:#712b34}.tool.active[class~="3bet_shove"]{border-color:#d47788;background:#713849}.tool.active[class~="4bet_shove"]{border-color:#d9935f;background:#71401f}.tool.active.open{border-color:#d59b42;background:#684818}.tool.active.shove{border-color:var(--purple);background:#4d2d68}kbd{font-size:9px;background:#ffffff12;padding:2px 5px;border-radius:3px;color:var(--muted)}
.history-tools{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;margin:14px 0}.history-tools button{border:1px solid var(--line);background:none;color:var(--muted);padding:8px 2px;border-radius:6px;font-size:10px}.history-tools button:disabled{opacity:.35}
.hint{background:#132b24;padding:14px;border-radius:8px;margin:18px 0}.hint strong{font-size:11px}.hint p{font-size:10px;line-height:1.6;color:var(--muted);margin:5px 0 0}.submit{padding:13px}
.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.score-grid div{padding:12px;background:#132922;border-radius:8px}.score-grid strong{display:block;font:650 20px Inter,ui-sans-serif,system-ui,sans-serif}.score-grid span{font-size:9px;color:var(--muted)}
.feedback-group{border-left:2px solid var(--yellow);padding-left:10px;margin:16px 0}.feedback-group.extra{border-color:var(--red)}.feedback-group.wrong{border-color:var(--purple)}.feedback-group h3{font-size:11px;margin:0 0 5px}.feedback-group h3 span{margin-left:6px;color:var(--muted)}.feedback-group p{font-size:10px;color:#c4d1cc;line-height:1.6;margin:0;max-height:80px;overflow:auto}.result-actions{display:grid;gap:7px;margin-top:22px}
.study-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.boundary-layout { display:grid; grid-template-columns:380px minmax(0,1fr); gap:18px; align-items:start; }
.boundary-card,.boundary-complete { background:#0c201b; border:1px solid var(--line); border-radius:18px; padding:28px; }
.boundary-card > h2 { font:650 72px Inter,ui-sans-serif,system-ui,sans-serif; color:var(--green); margin:28px 0 5px; }
.boundary-card > p:not(.eyebrow) { color:var(--muted); font-size:13px; }
.boundary-progress { position:relative; display:flex; justify-content:space-between; padding-bottom:12px; margin-bottom:28px; border-bottom:2px solid #20342d; color:var(--muted); font-size:11px; }
.boundary-progress strong { color:var(--text); }.boundary-progress i { position:absolute; height:2px; background:var(--green); bottom:-2px; left:0; }
.boundary-choices { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin-top:24px; }
.boundary-choices button { padding:13px 8px; border:1px solid var(--line); border-radius:8px; background:#132b24; color:var(--text); font-weight:700; }
.boundary-choices button:not(:disabled):hover { border-color:var(--green); }.boundary-choices button.selected { border-color:var(--green); }
.boundary-feedback { margin-top:20px; padding:16px; border-radius:10px; background:#17372d; border-left:3px solid var(--green); }
.boundary-feedback.wrong-answer { background:#3a2325; border-color:var(--red); }.boundary-feedback p { color:var(--muted); font-size:10px; line-height:1.7; }
.boundary-feedback button { width:100%; margin-top:8px; }.boundary-complete { max-width:560px; margin:40px auto; text-align:center; }
.boundary-complete .result-score { margin-top:28px; }.boundary-complete > p { color:var(--muted); }.boundary-complete > div:last-child { display:flex; justify-content:center; gap:10px; margin-top:28px; }
.workflow-entry-actions { display:grid; grid-template-columns:1fr 1.3fr; gap:8px; margin-top:14px; }.workflow-entry-actions button { margin:0; }
.workflow-head { position:relative; display:flex; justify-content:space-between; align-items:end; padding-bottom:24px; margin-bottom:24px; border-bottom:2px solid #1c342c; }
.workflow-head h1 { margin:4px 0 0; font-size:38px; }.workflow-head > i { position:absolute; left:0; bottom:-2px; height:2px; background:var(--green); }
.workflow-head.compact { height:58px; align-items:center; padding:0 0 10px; margin-bottom:10px; gap:12px; }
.workflow-head.compact .back { margin:0; width:30px; height:30px; border:1px solid var(--line); border-radius:7px; }
.workflow-head.compact .eyebrow { margin:0 0 2px; font-size:9px; }.workflow-head.compact h1 { margin:0; font-size:20px; }
.workflow-count { text-align:right; }.workflow-count strong { display:block; font:700 24px Inter,ui-sans-serif,system-ui,sans-serif; font-variant-numeric:tabular-nums; color:var(--green); }.workflow-count span { color:var(--muted); font-size:10px; }
.workflow-head.compact .workflow-count { margin-left:auto; }.workflow-head.compact .workflow-count strong { font-size:18px; }
.workflow-instruction { margin:0 0 18px; }.workflow-instruction h2 { margin:0 0 8px; }.workflow-instruction > p:not(.eyebrow) { color:var(--muted); }
.boundary-range-instruction h2{margin-bottom:5px;font-size:16px;font-weight:600;line-height:1.35}.boundary-range-instruction>p:not(.eyebrow){margin:0;font-size:11px;line-height:1.45}
.facing-shove-head h1{font-size:22px;white-space:nowrap}
.matrix-recall-head h1{font-size:22px;white-space:nowrap}
.boundary-rule-panel{width:min(100%,900px)!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;padding:12px!important;overflow:hidden!important}
.boundary-rule-grid{width:100%!important;height:auto!important;min-width:0!important;grid-template-columns:repeat(var(--rule-count),minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:5px!important}
.boundary-rule-grid .hand{aspect-ratio:1;font-size:clamp(10px,1.15vw,14px)}
.copy-title-line { display:flex; align-items:baseline; gap:18px; overflow-x:auto; padding-bottom:5px; }
.copy-title-line h2 { margin:0; color:var(--text); white-space:nowrap; font-size:20px; line-height:1.5; }
.copy-rule-chips { display:flex; align-items:center; gap:7px; white-space:nowrap; }
.copy-rule-chips span { padding:3px 8px; border-radius:6px; color:#88a198; font-size:20px; line-height:1.5; font-weight:650; transition:background .2s,color .2s; }
.copy-rule-chips span.active { color:#062117; background:var(--green); box-shadow:0 0 16px #62e6a62b; }
.copy-rule-chips span.completed:not(.active) { color:#9fcbb9; background:#17372d; }
.copy-rule-chips span.completed::after { content:" ✓"; font-size:.72em; font-weight:850; }
.hand.copy-success-flash { animation:copySuccessFlash .8s ease-out both; }
@keyframes copySuccessFlash { 0%,100%{filter:none} 40%{filter:brightness(1.45);box-shadow:inset 0 0 0 2px #b8f8d8,0 0 8px #62e6a688} }
.copy-completion-toast{position:fixed;left:50%;top:50%;z-index:140;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 18px;border:1px solid #82dcb9;border-radius:11px;background:#102b24f5;color:#eafff6;box-shadow:0 10px 30px #0009;transform:translate(-50%,-50%);pointer-events:none;animation:copyToastIn .18s ease-out both}
.admin-stack-section{margin:18px 0 28px}.admin-stack-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.admin-stack-heading h2{margin:0;font-size:20px}.admin-stack-heading span{color:var(--muted);font-size:12px}.admin-position-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.admin-position-list button{flex:1 1 84px;padding:8px 7px;font-size:11px}
.copy-completion-toast strong{font-size:13px}.copy-completion-toast span{color:#a9c8bc;font-size:9px}
@keyframes copyToastIn{from{opacity:0;transform:translate(-50%,-44%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.choice-card { max-width:680px; margin:20px auto; padding:30px; background:#0c201b; border:1px solid var(--line); border-radius:18px; }
.choice-card > h2 { line-height:1.45; font-size:18px; }.workflow-choices { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:24px 0; }
.workflow-choices button { min-height:52px; padding:10px; border:1px solid var(--line); border-radius:9px; color:var(--text); background:#132b24; appearance:none; -webkit-appearance:none; -webkit-tap-highlight-color:transparent; }
.workflow-choices button:focus { outline:none; }
.workflow-choices button:focus-visible { outline:2px solid var(--green); outline-offset:2px; }
.workflow-choices button:not(:disabled):hover { border-color:var(--green); background:#17372d; }
.rule-choice-card{max-width:920px;padding:20px}.rule-choice-card .workflow-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:14px 0}.rule-choice-card .workflow-choices button{height:auto;min-height:42px;padding:8px 10px;font-size:12px;line-height:1.35;text-align:left}
.rule-chain-card{max-width:900px;padding:18px}.rule-chain-anchor{margin:-8px 0 14px;color:var(--muted);font-size:12px}.rule-chain-step{padding:10px 0;border-top:1px solid var(--line)}.rule-chain-step-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--text)}.rule-chain-step-title b{font-size:14px}.rule-chain-step-title b.correct{color:var(--green)}.rule-chain-step-title b.wrong{color:var(--red)}.rule-chain-step .workflow-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:7px 0}.rule-chain-step .workflow-choices button{min-height:36px;padding:6px 8px;font-size:11px;line-height:1.25;text-align:left}
.workflow-choices button.answer-selected { border-color:var(--green); background:#17372d; }
.workflow-subtitle{margin:0 0 3px;color:var(--muted);font-size:11px;font-weight:700;line-height:1.2}
@media (hover:none), (pointer:coarse) {
  .workflow-choices button:hover,
  .workflow-choices button:active,
  .workflow-choices button:focus,
  .workflow-choices button:focus-visible,
  .workflow-choices button:disabled:hover { border-color:var(--line)!important; background:#132b24!important; outline:none!important; }
  .workflow-choices button.answer-selected,
  .workflow-choices button.answer-selected:hover,
  .workflow-choices button.answer-selected:active,
  .workflow-choices button.answer-selected:focus { border-color:var(--green)!important; background:#17372d!important; }
}
.compact-feedback { margin:12px 0; padding:12px; border-radius:8px; background:#152b24; font-size:10px; line-height:1.6; max-height:120px; overflow:auto; }
.compact-feedback p { margin:4px 0; color:#c6d6d0; }.compact-feedback strong { color:var(--yellow); margin-right:5px; }.compact-feedback .all-correct { color:var(--green); font-size:12px; font-weight:700; }
.boundary-feedback small { display:block; margin-top:10px; color:var(--muted); }
.boundary-group-text { padding:14px; border-radius:8px; background:#132b24; color:var(--green); font-size:12px; line-height:1.7; }
.boundary-group-label { color:var(--green); font-size:15px; letter-spacing:.04em; }
.range-change-status{color:var(--yellow);font-size:10px;font-weight:700;white-space:nowrap}
.range-change-status.correct{color:var(--green)}
.range-change-instruction h2{font-size:16px;line-height:1.35}
.change-memory-stack{display:grid;grid-template-rows:24px 24px;gap:3px;margin-top:3px}
.change-memory-strip{display:block;width:100%;height:24px;margin:0;padding:2px 6px;overflow-x:auto;border:1px solid #29483e;border-radius:6px;background:#0e241e;color:#91aaa1;font-size:10px;line-height:18px;text-align:left;white-space:nowrap;scrollbar-width:none}
.change-memory-strip::-webkit-scrollbar{display:none}.change-memory-strip.empty{visibility:hidden}
.change-memory-strip.current{border-color:#62e6a6;background:#17372d;color:#dff9ed;box-shadow:inset 2px 0 0 var(--green)}
.range-change-summary-overlay{position:fixed;inset:0;z-index:220;display:grid;place-items:center;padding:18px;background:#03100dd9;backdrop-filter:blur(7px)}
.range-change-summary{width:min(430px,100%);max-height:min(620px,86dvh);display:flex;flex-direction:column;padding:22px;border:1px solid #416b5d;border-radius:16px;background:#0d211c;box-shadow:0 24px 70px #000b}
.range-change-summary h2{margin:0 0 14px;font-size:20px}.range-change-summary ul{min-height:0;margin:0 0 16px;padding:0;overflow:auto;list-style:none}
.range-change-summary li{display:flex;justify-content:space-between;gap:14px;padding:9px 4px;border-bottom:1px solid #ffffff0b;font-size:11px}.range-change-summary li strong{color:#86d4ef}.range-change-summary li.removed strong{color:#e2ad68}.range-change-summary li span{color:#d9e7e1;text-align:right}
.copy-completion-desktop{display:grid;gap:10px;margin-top:12px}.copy-completion-desktop p{margin:0;color:var(--green);font-size:11px;font-weight:700}
.workflow-compact .recall-top { margin-bottom:8px; }
.workflow-compact { overflow-anchor:none; }
.workflow-compact .recall-layout { grid-template-columns:minmax(500px, min(calc(100vh - 205px), 720px)) 250px; justify-content:center; gap:12px; }
.workflow-compact .grid-panel { padding:8px; }
.workflow-compact .hand-grid { min-width:500px; gap:3px; }
.workflow-compact .tool-panel { padding:15px; }.workflow-compact .tool-panel h2 { margin-bottom:8px; font-size:15px; }
.workflow-compact .hint { margin:10px 0; padding:9px; }.workflow-compact .result-score { font-size:30px; margin-bottom:8px; }

@media(min-width:851px){
  main:has(.workflow-compact) { padding-top:12px; padding-bottom:24px; }
  body:has(.workflow-compact) .topbar { height:52px; }
  body:has(.workflow-compact) footer { display:none; }
  .study-layout .grid-panel,.recall-layout .grid-panel{justify-self:center;width:min(100%,calc(100vh - 310px));min-width:0;overflow:hidden}
  .workflow-matrix .grid-panel{width:min(100%,calc(100vh - 345px))}
  .grid-panel .hand-grid{width:100%;min-width:0;grid-template-columns:repeat(13,minmax(0,1fr));grid-template-rows:repeat(13,minmax(0,1fr))}
  body:has(.boundary-range-page) .topbar,body:has(.boundary-range-page) footer{display:none}
  main:has(.boundary-range-page){height:100vh;height:100dvh;padding:6px 16px;overflow:hidden}
  .boundary-range-page{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
  .boundary-range-page .workflow-head{min-height:48px;align-items:center;margin-bottom:6px;padding-bottom:6px}
  .boundary-range-page .workflow-head .back{margin:0 0 4px;font-size:10px}
  .boundary-range-page .workflow-head h1{margin:0;font-size:23px;line-height:1.15}
  .boundary-range-page .workflow-count strong{font:700 17px Inter,ui-sans-serif,system-ui,sans-serif}
  .boundary-range-page .workflow-count span{display:none}
  .boundary-range-page .boundary-range-instruction{margin-bottom:5px}
  .boundary-range-page .boundary-range-instruction h2{margin-bottom:2px;font-size:14px;line-height:1.25}
  .boundary-range-page .boundary-range-instruction>p:not(.eyebrow){font-size:10px;line-height:1.25}
  .boundary-range-page .recall-layout{container-type:size;min-height:0;height:100%;grid-template-columns:minmax(0,1fr) 250px;justify-content:center;gap:12px;overflow:hidden}
  .workflow-matrix .grid-panel{width:min(60dvh,calc(100vw - 330px));height:auto;max-height:60dvh;aspect-ratio:1;justify-self:center;overflow:hidden}
  .boundary-range-page .grid-panel{padding:8px}
  .boundary-range-page .hand-grid{height:100%;gap:2px}
  .boundary-rule-page .recall-layout{align-items:start}
}
.mobile-tools{display:none}.center-state{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted)}.center-state h1{color:white}.loader{width:34px;height:34px;border:2px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.big-icon{font:700 44px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--red)}
@media(max-width:850px){main{padding:28px 14px 100px}.hero{padding:30px;min-height:220px}.hero-stat{display:none}.scenario-grid,.module-grid,.stack-grid{grid-template-columns:1fr}.study-layout,.recall-layout,.boundary-layout{grid-template-columns:1fr;min-width:0}.grid-panel{min-width:0}.grid-panel .hand-grid,.workflow-compact .grid-panel .hand-grid{width:100%;min-width:0;grid-template-columns:repeat(13,minmax(0,1fr));gap:1px}.study-aside{display:grid;grid-template-columns:1fr 1fr}.summary-panel{grid-row:span 2}.study-aside .wide{grid-column:1/-1}.boundary-card{order:1}.boundary-grid{order:2}.recall-aside{display:none}.mobile-tools{display:flex;position:fixed;left:0;right:0;bottom:0;padding:10px;background:#0a1916ee;backdrop-filter:blur(12px);border-top:0;z-index:10;gap:6px}.mobile-tools button{flex:1;padding:11px 4px;border:1px solid var(--line);background:#132b24;color:white;border-radius:8px;font-size:11px}.mobile-tools button.active{border-color:var(--green)}}
@media(max-width:850px){.mobile-tools button.primary{color:#052016;background:var(--green);border-color:var(--green)}.mobile-tools button.primary:disabled{color:#71857d;background:#24362f;border-color:#344a41}}
@media(max-width:560px){.topbar{height:60px;padding:0 14px;gap:10px}.brand{min-width:0}.brand>span:last-child{display:none}.account-menu{margin-left:auto;gap:5px}.account-menu>span{max-width:76px;margin-right:0}.account-menu button{padding:6px 7px}.top-meta{display:none}.hero{padding:25px 20px}.hero h1{font-size:40px}.scenario-card{padding:20px}.card-actions{flex-direction:column}.page-head{align-items:start}.page-head h1{font-size:34px}.page-context{padding-bottom:5px}.page-context strong{font-size:9px}.version-pill{display:none}.study-aside{display:flex}.recall-top{align-items:end}.mode-tabs button{padding:7px;font-size:10px}.combo-counter span,.combo-counter small{display:none}.hand-grid{width:100%;min-width:0;gap:1px}.panel.grid-panel{padding:0;border:0;border-radius:0;background:transparent;overflow:visible}.panel.grid-panel .hand-grid{background:#0a1713}.panel.grid-panel .hand{border:0;border-radius:0;background:#263a33;color:#b9c9c2;font-size:clamp(6px,2.15vw,9px)}.panel.grid-panel .hand.entry,.panel.grid-panel .hand.call,.panel.grid-panel .hand.threebet,.panel.grid-panel .hand[class~="3bet_shove"],.panel.grid-panel .hand[class~="4bet_shove"],.panel.grid-panel .hand.open,.panel.grid-panel .hand.shove{background:#78b9d4;color:#071d26;box-shadow:inset 0 0 0 1px #bce7f833}.panel.grid-panel .hand.missing{background:#d3b35b;color:#302507}.panel.grid-panel .hand.extra{background:#d4777e;color:#351115}.panel.grid-panel .hand.wrong_action{background:#a98bd2;color:#241333}.legend{justify-content:flex-start}.page-head p{font-size:11px}}
@media(max-width:560px){.panel.grid-panel .hand.shove,.panel.grid-panel .hand[class~="3bet_shove"],.panel.grid-panel .hand[class~="4bet_shove"]{background:#d99855;color:#271608;box-shadow:inset 0 0 0 1px #ffe1b044}.panel.grid-panel .hand i{left:2px;right:auto;top:1px;font-size:10px;font-weight:800;line-height:1}}
@media(max-width:560px){.layered-aggressive-matrix .panel.grid-panel .hand.rule-eligible:not(.locked){border:0;box-shadow:none}}
@media(max-width:600px){.boundary-rule-panel{width:100%!important;margin:12px 0 0!important;padding:0!important;overflow:visible!important}.boundary-rule-grid{height:auto!important;gap:2px!important}.boundary-rule-grid .hand{font-size:clamp(8px,2.5vw,11px)}}
@media(max-width:600px){.workflow-head.facing-shove-head h1{font-size:clamp(12px,3.8vw,15px)!important;white-space:nowrap}}
@media(max-width:600px){.workflow-head.matrix-recall-head h1{font-size:clamp(12px,3.8vw,15px)!important;white-space:nowrap}}
@media(max-width:600px){.workflow-head.scene-workflow-head h1{font-size:clamp(12px,3.8vw,15px)!important;white-space:nowrap}}
@media(max-width:600px){.daily-recommendation,.combined-daily{align-items:stretch;margin-bottom:10px;padding:13px;flex-direction:column;gap:10px}.daily-recommendation button,.combined-daily button{width:100%}}
@media(max-width:600px){.daily-position-drawer{padding:11px 12px}.daily-drawer-main{display:block}.daily-drawer-main h2{font-size:16px}.daily-drawer-main p{margin-top:3px;font-size:9px}}
@media(max-width:560px){.panel.grid-panel .hand.change-added{background:#78b9d4;color:#071d26}.panel.grid-panel .hand.change-removed{background:#d6a662;color:#2d1b06}}
@media(max-width:600px){
  .range-change-instruction h2{font-size:16px;line-height:1.3}
  .choice-card > h2{font-size:17px}
  .workflow-head:not(.compact){align-items:center;margin-bottom:8px;padding-bottom:8px}
  .workflow-head:not(.compact) .back{margin-bottom:6px}
  .workflow-head:not(.compact) h1{font-size:21px;line-height:1.2}
  .workflow-head:not(.compact) .eyebrow{margin-bottom:3px;font-size:8px}
  .workflow-head:not(.compact) .workflow-count strong{font-size:18px}
  .workflow-head:not(.compact) .workflow-count span{display:none}
  body:has(.workflow-matrix) .topbar,body:has(.workflow-matrix) footer{display:none}
  main:has(.workflow-matrix){padding-top:5px}
  .workflow-matrix .workflow-head:not(.compact){align-items:center;margin-bottom:8px;padding-bottom:8px}
  .workflow-matrix .workflow-head:not(.compact) .back{margin-bottom:6px}
  .workflow-matrix .workflow-head:not(.compact) h1{font-size:21px;line-height:1.2}
  .workflow-matrix .workflow-head:not(.compact) .eyebrow{margin-bottom:3px;font-size:8px}
  .workflow-matrix .workflow-head:not(.compact) .workflow-count strong{font-size:18px}
  .workflow-matrix .workflow-head:not(.compact) .workflow-count span{display:none}
  .workflow-matrix .workflow-instruction{margin-bottom:7px}
  .workflow-matrix.workflow-copy,.workflow-copy>*{min-width:0;max-width:100%}
  .workflow-matrix .copy-title-line{display:grid;grid-template-columns:auto minmax(0,1fr);width:calc(100% - 13px);max-width:calc(100% - 13px);margin-left:13px;gap:5px;padding-bottom:1px;overflow:hidden}
  .workflow-matrix .copy-title-line h2{flex:none;font-size:13px;line-height:1.3}
  .workflow-matrix .copy-rule-chips{min-width:0;flex-wrap:wrap;gap:2px;overflow:visible;white-space:normal}
  .workflow-matrix .copy-rule-chips span{white-space:nowrap}
  .workflow-matrix .copy-rule-chips span{padding:1px 3px;font-size:11px;line-height:1.3}
  html.workflow-viewport-locked,html.workflow-viewport-locked body{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none}
  html.workflow-viewport-locked #app{height:100%;overflow:hidden}
  html.workflow-viewport-locked main:has(.workflow-matrix){height:100vh;height:100dvh;padding:3px 10px 0;overflow:hidden}
  .workflow-fixed{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
  .workflow-copy{grid-template-rows:auto auto auto minmax(0,1fr)}
  .workflow-fixed.range-change-page{grid-template-rows:auto auto auto minmax(0,1fr)}
  .workflow-fixed.boundary-range-page{grid-template-rows:auto auto minmax(0,1fr) auto}
  .boundary-range-page .boundary-range-instruction h2{font-size:15px;font-weight:600;line-height:1.3}
  .workflow-fixed .recall-top{margin:0 0 3px 13px}
  .workflow-fixed .recall-layout{container-type:size;display:flex;align-items:flex-start;justify-content:center;min-height:0;overflow:hidden}
  .workflow-fixed .grid-panel{width:min(calc(100% - 13px),calc(100cqh - 13px));height:auto;max-width:100%;aspect-ratio:1;padding:0;margin:0 0 0 13px;overflow:hidden;transform:none}
  .workflow-fixed .hand-grid{width:100%;height:100%;min-width:0;grid-template-rows:repeat(13,minmax(0,1fr));gap:1px}
  .workflow-fixed .hand{aspect-ratio:1}
  .workflow-fixed .mobile-tools{position:fixed;left:10px;right:10px;bottom:auto;display:flex;padding:0;gap:4px;background:transparent;border:0;backdrop-filter:none;transform:translateY(-50%)}
  body:has(.workflow-compact) .topbar,body:has(.workflow-compact) footer{display:none}
  body:has(.workflow-compact){overflow:hidden}
  main:has(.workflow-compact){height:100vh;height:100dvh;padding:3px 10px 0;overflow:hidden}
  .workflow-compact{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
  .workflow-compact .workflow-head.compact{position:relative;top:auto;z-index:2;display:grid;grid-template-columns:28px minmax(0,1fr) auto;min-height:43px;height:auto;margin:0 -5px 3px;padding:3px 6px 5px;background:#071512f5;border-bottom-color:#315348}
  .workflow-compact .workflow-head.compact > div:nth-child(2){min-width:0}
  .workflow-compact .workflow-head.compact h1{display:block;margin:0;color:var(--text);font-size:clamp(12px,3.5vw,16px);line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .workflow-compact .workflow-head.compact .eyebrow{font-size:8px}
  .workflow-compact .workflow-head.compact .back{width:27px;height:27px}
  .workflow-compact .workflow-head.compact .workflow-count{align-self:center}
  .workflow-compact .recall-top{height:34px;margin:0 0 3px 13px}
  .workflow-compact .mode-tabs{padding:2px}
  .workflow-compact .mode-tabs button{padding:6px 8px}
  .workflow-compact .combo-counter strong{font-size:14px}
  .workflow-compact .combo-counter b{font-size:10px;margin-left:3px;padding-left:6px}
  .workflow-compact .recall-layout{container-type:size;display:flex;align-items:flex-start;justify-content:center;min-height:0;overflow:hidden}
  .workflow-compact .grid-panel{width:min(calc(100% - 13px),calc(100cqh - 13px));height:auto;max-width:100%;aspect-ratio:1;padding:0;margin:0 0 0 13px;overflow:hidden;transform:none}
  .workflow-compact .hand-grid{width:100%;height:100%;min-width:0;grid-template-rows:repeat(13,minmax(0,1fr));gap:1px;background:#0a1713}
  .workflow-compact .hand{aspect-ratio:1;border:0;border-radius:0;background:#263a33;color:#b9c9c2;font-size:clamp(7px,2.25vw,10px)}
  .workflow-compact .hand.entry,.workflow-compact .hand.call,.workflow-compact .hand.threebet,.workflow-compact .hand[class~="3bet_shove"],.workflow-compact .hand[class~="4bet_shove"],.workflow-compact .hand.open,.workflow-compact .hand.shove{border:0;background:#78b9d4;color:#071d26;box-shadow:inset 0 0 0 1px #bce7f833}
  .workflow-compact .hand.shove,.workflow-compact .hand[class~="3bet_shove"],.workflow-compact .hand[class~="4bet_shove"]{background:#d99855;color:#271608;box-shadow:inset 0 0 0 1px #ffe1b044}
  .workflow-compact .hand.missing{background:#d3b35b;color:#302507}
  .workflow-compact .hand.extra{background:#d4777e;color:#351115}
  .workflow-compact .hand.wrong_action{background:#a98bd2;color:#241333}
  .workflow-compact .mobile-tools{position:fixed;left:10px;right:10px;bottom:auto;display:flex;padding:0;gap:4px;background:transparent;border:0;backdrop-filter:none;transform:translateY(-50%)}
  .workflow-compact .mobile-tools button{padding:8px 3px}
  .workflow-fixed .mobile-tools.workflow-submit-area,.workflow-compact .mobile-tools.workflow-submit-area{height:0;transform:none;overflow:visible}
  .workflow-fixed .mobile-tools.workflow-mobile-feedback,.workflow-compact .mobile-tools.workflow-mobile-feedback{justify-content:center;transform:translateY(calc(-100% - 8px))}
  .workflow-submit-row{position:absolute;left:0;right:0;top:0;display:flex;justify-content:center;transform:translateY(-50%)}
  .workflow-submit-row button{flex:none;width:var(--submit-width,72%);min-height:44px;padding:10px 14px}
  .workflow-submit-meta{position:absolute;left:0;right:0;bottom:30px;display:flex;flex-direction:column;align-items:center;gap:5px;pointer-events:none}
  .workflow-feedback-line{display:flex;align-items:center;justify-content:center;gap:7px;max-width:100%;white-space:nowrap}
  .workflow-feedback-line:empty{display:none}
  .workflow-action-row{display:flex;justify-content:center;gap:4px;width:min(var(--submit-width,72%),280px);pointer-events:auto}
  .workflow-action-row button{flex:1;padding:6px 4px}
  .workflow-submit-meta .mobile-accuracy{min-width:auto;flex-direction:row;gap:4px}
  .workflow-submit-meta .mobile-accuracy b{font:700 12px Inter,sans-serif}
  .workflow-submit-meta .correction-status{flex:none;width:auto;min-width:0;flex-direction:row;align-items:center;gap:5px}
  .workflow-submit-meta .correction-status strong{font-size:10px}
  .workflow-submit-meta .correction-status span{font-size:9px}
  .copy-completion-desktop{display:none}
  .workflow-mobile-feedback{display:flex;align-items:center;color:var(--green);font-size:11px;font-weight:700}
  .workflow-mobile-feedback .compact-feedback{min-width:0;max-height:52px;margin:0;padding:5px 7px;overflow:auto}
  .workflow-mobile-feedback > strong{font:700 24px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--green)}
  .workflow-mobile-feedback > span{white-space:nowrap;color:var(--muted)}
  .mobile-accuracy{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:54px}
  .mobile-accuracy small{font-size:8px;color:var(--muted)}
  .mobile-accuracy b{font:700 17px Inter,ui-sans-serif,system-ui,sans-serif;color:var(--yellow)}
  .correction-status{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center}
  .correction-status strong{font-size:11px;color:var(--yellow)}
  .correction-status span{overflow:hidden;color:var(--muted);font-size:8px;white-space:nowrap;text-overflow:ellipsis}
}
