:root{--color-felt: #0a0a0a;--color-background: #000000;--color-surface: rgba(255, 255, 255, .05);--color-surface-hover: rgba(255, 255, 255, .09);--color-surface-solid: #111111;--color-card: #ffffff;--color-card-red: #e53935;--color-card-black: #1a1a1a;--color-text: #a0a0a8;--color-text-muted: #5a5a62;--color-text-bright: #ffffff;--color-gold: #e8b84b;--color-accent: #e8b84b;--color-accent-glow: rgba(232, 184, 75, .25);--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;--color-border: rgba(255, 255, 255, .08);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-card: 10px;--radius-pill: 999px;--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;--font-size-card-corner: 12.5px;--font-size-card-corner-lg: 13.5px;--font-size-card-corner-sm: 8px;--font-size-card-corner-xs: 8px;--font-size-card-center: 28px;--font-size-card-center-lg: 31px;--font-size-card-center-sm: 17px;--font-size-card-center-xs: 14px;--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;background:#000;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;min-height:0;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,#c99a35,#a07826);color:#000;border-color:#e8b84b66;box-shadow:0 7px 14px #a0781e59,inset 0 1px #ffffff26}.btn-primary:active{background:linear-gradient(135deg,#b08828,#8a6620)}.btn-secondary{background:transparent;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:#ffffff0d}.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:transparent;color:var(--color-text-muted);border-color:#ffffff14}.btn-ghost:active{color:var(--color-text-bright);background:#ffffff08}.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,#1a1410,#0d0b08);box-shadow:0 2px 8px #0009,0 0 0 1px #ffffff0f}.card-back-pattern{position:absolute;inset:4px;border:1.5px solid rgba(232,184,75,.2);border-radius:calc(var(--radius-card) - 3px);background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(232,184,75,.04) 4px,rgba(232,184,75,.04) 5px)}.card-corner{position:absolute;font-size:var(--font-size-card-corner);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:var(--font-size-xs);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:var(--font-size-xs);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:var(--font-size-card-center)}.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);border-radius:var(--radius-lg)}.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:grid;grid-template-columns:auto auto;column-gap:var(--spacing-sm);row-gap:2px;align-items:center}.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;display:flex;align-items:center;gap:4px}.hand-result-ratio{font-size:var(--font-size-xs);font-weight:700;padding:1px 5px;border-radius:var(--radius-sm);background:#e8b84b33;color:var(--color-gold);letter-spacing:.3px;text-transform:none}.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{color:var(--color-text-muted);font-weight:700;white-space:nowrap;opacity:0;animation:payoutReveal .22s ease-out .3s both;letter-spacing:.5px;text-transform:uppercase}.hand-payout-detail-label{font-size:var(--font-size-xs)}.hand-payout-detail-amount{color:var(--color-text-muted)}.hand-payout-note{font-size:var(--font-size-xs);letter-spacing:.2px}.payout-positive{color:var(--color-gold)}.payout-negative{color:var(--color-danger)}.dealer-hand{width:100%;max-width:540px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);min-height:118px;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:linear-gradient(180deg,#ffffff0a,#ffffff03);box-shadow:0 12px 30px #0006,inset 0 1px #ffffff12}.dealer-hand-empty{width:100%;max-width:540px;height:118px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(180deg,#ffffff0a,#ffffff03)}.player-zone{width:100%;max-width:540px;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:linear-gradient(180deg,#e8b84b14,#e8b84b05 38%,#ffffff03);box-shadow:0 12px 30px #0006,inset 0 1px #ffffff12;display:flex;flex-direction:column;gap:var(--spacing-sm);min-height:188px}.player-zone-label{font-size:var(--font-size-xs);color:var(--color-gold);font-weight:500;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:var(--font-size-card-corner-lg)}.player-zone .card-center{font-size:var(--font-size-card-center-lg)}.player-zone .hand-cards .card+.card{margin-left:-24px}.game-screen{background:var(--color-felt);min-height:100dvh;height:100dvh;display:flex;flex-direction:column}.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}.game-actions{width:100%;flex-shrink:0;min-height:184px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:var(--color-felt);margin-top:-2rem;padding-top: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}.bet-display{display:flex;justify-content:center;gap:clamp(128px,40vw,256px);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;min-width:54px}.bet-display-row-net{min-width:102px}.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);font-variant-numeric:tabular-nums}.bet-value-net{display:inline-block;min-width:9ch;text-align:center}.bankroll-value{font-variant-numeric:tabular-nums}.bankroll-up{animation:bankrollFlashUp .45s ease-out}.bankroll-down{animation:bankrollFlashDown .45s ease-out}.bet-delta-pos{color:#65d98b}.bet-delta-neg{color:var(--color-danger)}.bet-subvalue{font-size:var(--font-size-xs);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:100%;max-width:540px}@media(max-width:420px){.game-actions{min-height:200px;padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);padding-bottom:var(--spacing-lg)}.dealer-hand,.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:calc(var(--font-size-card-center-lg) - 2px)}.player-zone .hand-cards .card+.card{margin-left:-22px}}@keyframes sheetUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-sheet-up{animation:sheetUp .32s cubic-bezier(.32,.72,0,1) both}.coach-backdrop{position:fixed;inset:0;background:#000000a6;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:110;animation:fadeIn .2s ease-out}.coach-sheet{position:fixed;bottom:0;left:0;right:0;z-index:120;background:#161616;border:1px solid rgba(255,255,255,.1);border-bottom:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--spacing-sm) var(--spacing-lg) calc(var(--spacing-lg) + var(--safe-bottom));display:flex;flex-direction:column;gap:var(--spacing-md)}.coach-handle{width:36px;height:4px;background:#ffffff2e;border-radius:2px;align-self:center;margin-bottom:var(--spacing-xs)}.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:var(--color-text);font-size:var(--font-size-sm);line-height:1.6}.coach-got-it{align-self:center;min-width:160px}.feedback-slot{flex-shrink:0;height:36px;display:flex;align-items:center;justify-content:center;width:100%}.action-content{margin-top:auto;width:100%;display:flex;flex-direction:column;align-items:center;background:var(--color-felt);padding:var(--spacing-md) var(--spacing-md) calc(var(--spacing-xs) + var(--safe-bottom));gap:var(--spacing-sm)}.feedback-toast{display:flex;align-items:center;gap:var(--spacing-sm);border-radius:var(--radius-pill);padding:var(--spacing-xs) var(--spacing-md);pointer-events:none;overflow:hidden;max-width:100%}.feedback-toast-good{background:#14321ce6;border:1px solid rgba(39,174,96,.4);box-shadow:0 2px 12px #0000004d}.feedback-toast-bad{background:#321214e6;border:1px solid rgba(255,71,87,.4);box-shadow:0 2px 12px #0000004d}.feedback-toast-divider{color:var(--color-text-muted);flex-shrink:0;font-size:var(--font-size-xs)}.feedback-toast-play{font-size:var(--font-size-xs);font-weight:800;letter-spacing:1px;flex-shrink:0}.feedback-toast-good .feedback-toast-play{color:#4cd080}.feedback-toast-bad .feedback-toast-play{color:var(--color-danger)}.feedback-toast-msg{font-size:var(--font-size-xs);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.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{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);animation:slideUp .3s ease-out}.insurance-header{display:flex;flex-direction:column;gap:2px}.insurance-title{font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-bright)}.insurance-desc{color:var(--color-text-muted);font-size:var(--font-size-xs)}.insurance-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.settlement-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);animation:slideUp .3s ease-out}.settlement-actions .btn{width:200px}.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(232,184,75,.04) 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)}.stats-section-enter{animation:slideUp .3s ease-out both}.section-title{font-size:var(--font-size-md);font-weight:700;color:var(--color-text-bright)}.stats-section-head{display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.stats-section-icon{font-size:var(--font-size-lg);line-height:1;color:var(--color-gold)}.stats-section-text{display:flex;flex-direction:column}.stats-section-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.stats-section-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-hero{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 30% 50%,rgba(232,184,75,.06) 0%,transparent 70%)}.stats-hero-ring{flex-shrink:0}.stats-hero-detail{display:flex;flex-direction:column;gap:4px}.stats-hero-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.stats-hero-metrics{display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-hero-metric-value{font-weight:700;color:var(--color-text)}.stats-hero-dot{color:var(--color-text-muted)}.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)}.chart-tooltip{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:6px 10px;font-size:var(--font-size-xs);line-height:1.5}.chart-tooltip p{margin:0}.chart-tooltip-label{color:#fff6;margin-bottom:2px!important}.stats-section .recharts-wrapper{font-family:inherit}.stats-section .recharts-legend-wrapper{font-size:var(--font-size-xs)!important}.recharts-tooltip-wrapper{outline:none!important}.recharts-default-tooltip{background:#1a1a1a!important;border-color:#ffffff1a!important}.chart-footnote{font-size:var(--font-size-xs);color:#ffffff40;text-align:center;margin:4px 0 0}.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-sm)}.trouble-spot-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.04)}.trouble-spot-rank{font-size:var(--font-size-xs);font-weight:700;color:var(--color-danger);flex-shrink:0;width:20px;text-align:center}.trouble-spot-info{flex:1;display:flex;flex-direction:column;gap:2px}.trouble-key{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.trouble-wrong{font-size:var(--font-size-xs);color:var(--color-danger)}.trouble-count{color:var(--color-danger);font-size:var(--font-size-sm);font-weight:700;flex-shrink:0}.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)}.settings-section-head{display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.settings-section-icon{font-size:var(--font-size-lg);line-height:1;color:var(--color-gold)}.settings-section-text{display:flex;flex-direction:column}.settings-section-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.settings-section-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.settings-section-enter{animation:slideUp .3s ease-out both}.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,#c99a35,#a07826);color:#000;border-color:#e8b84b80}.toggle-btn{min-width:56px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(180deg,#1c1c1cf2,#121212f2);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,#c99a35,#a07826);color:#000;border-color:#e8b84b80}.settings-divider{height:1px;background:var(--color-border);margin:var(--spacing-xs) 0}.setting-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);padding:0 2px;line-height:1.5}.setting-disabled{opacity:.4;pointer-events:none}.settings-reset-trigger{border-color:#e8b84b75;background:linear-gradient(135deg,#d8ab43,#b98a2f);color:#16130c;box-shadow:0 7px 14px #8a631b5c,inset 0 1px #ffffff26}.settings-reset-modal{display:flex;flex-direction:column;gap:var(--spacing-md)}.settings-reset-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.settings-reset-text{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.settings-slide-wrap{position:relative;height:48px;border-radius:999px;border:1px solid rgba(232,184,75,.28);background:#261e109e;overflow:hidden}.settings-slide-input{position:absolute;inset:0;width:100%;margin:0;opacity:0;z-index:3;cursor:pointer}.settings-slide-fill{position:absolute;inset:0 auto 0 0;width:0%;background:linear-gradient(135deg,#d8ab43,#b98a2f);transition:width .05s linear;opacity:.95;z-index:1}.settings-slide-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.4px;color:#fff7e0e0;text-transform:uppercase;pointer-events:none;z-index:2}.settings-reset-actions{display:flex;justify-content:flex-end}.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}.header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.history-btn{color:var(--color-text-muted);display:flex;align-items:center;justify-content:center}.history-btn:hover{color:var(--color-text)}.hand-history-list{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:65vh;overflow-y:auto;margin:var(--spacing-sm) calc(-1 * var(--spacing-lg));padding:0 var(--spacing-lg);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.hand-history-item{padding:var(--spacing-sm);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-sm)}.history-blunder{border-color:#ff47574d;background:#ff47570a}.hand-history-header{display:flex;align-items:center;gap:var(--spacing-sm)}.hand-history-num{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600}.hand-history-blunder-tag{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:700;text-transform:uppercase;letter-spacing:.4px}.hand-history-blunder-hint{font-weight:500;text-transform:none;letter-spacing:0;color:var(--color-text-muted)}.hand-history-result-badge{margin-left:auto;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.5px;text-transform:uppercase}.hand-history-table{display:flex;flex-direction:column;gap:var(--spacing-sm)}.hand-history-side{display:grid;grid-template-columns:40px 1fr 28px;align-items:center;gap:var(--spacing-sm)}.hand-history-role{font-size:var(--font-size-xs);color:var(--color-text-muted)}.hand-history-cards{display:flex}.hand-history-cards .card+.card{margin-left:-10px}.hand-history-total{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600;text-align:right}.hand-history-cards .card{width:34px;height:48px;border-radius:5px}.hand-history-cards .card-corner{font-size:var(--font-size-card-corner-xs);top:3px;left:3px}.hand-history-cards .card-corner-bottom{inset:auto 3px 3px auto}.hand-history-cards .card-center{font-size:var(--font-size-card-center-xs)}.end-session-header{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.end-session-header h3{margin:0}.end-session-date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.end-session-summary{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.end-session-hero{display:flex;align-items:center;justify-content:space-around;padding:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.end-session-hero-item{display:flex;flex-direction:column;align-items:center;gap:2px}.end-session-hero-value{font-size:var(--font-size-xl);font-weight:800;color:var(--color-text-bright);line-height:1}.end-session-hero-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.end-session-hero-divider{width:1px;height:36px;background:var(--color-border)}.end-session-accuracy-bar{height:4px;background:#ffffff14;border-radius:var(--radius-pill);overflow:hidden}.end-session-accuracy-fill{height:100%;background:var(--color-gold);border-radius:var(--radius-pill);transition:width .6s ease-out}.end-session-rows{display:flex;flex-direction:column;gap:var(--spacing-xs)}.end-session-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.end-session-row-value{color:var(--color-text);font-weight:600}.end-session-btn{color:var(--color-text-muted);display:flex;align-items:center;justify-content:center}.end-session-btn:hover{color:var(--color-text)}.session-comparison{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.session-comparison-title{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);font-weight:700}.session-comparison-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.session-comparison-label{font-size:var(--font-size-sm);color:var(--color-text)}.session-comparison-delta{font-size:var(--font-size-sm);font-weight:700;font-variant-numeric:tabular-nums}.delta-positive{color:var(--color-coach-correct)}.delta-negative{color:var(--color-danger)}.delta-neutral{color:var(--color-text-muted)}.trend-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:700;padding:3px 10px;border-radius:var(--radius-pill);letter-spacing:.5px}.trend-improving{background:#27ae6026;color:#27ae60;border:1px solid rgba(39,174,96,.25)}.trend-declining{background:#ff47571f;color:#ff4757;border:1px solid rgba(255,71,87,.22)}.trend-steady{background:#a0a0a81f;color:var(--color-text-muted);border:1px solid rgba(255,255,255,.08)}.focus-areas{display:flex;flex-direction:column;gap:var(--spacing-sm)}.focus-area-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:row;align-items:stretch;overflow:hidden}.focus-area-bar{width:4px;flex-shrink:0;border-radius:2px 0 0 2px;position:relative;align-self:stretch;transition:height .3s ease}.focus-area-body{flex:1;min-width:0;padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:4px}.focus-area-header{display:flex;align-items:center;justify-content:space-between}.focus-area-label{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.focus-area-pct{font-size:var(--font-size-sm);font-weight:700;font-variant-numeric:tabular-nums}.focus-area-tip{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.focus-pct-bad{color:var(--color-danger)}.focus-pct-mid{color:var(--color-warning)}.focus-pct-ok{color:var(--color-coach-correct)}.learn-screen{background:var(--color-background)}.learn-content{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-lg)}.learn-content-lessons{padding:0;gap:0;flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--color-background)}.strategy-chart-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.strategy-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.strategy-table{border-collapse:collapse;font-size:var(--font-size-xs);min-width:340px}.strategy-table th,.strategy-table td{width:30px;height:24px;text-align:center;border:1px solid rgba(255,255,255,.06)}.strategy-table th{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted);background:#ffffff08}.strategy-table td{cursor:pointer;font-weight:700;transition:opacity .1s}.strategy-table td:active{opacity:.7}.cell-H{background:#64a0dc33;color:#70a1ff}.cell-S{background:#27ae6033;color:#27ae60}.cell-D,.cell-Ds{background:#e8b84b33;color:var(--color-gold)}.cell-Y{background:#b464dc33;color:#c87af5}.cell-N{background:#50505026;color:var(--color-text-muted)}.chart-legend{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs)}.legend-dot{width:10px;height:10px;border-radius:2px}.weak-spot-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.weak-spot-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.weak-spot-header{display:flex;align-items:center;justify-content:space-between}.weak-spot-situation{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright);font-family:ui-monospace,SFMono-Regular,monospace}.weak-spot-count{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:700}.weak-spot-actions{display:flex;gap:var(--spacing-sm);font-size:var(--font-size-xs)}.weak-spot-wrong{color:var(--color-danger);font-weight:600}.weak-spot-correct{color:var(--color-coach-correct);font-weight:600}.weak-spot-explanation{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.concept-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.concept-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.concept-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);cursor:pointer;-webkit-user-select:none;user-select:none;gap:var(--spacing-sm)}.concept-header:active{background:#ffffff08}.concept-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.concept-chevron{font-size:var(--font-size-xs);color:var(--color-text-muted);transition:transform .2s;flex-shrink:0}.concept-chevron-open{transform:rotate(180deg)}.concept-body{padding:0 var(--spacing-md) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text);line-height:1.65;border-top:1px solid var(--color-border)}.concept-body p{margin:var(--spacing-sm) 0 0}.concept-body p:first-child{margin-top:var(--spacing-sm)}.concept-visual{display:flex;align-items:flex-end;gap:var(--spacing-md);padding:var(--spacing-sm) 0 var(--spacing-xs)}.situation-visual{display:flex;align-items:flex-end;gap:var(--spacing-sm);flex-shrink:0}.debrief-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.debrief-item{background:var(--color-surface);border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.debrief-situation{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright);font-family:monospace}.debrief-plays{display:flex;gap:var(--spacing-sm);font-size:var(--font-size-xs)}.debrief-wrong{color:var(--color-danger);font-weight:600}.debrief-correct{color:var(--color-coach-correct);font-weight:600}.debrief-explanation{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.session-accuracy-bar{height:3px;background:#ffffff0f;border-radius:2px;margin-top:4px;overflow:hidden}.session-accuracy-fill{height:100%;background:var(--color-gold);border-radius:2px;transition:width .4s cubic-bezier(.23,1,.32,1)}.sim-screen{background:var(--color-background)}.sim-content{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-lg)}.sim-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.sim-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.8px}.sim-desc{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.55}.sim-desc strong{color:var(--color-text-bright);font-weight:600}.sim-hand-options{display:flex;gap:var(--spacing-sm)}.sim-hand-btn{flex:1;min-height:var(--touch-min);border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:600;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);transition:background .15s,color .15s,border-color .15s}.sim-hand-btn--active{background:#e8b84b26;color:var(--color-gold);border-color:#e8b84b66}.sim-hand-btn:disabled{opacity:.4;pointer-events:none}.sim-hand-note{font-size:var(--font-size-xs);color:var(--color-text-muted)}.sim-run-btn{width:100%}.sim-progress-bar-track{height:6px;background:var(--color-surface);border-radius:var(--radius-pill);overflow:hidden}.sim-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-gold),#f5d27a);border-radius:var(--radius-pill);transition:width .3s ease-out}.sim-progress-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.sim-table-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.sim-table-wrap{overflow-x:auto}.sim-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.sim-th{padding:var(--spacing-sm) var(--spacing-xs);font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-align:center;border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.5px;line-height:1.3}.sim-th-total{text-align:left;width:52px}.sim-th-basic{color:var(--color-gold)}.sim-tr:not(:last-child) td{border-bottom:1px solid rgba(255,255,255,.04)}.sim-td{padding:var(--spacing-sm) var(--spacing-xs);text-align:center;vertical-align:middle}.sim-td-total{text-align:left;font-size:var(--font-size-md);font-weight:700;color:var(--color-text-bright)}.sim-td{display:table-cell}.sim-td .sim-ev-value,.sim-td .sim-win-rate{display:block}.sim-ev-value{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text)}.sim-win-rate{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.sim-ev-best .sim-ev-value{color:#65d98b}.sim-ev-worst .sim-ev-value{color:var(--color-danger)}.sim-ev-mid .sim-ev-value{color:var(--color-gold)}.sim-legend{display:flex;gap:var(--spacing-md);justify-content:flex-end}.sim-legend-item{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-pill)}.sim-legend-best{background:#65d98b26;color:#65d98b}.sim-legend-worst{background:#ff475726;color:var(--color-danger)}.sim-note-box{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);border:1px solid var(--color-border)}.sim-note-text{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.55}.example-hand .card{width:44px;height:62px}.example-hand .card-corner{font-size:var(--font-size-card-corner-sm)}.example-hand .card-corner-top{top:4px;left:4px}.example-hand .card-corner-bottom{bottom:4px;right:4px}.example-hand .card-center{font-size:var(--font-size-card-center-sm)}.example-hand .card+.card{margin-left:-12px}.example-hand .card-count-badge{font-size:var(--font-size-xs);padding:1px 4px;bottom:-5px;left:-5px}.scenario-examples{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-bottom:var(--spacing-xl)}.example-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.example-group-title{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.8px;padding:0 var(--spacing-xs)}.example-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);cursor:pointer;transition:background .15s;border-left-width:3px}.example-card:active{background:var(--color-surface-hover)}.example-card--hit{border-left-color:#64a0dcb3}.example-card--stand{border-left-color:#27ae60b3}.example-card--double{border-left-color:#e8b84bcc}.example-card--split{border-left-color:#b464dccc}.example-counting-card{border-left-color:#fff3}.example-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-sm)}.example-card-titles{display:flex;flex-direction:column;gap:2px}.example-card-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.example-card-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted)}.example-action-badge{font-size:var(--font-size-xs);font-weight:700;padding:3px 9px;border-radius:var(--radius-pill);flex-shrink:0;letter-spacing:.5px}.example-action-hit{background:#64a0dc33;color:#7ab3e0}.example-action-stand{background:#27ae6033;color:#65d98b}.example-action-double{background:#e8b84b33;color:var(--color-gold)}.example-action-split{background:#b464dc33;color:#c87de8}.example-visual{display:flex;align-items:flex-end;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.example-hand-group{display:flex;flex-direction:column;gap:var(--spacing-xs);align-items:flex-start}.example-hand{display:flex}.example-hand-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500}.example-vs{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);padding-bottom:4px;flex-shrink:0}.example-short{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.5}.example-detail{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.6;padding-top:var(--spacing-xs);border-top:1px solid var(--color-border)}.example-expand-hint{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.example-chevron{font-size:var(--font-size-xs);transition:transform .2s;display:inline-block}.example-chevron-open{transform:rotate(180deg)}.counting-row{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding:var(--spacing-xs) 0 var(--spacing-sm);-webkit-overflow-scrolling:touch}.counting-card-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.counting-running{font-size:var(--font-size-xs);font-weight:700;white-space:nowrap}.count-pos{color:#65d98b}.count-neg{color:var(--color-danger)}.count-zero{color:var(--color-text-muted)}.lesson-library{padding:var(--spacing-md) var(--spacing-md) calc(var(--spacing-xl) + var(--safe-bottom));display:flex;flex-direction:column;gap:var(--spacing-lg)}.lesson-hero{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 30% 50%,rgba(232,184,75,.06) 0%,transparent 70%)}.lesson-hero-ring{flex-shrink:0}.lesson-hero-detail{display:flex;flex-direction:column;gap:2px}.lesson-hero-count{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.lesson-hero-msg{font-size:var(--font-size-xs);color:var(--color-text-muted)}.lesson-category-header{display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.lesson-category-icon{font-size:var(--font-size-lg);line-height:1;color:var(--color-gold)}.lesson-category-text{display:flex;flex-direction:column;flex:1;min-width:0}.lesson-category-label{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright)}.lesson-category-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.lesson-category-count{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted);flex-shrink:0}.lesson-grid{display:flex;flex-direction:column;gap:var(--spacing-sm)}.lesson-card-wrapper{animation:slideUp .3s ease-out both}.lesson-card{width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0;text-align:left;cursor:pointer;transition:background .15s,border-color .15s;display:flex;flex-direction:row;align-items:stretch;gap:0;overflow:hidden}.lesson-card:active{background:var(--color-surface-hover)}.lesson-card:focus-visible{outline:none;box-shadow:0 0 0 2px #0a0a10f2,0 0 0 4px #5d53aa8c}.lesson-card--completed{border-color:#e8b84b66}.lesson-card--expanded{border-color:#e8b84b4d;background:var(--color-surface-hover)}.lesson-card-bar{width:4px;flex-shrink:0;background:#e8b84b26;position:relative;border-radius:2px 0 0 2px;align-self:stretch;overflow:hidden}.lesson-card-bar:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:inherit;background:var(--color-gold);border-radius:2px 0 0 2px;transition:height .3s ease}.lesson-card-body{flex:1;min-width:0;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:4px}.lesson-card-title{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-bright);line-height:1.3;display:flex;align-items:center;gap:5px}.lesson-card-mastered{color:var(--color-gold);font-size:var(--font-size-sm);line-height:1}.lesson-card-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.lesson-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:2px}.lesson-card-badges{display:flex;align-items:center;gap:6px}.lesson-card-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.lesson-card-chevron{display:flex;align-items:center;padding:0 var(--spacing-sm);font-size:var(--font-size-lg);color:var(--color-text-muted);flex-shrink:0}.lesson-badge{font-size:var(--font-size-xs);font-weight:700;background:var(--color-surface-hover);color:var(--color-text);border-radius:var(--radius-pill);padding:2px 8px}.lesson-badge--done{background:#e8b84b26;color:var(--color-gold)}.lesson-badge--progress{background:#64a0dc33;color:#9fc6ea}.lesson-expand{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);animation:slideUp .2s ease-out}.lesson-expand-concept{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:6px}.lesson-expand-concept-label{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-muted)}.lesson-expand-concept-text{font-size:var(--font-size-sm);color:var(--color-text-bright);line-height:1.6;white-space:pre-line}.lesson-expand-start{width:100%}.lesson-runner{background:var(--color-felt);background-image:radial-gradient(ellipse at 50% 30%,rgba(232,184,75,.03) 0%,transparent 60%);overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:0}.lesson-runner-table{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);min-height:0;overflow-y:auto}.lesson-runner-table>*{width:100%;max-width:540px}.lesson-runner-actions{width:100%;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md) calc(var(--spacing-md) + var(--safe-bottom));background:linear-gradient(180deg,#0a0c1259,#0a0c12cc);border-top:1px solid rgba(255,255,255,.08)}.lesson-runner-actions>*{width:100%;max-width:540px}.lesson-runner-header{display:flex;align-items:center;gap:var(--spacing-sm)}.lesson-runner-meta{display:flex;gap:var(--spacing-xs);justify-content:center}.lesson-meta-pill{font-size:var(--font-size-xs);color:var(--color-text-muted);border:1px solid rgba(255,255,255,.14);background:#0e121c99;padding:3px 9px;border-radius:var(--radius-pill)}.lesson-back-btn{font-size:var(--font-size-lg);width:var(--touch-min);min-width:var(--touch-min);padding:0}.lesson-back-btn:active{color:var(--color-text-bright)}.lesson-runner-title{flex:1;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-bright)}.lesson-step-counter{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.lesson-progress-dots{display:flex;gap:6px;align-items:center;justify-content:center}.lesson-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border);flex-shrink:0;transition:background .2s}.lesson-dot--done{background:var(--color-gold)}.lesson-dot--current{background:var(--color-text);animation:subtleFloat 1.5s ease-in-out infinite}.lesson-cards-area{display:flex;flex-direction:column;gap:var(--spacing-sm);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:linear-gradient(180deg,#e8b84b14,#e8b84b05 38%,#ffffff03);box-shadow:0 12px 30px #0006,inset 0 1px #ffffff12}.lesson-table-layout{display:flex;flex-direction:column;gap:var(--spacing-sm)}.lesson-cards-area--dealer{border-color:#ffffff14;background:linear-gradient(180deg,#ffffff0a,#ffffff03)}.lesson-cards-area--player{border-color:#e8b84b40}.lesson-cards-row{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.lesson-cards-label{font-size:var(--font-size-xs);font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--color-text-muted)}.lesson-cards-area--player .lesson-cards-label{color:var(--color-gold)}.lesson-cards-hand{display:flex;gap:var(--spacing-xs)}.lesson-cards-hand .card+.card{margin-left:-14px}.lesson-counting-area{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:var(--spacing-md);background:linear-gradient(180deg,#e8b84b14,#e8b84b05 38%,#ffffff03);box-shadow:0 12px 30px #0006,inset 0 1px #ffffff12}.lesson-counting-question{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.lesson-context{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;background:#ffffff08;border-left:2px solid var(--color-border);padding:var(--spacing-xs) var(--spacing-sm);border-radius:0 var(--radius-sm) var(--radius-sm) 0;line-height:1.5;white-space:pre-line}.lesson-actions{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:nowrap;width:100%;animation:slideUp .2s ease-out}.lesson-actions--counting{flex-wrap:nowrap}.lesson-action-btn{flex:1;min-width:70px;max-width:120px;transition:opacity .15s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lesson-actions--counting .lesson-action-btn{max-width:120px}.lesson-action-btn--correct{background:#27ae6033!important;border-color:#27ae60!important;color:#65d98b!important}.lesson-action-btn--wrong{background:#c0392b33!important;border-color:var(--color-coach-wrong)!important;color:#ff6f78!important}.lesson-action-btn--dim{opacity:.25;pointer-events:none}.lesson-feedback{display:flex;gap:var(--spacing-sm);align-items:flex-start;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid;animation:slideUp .2s ease-out}.lesson-feedback--correct{background:#27ae6014;border-color:#27ae604d}.lesson-feedback--wrong{background:#c0392b14;border-color:#c0392b4d}.lesson-feedback-icon{font-size:var(--font-size-md);font-weight:700;flex-shrink:0;line-height:1.5}.lesson-feedback--correct .lesson-feedback-icon{color:#65d98b}.lesson-feedback--wrong .lesson-feedback-icon{color:#ff6f78}.lesson-feedback-text{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.55;white-space:pre-line}.lesson-next-row{display:flex;justify-content:center;width:100%}.lesson-next-btn{width:100%;max-width:540px}.lesson-summary{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);width:100%;max-width:540px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-sm);text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);background:linear-gradient(180deg,#e8b84b1a,#e8b84b08 40%,#ffffff05);box-shadow:0 14px 28px #00000047,inset 0 1px #ffffff14}.lesson-summary-score{display:flex;align-items:baseline;gap:2px}.lesson-summary-num{font-size:64px;font-weight:800;line-height:1;color:var(--color-text-bright)}.lesson-summary-num--perfect{color:var(--color-gold)}.lesson-summary-denom{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-muted)}.lesson-summary-label{font-size:var(--font-size-md);color:var(--color-text-muted);margin-top:-8px}.lesson-summary-mastery{margin-top:-6px;font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.45}.lesson-summary-mastery--pass{color:#9fc6ea}.lesson-summary-mastery-next{margin-top:-8px;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.lesson-summary-steps{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center}.lesson-summary-dot{font-size:var(--font-size-lg);font-weight:700}.lesson-summary-dot--correct{color:#65d98b}.lesson-summary-dot--wrong{color:#ff6f78}.lesson-summary-takeaway{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;max-width:280px;line-height:1.5}.lesson-summary-actions{display:flex;gap:var(--spacing-sm);width:100%;max-width:320px;margin-top:var(--spacing-sm)}.lesson-summary-actions .btn{flex:1}
