@font-face{font-family:"Geist";src:url(/fonts/geist.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Geist Mono";src:url(/fonts/geistmono.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--night:#060708;--raise:#0C0E11;--raise2:#13161B;--line:#1C1F26;--line2:#2A2E37;--paper:#F2F3F5;--mist:#A3A8B3;--dim:#7D838F;--ice:#5FE4F2;--rose:#FF4F78;--ease-out:cubic-bezier(.23,1,.32,1);color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{background:var(--night)}
body{margin:0;min-height:100vh;min-height:100dvh;background:var(--night);color:var(--paper);font-family:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column}
body::before{content:"";position:fixed;inset:-20% -10% auto;height:70vh;background:radial-gradient(50% 60% at 50% 0%,rgba(39,195,232,.13),transparent 70%);pointer-events:none;z-index:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--ice);outline-offset:3px}
::selection{background:rgba(95,228,242,.28)}
.top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px clamp(16px,4vw,40px)}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--paper)}
.brand svg{width:22px;height:22px;color:var(--ice)}
.brand b{font-weight:700;letter-spacing:.24em;font-size:14px}
.top a.quiet{color:var(--mist);text-decoration:none;font-size:14px}
@media (hover:hover) and (pointer:fine){.top a.quiet:hover{color:var(--paper)}}
main{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;padding:clamp(24px,8vh,96px) 16px 64px}
.card{width:min(440px,100%);background:var(--raise);border:1px solid var(--line2);border-radius:20px;padding:clamp(22px,4vw,32px);box-shadow:0 30px 80px -30px rgba(0,0,0,.8)}
.card h1{font-size:clamp(24px,4vw,30px);line-height:1.15;letter-spacing:-.02em;margin:0 0 10px;font-weight:600;text-wrap:balance}
.card p{margin:0 0 14px;color:var(--mist);font-size:15px;text-wrap:pretty}
.card p b{color:var(--paper);font-weight:500}
label{display:block;font-size:13px;color:var(--mist);margin:18px 0 8px}
input[type=email]{width:100%;height:50px;border-radius:12px;border:1px solid var(--line2);background:var(--night);color:var(--paper);font:inherit;font-size:16px;padding:0 14px;transition:border-color .16s ease}
input[type=email]:focus{border-color:rgba(95,228,242,.6);outline:none}
.btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;margin-top:14px;border:0;border-radius:999px;background:var(--paper);color:#060708;font:600 15px/1 "Geist",sans-serif;text-decoration:none;cursor:pointer;transition:transform .14s var(--ease-out),box-shadow .2s ease,opacity .2s ease}
.btn:active{transform:scale(.97)}
.btn[disabled]{opacity:.55;cursor:default}
@media (hover:hover) and (pointer:fine){.btn:not([disabled]):hover{box-shadow:0 0 0 1px rgba(95,228,242,.55),0 12px 44px -12px rgba(95,228,242,.6)}}
.btn.ghost{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px var(--line2)}
.note{margin-top:16px;padding:12px 14px;border-radius:12px;font-size:14px;color:var(--mist);background:var(--raise2);border:1px solid var(--line2)}
.note.ok{border-color:rgba(95,228,242,.35);color:var(--paper)}
.note.bad{border-color:rgba(255,79,120,.45);background:rgba(255,79,120,.06);color:var(--paper)}
.small{font-size:13px;color:var(--dim);margin-top:18px}
.small a{color:var(--mist)}
.status{display:flex;align-items:center;gap:12px;margin:18px 0 4px;font-size:14px;color:var(--mist)}
.pulse{width:10px;height:10px;border-radius:50%;background:var(--ice);box-shadow:0 0 0 0 rgba(95,228,242,.6);animation:pulse 1.6s var(--ease-out) infinite;flex:none}
.pulse.done{animation:none;box-shadow:0 0 12px var(--ice)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(95,228,242,.55)}100%{box-shadow:0 0 0 14px rgba(95,228,242,0)}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none}}
.legal{width:min(720px,100%)}
.legal h1{font-size:clamp(30px,5vw,44px);letter-spacing:-.025em;line-height:1.1;margin:0 0 6px;font-weight:600}
.legal .upd{color:var(--dim);font-size:14px;margin:0 0 36px;font-family:"Geist Mono",ui-monospace,monospace}
.legal h2{font-size:19px;margin:36px 0 10px;font-weight:600;letter-spacing:-.01em}
.legal p,.legal li{color:var(--mist);font-size:16px;text-wrap:pretty}
.legal p b,.legal li b{color:var(--paper);font-weight:500}
.legal ul{padding-left:20px}
.legal li{margin:6px 0}
.legal a{color:var(--paper);text-decoration-color:rgba(95,228,242,.5);text-underline-offset:3px}
.legal .box{border:1px solid var(--line2);background:var(--raise);border-radius:16px;padding:18px 20px;margin:24px 0}
.legal .box p{margin:0;color:var(--paper)}
footer{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;padding:28px 16px calc(28px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);font-size:13px;color:var(--dim)}
footer a{color:var(--mist);text-decoration:none}
@media (hover:hover) and (pointer:fine){footer a:hover{color:var(--paper)}}
