:root{--bg-color:#0f172a;--surface-color:#1e293bb3;--surface-border:#ffffff1a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-color:#3b82f6;--accent-hover:#2563eb;--danger-color:#ef4444;--success-color:#10b981;--font-family:"Inter", system-ui, Avenir, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(at 0 0,#3b82f626 0,#0000 50%),radial-gradient(at 100% 100%,#8b5cf626 0,#0000 50%);flex-direction:column;min-height:100vh;display:flex}.app-container{flex-direction:column;min-height:100vh;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes successFlash{0%{background-color:#ffffff08}50%{border-color:var(--success-color);background-color:#10b98166;transform:translate(8px)}to{border-color:var(--success-color);background-color:#10b981cc;transform:translate(12px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.95)}}@keyframes pointsPop{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}.fade-in{animation:.4s ease-out forwards fadeIn}.slide-up{animation:.5s cubic-bezier(.16,1,.3,1) forwards slideUp}.fade-out{animation:.4s ease-out forwards fadeOut}.glass-card{background:var(--surface-color);-webkit-backdrop-filter:blur(12px);border:1px solid var(--surface-border);border-radius:16px;padding:2rem;transition:box-shadow .25s,border-color .25s,transform .25s;box-shadow:0 4px 30px #00000026}.scenario-overview-card:hover{border-color:#6366f166;transform:translateY(-4px);box-shadow:0 12px 40px #6366f126}button{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:500;transition:all .2s}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary{background:var(--accent-color);color:#fff;box-shadow:0 4px 14px #3b82f666}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f699}.btn-secondary{color:var(--text-primary);border:1px solid var(--surface-border);background:0 0}.btn-secondary:hover:not(:disabled){background:#ffffff0d}.btn-text{color:var(--text-secondary);background:0 0;padding:.5rem 1rem}.btn-text:hover:not(:disabled){color:var(--text-primary)}.option-btn{text-align:left;border:1px solid var(--surface-border);width:100%;color:var(--text-primary);background:#ffffff08;border-radius:12px;align-items:center;padding:1.25rem;font-size:1.05rem;line-height:1.5;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.option-btn:before{content:"";background:var(--accent-color);transform-origin:bottom;width:4px;height:100%;transition:transform .2s;position:absolute;top:0;left:0;transform:scaleY(0)}.option-btn:hover:not(:disabled){background:#ffffff12;border-color:#ffffff40;transform:translate(6px);box-shadow:0 4px 20px #00000040}.option-btn:hover:not(:disabled):before{transform:scaleY(1)}.option-btn:active:not(:disabled){transform:translate(4px)scale(.99)}.option-selected{animation:.6s forwards successFlash}.navbar{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--surface-border);z-index:100;background:#0f172ad9;justify-content:space-between;align-items:center;padding:.85rem 2rem;display:flex;position:sticky;top:0}.navbar-brand{cursor:pointer;letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:700;display:flex}.navbar-menu{align-items:center;gap:.75rem;display:flex}.user-id{color:var(--text-secondary);font-size:.85rem}.points-badge{animation:.35s ease-out pointsPop}.main-content{flex:1;justify-content:center;align-items:flex-start;margin-top:2rem;padding:2rem;display:flex}.form-group{text-align:left;flex-direction:column;margin-bottom:1.5rem;display:flex}.form-group label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.9rem}.form-input{border:1px solid var(--surface-border);color:var(--text-primary);background:#0003;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #3b82f626}.form-section-title{border-bottom:1px solid var(--surface-border);color:var(--accent-color);margin:1.5rem 0 1rem;padding-bottom:.5rem}.choices-row{gap:1.5rem;display:flex}.choice-col{border:1px solid var(--surface-border);background:#0000001a;border-radius:8px;flex:1;padding:1rem}.choice-col h4{color:var(--text-secondary);margin-bottom:1rem}.login-container,.dashboard-container,.player-container,.outcome-container,.create-container{width:100%;max-width:800px}.auth-card{text-align:center;max-width:400px;margin:0 auto}.auth-card h2{margin-bottom:2rem}.auth-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;margin-bottom:1.5rem;padding:.75rem;font-size:.9rem}.auth-submit{width:100%;margin-top:1rem}.auth-toggle{color:var(--text-secondary);margin-top:1.5rem;font-size:.9rem}.auth-toggle span{color:var(--accent-color);cursor:pointer;font-weight:500}.dashboard-header{text-align:center;margin-bottom:2rem;position:relative}.dashboard-header h1{letter-spacing:-.02em;margin-bottom:.5rem;font-size:2.2rem;font-weight:700}.dashboard-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1rem}.create-btn{margin-top:1rem}.scenario-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.scenario-overview-card h2{margin-bottom:.75rem;font-size:1.1rem;font-weight:600;line-height:1.4}.scenario-overview-card p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.92rem;line-height:1.6}.card-actions{gap:1rem;display:flex}.create-card h2{margin-bottom:.5rem}.create-card p{color:var(--text-secondary);margin-bottom:2rem}.create-actions{justify-content:flex-end;margin-top:2rem}.player-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.player-stats{align-items:center;gap:1rem;display:flex}.scenario-badge{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d;border-radius:9999px;padding:.3rem 1rem;font-size:.85rem;font-weight:500}.score-indicator{color:#34d399;background:#10b98133;border-radius:6px;padding:.25rem .75rem;font-size:.9rem;font-weight:600}.step-indicator{color:var(--text-secondary);font-size:.9rem;font-weight:500}.scenario-card h2{letter-spacing:-.01em;margin-bottom:2rem;font-size:1.6rem;font-weight:600;line-height:1.4}.scenario-options{flex-direction:column;gap:.85rem;display:flex}.intermediate-result{text-align:center;padding:4rem 2rem}.intermediate-result h3{color:var(--accent-color);margin-bottom:1rem;font-size:1.5rem}.loading-dots{color:var(--text-secondary);justify-content:center;gap:.5rem;font-size:2rem;display:flex}.loading-dots span{animation:1s infinite alternate pulse}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}.outcome-card h2{letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.outcome-card h3{color:#94a3b8;font-size:1rem;font-weight:500}.outcome-header{border-bottom:1px solid var(--surface-border);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.outcome-header h2{color:var(--success-color)}.status-indicator{background:var(--success-color);width:12px;height:12px;box-shadow:0 0 10px var(--success-color);border-radius:50%}.outcome-content{margin-bottom:3rem}.outcome-content h3{margin-bottom:1rem;font-size:1.5rem}.final-result{text-align:center;background:#10b9811a;border:1px solid #10b98133;border-radius:12px;margin-top:2rem;padding:1.5rem}.final-result h4{color:var(--success-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.875rem}.score-display{color:#fff;font-size:2.5rem;font-weight:700}.history-section{margin-bottom:3rem}.history-section h4{color:var(--text-secondary);margin-bottom:1rem}.history-list{flex-direction:column;gap:1rem;list-style:none;display:flex}.history-item{background:#0003;border-radius:8px;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.history-details{flex:1}.history-question{color:var(--text-secondary);margin-bottom:.5rem;font-size:.95rem;line-height:1.4}.step-number{background:var(--surface-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.875rem;font-weight:600;display:flex}.step-choice{color:var(--text-primary);font-weight:500}.impact-badge{border-radius:999px;margin-left:auto;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.impact-badge.positive{color:#34d399;background:#10b98133}.impact-badge.negative{color:#f87171;background:#ef444433}.results-stats{border:1px solid var(--surface-border);background:#0003;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.loading-spinner{color:var(--text-secondary);font-size:1.25rem;animation:1.5s infinite pulse}.empty-state{text-align:center;border:1px dashed var(--surface-border);color:var(--text-secondary);background:#ffffff08;border-radius:12px;padding:3rem}@media (width<=640px){.glass-card{padding:1.5rem}.scenario-grid{grid-template-columns:1fr}.card-actions{flex-direction:column}.scenario-card h2{font-size:1.35rem}.choices-row{flex-direction:column}.navbar{padding:.75rem 1rem}.navbar-menu{gap:.5rem}.user-id{display:none}}
