:root{--color-bg:#0d0d0d;--color-surface:#1a1a1a;--color-surface-glass:#1a1a1ab3;--color-primary:#ff2a2a;--color-primary-hover:#ff4d4d;--color-text:#fff;--color-text-muted:#a0a0a0;--color-border:#333;--font-family:"Outfit", "Inter", system-ui, -apple-system, sans-serif;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--shadow-sm:0 4px 6px #0000001a;--shadow-md:0 10px 15px #0003;--shadow-glow:0 0 15px #ff2a2a4d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100vh;margin:0;line-height:1.5;display:flex}#root{flex-direction:column;width:100%;max-width:768px;min-height:100vh;margin:0 auto;display:flex;position:relative}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary-hover)}button{font-family:var(--font-family)}.glass{background:var(--color-surface-glass);-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff0d}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}.title{margin-bottom:1rem;font-size:2rem}.subtitle{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:1.25rem}.input-base{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);outline:none;padding:12px 16px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.input-base:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #ff2a2a33}.btn{border-radius:var(--radius-full);cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:#2a2a2a;transform:translateY(-2px)}.btn-full{width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s forwards fadeIn}.login-container{justify-content:center;align-items:center;min-height:80vh;display:flex}.login-box{background-color:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:16px;width:100%;max-width:400px;padding:3rem 2rem;box-shadow:0 10px 30px #00000080}.login-box h1{color:var(--color-primary);margin-top:0;margin-bottom:.5rem}.login-subtitle{color:var(--color-text-muted);letter-spacing:2px;text-transform:uppercase;margin-bottom:2rem;font-size:.9rem}.login-error{color:#ff4d4d;background-color:#ff2a2a1a;border:1px solid #ff2a2a4d;border-radius:8px;margin-bottom:1.5rem;padding:10px;font-size:.9rem}.login-form{text-align:left;flex-direction:column;gap:1.5rem;display:flex}.login-btn{width:100%;margin-top:1rem;padding:.8rem;font-size:1.1rem}.login-toggle{color:var(--color-text-muted);margin-top:2rem;font-size:.9rem}.toggle-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-left:5px;padding:0;font-size:.9rem;font-weight:700}.toggle-btn:hover{text-decoration:underline}.app-container{flex-direction:column;width:100%;min-height:100vh;display:flex}.main-content{flex:1;width:100%;padding:20px 20px 80px}.header{z-index:10;justify-content:space-between;align-items:center;padding:20px;display:flex;position:sticky;top:0}.logo{background:linear-gradient(90deg, var(--color-primary), #ff6b6b);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:800}
