:root{--font-primary:"Inter", system-ui, sans-serif;--bg-color:#0d1117;--card-bg:#0000008c;--card-border:#ffffff26;--text-main:#f0f6fc;--text-muted:#8b949e;--accent-color:#58a6ff;--accent-hover:#3182ce;--option-bg:#ffffff0d;--option-hover:#58a6ff26;--option-border:#58a6ff4d;--transition-speed:.3s}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);background-color:var(--bg-color);color:var(--text-main);justify-content:center;align-items:center;min-height:100vh;line-height:1.6;display:flex;position:relative}body:before{content:"";filter:blur(5px)brightness(.9);z-index:-1;background-image:url(/images/background.jpeg);background-position:50%;background-size:cover;width:100%;height:100%;position:fixed;top:0;left:0;transform:scale(1.1)}.app-container{width:100%;max-width:800px;margin:0 auto;padding:24px}.view{opacity:0;transition:opacity var(--transition-speed) ease-in-out;display:none}.view.active{opacity:1;display:block}.glass-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:16px;padding:40px;box-shadow:0 8px 32px #0006}.quiz-card{color:#111;background-color:#fffffff2;border:1px solid #ffffff80;box-shadow:0 12px 40px #0003}.quiz-card .question-text{color:#111}.text-center{text-align:center}.text-left{text-align:left}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.title{letter-spacing:-.02em;margin-bottom:16px;font-size:2.5rem;font-weight:700}.subtitle{color:var(--text-muted);max-width:600px;margin:0 auto;font-size:1.1rem}.question-text{margin-bottom:32px;font-size:1.5rem;font-weight:600;line-height:1.4}.progress-container{margin-bottom:32px}.progress-text{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.9rem;font-weight:500}.progress-bar-bg{background-color:#fff;border-radius:4px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background-color:#211832;width:0%;height:100%;transition:width .4s ease-out}.btn-primary,.btn-secondary{color:#fff;cursor:pointer;transition:all var(--transition-speed);border:none;border-radius:8px;padding:14px 32px;font-family:inherit;font-size:1.1rem;font-weight:600;display:inline-block}.btn-primary{background-color:var(--accent-color);box-shadow:0 4px 14px #58a6ff4d}.btn-primary:hover{background-color:var(--accent-hover);transform:translateY(-2px);box-shadow:0 6px 20px #58a6ff66}.btn-secondary{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.btn-secondary:hover{background-color:#58a6ff1a}.options-container{flex-direction:column;gap:16px;display:flex}.option-btn{color:#1f2937;text-align:left;cursor:pointer;background-color:#fffffffa;border:1px solid #d1d5db;border-radius:12px;align-items:flex-start;gap:16px;padding:20px 24px;font-family:inherit;font-size:1.05rem;line-height:1.5;transition:all .2s;display:flex;box-shadow:0 2px 4px #0000000d}.option-label{flex-shrink:0}.option-btn:hover,.option-btn:focus{border-color:var(--accent-color);background-color:#fff;outline:none;transform:scale(1.02);box-shadow:0 4px 12px #58a6ff26}.option-btn:active{transform:scale(.98)}.result-header{text-transform:uppercase;color:var(--text-muted);letter-spacing:.1em;margin-bottom:8px;font-size:1rem}.text-gradient .text-gradient{background:linear-gradient(45deg,#f93,#ffd180);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.result-desc{color:#fff;white-space:pre-wrap;background:#0003;border-radius:12px;margin-top:16px;padding:24px;font-size:1.1rem;line-height:1.8}.result-leaning{color:#ffd180;background:#ff993314;border-left:3px solid #f93;border-radius:6px;padding:12px 20px;font-size:1.05rem;font-style:italic;display:none}.spectrum-container{border-radius:8px;width:100%;max-width:500px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 4px 12px #0003}.spectrum-img{width:100%;height:auto;display:block}.spectrum-dot{opacity:0;background-color:#f33;border:2px solid #fff;border-radius:50%;width:16px;height:16px;transition:all .8s cubic-bezier(.34,1.56,.64,1);position:absolute;transform:translate(-50%,50%);box-shadow:0 2px 8px #00000080}.slide-up{animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUp}.fade-in{animation:.4s ease-out forwards fadeIn}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=600px){.glass-card{padding:24px}.title{font-size:2rem}.question-text{font-size:1.25rem}.option-btn{padding:16px;font-size:1rem}}
