.auth-page{min-height:100dvh;flex-direction:column;justify-content:center;padding:24px 16px}.auth-logo,.auth-page{display:flex;align-items:center}.auth-logo{gap:8px;font-family:DM Sans,system-ui,sans-serif;font-size:26px;font-weight:700;color:var(--cream);text-decoration:none;margin-bottom:32px}.auth-logo .logo-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#2659cf,#112e7a);color:#fff;font-size:18px;font-weight:800}.auth-logo .logo-mark.logo-mark-image{border-radius:0;background:transparent;color:inherit;overflow:hidden}.auth-logo .logo-mark-img{display:block;width:100%;height:100%;transform:scale(1.85)}.auth-logo em{font-style:italic;color:var(--amber)}.auth-card{width:100%;max-width:420px;background:var(--surface);border-radius:16px;padding:36px 32px;box-shadow:0 1px 3px rgba(14,24,48,.06),0 8px 24px -8px rgba(14,24,48,.1)}.auth-title{font-family:Playfair Display,Georgia,serif;font-size:22px;font-weight:600;color:var(--cream);margin:0 0 6px}.auth-subtitle{font-size:14px;color:var(--mute);margin:0 0 24px}.auth-field{margin-bottom:18px}.auth-field label{display:block;font-size:13px;font-weight:600;color:var(--cream);margin-bottom:6px}.auth-field input{width:100%;padding:10px 14px;font-size:14.5px;font-family:inherit;color:var(--cream);background:var(--surface-2);border:1.5px solid var(--line-strong);border-radius:10px;outline:none;transition:border-color .15s}.auth-field input::placeholder{color:var(--mute)}.auth-field input:focus{border-color:var(--amber);box-shadow:0 0 0 3px rgba(31,78,189,.1)}.auth-field-error input{border-color:#c0392b}.auth-field-hint{font-size:12px;color:var(--mute);margin-top:4px}.auth-field-msg{font-size:12.5px;color:#c0392b;margin-top:4px}.auth-error{background:rgba(192,57,43,.08);border:1px solid rgba(192,57,43,.2);border-radius:10px;padding:10px 14px;font-size:13.5px;color:#c0392b;margin-bottom:18px}.oauth-buttons{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;font-size:14px;font-weight:600;font-family:inherit;color:var(--cream);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:10px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.oauth-btn:hover{background:var(--surface-2);border-color:rgba(14,24,48,.28)}.oauth-btn svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:14px;margin-bottom:20px}.auth-divider:after,.auth-divider:before{content:"";flex:1;height:1px;background:var(--line-strong)}.auth-divider span{font-size:12.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.06em}.auth-submit{width:100%;padding:12px;font-size:15px;font-weight:700;font-family:inherit;color:#fff;background:linear-gradient(135deg,#2659cf,#112e7a);border:none;border-radius:10px;cursor:pointer;transition:opacity .15s;margin-top:6px}.auth-submit:hover{opacity:.92}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-footer{text-align:center;font-size:13.5px;color:var(--mute);margin-top:20px}.auth-footer a{color:var(--amber);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media (max-width:480px){.auth-card{padding:28px 20px;border-radius:12px}.auth-title{font-size:20px}}