/* HoldemSim house system: game first, learning on demand. Loaded after legacy room skins. */
:root{--bg:#101512;--panel:#17201b;--panel2:#1d2b23;--text:#f2efe5;--surface:var(--panel);--surface2:var(--panel2);--fg:var(--text);--muted:#b1beb3;--line:rgba(222,200,148,.13);--line-strong:#6f8273;--accent:#acdcbf;--accent-ink:#11291d;--gold:#dec894;--good:#88d9b0;--warn:#e7c783;--bad:#f39a96;--info:#a4c9f0;--body:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--display:'Bricolage Grotesque',var(--body);--mono:'IBM Plex Mono',ui-monospace,monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius:12px;--motion-fast:150ms;--motion-standard:220ms;color-scheme:dark}
html{scroll-padding-top:24px}body,body.final-table-active{background:var(--bg);color:var(--fg);font:16px/1.6 var(--body);padding-top:0}.wrap,body.final-table-active .wrap{max-width:1440px}a{color:var(--accent);text-underline-offset:4px}button,input,select,textarea{font-family:var(--body)}button,summary{touch-action:manipulation}button:not(:disabled),summary{cursor:pointer}button,select,input:not([type=checkbox]):not([type=range]){min-height:44px}input,select,textarea{max-width:100%}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:4px}button:disabled{cursor:not-allowed}button{transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}button:active:not(:disabled){filter:brightness(.92);transform:none!important}h1,h2,h3{font-family:var(--display);text-wrap:balance}p{overflow-wrap:break-word}.skip-link{position:absolute;top:-100px;left:20px;z-index:1000;padding:12px 20px;background:var(--accent);color:var(--accent-ink);border-radius:8px}.skip-link:focus{top:12px}
.site-header{display:grid;grid-template-columns:1fr auto;gap:20px;margin:0 0 24px;padding:24px 0 0;border-bottom:1px solid var(--line)}.site-header .brand{font:700 24px/1.2 var(--display);letter-spacing:-.7px;color:var(--fg);display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:36px;height:40px;color:var(--accent)}.brand-mark svg{width:32px;height:32px}.brand-subtitle{display:block;font:12px/1.6 var(--body);letter-spacing:.06em;color:var(--muted);margin-top:4px}.site-header .hright{display:contents}.site-header .authbox{justify-content:flex-end;align-self:center;max-width:100%;font-size:14px}.site-header .tabs{grid-column:1/-1;display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;padding-top:0}.site-header .tabs button{position:relative;background:transparent;border:0;border-radius:8px 8px 0 0;padding:12px 16px 16px;min-height:52px;color:var(--muted);font:500 14px/1.4 var(--body);white-space:nowrap}.site-header .tabs button.on{background:var(--panel);color:var(--fg)}.site-header .tabs button.on:after{content:'';position:absolute;bottom:-1px;left:16px;right:16px;height:3px;background:var(--accent);border-radius:3px}.site-header .tabs button:hover{color:var(--fg);background:var(--panel2)}.site-header .tabs .nav-divider{margin-left:20px}.authbox .btn,.btn,#v-table .btn{background:var(--panel2);border:1px solid var(--line-strong);border-radius:8px;color:var(--fg);font:600 14px/1.4 var(--body);padding:10px 16px;min-height:44px}.btn.primary,#v-table .btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.ghost{background:transparent}.btn.warn,#v-table .btn.warn{background:var(--warn-bg);color:var(--warn)}.btn.danger,#v-table .btn.danger{background:var(--bad-bg);color:var(--bad)}.authbox input,.field input,.field select,.ctrl select,#v-table .ctrl select,.actions input{background:var(--bg);border:1px solid var(--line-strong);color:var(--fg);border-radius:8px;padding:10px 12px;font-size:16px}.authbox form{flex-wrap:wrap;justify-content:flex-end}.authbox input{width:210px}
.room-heading,.training-heading{padding:8px 0 24px;margin:0;border:0;border-radius:0;background:transparent;gap:24px}.room-heading>span,.training-heading span{font:600 12px/1.6 var(--body);letter-spacing:.14em;color:var(--accent)}.room-heading h1,.training-heading h1{font:700 clamp(28px,3vw,40px)/1.15 var(--display);color:var(--fg);letter-spacing:-1px;margin:8px 0}.room-heading p,.training-heading p{font:16px/1.6 var(--body);color:var(--muted);margin:0}.training-stakes{font:500 24px/1.2 var(--mono);color:var(--gold);flex-shrink:0}.training-stakes small{font:12px/1.6 var(--body);letter-spacing:.08em;color:var(--muted)}.panel,#v-table .panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.panel h2,#v-table .panel h2{font:600 18px/1.4 var(--display);letter-spacing:0;color:var(--fg);margin:0 0 16px;text-transform:none}.stack{gap:16px}#v-table .grid{grid-template-columns:minmax(0,2.15fr) minmax(300px,1fr);gap:24px}.lab{gap:24px}.eyebrow,#v-table .eyebrow,.field label{font-size:12px;line-height:1.5;letter-spacing:.06em;color:var(--muted)}.sub,.small,.note,.readsub,.msg{color:var(--muted);font-size:14px;line-height:1.65}.read{font-size:16px}#v-table .twin,.twin{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:16px;gap:16px}.bignum,.midnum,#v-table .bignum,#v-table .twin .bignum{font-family:var(--mono);color:var(--fg)}#v-table .advice.idle{background:var(--panel2);border-color:var(--line);color:var(--fg)}#v-table .advice{border-radius:8px}.advice .big{font-family:var(--display)}#v-table .ctrl{border-color:var(--line);font-size:14px;align-items:center;gap:16px}#v-table .ctrl label{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#v-table .ticker,#v-table .streaks{border-color:var(--line)}#v-table .ticker{font-size:14px}#v-table .tablewrap{background:radial-gradient(ellipse at 50% 40%,#263e36,var(--bg) 80%)}#v-table .seat .plate{background:var(--panel);border-color:var(--line-strong)}#v-table .seat.turn .plate,#v-table .seat.nxt .plate{border-color:var(--accent);outline-color:var(--accent)}#v-table .seat .st{color:var(--gold)}#v-table .seat .nm{color:var(--fg)}#v-table .seat .pers{color:var(--muted)}#v-table .pot{font-family:var(--mono);color:var(--gold)}#v-table .felt:before{font-family:var(--body)}.seat .nx{background:var(--accent);color:var(--accent-ink)}.vtip{font-size:12px;color:var(--info)}
/* Native disclosures preserve keyboard behavior and leave game state mounted. */
.disclosure{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow:clip}.disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:18px 20px;min-height:60px;font:600 16px/1.5 var(--body);color:var(--fg)}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:'+';flex-shrink:0;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line-strong);border-radius:50%;font:400 20px/1 var(--body);color:var(--accent)}.disclosure[open]>summary:after{content:'−'}.disclosure>summary:hover{background:var(--panel2)}.disclosure>summary small{display:block;font:400 13px/1.5 var(--body);color:var(--muted);margin-top:3px}.disclosure[open]>summary{border-bottom:1px solid var(--line)}.disclosure-body{padding:20px}.disclosure-body>h2:first-child{margin-top:0}.coach-detail{border-width:1px 0 0;border-radius:0;margin-top:20px;background:transparent}.coach-detail>summary{padding:16px 0}.coach-detail>.disclosure-body{padding:4px 0 0}.coach-detail .chipsplit{margin-top:12px}.lesson{font:16px/1.8 var(--body);color:var(--fg);max-width:72ch}.lesson b{color:var(--fg)}.lesson p{margin-bottom:16px}.lesson li{margin-bottom:12px}.lesson a{color:var(--accent)}.lesson ol,.lesson ul{padding-left:24px}.learning-panels{display:grid;gap:12px;max-width:960px}.learning-panels .disclosure>summary{padding:24px}.learning-panels .disclosure-body{padding:24px}.learning-library{margin-top:32px}.learning-library>summary{padding:22px 24px}.library-content{max-width:800px;margin:auto;padding:28px 24px;font:16px/1.8 var(--body);color:var(--muted)}.library-content h2{font:600 26px/1.3 var(--display);color:var(--fg);margin:32px 0 16px}.library-content h3{font:600 19px/1.4 var(--display);color:var(--fg)}.library-content>h2:first-child{margin-top:0}.library-content li{margin:12px 0}.library-content .faq{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.library-content .faq>summary{padding:18px 0}.library-content .faq>.disclosure-body{padding:0 0 20px}.library-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none}.library-links li{margin:0}.library-links a{display:block;height:100%;padding:20px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:500;line-height:1.5}.library-links a:hover{border-color:var(--accent)}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding:24px 0;margin-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.site-footer p{margin:0}.site-footer a{color:var(--muted)}
/* Secondary rooms share the same typography, forms and surface system. */
.lab-card-picker fieldset,.lab-board-coach{background:var(--panel2);border-color:var(--line);border-radius:8px}.lab-card-picker legend,.lab-board-coach h3{color:var(--fg)}.lab-card-picker label,.lab-board-coach p,.lab-board-selectors label{color:var(--muted);font-size:14px}.lab-card-picker select,.lab-board-selectors select{background:var(--bg);color:var(--fg);border-color:var(--line-strong);font-size:16px}.lab-board-coach h3{font:600 20px var(--display)}.lab-street-steps button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.lab-board-picker{border-color:var(--line)}.pgrow .nm{color:var(--fg)}.pgbar{background:var(--panel2);border-color:var(--line)}.pgbar i{background:var(--accent)}.modal,.pcard{background:var(--panel);border-color:var(--line-strong);border-radius:var(--radius);color:var(--fg)}.modal h3,.pcard .pn{font-family:var(--display);color:var(--fg)}.evrow{background:var(--panel2);border-color:var(--line)}.ft-cinema{font-family:var(--body);background:var(--panel);border-color:var(--line);border-radius:var(--radius);margin-bottom:24px}.ft-marquee{background:var(--panel)}.ft-event h1{font:600 clamp(24px,2.8vw,36px)/1.2 var(--display);color:var(--fg)}.ft-prize strong{font-family:var(--mono);font-size:26px}.ft-overline{font:600 12px/1.5 var(--body);letter-spacing:.12em;color:var(--gold)}.ft-control-deck,.ft-toolbar,.ft-broadcast,.ft-voice-settings{background:var(--panel);border-color:var(--line)}.ft-toolbar{gap:12px 20px;font-size:14px}.ft-toolbar label{display:flex;gap:8px;align-items:center}.ft-toolbar select,.ft-voice-settings select{background:var(--bg);color:var(--fg);border-color:var(--line-strong);font-size:14px}.ft-voice-settings{font-size:14px}.ft-voice-settings summary{min-height:44px;align-content:center}.ft-voice-settings p{color:var(--muted)}.ft-review,.ft-run-history,.ft-dossier{background:var(--panel);border-color:var(--line);color:var(--fg)}.ft-review h2,.ft-run-heading h2{font-family:var(--display);color:var(--fg)}.ft-run-history p,.ft-review-note{color:var(--muted);font-size:14px}.ft-gold-button{font-family:var(--body);border-radius:8px}.ft-commentator{background:var(--panel);border-color:var(--line)}.ft-commentator p{font-size:14px;color:var(--fg)}#v-leaderboard .ft-review{border-radius:var(--radius);border-color:var(--line)}#v-leaderboard h1{font:600 clamp(28px,3vw,40px)/1.2 var(--display);color:var(--fg)}#v-leaderboard button,#weeklyBanner button{font:600 14px/1.4 var(--body);border-radius:8px;min-height:44px}#v-leaderboard details>summary{min-height:44px;align-content:center}#lbJoin input{font-size:16px;background:var(--bg);color:var(--fg);border-color:var(--line-strong)}#lbProgress{background:var(--panel2)}
@media(max-width:1050px){#v-table .grid{grid-template-columns:minmax(0,1fr)}#v-table .grid>.stack:last-child{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}.site-header .tabs button{padding-inline:12px}.site-header .tabs .nav-divider{margin-left:8px}}
@media(max-width:700px){body{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}.site-header{grid-template-columns:1fr;gap:16px;padding-top:20px;margin-bottom:20px}.site-header .brand{font-size:24px}.site-header .authbox{justify-content:flex-start}.authbox form{justify-content:flex-start}.site-header .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.site-header .tabs button{font-size:13px;padding:12px 5px;min-width:0;border-radius:8px;white-space:normal}.site-header .tabs button.on:after{bottom:0;left:20%;right:20%}.site-header .tabs .nav-divider{margin:0}.training-heading{align-items:flex-start;padding-bottom:20px;gap:12px}.training-heading p{font-size:14px}.training-heading span{font-size:10px;letter-spacing:.1em}.training-heading h1{font-size:30px}.training-stakes{font-size:18px;padding-top:4px}.training-stakes small{font-size:10px;max-width:9em;letter-spacing:0;white-space:normal}.room-heading{padding-bottom:20px}.panel,#v-table .panel{padding:20px}#v-table .grid>.stack:last-child{display:flex;flex-direction:column}#v-table .grid>.stack:last-child>*{width:100%}.lab{gap:16px}.library-links{grid-template-columns:1fr}.library-content{padding:24px 20px}.disclosure>summary,.learning-panels .disclosure>summary{padding:18px}.learning-panels .disclosure-body{padding:20px}.ft-marquee{padding:20px;flex-wrap:wrap}.ft-table-status{font-size:12px}.ft-prize strong{font-size:22px}.ft-toolbar{padding:16px}.ft-voice-settings{padding:12px 16px}.ft-voice-settings label{display:flex;flex-wrap:wrap}.ft-voice-settings select{width:100%;max-width:100%}.site-footer{font-size:13px}.authbox input{width:min(210px,100%)}.hbar{font-size:12px}.note{font-size:14px}.site-header .brand-subtitle{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Legacy tournament skin hid the old SEO main; the room landmark now contains games. */
body.final-table-active main#gameRooms{display:block}

/* Keep a full hand and its actions in view on a typical laptop. */
@media(min-width:701px){.site-header{padding-top:16px;gap:12px;margin-bottom:16px}.site-header .tabs button{min-height:48px;padding-top:10px;padding-bottom:12px}.training-heading{padding:4px 0 20px}.training-heading h1{font-size:32px}.training-heading p{font-size:14px}#v-table .tablewrap{aspect-ratio:auto;height:clamp(390px,50vh,490px);min-height:390px}}

.admin-page{padding:24px 16px}.admin-page .wrap{max-width:1200px}.admin-page h1{font:600 30px/1.3 var(--display);margin-bottom:24px}.admin-page h2{font-size:22px}.admin-page .bar{height:auto;gap:12px}.admin-page .tot{gap:16px}.admin-page .tot div{padding:20px}.admin-page .tot span{font-size:12px}.admin-page th,.admin-page td{padding:14px 12px}.admin-page p{max-width:80ch}.admin-page input{min-width:0;font-size:16px}.admin-page .scroll{border:1px solid var(--line);border-radius:8px}

@media(max-width:700px){.site-header{grid-template-columns:minmax(0,1fr) auto;column-gap:8px}.site-header .brand{font-size:21px;gap:8px}.site-header .brand-mark{width:28px}.site-header .brand-subtitle{font-size:9px;letter-spacing:.04em}.site-header .authbox{justify-content:flex-end}.site-header .authbox:has(form){grid-column:1/-1}.authbox .btn{padding-inline:12px}.site-header .tabs{grid-column:1/-1}}

/* Three-tier game hierarchy. Primary numbers lead; context and decoration recede. */
:root{--t1-size:1.5rem;--t1-weight:700;--t1-opacity:1;--t1-color:#fff;--t2-size:.875rem;--t2-weight:500;--t2-opacity:.7;--t2-color:#fff;--t3-size:.625rem;--t3-weight:400;--t3-opacity:.4;--t3-color:#fff}
.t1{font-size:var(--t1-size);font-weight:var(--t1-weight);color:var(--t1-color);opacity:var(--t1-opacity)}.t2{font-size:var(--t2-size);font-weight:var(--t2-weight);color:var(--t2-color);opacity:var(--t2-opacity)}.t3{font-size:var(--t3-size);font-weight:var(--t3-weight);color:var(--t3-color);opacity:var(--t3-opacity);text-transform:uppercase;letter-spacing:.05em}

.guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.guide-cards li{margin:0}
.guide-cards a{display:flex;flex-direction:column;gap:10px;height:100%;padding:22px 22px 20px;border:1px solid var(--guide-line,var(--line));border-radius:10px;background:var(--guide-panel,var(--panel2));color:var(--guide-text,var(--fg));text-decoration:none;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}
.guide-cards a:hover{border-color:rgba(136,217,176,.55);background:var(--guide-panel2,var(--panel))}
.guide-card-title{font:600 19px/1.28 "Bricolage Grotesque","IBM Plex Sans",sans-serif;letter-spacing:-.02em}
.guide-card-desc{color:var(--guide-muted,var(--muted));font-size:14px;line-height:1.55}
.guide-card-go{margin-top:auto;padding-top:6px;color:var(--guide-accent,var(--accent));font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.learn-all{margin:14px 0 24px;font-size:14px}
.learn-all a{color:var(--accent);text-underline-offset:4px}
.learn-guides{margin-bottom:8px}
@media(max-width:900px){.guide-cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.guide-cards a{transition:none}}
.resources-link{color:var(--muted);font-size:14px;font-weight:600;text-decoration:none;align-self:center;padding:10px 4px;min-height:44px;display:inline-flex;align-items:center}
.resources-link:hover{color:var(--accent)}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;grid-column:3;grid-row:1;min-width:0}
@media(max-width:700px){.header-actions{grid-column:2;gap:4px}.resources-link{font-size:13px;padding-inline:6px}.header-actions .authbox{max-width:none}}
