.auth-route .auth-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper2);padding:24px;gap:20px}.auth-route .auth-brand{text-decoration:none;color:var(--ink)}.auth-route .auth-logo-name{font-family:var(--font-display);font-weight:800;font-size:1.35rem;letter-spacing:-.04em;color:var(--ink)}.auth-route .auth-card{background:white;border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;width:100%;max-width:420px;box-shadow:var(--shadow-soft)}.auth-route .auth-header{text-align:center;margin-bottom:28px}.auth-route .auth-title{font-family:var(--font-display);font-size:1.75rem;font-weight:800;letter-spacing:-.04em;color:var(--ink);margin-bottom:8px}.auth-route .auth-sub{color:var(--muted2);font-size:.9rem;line-height:1.5}.auth-route .btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;height:46px;border:1px solid var(--border);border-radius:var(--radius-sm);background:white;color:var(--ink);font-weight:700;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s}.auth-route .btn-google:hover:not(:disabled){background:var(--paper2);border-color:#c5d4dc}.auth-route .btn-google:disabled{opacity:.5;cursor:not-allowed}.auth-route .auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:.82rem}.auth-route .auth-divider:after,.auth-route .auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth-route .auth-divider span{font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.auth-route .auth-form{display:flex;flex-direction:column;gap:16px}.auth-route .form-field{display:flex;flex-direction:column;gap:6px}.auth-route .form-field .auth-label,.auth-route .form-field label{display:flex;align-items:center;justify-content:space-between;font-size:.84rem;font-weight:700;color:var(--ink)}.auth-route .auth-label-row{flex-wrap:wrap;gap:8px}.auth-route .form-field-link{font-weight:600;color:var(--green);font-size:.8rem}.auth-route .form-field-link:hover{text-decoration:underline}.auth-route .form-field .auth-input,.auth-route .form-field input{height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 14px;font-size:.9rem;color:var(--ink);background:white;transition:border-color .15s,box-shadow .15s;width:100%;outline:none}.auth-route .form-field .auth-input:focus,.auth-route .form-field input:focus{outline:none;border-color:var(--green2);box-shadow:0 0 0 3px rgba(82,183,136,.15)}.auth-route .form-field .auth-input::placeholder,.auth-route .form-field input::placeholder{color:var(--muted)}.auth-route .auth-error{background:#fef2f2;border:1px solid rgba(239,68,68,.35);border-radius:var(--radius-sm);padding:10px 14px;font-size:.84rem;color:#b91c1c}.auth-route .auth-footer-note{text-align:center;font-size:.84rem;color:var(--muted2);margin-top:20px}.auth-route .auth-footer-note a{color:var(--green);font-weight:700}.auth-route .auth-footer-note a:hover{text-decoration:underline}.auth-route .auth-legal-note{font-size:.76rem;color:var(--muted);text-align:center;line-height:1.5}.auth-route .auth-legal-note a{color:var(--green);font-weight:700}.auth-route .auth-legal-note a:hover{text-decoration:underline}.auth-route .auth-success{text-align:center;padding:20px 0;margin:0;background:transparent;border:none;color:inherit}.auth-route .auth-success-icon{font-size:2.5rem;margin-bottom:16px;line-height:1}.auth-route .auth-success h2{font-family:var(--font-display);font-size:1.4rem;font-weight:800;margin-bottom:12px;color:var(--ink)}.auth-route .auth-success p{color:var(--muted2);line-height:1.6}.auth-route .auth-success strong{color:var(--ink)}.auth-route .auth-tagline{color:var(--muted2);font-size:.75rem;margin:0;text-align:center;max-width:360px;line-height:1.5}@media (max-width:480px){.auth-route .auth-page{padding:20px 16px}.auth-route .auth-card{padding:28px 22px}}