/* Shared look for the sign-in, reset, legal and admin pages. */
:root{--ink:#2B2340;--paper:#FFFAF0;--line:rgba(43,35,64,.16);--gold:#E9A93B;--accent:#5B4BA8;--soft:rgba(43,35,64,.06)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{font-family:"Nunito Sans",system-ui,sans-serif;color:var(--ink);background:linear-gradient(#6E5AA8 0%,#B06A9A 38%,#F2A27A 70%,#FFE0B0 100%) fixed;min-height:100vh;padding:calc(env(safe-area-inset-top,0px) + 32px) 6vw calc(env(safe-area-inset-bottom,0px) + 32px)}
body.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,440px);gap:40px;align-items:center}
.pitch{color:#FFFAF0}
.pitch h1{font-family:Marcellus,serif;font-weight:400;font-size:clamp(46px,7vw,84px);line-height:1;margin:0 0 18px}
.pitch p{font-size:clamp(17px,1.6vw,20px);line-height:1.5;max-width:30em;margin:0 0 12px}
.pitch svg{width:min(420px,80%);height:auto;margin-top:18px;display:block}
.card{background:var(--paper);border-radius:22px;padding:26px;box-shadow:0 18px 50px rgba(30,14,50,.35)}
.card.solo{max-width:460px;margin:6vh auto 0}
.card.doc{max-width:760px;margin:0 auto;line-height:1.6;font-size:16px}
.card h1,.card h2{font-family:Marcellus,serif;font-weight:400;margin:0 0 6px}
.card h1{font-size:34px}.card h2{font-size:24px}
.doc h2{margin-top:28px}.doc p,.doc li{max-width:68ch}
.card p.lead{margin:0 0 14px;font-size:14.5px;opacity:.8;line-height:1.45}
form{display:grid;gap:12px}
label{display:grid;gap:5px;font-size:13.5px;font-weight:600}
label.check{display:flex;gap:8px;align-items:flex-start;font-weight:400;line-height:1.4}
label.check input{width:auto;margin-top:3px}
input,select,textarea{font:inherit;border:1.5px solid var(--line);background:var(--soft);border-radius:12px;padding:11px 13px;font-size:16px;color:inherit;width:100%}
button{font:inherit;cursor:pointer}
.primary{border:0;background:var(--accent);color:#fff;border-radius:12px;padding:13px;font-weight:700;font-size:16px}
.primary:disabled{opacity:.6}
.danger{border:1.5px solid #B5362E;background:transparent;color:#B5362E;border-radius:12px;padding:12px;font-weight:700}
.ghost{border:1.5px solid var(--line);background:transparent;border-radius:12px;padding:10px 14px;font-weight:700;color:inherit}
.switch{border:0;background:none;color:var(--accent);font-weight:700;padding:0;font-size:14.5px;margin-top:14px;display:block;text-align:left}
a{color:var(--accent);font-weight:700}
input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.err{color:#B5362E;font-weight:700;font-size:14px;min-height:20px;margin:0}
.note{background:var(--soft);border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45}
.code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:17px;letter-spacing:.04em;background:#2B2340;color:#FFE9B8;border-radius:12px;padding:14px;text-align:center;line-height:1.7;word-spacing:.1em;user-select:all;overflow-wrap:anywhere}
small{font-weight:400;opacity:.72}
.foot{margin-top:16px;font-size:13px;opacity:.85}
.foot a{font-weight:600}
[hidden]{display:none!important}
table{width:100%;border-collapse:collapse;font-size:14.5px}th,td{text-align:left;padding:8px 6px;border-top:1px solid var(--line);vertical-align:top}
@media (max-width:820px){body.split{grid-template-columns:1fr;gap:24px;align-items:start}.pitch svg{display:none}}
