:root{--card:#1d1d1f;--line:#2c2c2e;--mute:#a1a1a6;--blue:#276ef1;--green:#06c167;--red:#ff5a4f}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:#000;color:#fff;font:16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
button,input{font:inherit;color:inherit}.hide{display:none!important}
.hero{padding:calc(env(safe-area-inset-top) + 18px) 18px 22px;background:radial-gradient(120% 90% at 100% 0,#1b3b8a 0,#0b1530 40%,#000 75%)}
.brandpill{display:inline-block;background:#000;border:1px solid #333;border-radius:999px;padding:8px 14px;font-weight:800;font-size:15px}
.hero h1{font-size:38px;line-height:1.02;letter-spacing:-.03em;margin:22px 0 10px}
.hero p{color:#cfd3dc;margin:0 0 16px}
.steps{display:flex;gap:6px;flex-wrap:wrap}.steps span{background:rgba(255,255,255,.1);border-radius:999px;padding:6px 10px;font-size:13px;font-weight:600}
.wrap{max-width:560px;margin:0 auto;padding:14px 14px calc(env(safe-area-inset-bottom) + 30px)}
.card{background:#121212;border:1px solid #222;border-radius:18px;padding:16px;margin:0 0 12px}
.card h2{font-size:20px;margin:0 0 6px;letter-spacing:-.01em}
label{display:block;font-weight:600;font-size:14px;margin:12px 0 6px;color:#e5e5ea}
input[type=text],input:not([type]),input[type=tel],input[type=date]{width:100%;background:var(--card);border:2px solid transparent;border-radius:12px;padding:14px;min-height:52px;font-size:17px;outline:0}
input:focus{border-color:#fff}
input::placeholder{color:#6e6e73}
.row{display:flex;gap:10px}.row>*{flex:1}.row>*:last-child{flex:0 0 36%}
.seg{display:flex;gap:10px}
.opt{flex:1;background:var(--card);border:2px solid transparent;border-radius:14px;padding:14px 10px;min-height:56px;text-align:center;cursor:pointer;font-weight:700}
.opt span{display:block;font-weight:500;font-size:13px;color:var(--mute);margin-top:2px}
.opt.on{border-color:#fff;background:#2a2a2d}
.mute{color:var(--mute)}.small{font-size:13px}
.doc{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #222}
.doc:first-child{border-top:0}
.doc .th{width:64px;height:64px;border-radius:12px;background:var(--card);display:grid;place-items:center;font-size:26px;flex:0 0 64px;overflow:hidden}
.doc .th img{width:100%;height:100%;object-fit:cover}
.doc .tx{flex:1;min-width:0}.doc .tx b{display:block}.doc .tx span{font-size:13px;color:var(--mute)}
.doc .tx span.ok{color:var(--green)}
.doc label.pick{margin:0;background:#fff;color:#000;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap}
.doc label.pick.re{background:#2c2c2e;color:#fff}
.doc input[type=file]{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.tick{display:flex;gap:12px;align-items:flex-start;margin:0;font-weight:500;font-size:15px;cursor:pointer}
.tick input{width:26px;height:26px;flex:0 0 26px;margin:0;accent-color:#fff}
.cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;border:0;border-radius:14px;background:#fff;color:#000;font-size:19px;font-weight:800;cursor:pointer;text-decoration:none;margin-top:6px}
.cta:disabled{opacity:.6}.cta.ghost{background:#1d1d1f;color:#fff;margin-top:20px}
.err{color:var(--red);font-weight:600;min-height:1em;margin:6px 2px}
.lic{color:#6e6e73;font-size:11px;text-align:center;margin:18px 0 0}
#done{text-align:center;padding:40px 10px}
.okbig{width:96px;height:96px;border-radius:50%;background:var(--green);color:#000;font-size:56px;font-weight:900;display:grid;place-items:center;margin:10px auto 18px}
#done h2{font-size:32px;margin:0 0 6px}.lead{font-size:19px;color:#e5e5ea;margin:0 0 10px}
