.au{--ink:#14302f;--muted:#4f6663;--bg:#eef5f2;--line:#c9dad4;--brand:#0f6b61;--brand-d:#0b524a;--sun:#ffb627;--bad:#b3261e;
 background:var(--bg);color:var(--ink);line-height:1.5;min-height:calc(100vh - 64px);display:flex;justify-content:center;align-items:flex-start;padding:clamp(24px,7vw,80px) 16px}
.au *{box-sizing:border-box}
.au-card{width:100%;max-width:420px;background:#fff;border:1px solid #d8e5e0;border-radius:24px;padding:clamp(22px,5vw,36px);box-shadow:0 12px 34px rgba(15,60,55,.09)}
.au-card h1{font-size:clamp(1.5rem,5vw,1.9rem);line-height:1.15;letter-spacing:-.01em;margin:0 0 6px}
.au-sub{margin:0 0 22px;color:var(--muted);font-size:.98rem}
.au-err{background:#fdecea;color:var(--bad);border:1px solid #f3c2bd;border-radius:12px;padding:10px 14px;margin:0 0 18px;font-size:.95rem}
.au-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:16px 0 6px}
.au label{display:block;font-weight:600;font-size:.95rem}
.au-row label{margin:0}
.au input{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;margin:6px 0 0}
.au-row + .au-pw input{margin-top:0}
.au input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(255,182,39,.55)}
.au-hint{display:block;margin-top:6px;font-size:.85rem;color:var(--muted)}
.au-pw{position:relative}
.au-pw input{padding-right:78px}
.au-show{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--brand);font:inherit;font-size:.9rem;font-weight:600;padding:8px 10px;cursor:pointer;border-radius:8px}
.au-card .au-btn{display:block;width:100%;margin-top:24px;background:var(--brand);color:#fff;font:inherit;font-weight:700;border:0;border-radius:999px;padding:14px 20px;cursor:pointer;box-shadow:0 5px 0 var(--brand-d);transition:transform .12s,box-shadow .12s}
.au-card .au-btn:hover{transform:translateY(2px);box-shadow:0 3px 0 var(--brand-d)}
.au-card .au-btn:active{transform:translateY(5px);box-shadow:0 0 0 var(--brand-d)}
.au-foot{margin:22px 0 0;text-align:center;color:var(--muted);font-size:.95rem}
.au a{color:var(--brand);font-weight:600;text-underline-offset:3px}
.au a:focus-visible,.au-show:focus-visible,.au-btn:focus-visible{outline:3px solid var(--sun);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.au-card .au-btn{transition:none}}
