@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Noto+Sans+SC:wght@400;450;500;550;600;650;700&display=swap');
:root{--bg:#101312;--side:#141715;--panel:#191d1a;--line:#2b302c;--text:#eef1eb;--muted:#828b80;--lime:#d6f68b;--green:#659d78;--red:#cf7771;--blue:#5b7c9d;--radius:12px;font-family:'DM Sans','Noto Sans SC',sans-serif;color:var(--text);font-synthesis:none;background:var(--bg)}*{box-sizing:border-box}body{margin:0;font-size:13px}button,input,select{font:inherit}button,a,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{cursor:wait;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:4px}svg{width:20px;height:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}button{transition:background .18s,color .18s,transform .18s}button:hover{filter:brightness(1.1)}.app-shell{display:grid;grid-template-columns:216px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;width:216px;height:100dvh;padding:32px 18px 20px;background:var(--side);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:0 12px;font-weight:700;font-size:25px;letter-spacing:-1.3px}.brandmark{width:29px;height:33px;color:var(--lime);display:grid;place-items:center;font-size:34px;transform:rotate(-10deg)}.brand em{font-style:normal;color:var(--lime)}.webtag{font-size:9px;font-weight:500;color:#9aa18f;border:1px solid #424c39;border-radius:4px;padding:2px 4px;letter-spacing:.6px;margin-left:1px;align-self:center}.nav-label{font-size:10px;letter-spacing:1.7px;color:#646f63;padding:0 15px;margin:45px 0 15px}.nav{display:grid;gap:6px}.nav button{display:flex;align-items:center;gap:12px;text-align:left;height:45px;border-radius:7px;color:#9bA498;padding:0 14px;font-weight:500}.nav button svg{width:19px}.nav button.active{background:#293321;color:var(--lime)}.nav button:hover{background:#252b24}.nav button .small-badge{margin-left:auto;font-size:9px;padding:2px 5px;background:#3e4933;border-radius:4px}.sidebar-bottom{margin-top:auto}.upgrade{margin:28px 2px 20px;padding:18px 14px;border:1px solid #39422e;border-radius:10px;background:linear-gradient(130deg,#252d20,#1a2019)}.upgrade .tiny{color:var(--lime);font-size:10px;letter-spacing:1.2px}.upgrade h4{font-weight:550;font-size:14px;margin:12px 0 6px}.upgrade p{color:#8b9584;font-size:11px;line-height:1.8;margin:0 0 16px}.upgrade button{width:100%;height:33px;border:1px solid #4d5a3d;border-radius:5px;font-size:11px;color:#d6e6ba}.profile{border-top:1px solid var(--line);padding:19px 10px 0;display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#333c2e;font-size:11px;color:#d9e6ca}.profile strong{display:block;font-size:12px;font-weight:500}.profile span{display:block;color:var(--muted);font-size:10px;margin-top:4px}.profile>button{margin-left:auto;color:var(--muted)}.main-shell{grid-column:2;min-width:0}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px}.breadcrumb{display:flex;align-items:center;gap:12px;color:#858e82;font-size:12px}.breadcrumb strong{color:#c8cec2;font-weight:400}.top-actions{display:flex;align-items:center;gap:22px;font-size:11px;color:#a5ad9e}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);display:inline-block;margin-right:7px}.top-actions button{color:#9da693}.round-avatar{border:1px solid #46503c;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;font-size:10px;background:#252e21;color:#d3e4bc}.main{max-width:1600px;margin:auto;padding:31px 36px 20px}.heading-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--lime);font-weight:500;margin-bottom:9px}.heading-row h1{font-size:28px;letter-spacing:-.5px;font-weight:550;margin:0 0 9px}.heading-row p{font-size:12px;color:#8d9687;margin:0}.heading-actions{display:flex;gap:9px}.button{height:37px;padding:0 15px;border-radius:6px;font-size:11px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #3a4135;background:#1c211a}.button svg{width:15px;height:15px}.button.primary{background:var(--lime);color:#253019;border-color:var(--lime)}.button.primary:hover{background:#e4ffad;transform:translateY(-1px)}.button.ghost{background:transparent}.filterbar{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);background:#171b17;padding:13px 17px;border-radius:9px;margin-bottom:22px;gap:15px}.filter-group{display:flex;gap:25px;align-items:center}.field label{display:block;font-size:9px;color:#7e8976;margin-bottom:6px}.field select{color:#d6ddcf;background:transparent;border:0;font-size:12px;min-width:86px;cursor:pointer;outline:none}.field select option{background:var(--panel)}.filter-divider{height:31px;width:1px;background:var(--line)}.mode-toggle{padding:4px;background:#10140f;border:1px solid #2a3127;border-radius:6px;display:flex}.mode-toggle button{padding:7px 13px;font-size:10px;color:#929c88;border-radius:4px}.mode-toggle button.active{background:#303b27;color:#d7efb5}.workspace{display:grid;grid-template-columns:minmax(400px,1fr) 320px;gap:20px;align-items:start}.range-panel,.context-panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-header{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line)}.panel-title{font-size:13px;font-weight:550;display:flex;align-items:center;gap:8px}.panel-title .chip{font-size:10px;background:#303c27;color:#d4edb0;padding:4px 7px;border-radius:4px;font-weight:500}.muted{color:var(--muted)}.panel-header .muted{font-size:10px}.icon-button{color:#8e9984;padding:5px}.icon-button svg{height:16px;width:16px}.range-body{padding:18px}.matrix{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:3px;aspect-ratio:1.13}.hand{position:relative;display:flex;align-items:center;justify-content:center;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:550;color:#dfe8dc;border-radius:3px;min-width:0;padding:0;transition:filter .12s,transform .12s;isolation:isolate}.hand.fold{color:#83928e}.hand:hover{filter:brightness(1.3);transform:scale(1.08);z-index:3}.hand.selected{outline:2px solid #f4ffcc;outline-offset:1px;z-index:2;box-shadow:0 0 0 4px #d6f68b20}.hand.selected:after{content:'';position:absolute;right:3px;top:3px;width:4px;height:4px;background:#f4ffcc;border-radius:50%}.matrix-legend{display:flex;align-items:center;gap:20px;margin-top:18px;padding:0 1px;font-size:10px}.legend-item{display:flex;align-items:center;gap:7px}.dot{display:inline-block;width:7px;height:7px;border-radius:2px}.raise-color{background:var(--red)}.call-color{background:var(--green)}.fold-color{background:var(--blue)}.legend-item b{font-weight:400;color:#a4ad9d;margin-left:2px}.matrix-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:15px 20px;color:#85917c;font-size:10px}.matrix-foot strong{font-weight:500;color:#dbe7cf}.subtle-dot{color:#535f4b;padding:0 8px}.right-column{display:grid;gap:16px}.context-panel .panel-header{height:50px;padding:0 17px}.context-panel .panel-title{font-size:12px}.table-stage{height:235px;position:relative;padding:25px 20px}.poker-table{position:absolute;border:1px solid #55634c;background:radial-gradient(ellipse,#293326,#20291e);border-radius:100px;width:226px;height:128px;left:50%;top:55px;transform:translateX(-50%);box-shadow:0 0 0 5px #21271f,0 0 0 6px #333e2d}.felt-word{position:absolute;top:43px;left:0;right:0;text-align:center;font-size:16px;font-weight:650;letter-spacing:-.7px;color:#526046;opacity:.6}.pot{position:absolute;left:0;right:0;top:72px;text-align:center;color:#bbc7ae;font-size:10px}.seat{position:absolute;text-align:center;min-width:49px}.seat .seat-circle{margin:0 auto 5px;border:1px solid #46503f;background:#20251e;width:43px;height:43px;border-radius:50%;display:grid;place-content:center;gap:2px;font-size:10px;box-shadow:0 0 0 4px var(--panel)}.seat .seat-circle small{color:#77846d;font-size:8px}.seat.active .seat-circle{background:#d6f68b;color:#28341c;border-color:#e8ffc1}.seat.active .seat-circle small{color:#5d703e}.seat.folded{opacity:.48}.seat .seat-action{font-size:8px;color:#7b8970}.seat.active .seat-action{color:var(--lime)}.seat.pos-0{top:15px;left:calc(50% - 25px)}.seat.pos-1{right:18px;top:54px}.seat.pos-2{right:18px;top:143px}.seat.pos-3{bottom:7px;left:calc(50% - 25px)}.seat.pos-4{left:18px;top:143px}.seat.pos-5{left:18px;top:54px}.dealer{position:absolute;bottom:49px;right:87px;background:#e3e9da;color:#27301e;width:13px;height:13px;border-radius:50%;font-size:8px;display:grid;place-items:center}.table-caption{padding:0 17px 15px;text-align:center;color:#86947b;font-size:9px}.hand-detail{padding:17px}.detail-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.hand-name{font-size:26px;letter-spacing:-1px;font-weight:550}.detail-type{font-size:10px;color:#8c9981;margin-top:3px}.mini-cards{display:flex;gap:5px}.playing-card{width:37px;height:49px;background:#e8e9de;color:#2e3931;border-radius:4px;padding:5px 6px;font-size:17px;line-height:1.1;font-weight:700;box-shadow:0 3px 5px #0002}.playing-card.red{color:#b94d49}.playing-card .suit{display:block;font-size:15px}.frequency-bar{height:8px;display:flex;overflow:hidden;border-radius:3px;margin:5px 0 14px}.frequency-bar span{transition:width .3s}.strategy-row{display:flex;justify-content:space-between;align-items:center;margin:12px 0;font-size:10px}.strategy-row .name{display:flex;align-items:center;gap:7px;color:#b5c0aa}.strategy-row .value{font-size:12px}.ev-box{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:17px;padding-top:14px;font-size:10px;color:#9da991}.ev-box strong{color:var(--lime);font-size:13px;font-weight:500}.detail-note{margin:15px 0 0;color:#728169;font-size:9px;line-height:1.8}.bottom-banner{display:flex;align-items:center;gap:14px;border:1px solid #36432a;background:linear-gradient(110deg,#222c1c,#181e16);border-radius:9px;margin-top:20px;padding:17px 20px}.banner-icon{width:36px;height:36px;border-radius:8px;color:var(--lime);background:#344229;display:grid;place-items:center}.bottom-banner strong{font-size:12px;font-weight:500}.bottom-banner p{font-size:10px;color:#8d9c80;margin:5px 0 0}.bottom-banner button{margin-left:auto}.page-footer{display:flex;justify-content:space-between;color:#626e5b;font-size:9px;margin-top:24px;letter-spacing:.2px}.page-footer a{color:#8b967f}.entry{animation:enter .5s both}.range-panel{animation:enter .5s .08s both}.right-column{animation:enter .5s .15s both}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:12px 22px;border:1px solid #576744;background:#293520;color:#e4f4d2;font-size:12px;border-radius:7px;z-index:100;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}.modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(6px);display:grid;place-items:center;z-index:99;padding:20px}.modal{width:min(540px,100%);max-height:85vh;overflow:auto;padding:28px;background:#1b2119;border:1px solid #48523d;border-radius:14px;animation:enter .2s}.modal h2{font-size:20px;margin:0 0 18px}.modal p{font-size:12px;color:#a5b09a;line-height:1.9}.modal-close{float:right;color:#9aa68f}.modal .button{margin-top:15px}.mobile-menu{display:none}.content-panel{padding:26px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.section-subtitle{font-size:12px;color:var(--muted);line-height:1.9}.training-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.training-table{min-height:440px;display:grid;place-items:center;position:relative;border:1px solid var(--line);background:radial-gradient(ellipse,#253520 0,#172016 55%,#151a14 100%);border-radius:12px}.training-table:before{content:'';position:absolute;width:80%;height:60%;border:1px solid #46573b;border-radius:50%;box-shadow:0 0 0 8px #23301e,0 0 0 9px #39472f}.training-center{text-align:center;position:relative}.training-center .playing-card{width:66px;height:90px;font-size:29px;padding:10px;text-align:left;animation:deal .4s both}.training-center .playing-card:nth-child(2){animation-delay:.08s}.training-center .suit{font-size:30px}.training-center .mini-cards{justify-content:center;margin:25px}.training-center h3{font-weight:450;font-size:13px;color:#a8b69b}.training-center .position-pill{background:#d6f68b;color:#28341c;padding:6px 15px;border-radius:20px;font-size:11px}.training-actions{display:flex;gap:10px;margin-top:20px}.training-actions button{flex:1;height:49px;border-radius:7px;font-weight:600;font-size:12px}.training-actions .fold{background:#344b60}.training-actions .call{background:#456b50}.training-actions .raise{background:#b76660}.stat-line{padding:18px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:#9baa8f}.stat-line strong{color:var(--text);font-weight:500}.feedback{padding:20px;background:#24321d;border:1px solid #4f653a;border-radius:8px;margin-top:20px;font-size:12px;line-height:1.9}.feedback.wrong{background:#382923;border-color:#735646}.feedback h3{font-size:15px;margin:0 0 8px}.feedback p{color:#b4bea9}.form-line{margin:20px 0}.form-line label{display:block;color:#b4c0a9;font-size:12px;margin-bottom:12px}.card-picker{display:flex;gap:10px}.card-picker button{width:57px;height:76px;border:1px dashed #57634b;border-radius:6px;font-size:18px;background:#252e20}.card-picker .playing-card{width:57px;height:76px;font-size:24px}.equity-layout{display:grid;grid-template-columns:1fr 1fr;gap:25px}.equity-result{display:grid;place-content:center;text-align:center;min-height:330px}.equity-number{font-size:75px;color:var(--lime);font-weight:500;letter-spacing:-4px}.equity-result p{color:#97a68b;font-size:12px}.equity-player{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:10px 0 23px}.equity-player h3{font-size:13px;font-weight:500;width:70px}.deck-grid{display:grid;grid-template-columns:repeat(13,1fr);gap:5px;margin:20px 0}.deck-grid button{padding:8px 0;border:1px solid #49533e;border-radius:4px;background:#283221;font-size:13px}.deck-grid button.red{color:#e39189}.deck-grid button:disabled{opacity:.18;cursor:default}.roadmap-row{display:flex;align-items:center;gap:22px;padding:25px 0;border-bottom:1px solid var(--line)}.lesson-number{border:1px solid #52633f;background:#2a3521;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;color:var(--lime);flex-shrink:0}.lesson-info{flex:1}.lesson-info h3{font-size:15px;font-weight:500;margin:0 0 8px}.lesson-info p{font-size:11px;color:#8e9e81;margin:0}.lesson-meta{color:#87997a;font-size:11px;margin-right:20px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:25px}.stats-grid strong{display:block;font-size:40px;font-weight:450;letter-spacing:-1.5px;margin:15px 0 0}.stats-grid label{color:#98a68d;font-size:12px}.empty-state{text-align:center;padding:65px 0;color:#99a88c}.history-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px}.saved-row{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.saved-row strong{font-size:14px;font-weight:500}.saved-row p{font-size:11px;color:var(--muted)}@keyframes deal{from{transform:translateY(-30px) rotate(-12deg);opacity:0}to{transform:none;opacity:1}}@media(min-width:1500px){.workspace{grid-template-columns:minmax(450px,1fr) 360px}.matrix{aspect-ratio:1.3}.hand{font-size:13px}.main{padding:38px 46px}.right-column{gap:22px}.table-stage{height:265px}.poker-table{top:70px}.seat.pos-0{top:28px}.seat.pos-1,.seat.pos-5{top:72px}.seat.pos-2,.seat.pos-4{top:162px}.hand-detail{padding:22px}.strategy-row{margin:16px 0}.table-caption{padding-bottom:20px}}@media(max-width:1150px){.app-shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{width:180px;padding-left:10px;padding-right:10px}.brand{font-size:22px;padding:0 8px;gap:7px}.brandmark{font-size:27px;width:23px}.webtag{display:none}.main{padding:27px 22px}.topbar{padding:0 22px}.workspace{grid-template-columns:minmax(330px,1fr) 275px;gap:15px}.filter-group{gap:14px}.hand{font-size:9px}.range-body{padding:12px}.matrix{gap:2px;aspect-ratio:1}.matrix-legend{gap:12px;font-size:9px}.poker-table{width:195px}.seat.pos-1,.seat.pos-2{right:9px}.seat.pos-4,.seat.pos-5{left:9px}.dealer{right:65px}.heading-row h1{font-size:25px}.heading-actions .ghost{display:none}.training-layout{grid-template-columns:1fr 250px}}@media(max-width:900px){.workspace{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr}.hand{font-size:12px}.matrix{aspect-ratio:1.2}.filterbar{flex-wrap:wrap}.mode-toggle{margin-left:auto}.context-panel{height:100%}.table-stage{height:243px}.heading-row{gap:20px}.heading-row p{line-height:1.8}.equity-layout{grid-template-columns:1fr}.equity-result{min-height:200px}.training-layout{grid-template-columns:1fr}.training-table{min-height:350px}.training-side{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.training-side h3,.training-side .section-subtitle{grid-column:1/-1}.training-side .feedback{grid-column:1/-1}}@media(max-width:650px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:216px}.sidebar.open{transform:none;box-shadow:20px 0 70px #0009}.main-shell{width:100%}.mobile-menu{display:block;margin-right:10px;color:#b4c4a2}.topbar{height:60px;padding:0 17px}.breadcrumb{gap:8px;font-size:11px}.top-actions{gap:13px}.top-actions .connection{display:none}.top-actions button{padding:0}.main{padding:24px 16px}.heading-row{align-items:flex-start;margin-bottom:22px}.heading-row h1{font-size:24px}.heading-row p{font-size:10px;max-width:230px}.heading-actions .button{font-size:10px;padding:0 10px;height:33px}.heading-actions .button svg{display:none}.eyebrow{font-size:9px;letter-spacing:1.5px}.filterbar{padding:13px;gap:12px;margin-bottom:16px}.filter-group{width:100%;justify-content:space-between;gap:8px}.filter-divider{display:none}.field select{font-size:11px;min-width:60px;max-width:120px}.mode-toggle{margin:0;width:100%}.mode-toggle button{flex:1}.range-body{padding:10px}.matrix{aspect-ratio:1;gap:2px}.hand{font-size:9px;border-radius:2px}.panel-header{padding:0 14px;height:52px}.panel-title{font-size:12px}.panel-header .muted{font-size:9px}.matrix-legend{gap:16px;padding:3px;font-size:9px;flex-wrap:wrap;margin-top:14px}.matrix-foot{padding:13px;font-size:9px}.matrix-foot .combinations{display:none}.right-column{grid-template-columns:1fr 1fr;gap:10px}.context-panel .panel-header{padding:0 11px}.context-panel .panel-title{font-size:11px}.context-panel .icon-button{display:none}.table-stage{height:210px;padding:0}.poker-table{width:130px;height:112px;top:49px}.felt-word{font-size:12px;top:39px}.pot{top:63px;font-size:9px}.seat .seat-circle{width:33px;height:33px;font-size:8px;box-shadow:0 0 0 2px var(--panel)}.seat .seat-circle small{font-size:7px}.seat{min-width:34px}.seat .seat-action{font-size:7px}.seat.pos-0{top:13px;left:calc(50% - 17px)}.seat.pos-1,.seat.pos-5{top:48px}.seat.pos-2,.seat.pos-4{top:135px}.seat.pos-1,.seat.pos-2{right:2px}.seat.pos-4,.seat.pos-5{left:2px}.seat.pos-3{left:calc(50% - 17px);bottom:0}.dealer{right:35px;bottom:38px}.table-caption{font-size:8px;padding:10px 6px 15px}.hand-detail{padding:12px}.hand-name{font-size:23px}.detail-type{font-size:8px}.mini-cards{gap:3px}.playing-card{width:27px;height:39px;font-size:13px;padding:4px}.playing-card .suit{font-size:12px}.detail-top{margin-bottom:14px}.strategy-row{font-size:9px}.strategy-row .value{font-size:10px}.detail-note{display:none}.ev-box{margin-top:13px;font-size:9px}.ev-box strong{font-size:11px}.bottom-banner{padding:14px 12px;gap:10px}.banner-icon{display:none}.bottom-banner strong{font-size:11px}.bottom-banner p{font-size:9px;max-width:180px;line-height:1.7}.bottom-banner .button{font-size:9px;padding:0 9px;white-space:nowrap}.page-footer{font-size:8px;line-height:1.8;gap:15px}.content-panel{padding:20px}.training-side{padding:15px;gap:8px}.training-side .stat-line{font-size:10px;display:block;line-height:2}.stat-line strong{display:block}.stats-grid{gap:12px}.stats-grid strong{font-size:31px}.stats-grid label{font-size:10px}.lesson-meta{display:none}.roadmap-row{gap:14px}.lesson-info h3{font-size:13px}.lesson-info p{font-size:10px;line-height:1.8}.roadmap-row .button{font-size:10px;padding:0 10px}.deck-grid{gap:3px}.deck-grid button{font-size:11px;padding:9px 0}.modal{padding:20px}.equity-player{gap:10px}.history-row{font-size:10px}.profile>button{margin-left:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(min-width:901px){.topbar{height:68px}.main{padding-top:26px}.heading-row{margin-bottom:23px}.filterbar{margin-bottom:19px}.matrix{aspect-ratio:1.32}.hand{font-size:11px}}
@media(min-width:1500px){.matrix{aspect-ratio:1.4}}
@media(max-height:820px){.upgrade{display:none}.sidebar{padding-top:26px}.nav-label{margin-top:35px}}
.sidebar{overflow-y:auto}
.hand.fold{color:#c7d5dd}.card-picker button:has(.playing-card){padding:0;border:0;background:transparent}
@media(max-width:650px){.card-picker{gap:7px}.card-picker button,.card-picker .playing-card{width:48px;height:68px}.card-picker .playing-card{padding:7px;font-size:22px}}
/* NTPoker original course reader */
.original-roadmap{--course-accent:#f59afa;max-width:920px;margin:0 auto;color:#f4f3f6;font-family:'Noto Sans SC','DM Sans',sans-serif}.original-roadmap h1{font-size:26px;font-weight:700;margin:0}.roadmap-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.course-overline{font-size:10px;color:#93909d;letter-spacing:1px;margin:0 0 10px}.level-select{font-size:11px;color:#a7a3b2;display:flex;align-items:center;gap:10px}.level-select select{padding:9px 30px 9px 12px;border:1px solid #53505d;border-radius:6px;background:#29272f;color:#f0d9f3;cursor:pointer}.roadmap-summary{border:1px solid #8a8697;background:#2c2b30;padding:24px;border-radius:13px;display:grid;grid-template-columns:48px 1fr;gap:18px;box-shadow:0 5px 15px #0002}.roadmap-level-icon{background:#514054;color:#f59afa;border-radius:10px;display:grid;place-items:center;font-size:28px;font-weight:700}.roadmap-level-title span{display:block;color:#b2adbf;font-size:12px;font-weight:650;margin-bottom:5px}.roadmap-level-title strong{font-size:22px;font-weight:700}.roadmap-steps{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;color:#bdb7ca;font-size:12px;font-weight:650;gap:10px}.roadmap-steps>strong{color:#f59afa}.roadmap-progress{height:6px;background:#101011;flex:0 0 100%;border-radius:10px;overflow:hidden}.roadmap-progress i{height:100%;background:#f59afa;display:block;min-width:0;transition:width .4s}.course-browser{display:flex;justify-content:space-between;gap:15px;margin:25px 0 18px}.course-phases{display:flex;gap:5px;flex-wrap:wrap}.course-phases button{font-size:11px;color:#a9a3b1;padding:8px 12px;border-radius:5px}.course-phases button.active{background:#392c3d;color:#f4b5f7}.course-browser input{background:#18171c;color:#f0eaf2;border:1px solid #3f3b46;border-radius:6px;padding:8px 12px;font-size:11px;width:190px}.roadmap-legend{display:flex;gap:18px;align-items:center;font-size:10px;color:#9b95a6;margin:20px 0 28px}.roadmap-legend>span{display:flex;gap:6px;align-items:center}.course-dot{display:inline-block;width:5px;height:10px;border-radius:2px}.course-dot.knowledge{background:#d5a05e}.course-dot.skill{background:#8bb94d}.course-dot.review{background:#b17bd5}.roadmap-source{margin-left:auto;color:#75707f}.roadmap-phase{display:flex;align-items:center;gap:10px;margin:32px 0 18px;font-size:17px;font-weight:650}.roadmap-phase:first-child{margin-top:0}.roadmap-phase i{height:21px;width:4px;background:#d59b5e;border-radius:3px}.roadmap-phase>span{height:1px;background:#413730;flex:1;margin-left:5px}.original-topic{position:relative;overflow:hidden;border:1px solid #39363f;border-radius:9px;background:#1a191d;padding:20px;margin-bottom:17px}.original-topic:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#d59b5e}.original-topic.is-skill:before{background:#8bb94d}.original-topic.is-flow:before{background:#b17bd5}.topic-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 18px}.topic-heading>div{display:flex;align-items:center;gap:10px}.topic-no{font-family:'DM Sans',sans-serif;color:#6f6977;font-size:11px}.topic-heading h3{font-size:15px;font-weight:650;margin:0;line-height:1.7}.topic-completion{flex-shrink:0;padding:5px 9px;border:1px solid #4b4754;background:#302b35;color:#bbb4c7;border-radius:20px;font-size:11px;font-weight:650}.topic-completion.done{color:#8ce8c4;background:#253b34;border-color:#4b8671}.topic-substeps{display:grid;gap:9px}.original-substep{display:flex;align-items:center;gap:15px;text-align:left;border:1px solid transparent;background:#2b292f;border-radius:8px;padding:15px 18px;width:100%}.original-substep:hover{background:#35313a;border-color:#67506d;filter:none}.substep-symbol{width:24px;height:24px;display:grid;place-items:center;border:1px solid #817588;color:#d9b6df;border-radius:50%;font-weight:650;font-size:14px;flex-shrink:0}.completed .substep-symbol{background:#8aebc3;border-color:#8aebc3;color:#234b3b}.substep-label{display:flex;flex:1;flex-direction:column;gap:5px;min-width:0}.substep-label strong{font-size:13px;font-weight:600}.substep-label>span{font-size:11px;color:#aba4b5;line-height:1.7}.substep-arrow{color:#93849d;font-size:20px}.completed .substep-arrow{font-size:10px;color:#a89caf}.course-catalog-foot{padding:20px 0 5px;text-align:center;font-size:10px;color:#7d7586}.course-loading{display:grid;place-items:center;min-height:300px;color:#b3a4bd;font-size:13px}.course-reader{--course-accent:#f59afa;position:fixed;inset:0;z-index:80;overflow:auto;background:#101011;color:#faf7fc;font-family:'Noto Sans SC',sans-serif;animation:enter .2s both}.course-reader-inner{width:min(900px,100%);margin:auto;min-height:100dvh;display:flex;flex-direction:column;padding:25px 30px 24px}.course-reader-top{display:flex;align-items:center;gap:20px;min-height:45px}.course-reader-top>button{font-family:system-ui;font-weight:300;font-size:36px;color:#eee7f1;width:36px;padding:0;line-height:1}.course-reader-top>div{flex:1}.course-reader-top h2{font-size:19px;line-height:1.5;font-weight:650;margin:0}.course-reader-top>div>span{font-size:10px;display:block;color:#9a8ba5;margin-bottom:4px}.course-reader-level{font-size:10px;border:1px solid #594361;padding:5px 9px;border-radius:4px;color:#d1aad9}.course-reader-progress{display:flex;align-items:center;gap:15px;margin:25px 0 15px}.course-reader-progress>div{height:8px;background:#211f25;flex:1;border-radius:4px;overflow:hidden}.course-reader-progress i{display:block;background:#f59afa;height:100%;transition:width .25s}.course-reader-progress>span{font-size:13px;font-weight:700;white-space:nowrap}.course-reader-body{flex:1;min-height:0}.slide-body{display:flex;min-height:calc(100dvh - 210px);justify-content:center}.original-slide{width:100%;border:0;min-height:calc(100dvh - 210px);display:block;background:#101011}.course-reader-actions{display:flex;justify-content:center;gap:12px;flex-shrink:0;padding-top:16px}.course-next,.course-prev{font-weight:600;border-radius:9px;padding:14px 24px;font-size:15px;min-height:48px}.course-next{background:linear-gradient(180deg,#a341b2,#713078);flex:1;color:#fff;max-width:660px;border:1px solid #a04eac}.course-next:hover{background:linear-gradient(180deg,#b14bc0,#84368c)}.course-next:disabled{background:#352c39;border-color:#4c3b52;color:#8a7e91}.course-prev{border:1px solid #55495d;background:#28232d;color:#d8c8e1}.quiz-body{padding:25px 0;max-width:700px;margin:0 auto;width:100%;overflow-y:auto}.quiz-kind{font-size:11px;letter-spacing:.5px;color:#d19ddb;margin-bottom:22px}.original-question{font-size:19px;font-weight:550;line-height:1.8;margin:0 0 28px}.quiz-text{white-space:normal;line-height:1.85;text-align:left}.original-options{display:grid;gap:12px}.original-option{display:flex;gap:14px;align-items:center;text-align:left;background:#242127;border:1px solid #49414f;border-radius:8px;padding:17px 18px;color:#e1d9e8;width:100%;font-size:14px;line-height:1.8}.original-option .quiz-text{flex:1;font-size:14px}.option-index{border:1px solid #74617f;color:#c9add7;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:12px;flex-shrink:0}.original-option.selected{background:#402b48;border-color:#cb87db}.option-radio{color:#c08bcf;margin-left:auto}.original-option.is-correct{background:#213c30;border-color:#6cb997}.original-option.is-correct .option-index{background:#8bdfb7;color:#1d4330;border-color:#8bdfb7}.original-option.is-wrong{background:#40292d;border-color:#b3717c}.original-option:disabled{opacity:1;cursor:default}.original-explanation{padding:20px;border:1px solid #65506f;border-radius:9px;background:#2b2132;color:#dac9e3;margin-top:22px;font-size:13px;line-height:1.9}.original-explanation>strong{display:block;font-size:15px;color:#e5a8f3;margin-bottom:10px}.original-explanation.right>strong{color:#94e7b7}.original-explanation.wrong>strong{color:#f3a6b5}.quiz-html{width:100%;min-height:210px;border:0;background:#101011}.course-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:40px 0}.complete-emblem{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font-size:40px;color:#edb3f7;background:#452c4c;border:1px solid #875895;margin-bottom:20px}.course-complete h2{font-size:27px;margin:0 0 10px}.course-complete p{font-size:13px;line-height:1.8;color:#ae9bb8}.complete-topic{padding:12px 20px;background:#252028;border-radius:8px;font-size:14px;color:#dac7e4;margin:20px 0}.course-unavailable,.course-tool-step{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;flex:1;gap:15px;padding:40px 0}.course-unavailable>span{font-size:50px;color:#c19ad0}.course-unavailable p,.course-tool-step p{font-size:13px;line-height:1.9;color:#ad9bb5}.course-tool-step h2{font-size:22px;margin:0}.course-implementation-note{border:1px solid #5a495c;background:#2b232f;font-size:12px;line-height:1.9;color:#b7a8c0;padding:18px;max-width:480px;margin:15px 0}.challenge-body{padding-top:15px}.challenge-table{height:280px;width:min(540px,100%);position:relative;margin:5px auto 25px}.challenge-felt{position:absolute;inset:20% 10%;border:1px solid #65576e;border-radius:100px;background:radial-gradient(ellipse,#332d38,#28222c);display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center}.challenge-felt>span{font-weight:650;font-size:16px;color:#74617f}.challenge-felt>small{font-size:11px;color:#cbb8d5}.challenge-seat{position:absolute;transform:translate(-50%,-50%);min-width:55px;text-align:center;font-size:10px;background:#201d24;border:1px solid #685672;border-radius:8px;padding:6px 8px}.challenge-seat>strong,.challenge-seat>small{display:block}.challenge-seat>small{font-size:9px;color:#b0a0bb;margin-top:4px}.challenge-seat.folded{opacity:.35}.challenge-card{display:inline-flex;flex-direction:column;align-items:center;background:#e7e2eb;color:#323036;border-radius:3px;font-family:'DM Sans',sans-serif;padding:4px;margin:4px 2px;font-weight:650;font-size:14px;min-width:25px}.challenge-card.red{color:#bd535a}.challenge-card small{font-size:11px}.challenge-board{display:flex}.hidden-cards{color:#9e79b2;font-size:18px;margin-top:3px}.challenge-comment{max-width:680px;margin:15px auto 25px;color:#ded1e6;font-size:15px}.challenge-body .original-options,.challenge-body .original-explanation,.challenge-body .quiz-kind{max-width:680px;margin-left:auto;margin-right:auto}.challenge-frames{display:flex;gap:6px;justify-content:center}.challenge-frames button{border:1px solid #64526d;color:#baa3c7;padding:6px 11px;border-radius:4px}.challenge-frames button.active{background:#5f3d6b;color:white}.course-reader button:focus-visible,.original-roadmap button:focus-visible,.original-roadmap input:focus-visible{outline:2px solid #f59afa;outline-offset:3px}
@media(min-width:1100px){.roadmap-summary{grid-template-columns:48px 170px 1fr;align-items:center}.roadmap-steps{grid-column:auto;margin-left:25px}.roadmap-list{max-width:840px;margin:auto}}
@media(max-width:650px){.roadmap-top{margin-bottom:22px}.original-roadmap h1{font-size:24px}.course-overline{font-size:9px}.level-select{font-size:10px;gap:7px}.level-select select{padding:7px 8px}.roadmap-summary{padding:19px;grid-template-columns:43px 1fr;gap:14px}.roadmap-level-title strong{font-size:21px}.roadmap-level-title span{font-size:11px}.roadmap-steps{font-size:11px}.course-browser{flex-direction:column;margin:20px 0 15px;gap:12px}.course-phases{justify-content:space-between;gap:0}.course-phases button{padding:8px 10px;font-size:10px}.course-browser input{width:100%}.roadmap-legend{gap:14px;font-size:9px;margin-bottom:25px}.roadmap-source{display:none!important}.original-topic{padding:17px 15px;margin-bottom:15px}.topic-heading{margin-bottom:15px;gap:9px}.topic-heading h3{font-size:14px}.topic-no{display:none}.topic-completion{font-size:10px;padding:4px 7px}.original-substep{padding:14px 12px;gap:12px}.substep-label strong{font-size:12px}.substep-label>span{font-size:11px}.roadmap-phase{font-size:17px;margin-top:28px}.course-reader-inner{padding:20px 16px 16px}.course-reader-top{gap:10px}.course-reader-top h2{font-size:16px}.course-reader-top>button{font-size:32px;width:27px}.course-reader-top>div>span{font-size:9px}.course-reader-level{font-size:9px;padding:4px 7px}.course-reader-progress{margin:22px 0 15px}.course-reader-progress>span{font-size:12px}.slide-body,.original-slide{min-height:calc(100dvh - 215px)}.course-next,.course-prev{font-size:14px;padding:12px 20px}.course-reader-actions{padding-top:14px}.original-question{font-size:17px;margin-bottom:22px}.quiz-body{padding:20px 0}.original-option{font-size:12px;padding:14px 12px;gap:10px}.original-option .quiz-text{font-size:13px}.option-index{width:23px;height:23px}.original-explanation{font-size:12px;padding:16px}.quiz-kind{font-size:10px}.course-complete h2{font-size:24px}.course-complete p{font-size:12px}.course-implementation-note{font-size:11px}.challenge-table{height:235px}.challenge-seat{min-width:43px;font-size:9px;padding:5px}.challenge-card{font-size:12px;min-width:20px;margin:3px 1px;padding:3px}.challenge-card small{font-size:9px}.challenge-comment{font-size:13px}.challenge-felt{inset:20% 7%}}
.original-task-spec{width:min(560px,100%);background:#252028;border:1px solid #57465f;border-radius:10px;padding:8px 20px;text-align:left;margin:15px 0}.original-task-spec>div{display:flex;justify-content:space-between;padding:15px 0;gap:15px;border-bottom:1px solid #423648;font-size:12px}.original-task-spec>div:last-child{border:0}.original-task-spec span{color:#b8a5c2}.original-task-spec strong{font-size:12px;font-weight:500;color:#f0dff8}.original-task-spec .task-hands{flex-direction:column}.task-hands>div{display:flex;flex-wrap:wrap;gap:7px}.task-hands code{background:#3a2d40;border:1px solid #5b4264;padding:6px 8px;border-radius:5px;color:#e5c5f1;font-size:12px}
.native-dialog-backdrop{position:fixed;inset:0;background:#0009;z-index:105;display:grid;place-items:center;padding:20px;animation:enter .15s both;color:#efedf4;font-family:'Noto Sans SC',sans-serif}.native-course-entry{width:min(490px,100%);background:#2c2b30;padding:22px;border-radius:11px;box-shadow:0 15px 60px #0005}.native-entry-heading{display:flex;align-items:center;gap:14px;padding-bottom:20px;border-bottom:1px solid #49434f}.native-entry-icon{width:49px;height:49px;background:#374e49;color:#82efc8;display:grid;place-items:center;font-size:31px;border-radius:9px;flex-shrink:0}.native-entry-heading>div{flex:1;min-width:0}.native-entry-heading h2{font-size:18px;line-height:1.6;margin:7px 0 0;font-weight:650}.native-entry-badges{display:flex;flex-wrap:wrap;gap:7px}.native-entry-badges>span{border-radius:20px;background:#3d394d;color:#c9c0fc;font-size:10px;font-weight:600;padding:3px 9px}.native-entry-badges .native-completed-badge{color:#83edc4;background:#354b43}.native-entry-heading>button{font-size:29px;color:#bdb6cc;padding:0;align-self:center;width:30px}.native-entry-status{padding:20px 0;color:#a2a0ad;font-size:13px}.native-course-entry:has(.native-completed-badge) .native-entry-status{color:#83eec4}.native-entry-start{width:100%;border-radius:8px;background:#cba0d6;color:#310947;padding:13px;font-size:16px;font-weight:650;letter-spacing:1px}.native-entry-restart{width:100%;padding:15px 0 0;font-size:12px;color:#c5a4d2}.native-pause-dialog{width:min(340px,100%);padding:25px;background:#2b292f;border-radius:12px;border:1px solid #4b4252;box-shadow:0 15px 60px #0005}.native-pause-dialog h2{font-size:22px;margin:0 0 20px;font-weight:600}.native-pause-dialog p{font-size:14px;line-height:1.9;color:#c2b8ca;margin:0 0 25px}.native-pause-dialog>div{display:flex;justify-content:flex-end;gap:18px}.native-pause-dialog button{font-size:14px;color:#ddb3eb;padding:8px}.native-pause-dialog button:first-child{color:#eccaf5;font-weight:650}@media(max-width:650px){.native-course-entry{padding:18px}.native-entry-heading{gap:12px}.native-entry-heading h2{font-size:17px}.native-entry-start{font-size:15px}.native-entry-icon{width:43px;height:43px}}
.native-tools-page{max-width:780px;margin:auto;font-family:'Noto Sans SC',sans-serif;padding:5px 0 25px}.native-tools-page h1{font-size:26px;font-weight:700;color:#f6f4f8;margin:0 0 32px}.native-tools-list{display:grid;gap:14px}.native-tool-row{display:flex;align-items:center;gap:26px;padding:22px 25px;background:#1b1a1f;border-radius:13px;border:1px solid transparent;width:100%;text-align:left}.native-tool-row:hover{background:#25222b;border-color:#46404d;filter:none;transform:translateX(3px)}.native-tool-icon{display:grid;place-items:center;width:48px;flex-shrink:0}.native-tool-icon svg{width:40px;height:40px;stroke-width:2.2}.native-tool-copy{display:flex;flex-direction:column;gap:11px;flex:1}.native-tool-copy>strong{font-size:20px;font-weight:650;color:#f1edf5}.native-tool-copy>span{font-size:12px;line-height:1.8;color:#b2adbf}.native-tool-copy>small{font-size:9px;line-height:1.6;color:#80798e}.native-tool-arrow{font-size:24px;color:#776b84}@media(max-width:650px){.native-tools-page h1{font-size:24px;margin-bottom:27px}.native-tool-row{padding:20px 18px;gap:18px;border-radius:12px}.native-tool-icon{width:36px}.native-tool-icon svg{width:33px;height:33px}.native-tool-copy{gap:9px}.native-tool-copy>strong{font-size:18px}.native-tool-copy>span{font-size:11px}.native-tool-copy>small{font-size:9px}.native-tools-list{gap:12px}}
/* Random scenario trainer */
.random-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.random-header h1{font-size:32px;margin:8px 0}.random-controls{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:22px;color:var(--muted);font-size:12px}.random-controls select{background:#1b231c;color:#e4eadf;border:1px solid #394433;border-radius:6px;padding:9px;margin-left:6px}.random-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px}.random-felt{background:radial-gradient(ellipse at center,#253925,#152017);border:1px solid #3c5035;border-radius:22px;padding:24px 20px;text-align:center}.seat-strip{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:28px}.random-seat{display:flex;flex-direction:column;gap:6px;padding:8px 12px;background:#101810;border:1px solid #48543e;border-radius:8px;font-size:11px}.random-seat.hero{border-color:var(--lime);color:var(--lime)}.random-seat.folded{opacity:.4}.random-seat span{font-size:10px}.pot-label{font-size:12px;color:#a8b49d}.pot-label strong{color:#e7eedf}.board-cards,.hero-cards{display:flex;justify-content:center;gap:7px;margin:20px 0}.random-felt .playing-card{width:48px;height:68px;font-size:25px;padding:6px;border-radius:6px}.random-felt .playing-card .suit{font-size:24px}.board-empty{height:68px;display:grid;place-items:center;color:#7c9376;letter-spacing:5px;font-size:12px}.hero-cards{margin-top:28px}.hero-caption{font-size:13px;color:var(--lime)}.hero-caption span{display:block;font-size:11px;color:#91a488;margin-top:7px}.exercise-title{display:flex;gap:14px;align-items:flex-start;margin:25px 0 18px}.exercise-title>b{font-size:13px;color:var(--lime);padding-top:4px}.exercise-title h2,.random-history h2{font-size:17px;margin:0 0 7px}.exercise-title p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.opponent-guess{padding:14px 0;border-bottom:1px solid #2d372b}.opponent-guess>strong{font-size:12px}.range-options{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.range-options button{background:transparent;border:1px solid #3a4735;border-radius:6px;color:#bdc8b7;padding:10px 12px;font-size:12px;cursor:pointer;transition:background .15s,border-color .15s}.range-options button[aria-pressed=true]{background:#344829;border-color:var(--lime);color:var(--lime)}.range-options button:disabled{cursor:default}.range-exercise>.btn{margin-top:18px}.range-note{font-size:12px;line-height:1.8}.good{color:var(--lime)}.needs-work{color:#e3b18e}.range-breakdown{display:flex;gap:10px;flex-wrap:wrap;color:#a6b49c;margin-top:10px}.range-breakdown span{padding:5px 9px;background:#1a241a;border-radius:5px}.random-history{border-left:1px solid #2d372b;padding-left:24px}.street-log{padding:10px 0 14px;border-bottom:1px solid #2d372b}.street-log h3{color:#bcccaf;font-size:12px}.street-log p{font-size:12px;line-height:1.7;margin:7px 0}.your-turn{color:var(--lime)}.training-method{color:var(--muted);font-size:11px;line-height:1.9;margin-top:22px}.training-method h3{font-size:12px}.decision-exercise .training-actions{margin:0}.decision-exercise .training-actions button{padding:16px 8px;font-size:13px}.decision-exercise .training-actions button:disabled{opacity:.45;cursor:default}#range-validation{color:#e3b18e;font-size:12px;margin-top:12px}.random-layout .feedback{margin-top:20px}.random-layout .feedback p{line-height:1.8}.random-layout .btn{min-height:40px}@media(max-width:1000px){.random-layout{grid-template-columns:minmax(0,1fr)}.random-history{border-left:0;border-top:1px solid #2d372b;padding:22px 0;grid-row:1}.random-history .street-log{display:inline-block;vertical-align:top;margin-right:22px;max-width:100%}.training-method{display:none}.random-header h1{font-size:26px}}@media(prefers-reduced-motion:reduce){.range-options button{transition:none}}
.range-breakdown small{display:block;color:#829579;font-size:10px}.random-header .btn,.random-layout .btn{border:1px solid #48583b;border-radius:7px;background:#202b1d;padding:10px 16px;color:#e5eddf;cursor:pointer}.random-layout .btn.primary{background:var(--lime);color:#25301d;border-color:var(--lime)}
