:root { color-scheme:light; }
.auth-page { color:#193e3a; background:#eef8f5; background-image:radial-gradient(ellipse at 15% 15%,#d8f2e8,transparent 55%),linear-gradient(135deg,#f5fcfa,#e4f4ed); background-attachment:fixed; }
.auth-page .ambient-background { display:none; }
.auth-shell { grid-template-columns:minmax(0,1.05fr) minmax(420px,.72fr); gap:28px; max-width:1440px; margin:auto; padding:32px; }
.auth-story { padding:clamp(24px,5vw,80px); }
.auth-story::after { display:none; }
.auth-brand { display:flex; align-items:center; gap:12px; color:#174b43; text-decoration:none; letter-spacing:.03em; }
.auth-brand img { width:56px; height:56px; object-fit:contain; }
.auth-story .eyebrow { margin-top:48px; color:#467b70; letter-spacing:.12em; }
.auth-story h1 { font-size:clamp(38px,4vw,64px); line-height:1.35; letter-spacing:-.03em; }
.auth-story h1 em { margin:8px 0 0; font-size:.65em; color:#247b6b; text-shadow:none; }
.auth-story .auth-copy,.auth-note { color:#4f7069; font-size:14px; line-height:1.8; }
.auth-points span { color:#305f54; border-color:#c2e2d7; background:#f7fffb; font:inherit; font-size:13px; }
.auth-note { margin-top:32px; }
.auth-card { width:min(440px,100%); padding:32px; background:rgba(255,255,255,.94); border-color:#c7e3d9; box-shadow:0 20px 60px #174b4314; }
.auth-card-icon { display:grid; place-items:center; width:48px; height:48px; margin-bottom:16px; border-radius:14px; color:#147866; background:#e0f5ed; font-size:24px; }
.auth-card-head small { color:#4c776d; }
.auth-card-head p,.auth-card .auth-terms { color:#56746c; font-size:13px; line-height:1.6; }
.auth-tabs { background:#edf7f2; }
.auth-tabs button { color:#466e62; }
.auth-tabs button.active { color:#fff; background:#237e6b; }
.auth-form label { color:#284f44; font-size:14px; }
.auth-form label[hidden] { display:none; }
.auth-form input { color:#193e3a; background:#fbfffd; border-color:#bddbd0; }
.auth-form input::placeholder { color:#718a81; }
.auth-form input:focus { border-color:#237e6b; box-shadow:0 0 0 3px #237e6b20; }
.auth-input { position:relative; }
.auth-input > i { position:absolute; left:14px; top:22px; color:#52796d; }
.auth-input input { padding-left:40px; }
.auth-submit { display:flex; align-items:center; justify-content:space-between; color:#fff; background:#237e6b; padding:12px 18px; }
.auth-submit:hover { background:#196652; }
.auth-submit:disabled { opacity:.6; cursor:wait; }
.auth-card .auth-error { color:#ad302c; min-height:20px; margin:14px 0; overflow-wrap:anywhere; }
.auth-page button:focus-visible,.auth-page a:focus-visible { outline:3px solid #237e6b; outline-offset:3px; }
@media (max-width: 820px) { .auth-shell { display:flex; flex-direction:column; gap:20px; padding:24px 16px; } .auth-story { padding:8px; } .auth-story .eyebrow { margin-top:20px; } .auth-story h1 { font-size:38px; } .auth-note { margin-top:16px; } .auth-card { align-self:center; padding:24px; } }

.auth-page .auth-card { animation:none; backdrop-filter:none; }
.auth-page .auth-card::before,.auth-page .auth-card::after { display:none; }
.auth-page .auth-copy,.auth-page button { text-shadow:none; }
