:root{--bg:#f4efe7;--panel:rgba(255,251,245,0.84);--panel-strong:rgba(255,255,255,0.72);--panel-border:rgba(52,40,27,0.08);--text:#17120e;--muted:#72675c;--accent:#16110d;--accent-contrast:#f8f3eb;--line:rgba(30,24,18,0.12);--line-strong:rgba(30,24,18,0.2);--danger:#9e3f34;--shadow:0 30px 80px rgba(38,29,21,0.1),0 8px 24px rgba(38,29,21,0.06)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:radial-gradient(circle at 12% 14%,rgba(202,177,141,.22),transparent 24%),radial-gradient(circle at 86% 80%,rgba(112,88,62,.18),transparent 18%),linear-gradient(180deg,#f8f3eb,#eee4d6);color:var(--text);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif}a{color:inherit}button,input{font:inherit}.shell{min-height:100vh;display:grid;place-items:center;padding:32px}.card{width:min(100%,440px);background:var(--panel);border:1px solid var(--panel-border);border-radius:30px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%);padding:34px 32px 30px;position:relative;overflow:hidden}.card:before{inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9) 20%,rgba(255,255,255,.55) 80%,transparent)}.card:after,.card:before{content:"";position:absolute}.card:after{top:-120px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.38),transparent 66%);pointer-events:none}.brand{margin:0 0 22px;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:10px}.brand:before{content:"";width:26px;height:1px;background:var(--line-strong)}.title{margin:0;font-size:clamp(2.7rem,6vw,4rem);line-height:.92;font-weight:500;letter-spacing:-.04em;text-wrap:balance}.subtitle{margin:12px 0 0;color:var(--muted);font-size:.98rem;max-width:24ch;line-height:1.45}.form-block{margin-top:30px}.switcher{display:inline-flex;gap:6px;padding:4px;border-radius:999px;background:rgba(22,17,13,.045);box-shadow:inset 0 0 0 1px rgba(22,17,13,.04);margin-bottom:22px}.switcher button{border:0;background:transparent;color:var(--muted);padding:10px 15px;border-radius:999px;cursor:pointer;transition:background-color .12s ease,color .12s ease,box-shadow .12s ease}.switcher button[aria-selected=true]{background:rgba(255,255,255,.96);color:var(--text);box-shadow:0 10px 24px rgba(23,20,17,.08),inset 0 0 0 1px rgba(23,20,17,.03)}.form{display:grid;grid-gap:15px;gap:15px}.label-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.92rem}.ghost-link,.label-row label{color:var(--muted)}.ghost-link{background:none;border:0;padding:0;text-decoration:none;cursor:pointer;transition:color .12s ease}.ghost-link:hover,.input{color:var(--text)}.input{width:100%;border:1px solid var(--line);border-radius:18px;padding:16px 17px;background:var(--panel-strong);box-shadow:inset 0 1px 0 rgba(255,255,255,.65);transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,transform .14s ease}.input:focus{outline:none;border-color:rgba(23,20,17,.24);background:rgba(255,255,255,.94);box-shadow:0 0 0 4px rgba(23,20,17,.06),inset 0 1px 0 rgba(255,255,255,.82);transform:translateY(-1px)}.submit{margin-top:6px;border:0;border-radius:18px;padding:16px 18px;background:linear-gradient(180deg,rgba(45,35,25,.98),rgba(17,13,10,1));color:var(--accent-contrast);cursor:pointer;box-shadow:0 14px 30px rgba(22,17,13,.18),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 34px rgba(22,17,13,.2),inset 0 1px 0 rgba(255,255,255,.08)}.ghost-link:disabled,.submit:disabled,.switcher button:disabled{opacity:.55;cursor:not-allowed}.note{margin:8px 0 0;color:var(--muted);font-size:.84rem}.status{min-height:24px;margin-top:16px;font-size:.9rem;line-height:1.45}.status-error{color:var(--danger)}.status-ok{color:var(--muted)}.stack{display:grid;grid-gap:14px;gap:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:640px){.shell{padding:16px}.card{padding:24px;border-radius:22px}.title{font-size:2.8rem}}