@font-face { font-family: Inter; src: url('Inter-Latin.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
:root { color-scheme: dark; --ink:#f5f5f5; --muted:#b4b4b8; --line:#303033; --ground:#0b0b0c; --selected:#e5e5ea; }
* { box-sizing:border-box; }
html { scrollbar-gutter:stable; background:#05010a; }
html[data-redirecting] body { visibility:hidden; }
body { margin:0; min-height:100dvh; font:15px/1.5 Inter,sans-serif; letter-spacing:-.025em; color:var(--ink); overflow-anchor:none; }
h1,h2,h3,p,dl,dd { margin:0; } h1 { font-weight:550; line-height:1.3; }
button,input,select { font:inherit; } button { color:inherit; cursor:pointer; } button:disabled { opacity:.6; }
button,a { touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible { outline:2px solid var(--selected); outline-offset:5px; }
[data-step-heading]:focus,h1:focus { outline:none; }
::selection { color:#111; background:var(--selected); }
::-webkit-scrollbar { width:9px; } ::-webkit-scrollbar-track { background:#0b0b0c; } ::-webkit-scrollbar-thumb { background:#45454b; border:2px solid #0b0b0c; border-radius:6px; }
.icon { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; vertical-align:middle; }
.icons { position:absolute; width:0; height:0; overflow:hidden; }
#backdrop { position:fixed; z-index:-2; inset:0; width:100%; height:100%; opacity:.66; pointer-events:none; }
.shade { position:fixed; z-index:-1; inset:0; pointer-events:none; background:linear-gradient(180deg,transparent 20%,#05010a99 72%,#05010a 100%); }
.setup-page { max-width:844px; padding:34px 24px 60px; margin:auto; }
.setup-brand { display:flex; align-items:center; gap:9px; font-size:17px; font-weight:600; margin:0 0 28px 4px; }
.setup-brand img { width:150px; height:auto; object-fit:contain; }
.setup-frame { background:var(--ground); border:1px solid #85858b; border-radius:20px; box-shadow:0 0 16px #eeeeff29,0 0 48px #eeeeff1a,0 0 96px #eeeeff0d; overflow:clip; }
.setup-content { display:flow-root; padding:36px 42px; }
.setup-footer { display:flex; gap:16px; justify-content:space-between; align-items:start; margin:22px 4px 0; color:var(--muted); font-size:12px; }
.setup-footer p { max-width:54ch; } .setup-footer label { display:flex; gap:8px; min-height:44px; align-items:center; flex-shrink:0; }
.setup-footer a { color:inherit; text-underline-offset:4px; display:inline-flex; align-items:center; min-height:44px; }
.action[aria-busy="true"]::after,.receipt[aria-busy="true"]::after { content:""; width:16px; height:16px; flex-shrink:0; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:application-spin .8s linear infinite; }
@keyframes application-spin { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .action[aria-busy="true"]::after,.receipt[aria-busy="true"]::after { animation:none; } }
input { caret-color:var(--ink); } input[type=checkbox] { accent-color:var(--selected); }
.action { display:inline-flex; gap:16px; align-items:center; justify-content:center; padding:12px 22px; min-height:46px; border:1px solid transparent; border-radius:999px; background:var(--selected); color:#171719; font-weight:600; font-size:14px; transition:background-color 180ms ease; }
.action:hover:enabled { background:#fff; } .action .icon { width:18px; height:18px; }
.receipt { display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:9px 14px; border:1px solid #606067; border-radius:999px; background:transparent; font-size:13px; }
.receipt:hover { background:#252529; } .receipt .icon { width:17px; height:17px; }
.on-summary dd { overflow-wrap:anywhere; } .on-summary dt { color:var(--muted); }
.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:767px) { .setup-page { padding:24px 16px 36px; } .setup-brand { margin-bottom:22px; } .setup-content { padding:26px 22px; } .setup-frame { border-radius:16px; } .setup-footer { flex-direction:column; gap:8px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
