:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.45;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:#f5f8ff;background:radial-gradient(circle at top,#17336b,#17336b33 40%),linear-gradient(180deg,#060d1b,#0a162f 60%,#081126)}#root{min-height:100vh;width:100%}:root{--bg-dark: #0a0f1d;--bg-card: rgba(255, 255, 255, .05);--accent-primary: #4ade80;--accent-secondary: #38bdf8;--accent-tertiary: #8b5cf6;--text-main: #f8fafc;--text-muted: #94a3b8;--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(8px)}.game-layout{width:100%;min-height:100vh;display:grid;grid-template-columns:280px 1fr 240px;grid-template-rows:1fr auto;gap:1.5rem;padding:1.5rem;background:transparent;color:var(--text-main);position:relative;overflow:hidden}.game-layout.intro-layout{grid-template-columns:1fr;padding:1.5rem 2rem 1rem}.background-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;transition:opacity .8s ease-in-out}.background-image{width:100%;height:100%;object-fit:cover;filter:saturate(1.2) brightness(.8)}.background-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,#0a0f1d99,#0a0f1df2)}.score-panel,.progress-panel{background:var(--bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:24px;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 8px 32px #0000004d}.score-panel h3,.progress-panel h3{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700}.score-card{background:#ffffff08;border:1px solid var(--glass-border);border-radius:16px;padding:1rem;transition:transform .2s ease}.score-card:hover{transform:translateY(-2px);background:#ffffff0d}.score-card .score-label{margin:0;font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#ffffff80;font-weight:700}.score-card strong{display:block;margin-top:.5rem;font-size:1.5rem;font-weight:800;color:#fff;background:none;-webkit-text-fill-color:currentColor}.score-card.score-wealth strong,.score-card.score-wealth .current-value{color:#4ade80}.score-card.score-cash strong,.score-card.score-cash .current-value{color:#38bdf8}.score-card.score-habits strong,.score-card.score-habits .current-value{color:#fff}.game-shell{display:flex;flex-direction:column;gap:1rem}.card-stage{flex:1;display:flex;justify-content:center;align-items:center}.game-card{width:100%;max-width:900px;min-height:500px;background:transparent;border:none;padding:3rem;display:flex;flex-direction:column;justify-content:center;box-shadow:none}.intro-layout .game-card{min-height:auto;padding:1.5rem 2rem .5rem}.intro-content{text-align:center;display:flex;flex-direction:column;align-items:center}.intro-content h1{font-size:clamp(2.5rem,5.2vw,4rem);line-height:1.06;margin-bottom:1.25rem}.intro-content .action-button{align-self:center;margin-top:.5rem;padding:1.1rem 3.4rem;font-size:1.3rem;border-radius:999px}.eyebrow{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:var(--accent-primary);margin-bottom:.75rem;opacity:.9}h1{font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.1;margin-bottom:1.5rem;font-weight:900;color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.5)}.gradient-text{background:linear-gradient(135deg,#4ade80,#38bdf8);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}h2{font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:1rem;font-weight:800;text-shadow:0 4px 12px rgba(0,0,0,.5)}.card-copy{font-size:1.125rem;line-height:1.6;color:#e2e8f0;margin-bottom:2rem;max-width:60ch;text-shadow:0 2px 8px rgba(0,0,0,.4)}.intro-layout .card-copy{margin-bottom:1.1rem}.action-button,.decision-button{border:none;border-radius:16px;font-weight:700;font-size:1.125rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.action-button{background:var(--accent-primary);color:#0a0f1d;padding:1.25rem 2.5rem;align-self:flex-start;box-shadow:0 10px 20px #4ade8033}.action-button:hover{transform:translateY(-3px);box-shadow:0 15px 30px #4ade804d}.button-stack{display:grid;gap:1rem;width:100%}.decision-button{background:#ffffff0f;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);color:var(--text-main);padding:1.5rem;text-align:left;display:flex;align-items:center;gap:1rem;font-size:1.1rem;box-shadow:0 4px 20px #0000001a}.decision-button:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-2px)}.progress-track{height:6px;background:#ffffff1a;border-radius:999px;overflow:hidden;margin:1rem 0}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary))}.progress-text{font-size:.875rem;font-weight:600;color:var(--text-muted)}.progress-subtext{margin:-.35rem 0 0;font-size:.75rem;color:#94a3b8e0}.scenario-progress-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.scenario-progress-item{display:flex;align-items:center;gap:.6rem;color:var(--text-muted);font-size:.9rem}.scenario-toggle{width:8px;height:8px;border-radius:50%;border:1px solid rgba(148,163,184,.45);background:#94a3b81f;flex-shrink:0;transition:all .2s ease}.scenario-progress-item.is-complete .scenario-toggle{border-color:#4ade80f2;background:var(--accent-primary);box-shadow:0 0 12px #4ade8099}.scenario-progress-item.is-complete,.scenario-progress-item.is-current{color:#cdeee3}.scenario-progress-item.is-current .scenario-toggle{border-color:#38bdf8e6;background:#38bdf873;box-shadow:0 0 10px #38bdf873}.scenario-progress-title{line-height:1.25}.result-cards-container{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem}.result-card-item{background:#ffffff0a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.card-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700;margin:0}.card-value{font-size:1.5rem;font-weight:800;color:#fff}.card-value.positive{color:var(--accent-primary)}.card-value.negative{color:#ef4444}.card-subtext{font-size:.85rem;line-height:1.4;color:var(--text-muted);margin:0}.bias-card .card-value{font-size:1.25rem;color:var(--accent-secondary)}.consequence-copy+.bias-card{margin-top:.4rem;max-width:620px}.score-transition{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.prev-value{font-size:1rem;color:var(--text-muted);text-decoration:line-through;opacity:.7}.arrow{color:var(--text-muted);font-weight:800}.current-value{font-size:1.25rem;font-weight:800;color:#fff}.change-pill{font-size:.875rem;font-weight:700;padding:.2rem .5rem;border-radius:6px;margin-left:auto}.change-pill.positive{color:var(--accent-primary);background:#4ade801a}.change-pill.negative{color:#ef4444;background:#ef44441a}.impact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.final-full-card{min-height:calc(100vh - 4.2rem);display:flex;justify-content:center}.final-screen{width:min(100%,760px);min-height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1.35rem}.final-score-screen .money-style-strip{width:min(100%,700px);text-align:left}.final-recap-screen{width:min(100%,840px)}.final-recap-screen .decision-recap{width:100%}.summary-header{text-align:center;margin-bottom:.25rem}.final-wealth-amount{font-size:clamp(3rem,6vw,4.5rem);font-weight:900;color:var(--accent-primary);margin:.1rem 0;line-height:1;text-shadow:0 0 40px rgba(74,222,128,.2)}.wealth-context{font-size:1rem;color:var(--text-main);opacity:1;font-weight:500}.wealth-context strong{color:var(--accent-primary);font-weight:800}.wealth-disclaimer{font-size:.65rem;color:var(--text-muted);margin-top:.2rem;margin-bottom:0}.money-style-strip{background:#040d20d9;border:1px solid rgba(56,189,248,.08);border-radius:18px;padding:1.1rem}.money-style-strip-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.8rem}.money-style-strip-title{margin:0;font-size:.62rem;text-transform:uppercase;letter-spacing:.22em;color:#94a3b8cc;font-weight:700}.money-style-strip-score{margin:0;font-size:.78rem;font-weight:700;color:#cde8ff}.money-style-tier-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.money-style-tier{--tier-color: #38bdf8;display:flex;justify-content:space-between;align-items:center;gap:.8rem;border:1px solid color-mix(in srgb,var(--tier-color) 34%,transparent);border-radius:12px;padding:.65rem .8rem;background:color-mix(in srgb,var(--tier-color) 10%,rgba(8,15,30,.96))}.money-style-tier.is-current{box-shadow:0 0 0 1px color-mix(in srgb,var(--tier-color) 35%,transparent),0 0 20px color-mix(in srgb,var(--tier-color) 16%,transparent)}.money-style-tier-left{display:flex;align-items:center;gap:.72rem;min-width:0}.money-style-tier-icon{width:22px;height:22px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:.92rem;color:var(--tier-color);border:1px solid color-mix(in srgb,var(--tier-color) 45%,transparent);background:color-mix(in srgb,var(--tier-color) 16%,transparent);flex-shrink:0}.money-style-tier-copy{min-width:0}.money-style-tier-name{margin:0;font-size:1.1rem;font-weight:800;color:var(--tier-color);line-height:1.1}.money-style-tier-description{margin:.15rem 0 0;color:#c4d3e4b8;font-size:.72rem;line-height:1.32}.money-style-tier-range{color:var(--tier-color);font-size:1.28rem;font-weight:800;white-space:nowrap;flex-shrink:0}.decision-recap{display:flex;flex-direction:column;gap:.75rem}.recap-list{display:flex;flex-direction:column;gap:.5rem}.recap-row{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.75rem 1.25rem;display:flex;align-items:center;gap:1.5rem;transition:all .2s ease}.recap-row:hover{background:#ffffff0f;transform:translate(4px)}.recap-number{font-size:.75rem;font-weight:700;color:var(--text-muted);opacity:.4;width:20px}.recap-info{flex:1;display:flex;flex-direction:column;gap:.1rem}.recap-scenario{font-size:.9rem;font-weight:700;margin:0}.recap-choice{font-size:.75rem;color:var(--text-muted);margin:0;font-style:italic;opacity:.8}.recap-bias{margin:.2rem 0 0;font-size:.72rem;color:#c4d3e4db;line-height:1.35}.recap-impact{display:flex;align-items:center;gap:1.25rem}.impact-value{font-size:1rem;font-weight:800}.impact-value.positive{color:var(--accent-primary)}.impact-value.negative{color:#ef4444}.result-tag{font-size:.6rem;font-weight:900;padding:.2rem .5rem;border-radius:5px;text-transform:uppercase;letter-spacing:.05em;min-width:70px;text-align:center}.result-tag.smart{background:#4ade801a;color:var(--accent-primary);border:1px solid rgba(74,222,128,.2)}.result-tag.moderate{background:#eab3081a;color:#eab308;border:1px solid rgba(234,179,8,.2)}.result-tag.costly{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.play-again-btn{align-self:center;padding:.875rem 3rem;font-size:1rem;border-radius:999px;background:var(--accent-primary);color:#0a0f1d;box-shadow:0 8px 24px #4ade8040;margin-top:.5rem}@media(max-width:1100px){.game-layout{grid-template-columns:1fr;padding:1rem}.score-panel,.progress-panel{display:none}}@media(max-width:640px){.game-layout.intro-layout{padding:1rem 1rem .5rem}.intro-layout .game-card{padding:1.1rem 1rem .4rem}.intro-content h1{font-size:clamp(1.95rem,9.4vw,2.55rem);margin-bottom:.9rem}.intro-layout .card-copy{margin-bottom:.8rem}.intro-content .action-button{padding:.9rem 2.8rem;font-size:1.1rem}.intro-stats-bar{flex-wrap:wrap;gap:.8rem 1.2rem;padding:.35rem .5rem 0}.intro-stats-bar .stat-value{font-size:1.15rem}.intro-stats-bar .stat-label{font-size:.52rem}.game-card{padding:1.5rem;border-radius:24px}.final-full-card{min-height:calc(100vh - 2rem)}.final-screen{width:100%;gap:1rem}.final-score-screen .money-style-strip,.final-recap-screen{width:100%}.money-style-strip{padding:.9rem}.money-style-strip-head{flex-direction:column;align-items:flex-start;margin-bottom:.7rem}.money-style-tier{padding:.62rem .72rem}.money-style-tier-name{font-size:.98rem}.money-style-tier-description{font-size:.68rem}.money-style-tier-range{font-size:1.02rem}.recap-row{padding:.7rem .8rem;gap:.6rem}.recap-impact{gap:.6rem;flex-direction:column;align-items:flex-end}h1{font-size:2rem}}.coin-particle{font-size:2rem;z-index:100;text-shadow:0 0 10px rgba(0,0,0,.5);pointer-events:none}.coin-particle.positive{color:#22c55e}.coin-particle.negative{color:#ef4444}.score-panel{position:relative}.bottom-stats-bar{grid-column:1 / -1;display:flex;justify-content:center;gap:6rem;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;padding:2rem;margin-top:2rem}.intro-stats-bar{gap:clamp(1.25rem,3vw,2.25rem);padding:.75rem 1rem .25rem;margin-top:.5rem}.intro-stats-bar .stat-value{font-size:clamp(1.35rem,2.2vw,1.65rem)}.intro-stats-bar .stat-label{font-size:.58rem;letter-spacing:.12em}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stat-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#ffffff80;font-weight:700}.stat-value{font-size:1.75rem;font-weight:800;color:#fff}
