@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--bg-primary:#000;--bg-surface:#0a0a0a;--bg-elevated:#111;--bg-card:#141414;--text-primary:#e0e0e0;--text-secondary:#888;--text-muted:#555;--accent-correct:#0f8;--accent-error:#f36;--accent-cyan:#00d4ff;--accent-gold:gold;--glass-bg:#ffffff0f;--glass-border:#ffffff1f;--glass-glow:#00d4ff26;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--transition-fast:80ms ease;--transition-normal:.2s ease;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--tab-bar-h:calc(56px + var(--sab));--action-bar-h:72px;--stats-hud-h:48px}[data-theme=light]{--bg-primary:#f2f2f7;--bg-surface:#fff;--bg-elevated:#e8e8ed;--bg-card:#fff;--text-primary:#1c1c1e;--text-secondary:#636366;--text-muted:#aeaeb2;--accent-correct:#00a854;--accent-error:#e63946;--accent-cyan:#007aff;--accent-gold:#c89b00;--glass-bg:#0000000a;--glass-border:#0000001a;--glass-glow:#007aff1a}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{overscroll-behavior:none;width:100%;height:100%;overflow:hidden}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;touch-action:manipulation;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:2px}@keyframes flashGreen{0%{box-shadow:0 0 #0f86}50%{box-shadow:0 0 30px 10px #0f83}to{box-shadow:0 0 #0f80}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardDeal{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes streakGlow{0%{color:#f46}33%{color:gold}66%{color:#00d4ff}to{color:#f46}}@keyframes streakBounce{0%{opacity:0;transform:translate(-50%)scale(.5)}70%{opacity:1;transform:translate(-50%)scale(1.08)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes resultPop{0%{opacity:0;transform:scale(.75)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes holeShimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes dealPulse{0%,to{box-shadow:0 0 #00d4ff4d}50%{box-shadow:0 0 18px 4px #00d4ff2e}}@keyframes statPop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.streak-counter{top:calc(var(--stats-hud-h) + 6px);z-index:90;letter-spacing:2px;white-space:nowrap;pointer-events:none;text-shadow:0 0 20px;font-size:22px;font-weight:800;animation:.2s cubic-bezier(.34,1.56,.64,1) forwards streakBounce;position:absolute;left:50%;transform:translate(-50%)}.streak-counter--cyan{color:#00d4ff}.streak-counter--gold{color:gold}.streak-counter--fire{animation:.2s cubic-bezier(.34,1.56,.64,1) forwards streakBounce,1.2s linear infinite streakGlow}.card{border-radius:var(--radius-md);width:clamp(56px,16vw,72px);height:clamp(82px,23vw,104px);transition:transform var(--transition-fast);background:#0d0d0d;border:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;justify-content:space-between;padding:4px 6px;animation:.15s ease-out both cardDeal;display:flex;position:relative;box-shadow:inset 0 1px #ffffff0d,inset 0 -1px #00000080}.card--red{color:#f46}.card--black{color:#e8e8e8}.card--holecarded{-webkit-backdrop-filter:blur(16px);background:#ffffff0a;border:1px solid #00d4ff40;box-shadow:0 0 20px #00d4ff1a,inset 0 0 30px #00d4ff08}.card--holecarded:before{content:"";border-radius:var(--radius-md);pointer-events:none;background:linear-gradient(120deg,#0000 20%,#00d4ff1f 50%,#0000 80%) 0 0/200% 100%;animation:3s linear infinite holeShimmer;position:absolute;inset:0}.card--holecarded:after{content:"";border-radius:var(--radius-md);pointer-events:none;background:linear-gradient(135deg,#00d4ff0f 0%,#0000 50%,#00d4ff08 100%);position:absolute;inset:0}.card__corner{z-index:1;flex-direction:column;align-items:flex-start;line-height:1;display:flex;position:relative}.card__corner--bottom{align-self:flex-end;transform:rotate(180deg)}.card__rank{letter-spacing:-.5px;font-size:clamp(12px,3.5vw,15px);font-weight:800;line-height:1}.card__suit{font-size:clamp(9px,2.5vw,11px);line-height:1}.card__center{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card__suit-large{opacity:.28;font-size:clamp(18px,6vw,26px)}.card--holecarded .card__suit-large{opacity:.5;filter:drop-shadow(0 0 6px #00d4ff66)}.card__xray-badge{color:var(--accent-cyan);letter-spacing:2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#00d4ff26;border:1px solid #00d4ff4d;border-radius:4px;padding:1px 5px;font-size:6px;font-weight:800;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}.action-bar{bottom:var(--tab-bar-h);z-index:100;transition:box-shadow var(--transition-normal);background:linear-gradient(#0000 0%,#000c 30%,#000000f7 100%);grid-template-columns:1fr 1.2fr 1.2fr 1fr 1fr;gap:6px;padding:8px 10px;display:grid;position:fixed;left:0;right:0}.action-bar--flash{animation:.4s ease-out flashGreen}.action-btn{border-radius:var(--radius-lg);background:var(--bg-elevated);min-width:0;min-height:52px;color:var(--text-primary);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);-webkit-tap-highlight-color:transparent;border:1px solid #ffffff14;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:10px 4px;font-family:inherit;display:flex;position:relative;overflow:hidden}.action-btn:active:not(:disabled){transform:scale(.93)}.action-btn:disabled{opacity:.22;cursor:not-allowed}.action-btn__label{letter-spacing:.5px;font-size:12px;font-weight:800;line-height:1}.action-btn__key{letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;font-size:8px;font-weight:600}.action-btn--hit{color:#000;background:#00d4ff;border-color:#00d4ff;grid-column:2/3;font-weight:900}.action-btn--hit .action-btn__key{color:#00000080}.action-btn--hit:active:not(:disabled){background:#10dcff;box-shadow:0 0 20px #00d4ff66}.action-btn--stand{color:#fff;background:#ffffff1f;border-color:#fff3;grid-column:3/4;font-weight:900}.action-btn--stand:active:not(:disabled){background:#ffffff38}.action-btn--double{color:gold;background:#ffd70012;border-color:#ffd70066;grid-column:1/2}.action-btn--double .action-btn__key{color:#ffd70073}.action-btn--double:active:not(:disabled){background:#ffd7002e;box-shadow:0 0 12px #ffd70026}.action-btn--split{color:#a855f7;background:#a855f712;border-color:#a855f766;grid-column:4/5}.action-btn--split .action-btn__key{color:#a855f773}.action-btn--split:active:not(:disabled){background:#a855f72e;box-shadow:0 0 12px #a855f726}.action-btn--surrender{color:var(--accent-error);background:#ff336612;border-color:#ff336640;grid-column:5/6}.action-btn--surrender .action-btn__key{color:#f366}.action-btn--surrender:active:not(:disabled){background:#ff33662e}.action-btn--flash-correct{animation:.3s ease-out forwards btnFlashCorrect}@keyframes btnFlashCorrect{0%{border-color:#0f8c;box-shadow:0 0 #00ff8880}50%{border-color:var(--accent-correct);box-shadow:0 0 24px 6px #00ff8840}to{border-color:#0f83;box-shadow:0 0 #0f80}}.friction-overlay{-webkit-backdrop-filter:blur(20px);z-index:200;cursor:pointer;background:#000000a6;justify-content:center;align-items:center;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.friction-modal{border-radius:var(--radius-xl);cursor:default;background:#101010f7;border:1px solid #ff33664d;width:min(380px,100vw - 32px);padding:24px 22px;animation:.18s ease-out slideUp}.friction-modal__header{align-items:center;gap:10px;margin-bottom:18px;display:flex}.friction-modal__icon{width:30px;height:30px;color:var(--accent-error);background:#ff336626;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.friction-modal__title{letter-spacing:2px;color:var(--accent-error);font-size:12px;font-weight:700}.friction-modal__comparison{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.friction-modal__hand-desc{text-align:center;color:var(--text-primary);letter-spacing:.5px;margin-bottom:18px;padding:10px 0;font-size:16px;font-weight:700}.friction-modal__hand-vs{color:var(--text-muted);letter-spacing:2px;text-transform:uppercase;margin:0 8px;font-size:11px;font-weight:500}.friction-modal__row{grid-template-columns:75px 72px 1fr 50px;align-items:center;gap:8px;display:grid}.friction-modal__action-label{color:var(--text-secondary);font-size:10px}.friction-modal__action-value{color:var(--text-muted);font-size:13px;font-weight:700}.friction-modal__action-value--chosen{color:var(--accent-error)}.friction-modal__action-value--correct{color:var(--accent-correct)}.friction-modal__ev-bar-track{background:#ffffff0d;border-radius:6px;height:12px;overflow:hidden}.friction-modal__ev-bar{border-radius:6px;height:100%;transition:width .35s cubic-bezier(.4,0,.2,1)}.friction-modal__ev-bar--pos{background:linear-gradient(90deg,#00a857,#0f8)}.friction-modal__ev-bar--neg{background:linear-gradient(90deg,#c13,#f36)}.friction-modal__ev-val{text-align:right;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.friction-modal__ev-val--correct{color:var(--accent-correct)}.friction-modal__delta{border-radius:var(--radius-md);color:var(--text-secondary);background:#ff336614;border:1px solid #ff336626;justify-content:space-between;align-items:center;margin-bottom:14px;padding:11px 14px;font-size:11px;display:flex}.friction-modal__delta-value{color:var(--accent-error);font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.friction-tip{color:#ffffff6b;-webkit-line-clamp:2;border-top:1px solid #ffffff0f;-webkit-box-orient:vertical;margin-bottom:14px;padding:10px 0;font-size:11px;font-style:italic;line-height:1.45;display:-webkit-box;overflow:hidden}.friction-modal__dismiss{border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--text-muted);letter-spacing:1.5px;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #ffffff14;padding:14px;font-family:inherit;font-size:10px;font-weight:600;animation:2s ease-in-out infinite pulse}.friction-modal__dismiss:active{opacity:.7;transform:scale(.97)}.stats-hud{padding:calc(4px + env(safe-area-inset-top,0px)) 12px 4px;z-index:100;max-height:calc(var(--stats-hud-h) + env(safe-area-inset-top,0px));background:linear-gradient(#000000f2 0%,#0009 80%,#0000 100%);justify-content:center;align-items:center;gap:0;display:flex;position:fixed;top:0;left:0;right:0}.stats-hud__item{flex-direction:column;align-items:center;gap:1px;padding:0 8px;display:flex}.stats-hud__item--accent{padding:0 10px}.stats-hud__divider{background:#ffffff12;width:1px;height:20px}.stats-hud__value{font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:14px;font-weight:700;animation:.25s ease-out statPop}.stats-hud__value--large{font-size:16px;font-weight:800}.stats-hud__value--good{color:var(--accent-correct)}.stats-hud__value--ok{color:var(--accent-gold)}.stats-hud__value--bad{color:var(--accent-error)}.stats-hud__value--streak{color:var(--accent-cyan)}.stats-hud__label{letter-spacing:1.5px;color:var(--text-muted);font-size:7px;font-weight:600}.hand-log{background:0 0;flex-direction:column;flex:1;width:100%;display:flex;overflow:hidden}.hand-log__controls{border-bottom:1px solid #ffffff0f;gap:10px;padding:14px 16px;display:flex}.hand-log__btn{border-radius:var(--radius-md);background:var(--bg-elevated);min-height:48px;color:var(--text-primary);letter-spacing:1.5px;cursor:pointer;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent;border:1px solid #ffffff1a;flex:1;padding:12px;font-family:inherit;font-size:11px;font-weight:700}.hand-log__btn:active:not(:disabled){transform:scale(.97)}.hand-log__btn:disabled{opacity:.3;cursor:not-allowed}.hand-log__btn--start{color:var(--accent-cyan);background:#00d4ff1f;border-color:#00d4ff4d}.hand-log__btn--mistakes{color:var(--accent-error);background:#ff33661a;border-color:#ff336640}.hand-log__btn--exit{color:var(--text-secondary);background:0 0;border-color:#ffffff14;font-size:10px}.hand-log__progress{border-bottom:1px solid #ffffff0f;padding:10px 16px}.hand-log__progress-label{letter-spacing:1px;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:600;display:block}.hand-log__progress-track{background:#ffffff0f;border-radius:2px;width:100%;height:4px;overflow:hidden}.hand-log__progress-fill{background:var(--accent-cyan);height:100%;transition:width var(--transition-normal);border-radius:2px}.hand-log__progress-fill--mistakes{background:var(--accent-error)}.hand-log__header{letter-spacing:2px;color:var(--text-muted);padding:12px 16px 6px;font-size:9px;font-weight:700}.hand-log__list{-webkit-overflow-scrolling:touch;flex:1;padding:0 10px 16px;overflow:hidden auto}.hand-log__empty{text-align:center;color:var(--text-muted);opacity:.5;padding:32px 16px;font-size:12px}.hand-log__entry{border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:2px;padding:8px 10px;animation:.15s ease-out slideUp;display:flex}.hand-log__entry--correct{background:#00ff880a}.hand-log__entry--incorrect{background:#ff33660f}.hand-log__icon{text-align:center;flex-shrink:0;width:18px;font-size:12px;font-weight:700}.hand-log__icon--correct{color:var(--accent-correct)}.hand-log__icon--incorrect{color:var(--accent-error)}.hand-log__desc{color:var(--text-secondary);flex:1;min-width:0;font-size:11px;line-height:1.4}.hand-log__vs{opacity:.4;margin:0 2px}.hand-log__action{letter-spacing:.5px;color:var(--text-muted);flex-shrink:0;font-family:Courier New,Courier,monospace;font-size:10px;font-weight:600}.sb{background:var(--bg-primary);flex-direction:column;flex:1;display:flex;overflow:hidden}.sb__saved{-webkit-overflow-scrolling:touch;border-bottom:1px solid #ffffff0f;flex-shrink:0;gap:6px;padding:8px 10px;display:flex;overflow-x:auto}.sb__saved-item{flex-shrink:0;align-items:center;gap:2px;display:flex}.sb__saved-load{letter-spacing:.5px;background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--accent-cyan);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;border-radius:12px;padding:4px 10px;font-family:inherit;font-size:10px;font-weight:600}.sb__saved-load:active{transform:scale(.95)}.sb__saved-del{width:20px;height:20px;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-family:inherit;font-size:14px;font-weight:700;line-height:1;display:flex}.sb__saved-del:active{color:var(--accent-error)}.sb__scroll{-webkit-overflow-scrolling:touch;flex:1;position:relative;overflow:auto}.sb__table{border-collapse:separate;border-spacing:0;white-space:nowrap;font-size:10px}.sb__th{z-index:3;background:var(--bg-surface);color:var(--accent-cyan);text-align:center;letter-spacing:.3px;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-bottom:1px solid #ffffff14;min-width:32px;padding:6px 2px;font-size:9px;font-weight:700;position:sticky;top:0}.sb__th:active{background:#00d4ff1f}.sb__th--corner{z-index:5;background:var(--bg-surface);color:var(--text-muted);text-align:left;cursor:default;min-width:40px;padding-left:6px;position:sticky;top:0;left:0}.sb__th--col{min-width:32px}.sb__td{text-align:center;font-variant-numeric:tabular-nums;border-bottom:1px solid #ffffff08;border-right:1px solid #ffffff08;padding:0;font-size:9px;font-weight:700}.sb__td--label{z-index:2;background:var(--bg-surface);text-align:left;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;min-width:40px;padding:4px 6px;font-size:10px;font-weight:600;position:sticky;left:0}.sb__td--label:active{background:#00d4ff14}.sb__cell{cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;width:32px;height:28px;transition:outline 80ms,box-shadow 80ms;position:relative}.sb__cell:active{opacity:.75}.sb__cell--hit{color:#000;background:#fff}.sb__cell--stand{color:#000;background:#ff0}.sb__cell--double{color:#000;background:#0f0}.sb__cell--split{color:#000;background:#0ff}.sb__cell--surrender{color:#fff;background:red}.sb__cell--selected{outline-offset:-2px;z-index:1;outline:2px solid #007aff;box-shadow:inset 0 0 0 100px #007aff2e}.sb__section-row td{padding:0}.sb__section-label{letter-spacing:2px;color:#ffffff40;background:var(--bg-primary);text-transform:uppercase;border-bottom:1px solid #ffffff0f;font-size:8px;font-weight:700;padding:8px 6px 4px!important}.sb__bar{padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(16px);background:#000000d9;border-top:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;margin-bottom:0;display:flex}.sb__count{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:600}.sb__bar-actions{align-items:center;gap:6px;display:flex}.sb__btn{border-radius:var(--radius-sm);letter-spacing:1.5px;cursor:pointer;min-height:36px;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;white-space:nowrap;border:1px solid #0000;padding:8px 14px;font-family:inherit;font-size:10px;font-weight:700}.sb__btn:active:not(:disabled){transform:scale(.95)}.sb__btn:disabled{opacity:.28;cursor:not-allowed}.sb__btn--clear{color:var(--text-muted);background:#ffffff0f;border-color:#ffffff1f}.sb__btn--save{color:var(--accent-gold);background:#ffd7001a;border-color:#ffd7004d}.sb__btn--start{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#000;min-height:40px;padding:10px 18px;font-size:11px}[data-theme=light] .sb{background:var(--bg-primary)}[data-theme=light] .sb__th{background:var(--bg-surface);border-bottom-color:#00000014}[data-theme=light] .sb__th--corner{background:var(--bg-surface)}[data-theme=light] .sb__td--label{background:var(--bg-surface);color:var(--text-secondary)}[data-theme=light] .sb__td{border-bottom-color:#0000000f;border-right-color:#0000000f}[data-theme=light] .sb__section-label{background:var(--bg-primary);color:#0000004d;border-bottom-color:#00000014}[data-theme=light] .sb__bar{background:#ffffffe6;border-top-color:#0000001a}[data-theme=light] .sb__saved{border-bottom-color:#00000014}[data-theme=light] .sb__btn--clear{color:var(--text-muted);background:#0000000a;border-color:#0000001a}[data-theme=light] .sb__cell--selected{box-shadow:inset 0 0 0 100px #007aff38}.sb__ruleset{border-bottom:1px solid #ffffff0f;flex-shrink:0;padding:8px 10px 6px}.sb__ruleset-label{letter-spacing:1px;text-transform:uppercase;color:var(--accent-cyan);text-align:center;opacity:.9;margin-bottom:6px;font-size:11px;font-weight:700}.sb__ruleset-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:5px;display:flex}.sb__ruleset-group{align-items:center;gap:3px;display:flex}.sb__ruleset-title{letter-spacing:.5px;color:var(--text-muted);min-width:28px;margin-right:2px;font-size:9px;font-weight:700}.sb__pill{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;border-radius:10px;padding:3px 8px;font-family:inherit;font-size:10px;font-weight:600}.sb__pill--active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#000;font-weight:700}.sb__pill:active{transform:scale(.93)}[data-theme=light] .sb__ruleset{border-bottom-color:#00000014}[data-theme=light] .sb__pill{background:#0000000a;border-color:#0000001f}[data-theme=light] .sb__pill--active{color:#fff;background:#0071e3;border-color:#0071e3}.sb__chart-type{border-bottom:1px solid #ffffff0f;flex-shrink:0;align-items:center;gap:8px;padding:8px 10px 6px;display:flex}.sb__chart-pill{letter-spacing:.4px;background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;border-radius:14px;padding:5px 14px;font-family:inherit;font-size:11px;font-weight:700}.sb__chart-pill--active{color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5);border-color:#7c3aed;box-shadow:0 0 12px #7c3aed66}.sb__chart-pill:active{transform:scale(.94)}.sb__chart-legend{color:var(--text-muted);opacity:.7;margin-left:4px;font-size:9px}[data-theme=light] .sb__chart-type{border-bottom-color:#00000014}[data-theme=light] .sb__chart-pill{color:#555;background:#0000000a;border-color:#0000001f}.sb__table--partial .sb__th--col{min-width:54px}.sb__cell--partial{vertical-align:middle;min-width:54px;padding:0!important}.sb__partial-segs{width:100%;height:100%;min-height:22px;display:flex}.sb__partial-seg{border-right:1px solid #00000026;flex:1;justify-content:center;align-items:center;padding:2px 0;font-size:7px;font-weight:700;line-height:1;display:flex}.sb__partial-seg:last-child{border-right:none}.sb__partial-group-row td{background:#ffffff05;border-bottom:1px solid #ffffff0a}.sb__partial-segs--header{min-height:14px}.sb__partial-seg--hdr{color:var(--text-muted);opacity:.6;font-size:6px;font-weight:600;background:0 0!important}.sb__cell--na{color:var(--text-muted)!important;background:#80808026!important}[data-theme=light] .sb__partial-seg{border-right-color:#00000014}[data-theme=light] .sb__partial-group-row td{background:#00000004;border-bottom-color:#0000000f}.st{height:calc(100vh - 56px - env(safe-area-inset-bottom,0px));background:var(--bg-primary);flex-direction:column;display:flex;position:relative;overflow:hidden}.st__header{border-bottom:1px solid var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.st__mode-tabs{background:#00000040;border-radius:10px;flex:1;gap:4px;padding:3px;display:flex}.st__mode-tab{letter-spacing:.5px;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;background:0 0;border:none;border-radius:7px;flex:1;padding:6px 4px;font-family:inherit;font-size:10px;font-weight:700;transition:all .15s}.st__mode-tab--active{background:var(--accent-cyan);color:#000;font-weight:800}.st__mode-tab--study{border-left:1px solid #ffffff1a;margin-left:2px;padding-left:6px}.st__mode-tab--study-active{color:#000!important;background:#ffd60a!important}[data-theme=light] .st__mode-tab--study{border-left-color:#00000014}[data-theme=light] .st__mode-tab--study-active{color:#fff!important;background:#c89b00!important}.st__settings-btn{background:var(--glass-bg);border:1px solid var(--glass-border);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:flex}.st__settings-btn--active{background:var(--accent-cyan);color:#000;border-color:var(--accent-cyan)}.st-stats-bar{border-bottom:1px solid var(--glass-border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:0;padding:6px 12px;display:flex}.st-stat{border-right:1px solid var(--glass-border);flex-direction:column;align-items:center;padding:0 14px;display:flex}.st-stat:last-of-type{border-right:none}.st-stat__val{color:var(--text-primary);font-size:18px;font-weight:800;line-height:1.1}.st-stat__val--good{color:#30d158}.st-stat__val--ok{color:#ffd60a}.st-stat__val--bad{color:#ff453a}.st-stat__label{letter-spacing:.8px;color:var(--text-muted);text-transform:uppercase;font-size:8px;font-weight:700}.st-breakdown{flex-wrap:wrap;gap:10px;margin-left:10px;display:flex}.st-breakdown__item{flex-direction:column;align-items:center;display:flex}.st-breakdown__label{color:var(--text-muted);letter-spacing:.5px;font-size:7px;font-weight:700}.st-breakdown__val{color:var(--text-primary);font-size:13px;font-weight:700}.st__settings-scrim{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;animation:.2s st-scrim-in;position:fixed;inset:0}@keyframes st-scrim-in{0%{opacity:0}to{opacity:1}}.st__settings{width:min(320px,88vw);height:calc(100vh - 56px - env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:91;background:#0e0e12f7;border-left:1px solid #ffffff1a;flex-direction:column;animation:.22s cubic-bezier(.22,1,.36,1) st-panel-in;display:flex;position:fixed;top:0;right:0;overflow:hidden;box-shadow:-8px 0 32px #00000080}@keyframes st-panel-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.st__settings-header{border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.st__settings-title{letter-spacing:1.5px;color:var(--accent-cyan);font-size:12px;font-weight:800}.st__settings-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:#ffffff12;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;font-family:inherit;font-size:13px;transition:all .15s;display:flex}.st__settings-close:active{transform:scale(.9)}.st__settings-row{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;gap:12px;padding:6px 16px;display:flex}.st__settings-row:last-of-type{border-bottom:none}.st__settings-body{overscroll-behavior:contain;flex-direction:column;flex:1;display:flex;overflow-y:auto}.st__settings-reset{border-top:1px solid var(--glass-border);justify-content:center;margin-top:auto;padding:16px;display:flex}.st__settings-row label{color:var(--text-secondary);flex-shrink:0;min-width:110px;font-size:12px;font-weight:600}.st__settings-row input[type=range]{accent-color:var(--accent-cyan);flex:1}.st__settings-row select{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:3px 6px;font-family:inherit;font-size:12px}.st__reset-btn{color:#ff453a;cursor:pointer;background:#ff453a26;border:1px solid #ff453a4d;border-radius:8px;align-self:center;padding:6px 16px;font-family:inherit;font-size:11px;font-weight:700;transition:all .15s}.st__reset-btn:active{transform:scale(.96)}.st__canvas{flex:1;min-height:0;position:relative;overflow:hidden}.st__overlay{pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:32px;display:flex;position:absolute;inset:0}.st__overlay--idle{pointer-events:all}.st__flash-btn{color:#fff;letter-spacing:1px;cursor:pointer;background:linear-gradient(135deg,#00c6ff 0%,#0072ff 100%);border:none;border-radius:40px;align-items:center;gap:10px;padding:16px 40px;font-family:inherit;font-size:20px;font-weight:800;transition:transform .1s,box-shadow .1s;display:flex;box-shadow:0 6px 24px #0072ff73}.st__flash-btn:active{transform:scale(.96);box-shadow:0 3px 12px #0072ff59}.st__flash-icon{font-size:22px}.st__hint{color:#ffffff73;letter-spacing:.3px;margin:10px 0 0;font-size:13px}.st__result-badge{z-index:10;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:24px;font-weight:900;animation:.25s cubic-bezier(.34,1.56,.64,1) forwards st-badge-pop;display:flex;position:absolute;top:14px;right:14px}.st__result-badge--correct{color:#000;background:#30d158;box-shadow:0 0 18px #30d15880}.st__result-badge--wrong{color:#fff;background:#ff453a;box-shadow:0 0 18px #ff453a80}@keyframes st-badge-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.st__reveal-banner{border-top:1px solid var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;animation:.2s ease-out st-reveal-slide;display:flex}.st__reveal-banner--correct{background:#30d1581f}.st__reveal-banner--wrong{background:#ff453a1f}@keyframes st-reveal-slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.st__reveal-card{color:var(--text-primary);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:900}.st__reveal-card--red{color:#ff453a}.st__reveal-group{letter-spacing:1px;color:var(--text-muted);text-transform:uppercase;text-align:center;flex:1;font-size:11px;font-weight:700}.st__next-btn{background:var(--accent-cyan);color:#000;letter-spacing:.5px;cursor:pointer;border:none;border-radius:20px;flex-shrink:0;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:800;transition:transform .1s}.st__next-btn:active{transform:scale(.95)}.st__guess-area{border-top:1px solid var(--glass-border);background:var(--bg-elevated);flex-shrink:0;max-height:260px;padding:10px 8px;overflow-y:auto}.st__guess-prompt{text-align:center;color:var(--accent-cyan);letter-spacing:1px;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700;animation:1.2s ease-in-out infinite st-prompt-pulse}@keyframes st-prompt-pulse{0%,to{opacity:1}50%{opacity:.55}}.st-guess-btn{border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:6px;font-family:inherit;font-weight:700;transition:all .1s}.st-guess-btn:active{transform:scale(.93)}.st-guess-btn:disabled{cursor:default}.st-guess-btn--correct{box-shadow:0 0 10px #30d1584d;color:#30d158!important;background:#30d15840!important;border-color:#30d158!important}.st-guess-btn--wrong{color:#ff453a!important;background:#ff453a40!important;border-color:#ff453a!important}.st-guess-exact{flex-direction:column;gap:3px;display:flex}.st-guess-exact__row{justify-content:center;gap:3px;display:flex}.st-guess-btn--exact{flex:1;min-width:0;max-width:36px;padding:4px 2px;font-size:9px}.st-guess-exact__row--red .st-guess-btn--exact{color:#ff453a}.st-guess-exact__row--black .st-guess-btn--exact{color:var(--text-primary)}.st-guess-btn--exact.st-guess-btn--correct{color:#30d158!important}.st-guess-btn--exact.st-guess-btn--wrong{color:#ff453a!important}.st-guess-value{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.st-guess-btn--value{flex:1;min-width:44px;max-width:52px;padding:10px 0;font-size:15px}.st-guess-partial{grid-template-columns:1fr 1fr;gap:8px;padding:0 4px;display:grid}.st-guess-btn--partial{border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:80px;padding:14px 8px;display:flex}.st-partial-icon{font-size:24px;line-height:1}.st-partial-label{letter-spacing:1px;font-size:14px;font-weight:800}.st-partial-sub{color:var(--text-muted);font-size:10px;font-weight:600}.st-guess-btn--partial.st-guess-btn--correct .st-partial-sub,.st-guess-btn--partial.st-guess-btn--wrong .st-partial-sub{color:inherit;opacity:.7}[data-theme=light] .st{background:var(--bg-primary)}[data-theme=light] .st__mode-tabs{background:#00000014}[data-theme=light] .st__mode-tab{color:var(--text-secondary)}[data-theme=light] .st__mode-tab--active{color:#fff}[data-theme=light] .st-stat__val--good{color:#1a8f3c}[data-theme=light] .st-stat__val--ok{color:#8a6900}[data-theme=light] .st-stat__val--bad{color:#c0392b}[data-theme=light] .st__settings{background:#f8f8fcfa;border-left:1px solid #0000001f;box-shadow:-8px 0 32px #00000026}[data-theme=light] .st__settings-header{border-bottom-color:#0000001a}[data-theme=light] .st__settings-title{color:var(--accent-cyan)}[data-theme=light] .st__settings-close{color:var(--text-secondary);background:#0000000f;border-color:#0000001f}[data-theme=light] .st__settings-row label{color:var(--text-secondary)}[data-theme=light] .st__settings-row select{color:var(--text-primary);background:#fff;border-color:#00000026}[data-theme=light] .st__settings-reset{border-top-color:#00000014}[data-theme=light] .st__hint{color:#00000073;text-shadow:0 1px 3px #ffffffb3}[data-theme=light] .st__reveal-banner--correct{background:#00a8541f}[data-theme=light] .st__reveal-banner--wrong{background:#e639461f}[data-theme=light] .st__reveal-card--red{color:#c0392b}[data-theme=light] .st-guess-btn--correct{box-shadow:0 0 8px #00a85433;color:#00753b!important;background:#00a8542e!important;border-color:#00a854!important}[data-theme=light] .st-guess-btn--wrong{color:#b52a35!important;background:#e6394626!important;border-color:#e63946!important}[data-theme=light] .st-guess-exact__row--red .st-guess-btn--exact{color:#c0392b}[data-theme=light] .st-guess-btn--exact.st-guess-btn--correct{color:#00753b!important}[data-theme=light] .st-guess-btn--exact.st-guess-btn--wrong{color:#b52a35!important}[data-theme=light] .st__result-badge--correct{background:#00a854}[data-theme=light] .st__result-badge--wrong{background:#e63946}[data-theme=light] .st__guess-area{background:var(--bg-elevated)}[data-theme=light] .st__guess-prompt{color:var(--accent-cyan)}.st__study-panel{overscroll-behavior:contain;border-top:1px solid var(--glass-border);background:var(--bg-elevated);flex-direction:column;flex-shrink:0;max-height:260px;padding-bottom:4px;display:flex;overflow-y:auto}.st__study-peel-row{border-bottom:1px solid var(--glass-border);flex-shrink:0;align-items:center;gap:10px;padding:10px 14px 8px;display:flex}.st__study-peel-label{letter-spacing:1.2px;color:var(--accent-cyan);white-space:nowrap;font-size:10px;font-weight:800}.st__study-peel-hint{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:10px;overflow:hidden}.st__study-toggle{cursor:pointer;flex-shrink:0;width:40px;height:22px;position:relative}.st__study-toggle input{opacity:0;width:0;height:0;position:absolute}.st__study-toggle-track{background:#ffffff26;border:1px solid #ffffff1a;border-radius:11px;transition:background .2s,border-color .2s;position:absolute;inset:0}.st__study-toggle-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s cubic-bezier(.22,1,.36,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #00000059}.st__study-toggle input:checked~.st__study-toggle-track{background:#ffd60a;border-color:#ffd60a}.st__study-toggle input:checked~.st__study-toggle-track:after{transform:translate(18px)}.st__study-row{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;gap:10px;padding:5px 14px;display:flex}.st__study-row:last-of-type{border-bottom:none}.st__study-row label{color:var(--text-secondary);flex-shrink:0;min-width:110px;font-size:11px;font-weight:600}.st__study-row input[type=range]{accent-color:#ffd60a;flex:1}.st__study-row select{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:3px 6px;font-family:inherit;font-size:11px}.st__study-new-card{justify-content:center;padding:10px 14px 6px;display:flex}.st__study-new-btn{border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-primary);cursor:pointer;border-radius:20px;padding:7px 24px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s}.st__study-new-btn:active{transform:scale(.95)}[data-theme=light] .st__study-peel-label{color:var(--accent-cyan)}[data-theme=light] .st__study-toggle-track{background:#0000001f;border-color:#00000026}[data-theme=light] .st__study-toggle input:checked~.st__study-toggle-track{background:var(--accent-gold);border-color:var(--accent-gold)}[data-theme=light] .st__study-row label{color:var(--text-secondary)}[data-theme=light] .st__study-row select{color:var(--text-primary);background:#fff;border-color:#00000026}.tab-bar{height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);z-index:200;-webkit-tap-highlight-color:transparent;background:#000000f5;border-top:1px solid #ffffff14;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-bar__item{color:#fff6;letter-spacing:.5px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:48px;font-family:inherit;font-size:10px;font-weight:600;transition:color .15s,transform 80ms;display:flex;position:relative}.tab-bar__item:active{transform:scale(.92)}.tab-bar__item--active{color:var(--accent-cyan)}.tab-bar__item--active:after{content:"";background:var(--accent-cyan);border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:25%;right:25%}.tab-bar__icon{font-size:18px;line-height:1}.tab-bar__label{letter-spacing:.3px;text-transform:uppercase;font-size:9px;font-weight:600}.tab-bar__badge{background:var(--accent-error);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:4px;right:calc(50% - 22px)}[data-theme=light] .tab-bar{background:#fffffff7;border-top:1px solid #0000001a;box-shadow:0 -2px 12px #0000000f}[data-theme=light] .tab-bar__item{color:#00000059}[data-theme=light] .tab-bar__item--active{color:var(--accent-cyan)}.spotter-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;color:#fff;background-color:#050505f2;flex-direction:column;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.spotter-modal-header{z-index:10;background:#ffffff0d;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:16px;display:flex}.spotter-modal-tabs{background:#0000004d;border-radius:8px;gap:8px;padding:4px;display:flex}.spotter-tab{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:8px 16px;font-size:12px;font-weight:700;transition:all .2s}.spotter-tab.active{color:#fff;background:#ffffff1a}.spotter-modal-close{color:#f88;cursor:pointer;background:#ff323233;border:none;border-radius:4px;padding:8px 16px;font-weight:700}.spotter-3d-container{flex:1;position:relative;overflow:hidden}.spotter-controls-panel,.spotter-test-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#141414cc;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;gap:16px;width:90%;max-width:400px;padding:24px;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080}.spotter-control-row{justify-content:space-between;align-items:center;display:flex}.spotter-control-row label{color:#ccc;font-size:14px;font-weight:700}.spotter-test-panel{text-align:center;align-items:center}.spotter-flash-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00c6ff,#0072ff);border:none;border-radius:32px;padding:16px 32px;font-size:18px;font-weight:700;transition:transform .1s;box-shadow:0 4px 16px #0072ff66}.spotter-flash-btn:active{transform:scale(.95)}.spotter-test-hint{color:#aaa;margin:0;font-size:14px}.mp-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:9999;background:#000000bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.mp-modal{background:var(--bg-surface);border:1px solid #ffffff1a;border-radius:20px;width:100%;max-width:400px;padding:1.5rem;position:relative;box-shadow:0 10px 40px #00000080}.mp-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px;position:absolute;top:1rem;right:1rem}.mp-close-btn:hover{color:var(--text-primary)}.mp-modal h2{text-align:center;margin:0 0 1.5rem;font-size:1.5rem;font-weight:600}.mp-section{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.mp-section h3{margin:0;font-size:1.1rem}.mp-section p{color:var(--text-secondary);margin:0;font-size:.9rem}.mp-divider{text-align:center;color:var(--text-muted);align-items:center;margin:1.5rem 0;display:flex}.mp-divider:before,.mp-divider:after{content:"";border-bottom:1px solid #ffffff1a;flex:1}.mp-divider span{padding:0 10px;font-size:.8rem;font-weight:700}.mp-btn-primary{color:#000;background:linear-gradient(135deg,#00c853 0%,#00e676 100%);border-radius:12px;width:100%;padding:.75rem;font-weight:600}.mp-btn-secondary{color:#fff;background:#ffffff1a;border-radius:12px;width:100%;padding:.75rem;font-weight:600}.mp-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.mp-btn-danger{color:#f44336;background:#f4433633;border-radius:12px;width:100%;margin-top:1rem;padding:.75rem;font-weight:600}.mp-join-form{flex-direction:column;gap:.5rem;width:100%;display:flex}.mp-input{color:#fff;text-align:center;text-transform:uppercase;background:#0003;border:1px solid #ffffff1a;border-radius:12px;padding:.75rem;font-size:1.1rem}.mp-input:focus{border-color:#00c853;outline:none}.mp-status-indicator{border-radius:20px;margin-bottom:1rem;padding:.5rem 1rem;font-size:.9rem;font-weight:700;display:inline-block}.mp-status-indicator.success{color:#00e676;background:#00c85333}.mp-status-indicator.warning{color:#ffd54f;background:#ffc10733}.mp-connecting-view,.mp-connected-view{text-align:center;flex-direction:column;align-items:center;display:flex}.mp-code-display{letter-spacing:2px;-webkit-user-select:all;user-select:all;background:#00000080;border:1px dashed #fff3;border-radius:12px;margin:1rem 0;padding:1rem;font-family:monospace;font-size:2rem}.mp-peer-id{color:var(--text-secondary);margin-top:.5rem;font-family:monospace;font-size:.9rem}.pl-graph{background:0 0;flex-direction:column;flex-shrink:0;gap:4px;width:100%;padding:16px 12px 12px;display:flex;overflow:hidden}.pl-graph__header{justify-content:space-between;align-items:baseline;padding:0 4px;display:flex}.pl-graph__title{letter-spacing:3px;color:#ffffff59;font-size:10px;font-weight:700}.pl-graph__current{font-variant-numeric:tabular-nums;font-family:monospace;font-size:18px;font-weight:800;transition:color .3s}.pl-graph__current--pos{color:#0f8}.pl-graph__current--neg{color:#ff3250}.pl-graph__subtitle{color:#fff3;letter-spacing:.3px;padding:0 4px 4px;font-size:9px}.pl-graph__sampled{color:#ffffff1f}.pl-graph__chart{flex:1 1 0;min-height:100px;position:relative}.pl-graph__svg{width:100%;height:100%;display:block;overflow:visible}.pl-graph__shoe{border-top:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;gap:5px;margin-top:auto;padding:10px 4px 4px;display:flex}.pl-graph__shoe-label{letter-spacing:2px;color:#ffffff59;justify-content:space-between;font-size:9px;font-weight:600;display:flex}.pl-graph__shoe-alert{color:#f4c430;animation:.6s ease-in-out infinite alternate shoeAlert}@keyframes shoeAlert{0%{opacity:1}to{opacity:.4}}.pl-graph__shoe-bar{background:#ffffff12;border-radius:3px;height:6px;position:relative;overflow:hidden}.pl-graph__shoe-fill{background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:3px;height:100%;transition:width .4s}.pl-graph__shoe-cutcard{background:#f4c430b3;width:1px;position:absolute;top:0;bottom:0;left:33%}.pl-graph__shoe-sub{color:#ffffff2e;letter-spacing:.2px;font-size:8px}.app{flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.app__main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.table{padding:calc(var(--stats-hud-h) + 8px) 12px calc(var(--action-bar-h) + var(--tab-bar-h) + 8px);-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex;position:relative;overflow-y:auto}.table--with-session-bar{padding-top:calc(var(--stats-hud-h) + 56px)}.table__section{flex-direction:column;align-items:center;gap:6px;display:flex}.table__label{letter-spacing:3px;color:var(--text-muted);font-size:10px;font-weight:600}.table__cards{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.table__total{color:var(--text-primary);font-variant-numeric:tabular-nums;margin-top:2px;font-size:20px;font-weight:800}.table__total--bust{color:var(--accent-error)}.table__total--bj{color:var(--accent-gold)}.table__total--dealer{color:var(--accent-cyan);opacity:.7}.table__soft{color:var(--text-muted);font-size:11px;font-weight:500}.table__vs{letter-spacing:4px;color:var(--text-muted);opacity:.4;padding:2px 0;font-size:10px;font-weight:700}.correct-flash{pointer-events:none;border:2px solid var(--accent-correct);z-index:50;animation:.4s ease-out forwards flashGreen;position:fixed;inset:0}.table__slot-container{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:.5rem;padding:.5rem 0;display:flex;overflow-x:auto}.table__slot-container .table__section--split{scroll-snap-align:center;flex-shrink:0;min-width:100px}.table__section--split{border-radius:var(--radius-lg);transition:all var(--transition-normal);background:#ffffff05;border:1px solid #ffffff0f;min-width:100px;padding:10px 12px}.table__section--active{background:#00d4ff0a;border-color:#00d4ff66;box-shadow:0 0 16px #00d4ff14}.table__section--done{opacity:.45}.table__active-badge{color:var(--accent-cyan);margin-left:4px;font-size:8px}.table__done-badge{color:var(--accent-correct);margin-left:4px;font-size:10px}.table__section--split .table__cards{gap:3px}.table__section--split .card{width:52px;height:76px}.table__section--split .card__rank{font-size:11px}.table__section--split .card__suit{font-size:9px}.table__section--split .card__suit-large{font-size:16px}.betting-screen{flex-direction:column;justify-content:center;align-items:center;gap:18px;width:100%;padding:0 20px;display:flex}.hands-toggle{border-radius:var(--radius-xl);background:var(--bg-elevated);border:1px solid #ffffff1a;gap:0;width:100%;max-width:280px;display:flex;overflow:hidden}.hands-toggle__btn{min-height:44px;color:var(--text-muted);letter-spacing:2px;cursor:pointer;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:1;padding:12px 16px;font-family:inherit;font-size:11px;font-weight:700}.hands-toggle__btn:active{transform:scale(.97)}.hands-toggle__btn--active{color:var(--accent-cyan);background:#00d4ff26;box-shadow:inset 0 0 12px #00d4ff14}.betting-screen__title{letter-spacing:4px;color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:700}.betting-screen__stats-summary{align-items:center;gap:20px;display:flex}.betting-screen__stat{flex-direction:column;align-items:center;gap:2px;display:flex}.betting-screen__stat-value{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.betting-screen__stat-value--good{color:var(--accent-correct)}.betting-screen__stat-value--ok{color:var(--accent-gold)}.betting-screen__stat-value--bad{color:var(--accent-error)}.betting-screen__stat-label{letter-spacing:1.5px;color:var(--text-muted);font-size:8px;font-weight:600}.drill-controls{flex-direction:column;gap:10px;width:100%;max-width:280px;margin-top:4px;display:flex}.drill-btn{border-radius:var(--radius-md);background:var(--bg-elevated);width:100%;min-height:48px;color:var(--text-primary);letter-spacing:1.5px;cursor:pointer;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent;border:1px solid #ffffff1a;padding:14px 20px;font-family:inherit;font-size:11px;font-weight:700}.drill-btn:active:not(:disabled){transform:scale(.97)}.drill-btn:disabled{opacity:.28;cursor:not-allowed}.drill-btn--start{color:var(--accent-cyan);background:#00d4ff1a;border-color:#00d4ff47}.drill-btn--mistakes{color:var(--accent-error);background:#ff336614;border-color:#ff336638}.drill-btn--review{color:#ffb020;background:#ffb02014;border-color:#ffb02038}.drill-summary{text-align:center;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:14px 22px;animation:.25s ease-out slideUp}.drill-summary__title{letter-spacing:2px;color:var(--accent-correct);margin-bottom:6px;font-size:12px;font-weight:700}.drill-summary__score{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.insurance-prompt{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#ffc81e0f;border:1px solid #ffc81e40;flex-direction:column;align-items:center;gap:12px;width:calc(100% - 32px);max-width:340px;padding:24px;animation:.22s ease-out slideUp;display:flex}.insurance-prompt__icon{font-size:32px;line-height:1}.insurance-prompt__title{letter-spacing:3px;color:var(--accent-gold);font-size:13px;font-weight:800}.insurance-prompt__desc{color:var(--text-muted);font-size:12px;line-height:1.5}.insurance-prompt__actions{gap:10px;width:100%;margin-top:4px;display:flex}.insurance-btn{border-radius:var(--radius-md);letter-spacing:1.5px;cursor:pointer;min-height:48px;transition:all var(--transition-normal);-webkit-tap-highlight-color:transparent;border:1px solid #0000;flex:1;padding:14px 16px;font-family:inherit;font-size:11px;font-weight:700}.insurance-btn--take{color:#00c864;background:#00c86426;border-color:#00c86466}.insurance-btn--take:active{transform:scale(.96)}.insurance-btn--decline{color:var(--accent-error);background:#ff33661f;border-color:#ff336659}.insurance-btn--decline:active{transform:scale(.96)}.result-overlay{z-index:80;pointer-events:none;border:1px solid #0000;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:180px;height:110px;animation:.12s cubic-bezier(.34,1.56,.64,1) forwards resultPop;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.result-overlay__label{letter-spacing:2px;text-shadow:0 0 20px;filter:drop-shadow(0 0 16px);font-size:32px;font-weight:900;line-height:1}.result-overlay__payout{font-variant-numeric:tabular-nums;letter-spacing:1px;opacity:.9;font-size:18px;font-weight:800;line-height:1}.result-overlay__payout--pos{color:#00e87a}.result-overlay__payout--neg{color:#f36}.result-overlay__payout--push{color:var(--text-muted)}.result-overlay--win{color:#0f8;background:#00ff880f;border-color:#00ff884d}.result-overlay--bj{color:var(--accent-gold);background:#ffd70012;border-color:#ffd70059}.result-overlay--bj .result-overlay__label{filter:drop-shadow(0 0 24px var(--accent-gold));font-size:38px}.result-overlay--loss{color:#f36;background:#ff33660f;border-color:#ff33664d}.result-overlay--push{color:var(--accent-gold);background:#ffd7000a;border-color:#ffd70033}.result-overlay--surrender{color:#ff9500;background:#ff95000d;border-color:#ff950040}.tab-page{padding-bottom:var(--tab-bar-h);flex-direction:column;flex:1;display:flex;overflow:hidden}.tab-page--stats{background:var(--bg-primary)}.tab-page--log{background:#0a0a0af2}.sync-section{flex-direction:column;align-items:center;gap:8px;margin-top:4px;display:flex}.sync-toggle-btn{color:var(--text-muted);letter-spacing:1px;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:16px;padding:6px 16px;font-size:11px;font-weight:600;transition:all .2s}.sync-toggle-btn:active{transform:scale(.97)}.sync-toggle-btn--on{color:#4ade80;background:#4ade8014;border-color:#4ade804d}.sync-panel{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;flex-direction:column;gap:6px;width:100%;max-width:320px;padding:12px;display:flex}.sync-panel__label{letter-spacing:1px;color:var(--text-muted);font-size:10px;font-weight:600}.sync-panel__input{width:100%;color:var(--text-primary);box-sizing:border-box;background:#0000004d;border:1px solid #ffffff26;border-radius:6px;outline:none;padding:8px 10px;font-family:Inter,monospace;font-size:12px}.sync-panel__input:focus{border-color:var(--accent-cyan)}.sync-panel__save{letter-spacing:1px;background:var(--accent-cyan);color:#000;cursor:pointer;border:none;border-radius:6px;align-self:flex-end;padding:6px 18px;font-size:11px;font-weight:600;transition:opacity .2s}.sync-panel__save:active{opacity:.8}.ezbust-prompt{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffa00014;border:1px solid #ffa00059;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;animation:.3s ease-out fadeInUp;display:flex}.ezbust-prompt__icon{font-size:32px}.ezbust-prompt__title{letter-spacing:2px;color:#ffa000;text-shadow:0 0 12px #ffa00080;font-size:18px;font-weight:700}.ezbust-prompt__desc{color:#ffffffbf;text-align:center;font-size:13px;line-height:1.5}.ezbust-prompt__actions{gap:12px;margin-top:4px;display:flex}.ezbust-btn{letter-spacing:1.5px;cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s}.ezbust-btn:active{transform:scale(.95)}.ezbust-btn--bet{color:#000;background:linear-gradient(135deg,#ffa000,#ff6f00);box-shadow:0 0 16px #ffa00066}.ezbust-btn--pass{color:#fffc;background:#ffffff1a;border:1px solid #fff3}.ezbust-toggles{flex-wrap:wrap;justify-content:center;gap:8px;margin:8px 0;display:flex}.toggle-btn{letter-spacing:1px;cursor:pointer;border:1px solid #fff3;border-radius:8px;padding:8px 16px;font-size:11px;font-weight:700;transition:all .2s}.toggle-btn--on{color:#ffa000;background:#ffa00033;border-color:#ffa00080}.toggle-btn--off{color:#fff6;background:#ffffff0d}.toggle-btn--small{padding:6px 12px;font-size:10px}.result-overlay__ezbust{letter-spacing:1px;border-radius:6px;margin-top:6px;padding:4px 12px;font-size:13px;font-weight:600}.result-overlay__ezbust--win{color:#00e676;background:#00e6761f}.result-overlay__ezbust--loss{color:#ff5252;background:#ff52521f}.result-overlay__ezbust--push{color:#ffd740;background:#ffd7401f}.theme-toggle{bottom:calc(56px + 75px + env(safe-area-inset-bottom,0px) + 10px);z-index:201;border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;opacity:.75;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:16px;line-height:1;transition:transform .2s,background .2s,opacity .2s;display:flex;position:fixed;right:12px}.theme-toggle:hover{opacity:1}.theme-toggle:active{transform:scale(.88)}[data-theme=light] .card{color:#1c1c1e;background:#fff;border-color:#d1d1d6}[data-theme=light] .card--black{color:#1c1c1e}[data-theme=light] .card--red{color:#e63946}[data-theme=light] .card--hole{background:linear-gradient(135deg,#c7c7cc 0%,#d1d1d6 100%)}[data-theme=light] .insurance-prompt,[data-theme=light] .ezbust-prompt{background:#0000000a;border-color:#0000001f}[data-theme=light] .friction-modal{color:#1c1c1e;background:#fff;border-color:#d1d1d6}[data-theme=light] .action-bar{background:#ffffffe6;border-color:#d1d1d6}[data-theme=light] .tab-bar{background:#fffffff2;border-color:#d1d1d6}[data-theme=light] .stats-hud{background:#ffffffe6;border-color:#d1d1d6}[data-theme=light] .result-overlay{color:#1c1c1e;background:#ffffffeb}[data-theme=light] .betting-screen__stat-box{background:#00000008;border-color:#00000014}[data-theme=light] .toggle-btn--off{color:#8e8e93;background:#0000000a}[data-theme=light] .ezbust-btn--pass{color:#636366;background:#0000000d;border-color:#0000001f}[data-theme=light] .drill-btn{border-color:#0000001a}[data-theme=light] .sync-section{border-color:#00000014}[data-theme=light] .action-btn--stand{color:#0f172a;text-shadow:none;background:#e2e8f0;border-color:#cbd5e1}[data-theme=light] .action-btn--stand:active:not(:disabled){background:#cbd5e1}[data-theme=light] .action-btn--hit{color:#fff;background:#22c55e;border-color:#16a34a}[data-theme=light] .action-btn--double{color:#fff;background:#3b82f6;border-color:#2563eb}[data-theme=light] .action-btn--split{color:#000;background:#eab308;border-color:#ca8a04}[data-theme=light] .action-btn--surrender{color:#fff;background:#64748b;border-color:#475569}.session-bar{top:calc(var(--stats-hud-h) + env(safe-area-inset-top,0px));z-index:99;background:linear-gradient(#000000d9 0%,#0009 80%,#0000 100%);justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;display:flex;position:fixed;left:0;right:0}.session-bar__gear{border:1px solid var(--glass-border);background:var(--glass-bg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:18px;line-height:1;transition:transform .15s,background .15s;display:flex}.session-bar__gear:active{transform:scale(.88)}.session-bar__progress{color:var(--text-secondary);font-variant-numeric:tabular-nums;letter-spacing:.5px;font-size:12px;font-weight:700}.session-bar__exit{border-radius:var(--radius-sm);color:var(--accent-error);letter-spacing:1.5px;cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;background:#ff453a26;border:1px solid #ff453a80;padding:8px 16px;font-family:inherit;font-size:11px;font-weight:700}.session-bar__exit:active{transform:scale(.95)}.session-settings{top:calc(var(--stats-hud-h) + env(safe-area-inset-top,0px) + 48px);border-bottom:1px solid var(--glass-border);z-index:98;background:#000000e6;flex-wrap:wrap;gap:6px;padding:8px 12px 10px;animation:.2s settingsSlideIn;display:flex;position:fixed;left:0;right:0}@keyframes settingsSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}[data-theme=light] .session-bar{background:linear-gradient(#fffffff2 0%,#ffffffb3 80%,#0000 100%)}[data-theme=light] .session-bar__gear{background:#0000000a;border-color:#0000001f}[data-theme=light] .session-bar__exit{background:#ff453a14;border-color:#ff453a40}[data-theme=light] .session-settings{background:#fffffff2;border-bottom-color:#00000014}.coded-phrase{background:#ffd7001f;border:1px solid #ffd7004d;border-radius:10px;align-items:flex-start;gap:8px;margin-top:6px;padding:8px 12px;animation:.3s phraseSlideIn;display:flex}@keyframes phraseSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.coded-phrase__icon{flex-shrink:0;margin-top:1px;font-size:18px;line-height:1}.coded-phrase__text{color:var(--text-secondary);letter-spacing:.2px;font-size:13px;font-style:italic;line-height:1.4}.card--hole{background:linear-gradient(135deg,#1a3a5c 0%,#0d2340 50%,#1a3a5c 100%);border:2px solid #2a5a8c;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.card--hole:before{content:"";border:1px solid #ffffff14;border-radius:5px;position:absolute;inset:3px}.card__back-pattern{opacity:.6;filter:grayscale(.5);font-size:32px}[data-theme=light] .coded-phrase{background:#0000000a;border-color:#0000001f}[data-theme=light] .card--hole{background:linear-gradient(135deg,#8faabe 0%,#6b8fac 50%,#8faabe 100%);border-color:#a0bdd0}
