.auth-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:rgba(0,0,0,.66);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:popIn .18s ease both}.auth-modal{width:min(400px,96vw);padding:22px 24px 24px;border-radius:18px;background:linear-gradient(180deg,#0c2018,#07140e);border:1px solid rgba(231,200,115,.3);box-shadow:0 30px 80px #0009}.auth-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.auth-head h2{margin:0;color:var(--gold)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-switch{margin:16px 0 0;font-size:14px;color:var(--text-dim)}.auth-note{margin:0 0 14px;font-size:14px;line-height:1.45;color:var(--text-dim)}.auth-notice{display:flex;flex-direction:column;gap:14px;padding:14px;border-radius:12px;background:rgba(88,199,125,.1);border:1px solid rgba(88,199,125,.35)}.auth-notice p{margin:0;font-size:14px;line-height:1.45}.link-btn{background:none;border:none;color:var(--gold);cursor:pointer;font-size:14px;font-weight:700;padding:0}@media (pointer: coarse){.link-btn{padding:14px 10px;margin:-14px -10px}}@media (max-width: 760px){.auth-backdrop{align-items:flex-end;padding:0}.auth-modal{width:100%;border-radius:18px 18px 0 0;padding:20px 18px calc(24px + env(safe-area-inset-bottom));animation:sheetUp .26s ease both}}.dashboard{max-width:980px;margin:0 auto;padding:30px 24px 60px}.dashboard h1{margin:0 0 22px;font-size:30px}.dashboard-empty{color:var(--text-dim);font-size:16px}.stat-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px}.stat-card{padding:18px 20px;border-radius:14px;background:var(--panel);border:1px solid rgba(231,200,115,.16)}.stat-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.stat-value{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums}.stat-value.good{color:var(--ok)}.stat-value.bad{color:var(--bad)}.panel{margin-top:22px;padding:20px 22px;border-radius:16px;background:var(--panel);border:1px solid rgba(255,255,255,.07)}.panel h2{margin:0 0 14px;font-size:16px;letter-spacing:.04em;color:var(--text-dim)}.section-title{margin:30px 0 0;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#e7c873bf}.results-chart{width:100%;height:auto;display:block}.zero-line{stroke:#ffffff4d;stroke-width:1}.grid-line{stroke:#ffffff12;stroke-width:1}.tick-label{font-size:11px;fill:#ffffff73}.net-bar{fill:#ffffff47}.net-bar.good{fill:#36d399bf}.net-bar.bad{fill:#ff6b6ba6}.cum-line{fill:none;stroke:var(--gold);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.cum-dot{fill:var(--gold)}.chart-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.chart-chip{padding:4px 10px;border-radius:999px;font-size:12.5px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:var(--text-dim)}.chart-chip.good{color:#7fe0b0;border-color:#36d39959}.chart-chip.bad{color:#ff9c9c;border-color:#ff6b6b59}.chart-legend{margin-top:8px;font-size:12px;color:var(--text-dim)}.ht-count{font-style:normal;font-size:11.5px;opacity:.65}.chart-empty{color:var(--text-dim);padding:20px 0}.sessions-table{width:100%;border-collapse:collapse;font-size:14px}.sessions-table th{text-align:left;color:var(--text-dim);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.1)}.sessions-table td{padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.05);font-variant-numeric:tabular-nums}.sessions-table td.good{color:var(--ok)}.sessions-table td.bad{color:var(--bad)}.rules-cell{color:var(--text-dim);font-size:13px}@media (max-width: 640px){.stat-cards{grid-template-columns:repeat(2,1fr)}}.session-cards{display:none}@media (max-width: 760px){.dashboard{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:22px 16px 40px}.dashboard h1{font-size:24px}.stat-cards{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px}.stat-value{font-size:23px}.panel{padding:16px 14px}.tick-label{font-size:14px}.sessions-table{display:none}.session-cards{display:flex;flex-direction:column;gap:10px}.session-card{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08)}.session-card-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.session-date{font-weight:700}.session-net{font-weight:800;font-variant-numeric:tabular-nums}.session-net.good{color:var(--ok)}.session-net.bad{color:var(--bad)}.session-rules{font-size:12.5px;color:var(--text-dim);margin-bottom:8px}.session-stats{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:13px;color:var(--text)}}.journey-panel .jp-head{display:flex;align-items:center;gap:16px;margin-bottom:16px}.jp-level{font-size:15px;color:var(--text-dim);white-space:nowrap}.jp-level b{font-size:26px;color:var(--gold)}.jp-xpwrap{flex:1;min-width:0}.jp-xpbar{height:9px;border-radius:6px;background:rgba(0,0,0,.4);overflow:hidden}.jp-xpfill{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--gold-soft),var(--gold));transition:width .5s ease}.jp-xpsub{margin-top:5px;font-size:12px;color:var(--text-dim)}.jp-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.jp-tier{padding:12px 14px;border-radius:12px;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.06)}.jp-tier-name{font-weight:700;font-size:14px;margin-bottom:6px}.jp-tier-stat{font-size:13px;color:var(--text-dim)}.jp-tier-stars{font-size:13px;color:var(--gold);margin-top:2px}@media (max-width: 760px){.jp-tiers{grid-template-columns:1fr}}.practice-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;text-align:center}.pt-value{font-size:26px;font-weight:800;font-variant-numeric:tabular-nums}.pt-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-top:2px}.practice-lessons{display:flex;flex-direction:column;gap:8px}.pl-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.06)}.pl-name{flex:1;font-weight:700;font-size:14px}.pl-rounds{font-size:13px;color:var(--text-dim);font-variant-numeric:tabular-nums}.pl-acc{font-weight:800;color:var(--gold);min-width:52px;text-align:right;font-variant-numeric:tabular-nums}.insights-panel .rec-list{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.rec-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:rgba(231,200,115,.08);border:1px solid rgba(231,200,115,.3)}.rec-text{flex:1;min-width:0}.rec-title{font-weight:800;font-size:15px}.rec-reason{font-size:13px;color:var(--text-dim);margin-top:2px}.rec-btn{flex-shrink:0;padding:8px 16px;border-radius:10px;border:none;background:linear-gradient(180deg,var(--gold),var(--gold-soft));color:var(--ink);font-weight:800;cursor:pointer}.rec-none{color:var(--ok);margin:0 0 8px}.hand-types{border-top:1px solid rgba(255,255,255,.07);padding-top:14px}.ht-head{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.ht-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.ht-label{flex:0 0 150px;font-size:13px}.ht-bar{flex:1;height:8px;border-radius:5px;background:rgba(255,255,255,.1);overflow:hidden}.ht-fill{height:100%;border-radius:5px;background:var(--gold-soft);transition:width .4s ease}.ht-fill.good{background:var(--ok)}.ht-fill.bad{background:var(--bad)}.ht-acc{flex:0 0 46px;text-align:right;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}@media (max-width: 760px){.ht-label{flex-basis:110px;font-size:12px}}.card-slot{width:var(--card-w, 88px);height:var(--card-h, 124px);perspective:900px;animation:dealIn var(--deal-duration, .42s) cubic-bezier(.18,.7,.3,1) both}@keyframes dealIn{0%{opacity:0;transform:translateY(calc(var(--card-h, 124px) * -.34)) translate(calc(var(--card-w, 88px) * .2)) rotate(-8deg) scale(.92)}to{opacity:1;transform:none}}.card3d{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform var(--flip-duration, .5s) cubic-bezier(.4,.1,.2,1)}.card3d.down{transform:rotateY(180deg)}.face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:calc(var(--card-w, 88px) * .11);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 calc(var(--card-w, 88px) * .05) calc(var(--card-w, 88px) * .13) #0006,0 1px #ffffffbf inset}.front{background:linear-gradient(157deg,#ffffff 0%,#eef1f5 100%);border:1px solid rgba(15,23,35,.14);font-size:calc(var(--card-w, 88px) * .205);font-weight:800;-webkit-font-smoothing:antialiased}.front.red{color:#d6304a}.front.black{color:#1f2630}.corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:.84}.corner .r{font-size:1.12em;letter-spacing:-.03em}.corner .s{font-size:.72em;margin-top:.1em}.corner.tl{top:.34em;left:.5em}.corner.br{bottom:.34em;right:.5em;transform:rotate(180deg)}.pip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1.9em;line-height:1;opacity:.96}.back{transform:rotateY(180deg);background:radial-gradient(120% 90% at 50% 0%,#1b4e86 0%,#0c2547 70%);border:calc(var(--card-w, 88px) * .025) solid var(--gold-soft, #b9974a);overflow:hidden}.back-pattern{position:absolute;inset:calc(var(--card-w, 88px) * .08);border-radius:calc(var(--card-w, 88px) * .05);border:1px solid rgba(231,200,115,.4);background-image:repeating-linear-gradient(45deg,rgba(231,200,115,.2) 0,rgba(231,200,115,.2) 2px,transparent 2px,transparent 7px),repeating-linear-gradient(-45deg,rgba(231,200,115,.2) 0,rgba(231,200,115,.2) 2px,transparent 2px,transparent 7px)}.journey{max-width:860px;margin:0 auto;padding:26px 20px 60px;width:100%}.journey-error{color:var(--bad);text-align:center;padding:40px}.journey-head{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:var(--radius);background:var(--panel);border:1px solid rgba(231,200,115,.18);margin-bottom:26px}.level-badge{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 50% 30%,var(--gold),var(--gold-soft));color:var(--ink);flex-shrink:0;box-shadow:0 0 18px #e7c87359}.lvl-num{font-size:26px;font-weight:900;line-height:1}.lvl-word{font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.xp-block{flex:1;min-width:0}.xp-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.xp-title{font-weight:800;font-size:15px}.xp-num{color:var(--gold);font-weight:800;font-variant-numeric:tabular-nums}.xp-bar{height:10px;border-radius:6px;background:rgba(0,0,0,.4);overflow:hidden}.xp-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--gold-soft),var(--gold));transition:width .5s ease}.xp-sub{margin-top:6px;font-size:12px;color:var(--text-dim)}.tier{margin-bottom:30px}.tier-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.tier-badge{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:rgba(231,200,115,.14);border:1px solid rgba(231,200,115,.3);color:var(--gold);font-weight:900;font-size:15px;flex-shrink:0}.tier-head h2{margin:0;font-size:19px}.tier-head p{margin:2px 0 0;font-size:13px;color:var(--text-dim)}.stage-track{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.stage-node{display:flex;align-items:center;gap:12px;text-align:left;padding:14px 16px;border-radius:14px;background:var(--panel);border:1px solid rgba(255,255,255,.08);color:var(--text);cursor:pointer;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.stage-node:hover:not(:disabled){transform:translateY(-2px);border-color:#e7c87366}.stage-node.upcoming{opacity:.72}.stage-node.upcoming:hover:not(:disabled){opacity:1}.stage-node.completed{border-color:#36d39959}.sn-capstone{margin-left:6px;font-size:12px}.launcher-capstone{margin:4px 0 10px;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.4;color:var(--gold);background:rgba(231,200,115,.08);border:1px solid rgba(231,200,115,.25)}.preview-hero{text-align:center;padding:34px 20px 26px;margin-bottom:18px;border-radius:18px;background:linear-gradient(180deg,rgba(231,200,115,.09),rgba(0,0,0,.12));border:1px solid rgba(231,200,115,.22)}.preview-hero h1{margin:0 0 10px;color:var(--gold)}.preview-tagline{margin:0 0 12px;font-size:16px;font-weight:700;color:var(--text);letter-spacing:.01em}.preview-hero p{max-width:520px;margin:0 auto 18px;color:var(--text-dim);line-height:1.5}.stage-node.preview .sn-teach{margin-top:4px;font-size:12.5px;color:var(--text-dim);line-height:1.35}.preview-foot{text-align:center;padding:26px 16px 40px}.preview-foot p{color:var(--text-dim);margin:0 0 14px}.stage-node.current{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 6px 20px #e7c8732e}.sn-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.35);font-size:15px;flex-shrink:0}.stage-node.completed .sn-icon{background:rgba(54,211,153,.18);color:var(--ok)}.sn-body{flex:1;min-width:0}.sn-title{font-weight:700;font-size:14px}.sn-stars{display:flex;align-items:center;gap:2px;margin-top:4px;font-size:13px}.sn-stars .star{color:#ffffff2e}.sn-stars .star.on{color:var(--gold)}.sn-acc{margin-left:6px;font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums}.sn-cta{font-size:12px;font-weight:800;color:var(--ink);background:linear-gradient(180deg,var(--gold),var(--gold-soft));padding:5px 10px;border-radius:8px;flex-shrink:0}.drill{max-width:640px;margin:0 auto;padding:20px 18px 60px;width:100%}.drill-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.drill-title{font-weight:800;font-size:16px}.drill-streak{font-weight:800;color:var(--gold);min-width:44px;text-align:right}.drill-streak.hot{animation:pulse .6s ease}.drill-teach{color:var(--text-dim);font-size:14px;line-height:1.5;background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px 14px;margin:0 0 18px}.drill-stage-area{background:linear-gradient(160deg,var(--felt-1),var(--felt-2));border-radius:var(--radius);border:1px solid rgba(231,200,115,.16);padding:22px 18px;min-height:220px;display:flex;align-items:center;justify-content:center}.prompt-q{text-align:center;font-size:16px;font-weight:700;margin:0 0 16px}.prompt-card-value,.prompt-hand-total,.prompt-options,.prompt-scenario{width:100%}.single-card{display:flex;justify-content:center;margin-bottom:18px}.value-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.opt-btn{padding:12px 6px;border-radius:10px;border:1px solid rgba(231,200,115,.3);background:rgba(0,0,0,.3);color:var(--text);font-size:16px;font-weight:800;cursor:pointer;transition:background .12s ease,transform .1s ease}.opt-btn:hover:not(:disabled){background:rgba(231,200,115,.2)}.opt-btn:disabled{opacity:.45;cursor:default}.opt-btn.wide{width:100%;font-size:15px}.option-list{display:flex;flex-direction:column;gap:10px}.total-form{display:flex;gap:10px;justify-content:center;margin-top:8px}.total-form input{width:120px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.4);color:var(--text);font-size:18px;text-align:center}.tag-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.card-stream{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:16px}.cards-remaining{text-align:center;color:var(--text-dim);font-size:13px;margin:0 0 12px}.big-number{text-align:center;font-size:40px;font-weight:900;color:var(--gold);margin-bottom:14px}.big-number span{display:block;font-size:13px;font-weight:600;color:var(--text-dim)}.true-given{display:flex;justify-content:center;align-items:center;gap:14px;font-size:17px;margin-bottom:16px}.true-given b{color:var(--gold);font-size:22px}.reshuffle-banner{text-align:center;font-size:13px;font-weight:700;color:var(--ink);background:linear-gradient(180deg,var(--gold),var(--gold-soft));border-radius:8px;padding:7px 10px;margin-bottom:14px}.scn-row{display:flex;justify-content:space-around;gap:16px;margin-bottom:18px;flex-wrap:wrap}.scn-side{text-align:center}.scn-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.drill-feedback{margin-top:16px;padding:14px 16px;border-radius:12px;border:1px solid;animation:rise .2s ease}.drill-feedback.ok{background:rgba(54,211,153,.12);border-color:#36d39966}.drill-feedback.bad{background:rgba(248,114,114,.1);border-color:#f8727266}.fb-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.fb-mark{font-weight:900;font-size:15px}.drill-feedback.ok .fb-mark{color:var(--ok)}.drill-feedback.bad .fb-mark{color:var(--bad)}.fb-xp{color:var(--gold);font-weight:800}.fb-body{font-size:14px;color:var(--text);margin-bottom:12px}.fb-logic{margin:0 0 12px;padding:10px 12px 10px 28px;border-radius:10px;background:rgba(0,0,0,.22);font-size:13.5px;line-height:1.45;color:var(--text-dim)}.fb-logic li{margin:3px 0}.fb-logic li::marker{color:#e7c87399;font-weight:700}.fb-logic li:last-child{color:var(--text);font-weight:700}.drill-feedback .primary-btn{width:100%}.drill-progress{margin-top:18px}.dp-bar{height:8px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden}.dp-fill{height:100%;background:var(--gold-soft);border-radius:5px;transition:width .4s ease,background .3s ease}.dp-fill.met{background:var(--ok)}.dp-meta{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font-size:12px;color:var(--text-dim)}.dp-meta .good{color:var(--ok)}.dp-stars{color:var(--gold)}.levelup-toast{margin-top:16px;text-align:center;font-weight:800;color:var(--gold);background:rgba(231,200,115,.12);border:1px solid rgba(231,200,115,.4);border-radius:10px;padding:10px;animation:rise .3s ease}.celebrate-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(3,8,5,.7);display:grid;place-items:center;z-index:60;animation:fade .2s ease}.celebrate{background:var(--panel);border:1px solid var(--gold);border-radius:18px;padding:30px 34px;text-align:center;max-width:360px;box-shadow:0 0 40px #e7c8734d;animation:pop .3s ease}.celebrate-stars{font-size:38px;color:var(--gold);letter-spacing:4px;margin-bottom:8px}.celebrate h2{margin:0 0 4px;color:var(--gold)}.celebrate p{margin:0 0 6px;color:var(--text-dim)}.celebrate-unlock{color:var(--ok)!important;font-weight:700}.celebrate-actions{display:flex;gap:10px;margin-top:18px}.celebrate-actions button{flex:1}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pulse{50%{transform:scale(1.25)}}@media (max-width: 760px){.value-grid{grid-template-columns:repeat(4,1fr)}}.lesson{max-width:600px;margin:0 auto;padding:20px 18px 60px;width:100%}.lesson-error{text-align:center;color:var(--bad);margin:30px 0}.lesson-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.lesson-title{font-weight:800;font-size:16px}.lesson-count{color:var(--text-dim);font-size:13px;font-variant-numeric:tabular-nums;min-width:36px;text-align:right}.lesson-dots{display:flex;gap:5px;margin-bottom:18px}.ldot{flex:1;height:4px;border-radius:3px;background:rgba(255,255,255,.12);transition:background .3s ease}.ldot.done{background:var(--gold-soft)}.ldot.now{background:var(--gold)}.lesson-table{display:flex;justify-content:space-around;align-items:flex-start;gap:16px;flex-wrap:wrap;background:linear-gradient(160deg,var(--felt-1),var(--felt-2));border-radius:var(--radius);border:1px solid rgba(231,200,115,.16);padding:22px 18px;min-height:150px}.lt-side{text-align:center}.lt-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.lesson-text{font-size:16px;line-height:1.55;margin:18px 2px}.lesson-controls{display:flex;flex-direction:column;gap:12px}.lesson-controls .primary-btn{width:100%}.lesson-options{display:flex;flex-direction:column;gap:10px}.lesson-hint{background:rgba(248,114,114,.12);border:1px solid rgba(248,114,114,.4);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px;animation:rise .2s ease}.lesson-correct{background:rgba(54,211,153,.12);border:1px solid rgba(54,211,153,.4);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px;animation:rise .2s ease}.celebrate-xp{color:var(--gold)!important;font-weight:800;font-size:18px}.practice-head{margin-bottom:4px}.practice-count{display:inline-block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--ink);background:linear-gradient(180deg,var(--gold),var(--gold-soft));padding:4px 10px;border-radius:999px;margin-bottom:10px}.lesson-prompt{font-size:16px;font-weight:700;margin:0 2px 4px}.seq-playing{text-align:center;color:var(--text-dim);font-size:13px;font-weight:700;letter-spacing:.08em;animation:pulse 1.2s ease-in-out infinite}.lesson-table{transition:all .3s ease}.seq-timeline{list-style:none;margin:16px 0 0;padding:14px 16px;background:var(--panel);border:1px solid rgba(255,255,255,.07);border-radius:12px;display:flex;flex-direction:column;gap:2px}.tl-item{display:flex;align-items:center;gap:10px;padding:6px 4px;font-size:14px;color:var(--text-dim);position:relative;transition:color .25s ease,opacity .25s ease}.tl-item:not(:last-child) .tl-dot:after{content:"";position:absolute;left:13px;top:26px;width:2px;height:calc(100% - 14px);background:rgba(255,255,255,.12)}.tl-dot{position:relative;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.14);font-size:13px;flex-shrink:0;z-index:1}.tl-item.next{opacity:.5}.tl-item.done{color:var(--text)}.tl-item.done .tl-dot{background:rgba(54,211,153,.18);border-color:#36d39980;color:var(--ok)}.tl-item.now{color:var(--text);font-weight:700}.tl-item.now .tl-dot{background:rgba(231,200,115,.2);border-color:var(--gold);box-shadow:0 0 0 3px #e7c87326;animation:pulse 1.1s ease-in-out infinite}.tl-item.result.now .tl-label,.tl-item.result.done .tl-label{color:var(--gold);font-weight:800}.seq-actions{display:flex;gap:10px}.seq-actions .ghost-btn{flex:0 0 auto;padding:0 18px;border:1px solid rgba(231,200,115,.4);border-radius:12px;background:rgba(0,0,0,.25);color:var(--text);font-weight:700;cursor:pointer}.seq-actions .ghost-btn:hover{background:rgba(231,200,115,.15)}.seq-actions .primary-btn{flex:1}.lesson,.drill{--card-w: 76px;--card-h: 106px}.lesson-table,.drill-stage-area{overflow:hidden}.lesson-table{padding:28px 18px 22px;transition:none}@media (max-width: 760px){.journey,.lesson,.drill{overflow-y:auto;-webkit-overflow-scrolling:touch}.journey{padding:16px 12px 36px}.journey-head{padding:14px;gap:12px}.level-badge{width:54px;height:54px}.lvl-num{font-size:22px}.tier-head h2{font-size:17px}.stage-track{grid-template-columns:1fr}.lesson,.drill{--card-w: 54px;--card-h: 76px;padding:14px 12px 40px}.lesson-table{padding:20px 12px 16px;gap:10px}.lt-label{margin-bottom:6px}.lesson-text{font-size:15px;line-height:1.5;margin:14px 2px}.lesson-prompt{font-size:15px}.seq-timeline{padding:12px 14px;margin-top:12px}.tl-item{font-size:13px;padding:5px 2px}.tl-dot{width:24px;height:24px}.tl-item:not(:last-child) .tl-dot:after{left:12px;top:24px}.drill{padding:14px 12px 40px}.drill-stage-area{padding:16px 12px;min-height:180px}.drill-teach{font-size:13px}.scn-row{gap:10px}}.launcher{background:var(--panel);border:1px solid rgba(231,200,115,.4);border-radius:18px;padding:24px;width:92%;max-width:380px;box-shadow:0 20px 60px #00000080;animation:pop .25s ease}.launcher h2{margin:0 0 2px;font-size:20px}.launcher-sub{margin:0 0 18px;color:var(--text-dim);font-size:14px}.launcher-row{display:block;width:100%;text-align:left;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:13px 15px;color:var(--text);cursor:pointer;margin-bottom:14px;transition:border-color .12s ease,background .12s ease}.launcher-row:hover{border-color:#e7c87380;background:rgba(231,200,115,.08)}.lr-title{display:block;font-weight:700;font-size:15px}.lr-sub{display:block;font-size:12.5px;color:var(--text-dim);margin-top:2px}.launcher-practice{background:rgba(0,0,0,.25);border:1px solid rgba(231,200,115,.25);border-radius:12px;padding:15px}.preset-row{display:flex;align-items:center;gap:8px;margin:12px 0;flex-wrap:wrap}.preset{width:44px;height:40px;border-radius:10px;border:1px solid rgba(231,200,115,.35);background:rgba(0,0,0,.3);color:var(--text);font-weight:800;font-size:15px;cursor:pointer}.preset.on{background:linear-gradient(180deg,var(--gold),var(--gold-soft));color:var(--ink);border-color:transparent}.preset-row input{width:64px;height:40px;text-align:center;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.4);color:var(--text);font-size:16px}.preset-unit{font-size:13px;color:var(--text-dim)}.launcher-practice .primary-btn{width:100%}.launcher-cancel{display:block;width:100%;margin-top:14px;background:none;border:none;color:var(--text-dim);cursor:pointer;font-weight:700}@media (pointer: coarse){.launcher-cancel{min-height:44px}}.practice-progress{height:6px;border-radius:4px;background:rgba(255,255,255,.1);overflow:hidden;margin-bottom:16px}.pp-fill{height:100%;background:linear-gradient(90deg,var(--gold-soft),var(--gold));border-radius:4px;transition:width .3s ease}.practice-summary{text-align:center;padding:30px 10px}.ps-score{font-size:56px;font-weight:900;line-height:1;font-variant-numeric:tabular-nums}.ps-score.great{color:var(--ok)}.ps-score.good{color:var(--gold)}.ps-score.ok{color:var(--text)}.ps-acc{font-size:18px;color:var(--text-dim);margin-top:6px}.practice-summary h2{margin:18px 0 8px;font-size:18px}.ps-xp{color:var(--gold);font-weight:700}.ps-saving{color:var(--text-dim)}.ps-level{color:var(--gold);font-weight:800}.ps-actions{display:flex;gap:10px;margin-top:22px;max-width:360px;margin-left:auto;margin-right:auto}.ps-actions .ghost-btn{flex:1;padding:12px;border:1px solid rgba(231,200,115,.4);border-radius:12px;background:rgba(0,0,0,.25);color:var(--text);font-weight:700;cursor:pointer}.ps-actions .primary-btn{flex:1}.drill-roundmeta{display:flex;justify-content:space-between;gap:8px;margin-top:16px;font-size:13px;color:var(--text-dim);font-variant-numeric:tabular-nums}.drill-roundmeta .dp-stars{color:var(--gold)}.count-readout{text-align:center;font-size:16px;margin:14px 0 0;color:var(--text-dim)}.count-readout b{font-size:26px;color:var(--gold);font-variant-numeric:tabular-nums;margin-left:6px}.quiz-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:rgba(0,0,0,.66);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:popIn .18s ease both}.quiz-modal{width:min(440px,96vw);padding:22px 24px 24px;border-radius:18px;background:linear-gradient(180deg,#0c2018,#07140e);border:1px solid rgba(231,200,115,.3);box-shadow:0 30px 80px #0009}.quiz-head{display:flex;align-items:center;justify-content:space-between}.quiz-head h2{margin:0;color:var(--gold)}.quiz-sub{color:var(--text-dim);font-size:13.5px;margin:8px 0 18px}.quiz-form{display:flex;gap:14px;align-items:flex-end}.quiz-form .field{flex:1}.quiz-result{margin-top:18px;padding:12px 16px;border-radius:12px;text-align:center}.quiz-result.good{background:rgba(54,211,153,.14);border:1px solid rgba(54,211,153,.45)}.quiz-result.bad{background:rgba(248,114,114,.14);border:1px solid rgba(248,114,114,.45)}.quiz-verdict{font-size:18px;font-weight:800;margin-bottom:4px}.quiz-result.good .quiz-verdict{color:var(--ok)}.quiz-result.bad .quiz-verdict{color:var(--bad)}.quiz-actual{font-size:14px;color:var(--text)}@media (max-width: 760px){.quiz-backdrop{align-items:flex-end;padding:0}.quiz-modal{width:100%;border-radius:18px 18px 0 0;padding:18px 18px calc(22px + env(safe-area-inset-bottom));animation:sheetUp .26s ease both}.quiz-form{flex-direction:column;align-items:stretch;gap:12px}.quiz-form .primary-btn{width:100%}}.chart-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:rgba(0,0,0,.66);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:popIn .18s ease both}.chart-modal{width:min(960px,96vw);max-height:92vh;overflow:auto;padding:22px 24px 26px;border-radius:18px;background:linear-gradient(180deg,#0c2018,#07140e);border:1px solid rgba(231,200,115,.3);box-shadow:0 30px 80px #0009}.chart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.chart-head h2{margin:0;color:var(--gold);letter-spacing:.04em}.current-move{padding:10px 14px;border-radius:10px;background:rgba(231,200,115,.08);border:1px solid rgba(231,200,115,.25);margin-bottom:16px;font-size:15px}.chart-sections{display:grid;grid-template-columns:1fr 1fr;gap:18px}.chart-section:first-child{grid-row:span 2}.chart-section h3{margin:0 0 8px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim)}.strat-table{border-collapse:collapse;width:100%;font-size:12px;font-weight:700}.strat-table th{color:var(--text-dim);font-weight:700;padding:3px;text-align:center}.strat-table td{width:24px;height:22px;text-align:center;color:#0a0f0c;border:1px solid rgba(0,0,0,.25)}.strat-table td.here{outline:3px solid #fff;outline-offset:-3px;box-shadow:0 0 12px #fffc;position:relative;z-index:1}.code-H{background:#e98a8a}.code-S{background:#f2d27a}.code-D{background:#8fc7e8}.code-Ds{background:#7fd9c4}.code-P{background:#93d99a}.code-R,.code-Rs{background:#c7a8e0}.code{display:inline-block;min-width:20px;padding:1px 6px;border-radius:4px;text-align:center;color:#0a0f0c;font-weight:800}.legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;font-size:13px;color:var(--text-dim)}.legend-item{display:inline-flex;align-items:center;gap:6px}.chart-foot{margin-top:14px;font-size:12px;color:var(--text-dim)}@media (max-width: 720px){.chart-sections{grid-template-columns:1fr}.chart-section:first-child{grid-row:auto}}@media (max-width: 760px){.chart-backdrop{align-items:flex-end;padding:0}.chart-modal{width:100%;max-height:90vh;border-radius:18px 18px 0 0;padding:16px 16px calc(20px + env(safe-area-inset-bottom));animation:sheetUp .26s ease both}.chart-sections{grid-template-columns:1fr}.chart-section:first-child{grid-row:auto}.strat-table td{width:auto}.current-move{font-size:13.5px}}.chip-rack{display:flex;gap:12px;align-items:center}.chip{--chip: #ccc;--chip-text: #1b2430;width:58px;height:58px;margin:0;padding:0;border-radius:50%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.4),transparent 45%),var(--chip);color:var(--chip-text);border:3px dashed rgba(255,255,255,.65);box-shadow:0 5px 12px #00000073,0 0 0 2px #00000040;font-weight:800;font-size:16px;cursor:pointer;transition:transform .1s ease,filter .15s ease}.chip:hover:not(:disabled){transform:translateY(-4px);filter:brightness(1.07)}.chip:active:not(:disabled){transform:translateY(-1px)}.chip:disabled{opacity:.35;cursor:not-allowed}.chip-inner{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.14)}.table-screen{flex:1;min-height:0;display:flex;flex-direction:column;background:radial-gradient(120% 90% at 50% -10%,rgba(231,200,115,.05),transparent 50%),radial-gradient(140% 120% at 50% 120%,var(--felt-2),var(--ink) 75%)}.table-screen.center{align-items:center;justify-content:flex-start;overflow-y:auto}.loading{color:var(--text-dim);font-size:18px}.table-hud{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;background:rgba(4,12,8,.35)}.hud-info{display:flex;align-items:center;gap:14px;min-width:0}.rule-summary{font-size:12.5px;letter-spacing:.04em;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-main{display:flex;align-items:center;gap:14px}.stat-cluster{display:flex;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}.stat-pill{display:inline-flex;align-items:baseline;gap:6px;padding:5px 12px;border-radius:999px;font-variant-numeric:tabular-nums}.stat-pill-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.stat-pill-value{font-size:14px;font-weight:800;color:var(--gold)}.bankroll-chip{display:inline-block;font-size:18px;font-weight:800;color:var(--gold);padding:7px 18px;border-radius:999px;background:rgba(231,200,115,.12);border:1px solid rgba(231,200,115,.4);font-variant-numeric:tabular-nums;animation:bankrollBump .45s ease}@keyframes bankrollBump{0%{transform:scale(1)}35%{transform:scale(1.12);background:rgba(231,200,115,.28)}to{transform:scale(1)}}.hud-actions{display:flex;gap:8px}.hud-actions .ghost-btn{padding:8px 14px;font-size:13.5px}.ghost-btn.subtle{color:var(--text-dim);border-color:#ffffff1a}.felt{flex:1;min-height:0;position:relative;margin:22px;border-radius:220px/120px;background:radial-gradient(120% 100% at 50% 0%,var(--felt-1),var(--felt-2) 75%);box-shadow:0 0 0 2px #e7c87338,0 0 0 16px #00000052,inset 0 4px 40px #ffffff12,inset 0 -30px 80px #00000059;display:grid;grid-template-rows:1fr auto 1fr;padding:26px 40px;overflow:hidden}.felt>.dealer-zone,.felt>.table-center,.felt>.player-zone{position:relative;z-index:1}.felt-emblem{position:absolute;left:0;right:0;top:37%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;z-index:0;pointer-events:none;text-align:center;color:#e7c87326;transition:opacity .3s ease}.felt.in-round .felt-emblem{opacity:.45}.felt-wordmark{font-size:26px;font-weight:800;letter-spacing:.34em;text-transform:uppercase}.felt-suits{font-size:17px;letter-spacing:.5em}.felt-rules{margin-top:2px;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#ffffff1c}.zone-label{text-align:center;font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:#e7c873cc;margin-bottom:10px}.zone-label.you{margin-top:10px;margin-bottom:0}.dealer-zone,.player-zone{display:flex;flex-direction:column;justify-content:center;align-items:center}.player-zone{justify-content:flex-end}.hands-row{display:flex;gap:34px;align-items:flex-start;flex-wrap:wrap;justify-content:center}.empty-hand{height:var(--card-h, 124px)}.hand{display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px;border-radius:16px;transition:background .2s ease,box-shadow .2s ease}.hand.active{background:rgba(231,200,115,.08);box-shadow:0 0 0 2px #e7c87380,0 0 24px #e7c8732e}.hand-cards{display:flex}.hand-cards .card-slot+.card-slot{margin-left:-42px}.hand-meta{display:flex;align-items:center;gap:8px;animation:metaIn .24s ease both}@keyframes metaIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.total-badge{min-width:34px;text-align:center;font-weight:800;font-size:15px;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.14);color:var(--text);font-variant-numeric:tabular-nums}.total-badge.good{color:var(--ok);border-color:#36d39980}.total-badge.bad{color:var(--bad);border-color:#f8727280}.hand-sub{font-size:13px;color:var(--text-dim);font-variant-numeric:tabular-nums}.result-tag{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:6px}.result-tag.win{background:rgba(54,211,153,.18);color:var(--ok)}.result-tag.lose{background:rgba(248,114,114,.18);color:var(--bad)}.result-tag.push{background:rgba(255,255,255,.12);color:var(--text-dim)}.table-center{display:flex;align-items:center;justify-content:center}.bet-spot{width:116px;height:116px;border-radius:50%;display:grid;place-items:center;border:2px dashed rgba(231,200,115,.4);background:radial-gradient(circle,rgba(231,200,115,.08),transparent 70%);transition:border-color .2s ease,background .2s ease}.bet-spot.filled{border-style:solid;border-color:#e7c873b3;background:radial-gradient(circle,rgba(231,200,115,.18),transparent 72%);box-shadow:0 0 26px #e7c8732e}.bet-spot-amt{font-size:24px;font-weight:800;color:var(--gold);font-variant-numeric:tabular-nums}.bet-spot-hint{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#ffffff80;text-align:center;padding:0 14px}.outcome-banner{display:flex;flex-direction:column;align-items:center;gap:3px;font-family:inherit;font-size:24px;font-weight:800;padding:10px 26px;border-radius:14px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.12);cursor:pointer;animation:popIn .3s ease both}.outcome-next{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ffffff8c}.outcome-banner.win{color:var(--ok);border-color:#36d39973;box-shadow:0 0 30px #36d3992e}.outcome-banner.lose{color:var(--bad);border-color:#f8727273}.outcome-banner.push{color:var(--text-dim)}.outcome-banner.blackjack{color:var(--gold);border-color:#e7c873bf;background:linear-gradient(180deg,rgba(231,200,115,.16),rgba(0,0,0,.5));box-shadow:0 0 36px #e7c87359;animation:popIn .3s ease both,bjGlow 1.5s ease-in-out .3s 2}@keyframes bjGlow{0%,to{box-shadow:0 0 36px #e7c87359}50%{box-shadow:0 0 56px #e7c87399}}@keyframes popIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.control-dock{padding:8px 26px 24px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.feedback-zone{width:100%;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.dock-stage{width:100%;min-height:128px;display:flex;flex-direction:column;align-items:center;justify-content:center}.bet-spot-min{display:block;font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ffffff8c;margin-top:2px}.bet-spot.filled .bet-spot-min{color:#ffd27d}.dock-error{margin:0}.count-chip{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;color:#8fe3c4;padding:6px 12px;border-radius:999px;background:rgba(54,211,153,.12);border:1px solid rgba(54,211,153,.4)}.feedback.bet.good{background:rgba(143,199,232,.14);border-color:#8fc7e880;color:#bfe2f5}.feedback{padding:9px 18px;border-radius:10px;font-size:14.5px;font-weight:600;animation:popIn .2s ease both}.feedback.good{background:rgba(54,211,153,.14);border:1px solid rgba(54,211,153,.45);color:var(--ok)}.feedback.bad{background:rgba(248,114,114,.14);border:1px solid rgba(248,114,114,.45);color:#ffd0d0}.feedback strong{color:#fff}.feedback .feedback-why{display:block;margin-top:2px;font-style:normal;font-size:12.5px;opacity:.85}.guest-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 14px 0;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.4;background:rgba(231,200,115,.08);border:1px solid rgba(231,200,115,.25)}.guest-banner strong{color:var(--gold)}.skill-snapshot{margin:10px 14px 0;padding:14px 16px;border-radius:14px;background:linear-gradient(180deg,rgba(54,211,153,.1),rgba(0,0,0,.14));border:1px solid rgba(54,211,153,.3);animation:popIn .22s ease both}.ss-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.ss-grade{font-weight:800;color:var(--ok, #36d399)}.ss-acc{font-size:13px;color:var(--text-dim)}.ss-body{margin:8px 0 12px;font-size:13.5px;line-height:1.5}.ss-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}@media (max-width: 760px){.guest-banner,.skill-snapshot{margin:8px 10px 0}}.bet-controls{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:center}.broke-panel{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 26px 18px;border-radius:16px;background:rgba(0,0,0,.35);border:1px solid rgba(248,114,114,.4);text-align:center}.broke-title{font-size:18px;font-weight:800;color:var(--bad)}.broke-sub{margin:0 0 10px;font-size:13.5px;color:var(--text-dim)}.bet-buttons{display:flex;align-items:center;gap:10px}.action-bar{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.action{min-width:104px;padding:13px 18px;font-size:15px;font-weight:800;letter-spacing:.04em;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:var(--text);cursor:pointer;transition:transform .08s ease,background .15s ease,filter .15s ease}.action:hover:not(:disabled){background:rgba(255,255,255,.13)}.action:active:not(:disabled){transform:translateY(1px)}.action:disabled{opacity:.32;cursor:not-allowed}.action-hit{border-color:#36d39980}.action-stand{border-color:#f8727280}.action-double{border-color:#e7c87399}.primary-btn{padding:13px 30px;font-size:16px;font-weight:800;letter-spacing:.03em;color:var(--ink);background:linear-gradient(180deg,var(--gold),var(--gold-soft));border:none;border-radius:12px;cursor:pointer;box-shadow:0 6px 18px #0006;transition:transform .08s ease,filter .15s ease}.primary-btn:hover:not(:disabled){filter:brightness(1.06)}.primary-btn:active:not(:disabled){transform:translateY(1px)}.primary-btn:disabled{opacity:.4;cursor:not-allowed}.deal-btn{min-width:130px}.ghost-btn{padding:11px 18px;font-size:14px;font-weight:700;color:var(--text);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.16);border-radius:10px;cursor:pointer;transition:background .15s ease}.ghost-btn:hover:not(:disabled){background:rgba(255,255,255,.12)}.ghost-btn:disabled{opacity:.4;cursor:not-allowed}.error-line{color:var(--bad);font-size:14px;margin:6px 0 0}.toast{position:fixed;top:78px;left:50%;transform:translate(-50%);z-index:20;padding:10px 20px;border-radius:999px;background:rgba(0,0,0,.7);border:1px solid rgba(231,200,115,.4);color:var(--gold);font-weight:700;font-size:14px;animation:popIn .25s ease both}.setup-card{width:min(620px,94vw);margin:28px auto;padding:30px 32px 28px;border-radius:20px;text-align:left;background:linear-gradient(180deg,#0d2419,#081710);border:1px solid rgba(231,200,115,.22);box-shadow:0 30px 80px #0000008c}.setup-card h1{margin:0 0 2px;font-size:28px}.setup-card .subtitle{color:var(--text-dim);margin:0 0 22px;font-size:14.5px}.setup-section{padding:16px 0;border-top:1px solid rgba(255,255,255,.07)}.section-label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);opacity:.85;margin-bottom:14px}.setup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.toggle{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text);cursor:pointer}.toggle input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0}.save-default{margin:18px 0 2px}.slider-field{margin-top:18px}.slider-head{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--text-dim);margin-bottom:8px}.slider-value{font-weight:800;color:var(--gold);letter-spacing:.04em}.slider-field input[type=range]{width:100%;accent-color:var(--gold);cursor:pointer}.slider-ends{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#ffffff73;margin-top:4px}.primary-btn.block{width:100%;margin-top:22px}.felt{--card-w: 84px;--card-h: 118px}@media (max-width: 760px){.table-hud{flex-direction:column;align-items:stretch;gap:6px;padding:7px 12px}.hud-main{order:1;justify-content:space-between;gap:8px}.hud-info{order:2;justify-content:center;gap:8px;overflow-x:auto;scrollbar-width:none}.hud-info::-webkit-scrollbar{display:none}.rule-summary{display:none}.hud-actions{gap:6px}.hud-actions .ghost-btn{padding:8px 12px;font-size:13px}.bankroll-chip{font-size:17px;padding:7px 15px}.stat-pill{padding:4px 9px}.count-chip{white-space:nowrap}.felt{--card-w: 58px;--card-h: 82px;margin:10px;padding:14px 10px;border-radius:26px}.hand-cards .card-slot+.card-slot{margin-left:-28px}.hands-row{gap:16px;width:100%;flex-wrap:nowrap;justify-content:safe center;overflow-x:auto;padding:6px 0;scroll-padding-inline:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.hands-row::-webkit-scrollbar{display:none}.hand{flex:0 0 auto;scroll-snap-align:center}.felt-wordmark{font-size:17px;letter-spacing:.2em}.felt-suits{font-size:13px}.felt-rules{font-size:9px;letter-spacing:.12em}.zone-label{font-size:10px;letter-spacing:.24em}.bet-spot{width:92px;height:92px}.bet-spot-amt{font-size:20px}.outcome-banner{font-size:19px;padding:9px 18px}.control-dock{padding:4px 12px 10px;gap:8px}.feedback-zone{min-height:44px;gap:6px;margin-bottom:0}.feedback{width:100%;text-align:center;font-size:13px;padding:8px 12px}.dock-stage{min-height:132px}.chip-rack{gap:8px;justify-content:center;flex-wrap:wrap}.chip{width:48px;height:48px;font-size:14px;border-width:2px}.chip-inner{width:32px;height:32px}.bet-controls{flex-direction:column;gap:12px;width:100%}.bet-buttons{width:100%;gap:8px}.bet-buttons .ghost-btn{flex:1;padding:13px 10px}.deal-btn{flex:1.5}.action-bar{width:100%;gap:8px}.action{min-width:0;flex:1 1 28%;padding:14px 6px;font-size:14px}.setup-card{width:100%;margin:12px auto;padding:20px 18px 22px;border-radius:16px}.setup-card h1{font-size:24px}.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.setup-grid .field input,.setup-grid .field select{width:100%;min-width:0}.toggle-grid{grid-template-columns:1fr;gap:6px}}@media (max-width: 380px){.felt{--card-w: 52px;--card-h: 74px}.hud-actions .ghost-btn{padding:8px 10px;font-size:12px}}@media (max-width: 760px) and (max-height: 720px){.felt{padding:8px}.felt-emblem{display:none}.zone-label{margin-bottom:4px;font-size:9px;letter-spacing:.2em}.zone-label.you{margin-top:4px;margin-bottom:0}.bet-spot{width:80px;height:80px}.bet-spot-amt{font-size:18px}}:root{--felt-1: #0b6b3a;--felt-2: #064d29;--ink: #0a0f0c;--panel: rgba(8, 20, 14, .72);--gold: #e7c873;--gold-soft: #b9974a;--text: #eaf3ec;--text-dim: #9fb3a6;--ok: #36d399;--bad: #f87272;--radius: 16px;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--text);background:var(--ink)}.app-root{min-height:100vh;display:flex;flex-direction:column}.app-loading,.app-main .loading{display:grid;place-items:center;min-height:60vh;color:var(--text-dim)}.app-nav{display:flex;align-items:center;gap:24px;padding:12px 24px;background:rgba(4,12,8,.7);border-bottom:1px solid rgba(231,200,115,.14);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10}.nav-brand{font-size:13px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);font-weight:700}.nav-links{display:flex;gap:6px}.nav-link{display:inline-flex;align-items:center;gap:7px;background:none;border:none;color:var(--text-dim);font-size:15px;font-weight:700;padding:8px 14px;border-radius:9px;cursor:pointer}.nav-link:hover{color:var(--text);background:rgba(255,255,255,.05)}.nav-link.active{color:var(--ink);background:linear-gradient(180deg,var(--gold),var(--gold-soft))}.nav-ico{width:22px;height:22px;fill:currentColor;display:none}.nav-auth{margin-left:auto;display:flex;align-items:center;gap:12px}.nav-user{font-size:14px;color:var(--text-dim)}.primary-btn.small{padding:9px 16px;font-size:14px}.app-main{flex:1;min-height:0;display:flex;flex-direction:column}.need-login{margin:auto;text-align:center;padding:40px}.need-login h1{margin:0 0 8px}.need-login p{color:var(--text-dim);margin:0 0 22px}.field{display:flex;flex-direction:column;gap:6px;text-align:left;font-size:13px;color:var(--text-dim)}.field input,.field select{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.35);color:var(--text);font-size:16px}h1{margin:0 0 4px;font-size:40px;letter-spacing:-.01em}.subtitle{color:var(--text-dim);margin:0 0 28px;font-size:15px}.hide-mobile{display:inline}@media (max-width: 760px){.hide-mobile{display:none}.app-root{height:100vh;height:100dvh}.app-main{overflow:hidden}.app-nav{position:sticky;top:0;gap:10px;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top));-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(6,14,10,.96)}.nav-brand{font-size:12px;letter-spacing:.16em;white-space:nowrap}.nav-links,.nav-auth{display:none}.app-main{padding-bottom:env(safe-area-inset-bottom)}.need-login{padding:30px 20px}}.menu-btn{display:none;place-items:center;margin-left:auto;width:42px;height:42px;padding:0;border:1px solid rgba(231,200,115,.25);border-radius:12px;background:rgba(231,200,115,.08);cursor:pointer}.menu-btn svg{width:20px;height:20px;fill:var(--gold)}.mobile-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu{position:absolute;top:calc(56px + env(safe-area-inset-top));right:10px;min-width:220px;padding:8px;border-radius:16px;background:linear-gradient(180deg,#0c2018,#07140e);border:1px solid rgba(231,200,115,.3);box-shadow:0 24px 60px #0000008c;animation:popIn .16s ease both}.mm-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border:none;border-radius:10px;background:none;color:var(--text);font-size:15px;font-weight:700;text-align:left;cursor:pointer}.mm-item .nav-ico{width:18px;height:18px;fill:currentColor;opacity:.8}.mm-item.active{color:var(--gold);background:rgba(231,200,115,.1)}.mm-current{margin-left:auto}.mm-divider{height:1px;margin:6px 8px;background:rgba(255,255,255,.1)}.mm-user{padding:6px 14px 2px;font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis}.mm-login{color:var(--gold)}@media (max-width: 760px){.menu-btn{display:grid}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
