:root{--color-felt: #111118;--color-background: #0a0a10;--color-surface: rgba(255, 255, 255, .06);--color-surface-hover: rgba(255, 255, 255, .1);--color-surface-solid: #1a1a24;--color-card: #ffffff;--color-card-red: #e53935;--color-card-black: #1a1a1a;--color-text: #c8c8d0;--color-text-muted: #6b6b78;--color-text-bright: #f0f0f5;--color-gold: #f0c040;--color-accent: #6c5ce7;--color-accent-glow: rgba(108, 92, 231, .35);--color-danger: #ff4757;--color-warning: #ffa502;--color-info: #70a1ff;--color-chip-red: #c0392b;--color-chip-blue: #2980b9;--color-chip-green: #27ae60;--color-chip-black: #2c3e50;--color-coach-correct: #27ae60;--color-coach-wrong: #c0392b;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-card: 10px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-md: 15px;--font-size-lg: 20px;--font-size-xl: 28px;--font-size-xxl: 36px;--touch-min: 44px;--safe-top: env(safe-area-inset-top);--safe-bottom: env(safe-area-inset-bottom);--safe-left: env(safe-area-inset-left);--safe-right: env(safe-area-inset-right)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;user-select:none;-webkit-user-select:none;overscroll-behavior:none}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}#root{display:flex;flex-direction:column;min-height:100dvh;height:100dvh;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}.screen{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes dealCard{0%{transform:translate(60px,-80px) rotate(-8deg) scale(.7);opacity:0}50%{opacity:1}to{transform:translate(0) rotate(0) scale(1);opacity:1}}@keyframes dealCardDealer{0%{transform:translate(60px,-40px) rotate(-6deg) scale(.7);opacity:0}50%{opacity:1}to{transform:translate(0) rotate(0) scale(1);opacity:1}}@keyframes hitCard{0%{transform:translateY(-40px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes chipPulse{0%,to{box-shadow:0 0 0 0 var(--color-accent-glow)}50%{box-shadow:0 0 16px 4px var(--color-accent-glow)}}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes resultPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}@keyframes bankrollFlashUp{0%{color:var(--color-text-bright);text-shadow:none}25%{color:#65d98b;text-shadow:0 0 14px rgba(101,217,139,.5)}to{color:var(--color-text-bright);text-shadow:none}}@keyframes bankrollFlashDown{0%{color:var(--color-text-bright);text-shadow:none}25%{color:#ff6f78;text-shadow:0 0 14px rgba(255,111,120,.45)}to{color:var(--color-text-bright);text-shadow:none}}@keyframes moneyFlyToBankroll{0%{transform:translate(var(--from-x),var(--from-y)) translate(-50%,-50%) scale(.92);opacity:0}12%{opacity:1}to{transform:translate(var(--to-x),var(--to-y)) translate(-50%,-50%) scale(.72);opacity:0}}@keyframes payoutReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .2s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}.animate-deal{animation:dealCard .4s cubic-bezier(.23,1,.32,1) both}.animate-deal-dealer{animation:dealCardDealer .4s cubic-bezier(.23,1,.32,1) both}.animate-hit{animation:hitCard .3s cubic-bezier(.23,1,.32,1) both}.header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.06);min-height:var(--touch-min);flex-shrink:0}.header-left,.header-right{width:44px;display:flex;align-items:center}.header-right{justify-content:flex-end}.header-btn{width:var(--touch-min);height:var(--touch-min);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-text-muted);transition:color .15s}.header-btn:active{color:var(--color-text-bright)}.header-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-text);text-align:center;letter-spacing:.3px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-weight:700;border:1px solid rgba(255,255,255,.12);transform:translateY(0);transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,filter .16s ease;min-height:var(--touch-min);letter-spacing:.3px}.btn:active{transform:translateY(1px) scale(.985)}.btn:disabled{opacity:.35;pointer-events:none}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px #0a0a10f2,0 0 0 4px #5d53aa8c}@media(hover:hover)and (pointer:fine){.btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.03)}.btn-primary:hover:not(:disabled){box-shadow:0 8px 16px #211b4966,inset 0 1px #ffffff0f}.btn-secondary:hover:not(:disabled){box-shadow:0 8px 14px #0000003d,inset 0 1px #ffffff0f}}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);min-height:36px}.btn-md{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md)}.btn-lg{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-lg);min-height:52px}.btn-primary{background:linear-gradient(135deg,#5b4db0,#413688);color:#fff;border-color:#9084e557;box-shadow:0 7px 14px #211b4961,inset 0 1px #ffffff0d}.btn-primary:active{background:linear-gradient(135deg,#4e4199,#372f76)}.btn-secondary{background:linear-gradient(180deg,#1c1e2bf2,#141621f2);color:var(--color-text-bright);border-color:#ffffff1a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 12px #0000003d,inset 0 1px #ffffff0a}.btn-secondary:active{background:linear-gradient(180deg,#161824f2,#10121cf2)}.btn-danger{background:linear-gradient(135deg,#8d3741,#742a34);color:#fff;border-color:#d4707c47;box-shadow:0 6px 12px #4a12195c,inset 0 1px #ffffff0d}.btn-ghost{background:#141620a6;color:var(--color-text-muted);border-color:#ffffff14}.btn-ghost:active{color:var(--color-text-bright)}.card{width:68px;height:95px;border-radius:var(--radius-card);position:relative;flex-shrink:0;font-weight:700;transition:transform .2s ease}.card-red,.card-black{background:var(--color-card);box-shadow:0 2px 8px #00000080,0 0 0 1px #ffffff14}.card-red{color:var(--color-card-red)}.card-black{color:var(--color-card-black)}.card-back{background:linear-gradient(145deg,#2d1b69,#1a1040);box-shadow:0 2px 8px #00000080,0 0 0 1px #ffffff14}.card-back-pattern{position:absolute;inset:4px;border:1.5px solid rgba(108,92,231,.3);border-radius:calc(var(--radius-card) - 3px);background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(108,92,231,.06) 4px,rgba(108,92,231,.06) 5px)}.card-corner{position:absolute;font-size:12.5px;line-height:1}.card-corner-top{top:6px;left:6px}.card-corner-bottom{bottom:6px;right:6px;transform:rotate(180deg)}.card-count-badge{position:absolute;bottom:-6px;left:-6px;font-size:10px;font-weight:700;line-height:1;padding:2px 5px;border-radius:8px;z-index:2;pointer-events:none}.count-positive{background:#27ae60;color:#fff}.count-negative{background:#e74c3c;color:#fff}.count-zero{background:#555;color:#ccc}.count-key{display:flex;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.count-key-item{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500}.count-key-badge{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;padding:1px 5px;border-radius:8px;line-height:1}.card-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:28px}.hand-cards{display:flex}.hand-cards .card+.card{margin-left:-20px}.hand-view{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--radius-lg);transition:background .2s}.hand-active{background:#6c5ce714;box-shadow:0 0 0 1px #6c5ce733}.hand-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:500}.hand-info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.hand-settlement{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.hand-value{font-weight:700;color:var(--color-text-bright);font-size:var(--font-size-md)}.hand-badge{background:var(--color-accent);color:#fff;font-size:var(--font-size-xs);padding:2px 7px;border-radius:var(--radius-sm);font-weight:700}.hand-result{font-weight:700;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.5px;animation:resultPop .3s ease-out;align-self:flex-start}.hand-result-blackjack,.hand-result-win{color:var(--color-gold)}.hand-result-loss,.hand-result-bust{color:var(--color-danger)}.hand-result-push{color:var(--color-text-muted)}.hand-payout{font-weight:800;font-size:var(--font-size-md);letter-spacing:.3px;line-height:1.1}.hand-payout-main{animation:payoutReveal .22s ease-out both;transition:opacity .12s linear,transform .2s ease}.hand-money{display:inline-block;min-width:7ch;text-align:right;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.hand-payout-detail{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:.35ch;font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500;white-space:nowrap;opacity:0;animation:payoutReveal .22s ease-out .3s both}.hand-payout-note{font-size:10px;letter-spacing:.2px}.payout-positive{color:var(--color-gold)}.payout-negative{color:var(--color-danger)}.dealer-hand{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--spacing-xs);min-height:118px}.dealer-hand-empty{height:100px}.player-zone{width:100%;max-width:540px;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:linear-gradient(180deg,#6c5ce724,#6c5ce70a 38%,#ffffff05);box-shadow:0 12px 30px #0000003d,inset 0 1px #ffffff1a;display:flex;flex-direction:column;gap:var(--spacing-sm);min-height:188px}.player-zone-label{font-size:var(--font-size-xs);color:#cbc4ff;font-weight:700;letter-spacing:1px;text-transform:uppercase;text-align:center}.player-zone-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);min-height:92px;display:flex;align-items:center;justify-content:center}.player-hands{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap;min-height:122px}.player-zone .card{width:74px;height:104px}.player-zone .card-corner{font-size:13.5px}.player-zone .card-center{font-size:31px}.player-zone .hand-cards .card+.card{margin-left:-24px}.game-screen{background:var(--color-felt);background-image:radial-gradient(ellipse at 50% 30%,rgba(108,92,231,.04) 0%,transparent 60%);overflow:hidden}.money-fly{position:fixed;left:0;top:0;z-index:90;pointer-events:none;padding:3px 8px;border-radius:999px;border:1px solid rgba(101,217,139,.45);background:#23583461;color:#8fe8af;font-size:var(--font-size-sm);font-weight:800;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(101,217,139,.5);will-change:transform,opacity;transform:translate(var(--from-x),var(--from-y)) translate(-50%,-50%);animation:moneyFlyToBankroll .95s cubic-bezier(.2,.9,.2,1) forwards}.money-flying .hand-payout-main.payout-positive,.money-flying .hand-payout-detail,.payout-collected .hand-payout-main.payout-positive,.payout-collected .hand-payout-detail{animation:none;opacity:0;transform:translateY(-4px) scale(.96)}.game-table{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--spacing-lg);padding:var(--spacing-md);min-height:0}.coach-feedback-wrap{width:100%;padding:var(--spacing-sm) var(--spacing-md) 0;display:flex;justify-content:center;flex-shrink:0}.coach-feedback-wrap .coach-feedback{width:100%;max-width:540px}.game-actions{width:100%;flex-shrink:0;min-height:220px;display:flex;align-items:flex-end;justify-content:center;margin-top:auto;padding:var(--spacing-md);padding-bottom:var(--spacing-md)}.game-actions>*{width:100%;max-width:540px}.action-bar{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap;animation:slideUp .2s ease-out}.action-bar .btn{flex:1;min-width:70px;max-width:120px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.bet-display{display:flex;justify-content:space-around;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}.bet-display-row{display:flex;flex-direction:column;align-items:center;gap:2px}.bet-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.bet-value{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.bankroll-value{font-variant-numeric:tabular-nums}.bankroll-up{animation:bankrollFlashUp .45s ease-out}.bankroll-down{animation:bankrollFlashDown .45s ease-out}.bet-subvalue{font-size:10px;color:var(--color-text-muted);letter-spacing:.3px}.bet-suggested .bet-value{color:var(--color-gold)}.betting-controls{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);animation:slideUp .3s ease-out}.bet-selector{display:flex;gap:var(--spacing-sm)}.chip-btn{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);border:2px solid rgba(255,255,255,.45);transition:all .2s ease;background:radial-gradient(circle at 35% 35%,#e74c3c,#a93226);box-shadow:inset 0 0 0 3px #0003,inset 0 0 0 6px #ffffff26,0 6px 12px #0000006b;position:relative}.chip-btn:nth-child(2){background:radial-gradient(circle at 35% 35%,#3498db,#1a6fa8)}.chip-btn:nth-child(3){background:radial-gradient(circle at 35% 35%,#2ecc71,#1e8449)}.chip-btn:nth-child(4){background:radial-gradient(circle at 35% 35%,#e74c3c,#a93226)}.chip-btn:nth-child(5){background:radial-gradient(circle at 35% 35%,#4a5568,#1a202c)}.chip-btn:active{transform:scale(.95)}.chip-active{border-color:#fff9;box-shadow:inset 0 0 0 3px #0003,inset 0 0 0 6px #ffffff26,0 0 20px var(--color-accent-glow),0 10px 18px #00000052;transform:scale(1.12)}.betting-controls .btn{width:200px}@media(max-width:420px){.game-actions{min-height:200px;padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.player-zone{max-width:100%;padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.player-zone .card{width:70px;height:98px}.player-zone .card-center{font-size:29px}.player-zone .hand-cards .card+.card{margin-left:-22px}}.coach-feedback{background:#c0392b26;border:1px solid rgba(192,57,43,.3);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:slideUp .3s ease-out}.coach-header{display:flex;align-items:center;gap:var(--spacing-sm)}.coach-icon{font-size:var(--font-size-lg)}.coach-title{font-weight:700;color:var(--color-text-bright);font-size:var(--font-size-md)}.coach-message{color:#fffc;font-size:var(--font-size-sm);line-height:1.5}.coach-feedback .btn{align-self:center;width:160px}.count-quiz{background:var(--color-surface);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:slideUp .3s ease-out}.quiz-title{font-weight:700;color:var(--color-text-bright)}.quiz-prompt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.quiz-stepper{display:flex;align-items:center;gap:var(--spacing-lg)}.stepper-btn{width:50px;height:48px;border-radius:10px;background:linear-gradient(180deg,#202332f2,#151824f2);color:var(--color-text-bright);font-size:var(--font-size-xl);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);box-shadow:0 6px 12px #00000038,inset 0 1px #ffffff0a;transition:transform .15s ease,background .15s ease}.stepper-btn:active{transform:scale(.97);background:linear-gradient(180deg,#191b29f2,#10121cf2)}.stepper-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-bright);min-width:60px;text-align:center}.quiz-result{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.quiz-verdict{font-size:var(--font-size-lg);font-weight:700}.quiz-correct{color:var(--color-coach-correct)}.quiz-wrong{color:var(--color-danger)}.insurance-prompt{background:var(--color-surface);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:slideUp .3s ease-out}.insurance-title{font-weight:700;color:var(--color-text-bright)}.insurance-desc{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center}.insurance-actions{display:flex;gap:var(--spacing-md)}.insurance-actions .btn{min-width:120px}.settlement-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);animation:slideUp .3s ease-out}.settlement-actions .btn{width:200px}.unlucky-feedback{display:flex;align-items:center;gap:var(--spacing-sm);background:#27ae601f;border:1px solid rgba(39,174,96,.25);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md)}.unlucky-icon{font-size:var(--font-size-lg)}.unlucky-text{font-size:var(--font-size-sm);color:var(--color-coach-correct);font-weight:600}.home-screen{justify-content:center;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-background);background-image:radial-gradient(ellipse at 50% 20%,rgba(108,92,231,.06) 0%,transparent 50%)}.home-hero{text-align:center}.home-title{font-size:var(--font-size-xxl);font-weight:800;color:var(--color-text-bright);line-height:1.1;letter-spacing:-.5px}.home-subtitle{color:var(--color-text-muted);margin-top:var(--spacing-sm);font-size:var(--font-size-md);letter-spacing:.3px}.home-quick-stats{display:flex;gap:var(--spacing-lg);justify-content:center}.quick-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.quick-stat-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-bright)}.quick-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.home-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;max-width:280px}.home-actions .btn{width:100%}.stats-screen{background:var(--color-background)}.stats-content{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-lg)}.stats-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.section-title{font-size:var(--font-size-md);font-weight:700;color:var(--color-text-bright)}.stats-summary{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.stat-card{background:var(--color-surface);border:1px solid rgba(255,255,255,.04);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.stat-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-bright)}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.accuracy-chart{display:flex;flex-direction:column;gap:var(--spacing-sm)}.accuracy-row{display:flex;align-items:center;gap:var(--spacing-sm)}.accuracy-label{width:60px;font-size:var(--font-size-sm);color:var(--color-text-muted)}.accuracy-bar-bg{flex:1;height:16px;background:#ffffff0d;border-radius:var(--radius-sm);overflow:hidden}.accuracy-bar-fill{height:100%;background:var(--color-accent);border-radius:var(--radius-sm);transition:width .5s cubic-bezier(.23,1,.32,1)}.accuracy-pct{width:36px;text-align:right;font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.accuracy-count{width:40px;text-align:right;font-size:var(--font-size-xs);color:var(--color-text-muted)}.accuracy-graph{background:var(--color-surface);border:1px solid rgba(255,255,255,.04);border-radius:var(--radius-md);padding:var(--spacing-sm)}.accuracy-graph-svg{width:100%;height:auto;display:block}.session-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.session-item{background:var(--color-surface);border:1px solid rgba(255,255,255,.04);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md)}.session-date{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:2px}.session-details{display:flex;gap:var(--spacing-md);font-size:var(--font-size-sm)}.empty-text{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--spacing-lg)}.blunder-impact{display:flex;flex-direction:column;gap:var(--spacing-xs);background:var(--color-surface);border:1px solid rgba(255,255,255,.04);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md)}.blunder-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-sm)}.blunder-subrow{margin-top:-2px;padding-bottom:2px}.blunder-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.blunder-value{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright);font-variant-numeric:tabular-nums}.trouble-spots{display:flex;flex-direction:column;gap:var(--spacing-xs)}.trouble-spot-item{display:flex;justify-content:space-between;padding:var(--spacing-sm);background:var(--color-surface);border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.04)}.trouble-key{font-family:monospace;color:var(--color-text-bright)}.trouble-count{color:var(--color-danger);font-size:var(--font-size-sm)}.settings-screen{background:var(--color-background)}.settings-content{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-lg)}.settings-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.setting-label{font-size:var(--font-size-sm);color:var(--color-text)}.setting-options{display:flex;gap:var(--spacing-xs)}.option-btn{min-width:40px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(180deg,#1c1f2df2,#141621f2);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;padding:0 var(--spacing-sm);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 10px #0003,inset 0 1px #ffffff08;transition:transform .15s ease,background .15s ease,border-color .15s ease}.option-btn:active{transform:translateY(1px)}.option-active{background:linear-gradient(135deg,#5446a5,#413588);color:#fff;border-color:#8b81d970}.toggle-btn{min-width:56px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(180deg,#1c1f2df2,#141621f2);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 10px #0003,inset 0 1px #ffffff08;transition:transform .15s ease,background .15s ease,border-color .15s ease}.toggle-btn:active{transform:translateY(1px)}.toggle-on{background:linear-gradient(135deg,#5446a5,#413588);color:#fff;border-color:#8b81d970}.modal-overlay{position:fixed;inset:0;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);z-index:100}.modal-content{background:var(--color-surface-solid);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:320px;width:100%;display:flex;flex-direction:column;gap:var(--spacing-md);color:var(--color-text);animation:slideUp .2s ease-out}.modal-content h3{color:var(--color-text-bright)}.modal-content p{font-size:var(--font-size-sm);color:var(--color-text-muted)}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}
