.auth-shell{background:var(--bg-canvas);justify-content:center;align-items:center;min-height:100vh;padding:48px 24px;display:flex}.auth-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;gap:16px;width:100%;max-width:360px;padding:28px 28px 26px;display:flex}.auth-card .wordmark{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.auth-card h2{letter-spacing:-.005em;margin:0;font-size:18px;font-weight:500}.auth-card .lede{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.field input[type=email],.field input[type=password],.field input[type=text],.field input[type=number]{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-md);height:38px;color:var(--text-primary);outline:none;padding:0 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.field input::placeholder{color:var(--text-muted)}.field input:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px var(--focus-ring)}.field input:disabled{opacity:.5;cursor:not-allowed}.field input[readonly]{opacity:.7}.field.invalid input{border-color:var(--accent-red)}.error-slot{border-radius:var(--radius-md);background:var(--accent-red-soft);color:var(--accent-red-text);border:1px solid #ff535347;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;line-height:1.5;display:none}.error-slot.show{display:flex}.error-slot .glyph{background:var(--accent-red);border-radius:50%;flex:none;width:6px;height:6px;margin-top:6px}.error-slot .body{color:var(--text-primary)}.error-slot .body strong{color:var(--accent-red-text);font-weight:500}.auth-btn{border-radius:var(--radius-pill);background:var(--btn-primary-bg);height:40px;color:var(--btn-primary-text);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;font-family:inherit;font-size:14px;font-weight:500;display:inline-flex}.auth-btn[disabled]{opacity:.6;cursor:not-allowed}.auth-btn .spinner{border:2px solid var(--tint-3);border-top-color:var(--btn-primary-text);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.auth-btn .spinner{animation:none}}.aux-link{text-align:center;color:var(--text-secondary);margin-top:2px;font-size:12px}.aux-link a{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline}.aux-link a:hover{opacity:.85}.aux-link a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:2px}.auth-card .deferred-note{color:var(--text-muted);margin-top:-4px;font-size:11px;font-style:italic;line-height:1.5}.auth-card .resend-row{color:var(--text-muted);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:10px;font-size:12px;display:flex}.auth-card .resend-row button{font:inherit;color:var(--text-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.auth-card .resend-row button[disabled]{color:var(--text-muted);cursor:not-allowed;text-decoration:none}.auth-card .resend-cooldown{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.auth-card .resend-cooldown strong{color:var(--text-secondary);font-weight:500}.auth-card .confirm-mark{background:var(--accent-blue-soft);width:36px;height:36px;color:var(--accent-blue);border:1px solid #5acedb59;border-radius:50%;justify-content:center;align-items:center;margin:6px 0 4px;display:inline-flex}