.login-container{background:#f8fafc radial-gradient(circle,#fff 0%,#f1f5f9 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.login-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:420px;padding:3rem;animation:.5s ease-out fadeIn;box-shadow:0 20px 25px -5px #0000000d,0 8px 10px -6px #00000003}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.login-logo{object-fit:contain;border-radius:12px;width:80px;height:80px;margin-bottom:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.login-card h2{color:#0f172a;letter-spacing:-.5px;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.login-card p{color:#64748b;margin-bottom:2rem;font-size:.95rem;line-height:1.5}.login-form{flex-direction:column;gap:1.25rem;display:flex}.login-input{color:#0f172a;text-align:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:1rem;font-size:1rem;transition:all .2s}.login-input::placeholder{color:#94a3b8}.login-input:focus{background:#fff;border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.login-error{color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:.75rem;font-size:.875rem;font-weight:500}.login-button{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;margin-top:.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.login-button:hover{background:#1e293b;transform:translateY(-1px)}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}
