:root{--color-bg:#14152b;--color-surface:#1e2044;--color-surface-hover:#262a54;--color-border:#34376b;--color-accent:#7c6bff;--color-accent-hover:#6a5aef;--color-accent-light:#a99bff;--color-text:#f0f1fa;--color-text-muted:#b8bbd9;--color-text-faint:#8688aa;--color-success:#2fd480;--color-warning:#ffb547;--color-danger:#ff6b6b;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-heading:"Georgia", "Times New Roman", serif;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--shadow-card:0 4px 20px #00000040;--shadow-hover:0 8px 30px #7c6bff33;--max-width:960px}*{box-sizing:border-box}html,body,#root{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);margin:0;padding:0}body{-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-text);margin:0 0 var(--space-3) 0;font-weight:700}h2{font-size:1.75rem}h3{font-size:1.25rem}p{color:var(--color-text-muted);margin:0 0 var(--space-2) 0;line-height:1.6}a{color:var(--color-accent-light);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:inherit;font-size:1rem;transition:border-color .15s}input:focus,textarea:focus{border-color:var(--color-accent);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-faint)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:5px}.btn{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:none;font-size:.95rem;font-weight:600;transition:transform .1s,box-shadow .15s,background .15s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover)}.btn-ghost{color:var(--color-text-muted);padding:var(--space-1) var(--space-2);background:0 0;font-size:.85rem}.btn-ghost:hover{color:var(--color-text)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-card)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.page-enter{animation:.25s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.spinner{border:2.5px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=640px){h2{font-size:1.4rem}.hide-mobile{display:none}}input:-webkit-autofill{-webkit-text-fill-color:var(--color-text);-webkit-box-shadow:0 0 0px 1000px var(--color-surface) inset;transition:background-color 5000s ease-in-out}input:-webkit-autofill:hover{-webkit-text-fill-color:var(--color-text);-webkit-box-shadow:0 0 0px 1000px var(--color-surface) inset;transition:background-color 5000s ease-in-out}input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text);-webkit-box-shadow:0 0 0px 1000px var(--color-surface) inset;transition:background-color 5000s ease-in-out}@media (width<=640px){.card{padding:var(--space-3)!important}}
