.auth-page{background-color:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background:radial-gradient(circle at 30% 40%,var(--accent-glow)0%,transparent 50%);pointer-events:none;width:200%;height:200%;animation:8s ease-in-out infinite alternate ambientPulse;position:absolute;top:-50%;left:-50%}@keyframes ambientPulse{0%{opacity:.6;transform:translate(0)scale(1)}to{opacity:1;transform:translate(5%,3%)scale(1.05)}}.auth-container{z-index:1;width:100%;max-width:440px;position:relative}.auth-brand{text-align:center;margin-bottom:2.5rem}.auth-brand-logo{object-fit:contain;width:80px;height:80px;margin:0 auto 1.25rem}.auth-brand-name{letter-spacing:-1px;color:var(--text-primary);font-size:2rem;font-weight:800}.auth-brand-tagline{color:var(--text-tertiary);margin-top:.35rem;font-size:.9rem;font-weight:400}.auth-card{background-color:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);transition:box-shadow var(--transition-normal);padding:2.5rem 2rem}.auth-card:hover{box-shadow:var(--card-shadow-hover)}.auth-card-title{color:var(--text-primary);margin-bottom:.35rem;font-size:1.35rem;font-weight:700}.auth-card-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.875rem}.auth-form{flex-direction:column;gap:1.25rem;display:flex}.auth-field{flex-direction:column;gap:.4rem;display:flex}.auth-field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600}.auth-field input{background-color:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);transition:all var(--transition-fast);padding:.85rem 1rem;font-size:.95rem}.auth-field input:focus{border-color:var(--border-focus);box-shadow:var(--input-focus-ring)}.auth-field input::placeholder{color:var(--text-muted)}.auth-field.has-error input{border-color:var(--status-error)}.auth-field-error{color:var(--status-error);margin-top:.15rem;font-size:.75rem}.auth-field-password{position:relative}.auth-field-password input{padding-right:3rem}.auth-password-toggle{color:var(--text-muted);transition:color var(--transition-fast);justify-content:center;align-items:center;padding:.25rem;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.auth-password-toggle:hover{color:var(--text-secondary)}.auth-btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);transition:all var(--transition-fast);border:none;margin-top:.5rem;padding:.9rem 1.5rem;font-size:.95rem;font-weight:600;position:relative;overflow:hidden}.auth-btn-primary:hover:not(:disabled){background-color:var(--btn-primary-hover);transform:translateY(-1px)}.auth-btn-primary:active:not(:disabled){transform:translateY(0)}.auth-btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-btn-primary .spinner{border:2px solid var(--btn-primary-text);vertical-align:middle;border-top-color:#0000;border-radius:50%;width:18px;height:18px;margin-right:.5rem;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.auth-extras{justify-content:space-between;align-items:center;margin-top:-.25rem;display:flex}.auth-link{color:var(--text-tertiary);transition:color var(--transition-fast);font-size:.8rem;font-weight:500}.auth-link:hover{color:var(--text-primary)}.auth-checkbox{cursor:pointer;align-items:center;gap:.5rem;display:flex}.auth-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer}.auth-checkbox span{color:var(--text-tertiary);font-size:.8rem;font-weight:500}.auth-divider{align-items:center;gap:1rem;margin:.5rem 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background-color:var(--border-primary);flex:1;height:1px}.auth-divider span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:500}.auth-footer{text-align:center;margin-top:2rem}.auth-footer p{color:var(--text-tertiary);font-size:.85rem}.auth-footer a{color:var(--text-primary);transition:opacity var(--transition-fast);font-weight:600}.auth-footer a:hover{opacity:.7}.auth-alert{border-left:3px solid;padding:.85rem 1rem;font-size:.85rem;font-weight:500;animation:.2s ease-out slideDown}.auth-alert.error{border-color:var(--status-error);color:var(--status-error);background-color:#ef444414}.auth-alert.success{border-color:var(--status-success);color:var(--status-success);background-color:#4ade8014}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-mfa-code{justify-content:center;gap:.5rem;display:flex}.auth-mfa-code input{text-align:center;background-color:var(--input-bg);border:1px solid var(--input-border);width:48px;height:56px;color:var(--text-primary);transition:all var(--transition-fast);font-size:1.5rem;font-weight:700}.auth-mfa-code input:focus{border-color:var(--border-focus);box-shadow:var(--input-focus-ring)}.password-requirements{margin-top:-.5rem}.password-strength-bar{background-color:var(--border-primary);border-radius:2px;height:3px;margin-bottom:.75rem;overflow:hidden}.password-strength-fill{height:100%;transition:all var(--transition-normal);border-radius:2px}.password-checks{grid-template-columns:1fr 1fr;gap:.25rem 1rem;display:grid}.password-checks li{transition:color var(--transition-fast);font-size:.7rem;font-weight:500}.password-checks li.check-pass{color:var(--status-success)}.password-checks li.check-fail{color:var(--text-muted)}@media (max-width:640px){.auth-card{padding:2rem 1.5rem}.auth-brand-name{font-size:1.75rem}.auth-brand-logo{width:64px;height:64px}.auth-card-title{font-size:1.2rem}.auth-mfa-code input{width:40px;height:48px;font-size:1.25rem}}
