/* Preview C branded auth (login, forgot, start). Geist only. No WebGL. */
@font-face{font-family:G;src:url(/assets/fonts/geist.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:GM;src:url(/assets/fonts/geist-mono.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{
  --night:#060608;--night2:#0E0D12;--paper:#FFF5F8;--ink:#0A0A0C;
  --acc:#FF2E88;--acc2:#7FE0D6;--btn:#7FE0D6;--btn-fg:#0A0A0C;--btn-h:#FF2E88;--btn-hfg:#fff;
  --mute:color-mix(in srgb,var(--paper) 62%,transparent);
  --rule:color-mix(in srgb,var(--paper) 16%,transparent);
  --d:G,system-ui,-apple-system,"Segoe UI",sans-serif;
  --m:GM,ui-monospace,monospace;
  --pad:clamp(16px,4vw,40px);
}
html[data-theme=classic]{
  --night:#100F0D;--night2:#191714;--paper:#F4EFE6;--ink:#151310;
  --acc:#B08A4E;--acc2:#E9DCC2;--btn:#E9DCC2;--btn-fg:#151310;--btn-h:#B08A4E;--btn-hfg:#151310;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--night);color:var(--paper);font:400 16px/1.5 var(--d);min-height:100%}
html{-webkit-text-size-adjust:100%}
a{color:var(--paper);text-underline-offset:3px}
a:hover{color:#fff}
em{font-style:normal;color:var(--acc);font-weight:650}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:6px}
.skip{position:fixed;left:12px;top:-80px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:99px;min-height:44px}
.skip:focus{top:12px}
.preview-note{background:color-mix(in srgb,var(--acc2) 18%,transparent);color:var(--paper);padding:10px var(--pad);font-size:14px;text-align:center;border-bottom:1px solid var(--rule)}
.preview-note strong{font-weight:650}
.nv{display:flex;align-items:center;justify-content:space-between;padding:18px var(--pad);position:relative;z-index:5}
.nv__logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:18px;letter-spacing:-.05em;font-weight:350;color:var(--paper)}
.nv__logo b{font-weight:750}
.nv__logo svg{width:32px;height:27px;fill:currentColor}
.nv__in{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:99px;background:var(--btn);color:var(--btn-fg);text-decoration:none;font:550 14px/1 var(--d)}
.nv__in:hover{background:var(--btn-h);color:var(--btn-hfg)}
.wrap{max-width:640px;margin:0 auto;padding:12px var(--pad) 80px;min-height:calc(100vh - 220px)}
.wide{max-width:720px}
h1{font:680 clamp(40px,7vw,72px)/.95 var(--d);letter-spacing:-.065em;margin:8px 0 12px}
.lede,.support{color:var(--mute);max-width:38em;margin:0 0 24px;font-size:17px}
.k,.fld>span,legend{display:block;font:450 14px/1.35 var(--d);letter-spacing:0;text-transform:none;color:var(--mute);margin-bottom:8px}
label.fld{display:block;margin:0 0 16px}
input,textarea,select{width:100%;background:var(--night2);border:1px solid var(--rule);border-radius:14px;padding:14px 16px;min-height:48px;color:var(--paper);font:400 16px/1.4 var(--d)}
textarea{min-height:96px;resize:vertical}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--paper) 40%,transparent)}
input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#E5484D}
.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:0 22px;border:1px solid transparent;border-radius:99px;background:var(--btn);color:var(--btn-fg);font:550 15px/1 var(--d);cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--btn-h);color:var(--btn-hfg)}
.btn:disabled{opacity:.6;cursor:not-allowed}
.btn.ghost{background:transparent;color:var(--paper);border-color:color-mix(in srgb,var(--paper) 35%,transparent)}
.btn.ghost:hover{background:color-mix(in srgb,var(--paper) 10%,transparent);color:var(--paper)}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 4px}
.chk{display:flex;align-items:flex-start;gap:12px;margin:8px 0 20px;font-size:15px;color:var(--mute);cursor:pointer}
.chk input{width:20px;height:20px;min-height:20px;padding:0;flex:0 0 20px;accent-color:var(--acc2);margin-top:2px}
.msg{min-height:1.3em;color:#FF8A8F;font-size:14px;font-weight:500;margin:10px 0}
.msg.ok,.msg[data-ok]{color:var(--acc2)}
.alt{color:var(--mute);font-size:15px;line-height:1.8}
.alt a{color:var(--paper)}
.fine{color:var(--mute);font-size:14px}
.choices{display:grid;gap:8px;border:0;padding:0;margin:0 0 18px;min-width:0}
.choices label{display:flex;gap:12px;align-items:center;border:1px solid var(--rule);border-radius:14px;padding:12px 14px;min-height:48px;background:var(--night2);cursor:pointer}
.choices input{width:20px;height:20px;min-height:20px;padding:0;flex:0 0 20px;accent-color:var(--acc2)}
.budgets{display:grid;gap:10px;margin:8px 0 16px}
.budgets button{text-align:left;background:var(--night2);border:1px solid var(--rule);border-radius:16px;padding:16px 18px;cursor:pointer;color:var(--paper);min-height:64px;font:inherit;width:100%}
.budgets button[aria-pressed=true]{border-color:transparent;background:var(--btn);color:var(--btn-fg)}
.budgets b{font:650 22px/1 var(--d);letter-spacing:-.04em}
.budgets i{font-style:normal;font-family:var(--m);float:right;opacity:.8}
details{margin:8px 0 16px}
summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.switch{margin:0 0 16px;font-size:17px}
button.textlink{background:none;border:0;padding:0;min-height:44px;color:var(--acc2);cursor:pointer;text-decoration:underline;text-underline-offset:3px;font:inherit}
.sum{margin:0 0 16px;font-size:16px}
#signin-options{margin-top:36px;padding-top:28px;border-top:1px solid var(--rule)}
#email-code-options{margin-top:16px}
.ft{border-top:1px solid var(--rule);padding:28px var(--pad) 36px;color:var(--mute);font-size:13px}
.ft__row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
.ft nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.ft a{color:var(--mute);text-decoration:none;display:inline-flex;align-items:center;min-height:32px}
.ft a:hover{color:var(--paper)}
[hidden]{display:none!important}
@media (max-width:700px){
  .ft__row,.ft nav{flex-direction:column;gap:8px}
  .btn,.nv__in{min-height:48px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.alt a,.ft a,button.textlink{display:inline-flex;align-items:center;min-height:44px}
.chk{min-height:44px;align-items:center}
.chk input{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin:0}
.nv__logo{min-height:44px}
#email-code-options summary{min-height:44px}
@media (max-width:700px){
  .ft a{min-height:44px}
  .alt a{min-height:44px}
}

.budgets button{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.budgets b{float:none}
.budgets .pk__scope{display:block;font:400 14px/1.45 var(--d);letter-spacing:0;text-transform:none;font-style:normal;opacity:.9;margin-top:2px;max-width:42em}
.budgets button[aria-pressed=true] .pk__scope{opacity:.85}
