.auth-page{min-height:calc(100vh - var(--header-height));display:flex;align-items:center;justify-content:center;position:relative;padding:var(--space-xl);overflow:hidden}.auth-bg{position:absolute;inset:0;pointer-events:none}.auth-orb{position:absolute;border-radius:50%;filter:blur(80px);animation:float 12s ease-in-out infinite}.auth-orb-1{width:400px;height:400px;background:rgba(168,216,216,.15);top:-10%;right:-5%}.auth-orb-2{width:300px;height:300px;background:rgba(245,239,230,.3);bottom:-5%;left:-5%;animation-delay:4s}.auth-container{position:relative;z-index:1;width:100%;max-width:440px}.auth-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--space-2xl);box-shadow:var(--shadow-lg)}.auth-header{text-align:center;margin-bottom:var(--space-xl)}.auth-title{font-family:var(--font-serif);font-size:var(--font-size-2xl);font-weight:400;letter-spacing:.04em;margin-bottom:var(--space-xs)}.auth-subtitle{color:var(--text-muted)}.auth-error,.auth-subtitle{font-size:var(--font-size-sm)}.auth-error{background:rgba(217,107,107,.08);border:1px solid rgba(217,107,107,.2);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);color:var(--danger);margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--space-md)}.auth-form .form-group{margin-bottom:0}.auth-form label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xs);letter-spacing:.02em}.auth-submit{width:100%;margin-top:var(--space-sm)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.auth-footer p{font-size:var(--font-size-sm);color:var(--text-muted)}.auth-footer a{color:var(--accent-primary);font-weight:500}.auth-footer a:hover{color:var(--accent-secondary)}@media (max-width:480px){.auth-card{padding:var(--space-lg)}}.password-wrapper{position:relative}.password-wrapper input{padding-right:44px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color .2s}.password-toggle:hover{color:var(--text-primary)}.password-toggle .material-symbols-outlined{font-size:20px}