
:root{
  --bg:#100b1d;--card:#ffffff0d;--card2:#ffffff12;--text:#f6f8fb;--muted:#aab4c3;
  --accent:#a874ff;--accent2:#ff8a4c;--danger:#ff5d73;--ok:#39d98a;--line:#ffffff1a;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:radial-gradient(circle at 10% -10%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 35%),radial-gradient(circle at 100% 0,color-mix(in srgb,var(--accent2) 18%,transparent),transparent 32%),var(--bg);color:var(--text)}
body{min-height:100vh}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit}
.shell{max-width:880px;margin:0 auto;padding:18px 18px 70px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:26px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:-.02em}
.brand img{width:42px;height:42px;border-radius:12px}
.pill{border:1px solid var(--line);background:#ffffff0a;border-radius:999px;padding:8px 12px;color:var(--muted);font-size:13px}
.hero{padding:24px 0 18px}
.eyebrow{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.18em}
h1{font-size:clamp(38px,8vw,70px);line-height:.96;letter-spacing:-.055em;margin:12px 0 14px;max-width:800px}
.lead{font-size:clamp(17px,3.4vw,22px);line-height:1.5;color:var(--muted);max-width:700px}
.card{background:linear-gradient(180deg,#ffffff11,#ffffff08);border:1px solid var(--line);border-radius:26px;padding:20px;box-shadow:0 24px 60px #0006;backdrop-filter:blur(16px)}
.card+.card{margin-top:14px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:650px){.grid{grid-template-columns:1fr}.shell{padding:14px 14px 60px}.topbar{margin-bottom:10px}}
.btn{border:0;border-radius:16px;padding:15px 18px;font-weight:800;color:#061016;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 10px 30px color-mix(in srgb,var(--accent) 25%,transparent)}
.btn.secondary{background:#ffffff10;color:var(--text);border:1px solid var(--line);box-shadow:none}
.btn.ghost{background:transparent;color:var(--muted);border:1px dashed var(--line);box-shadow:none}
.btn:disabled{opacity:.4;cursor:not-allowed}
.actions{display:flex;flex-wrap:wrap;gap:10px}
.big-number{font-size:clamp(52px,14vw,104px);font-weight:900;letter-spacing:-.07em;line-height:1}
.muted{color:var(--muted)}
.kicker{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-weight:800}
hr{border:0;border-top:1px solid var(--line);margin:20px 0}
.field{display:flex;flex-direction:column;gap:7px;margin:10px 0}
.field label{font-size:13px;color:var(--muted);font-weight:700}
input,select,textarea{width:100%;background:#050b13cc;color:var(--text);border:1px solid var(--line);border-radius:14px;padding:13px 14px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--accent)}
.segmented{display:flex;gap:8px;flex-wrap:wrap}
.seg{border:1px solid var(--line);background:#ffffff08;color:var(--muted);border-radius:999px;padding:10px 13px;font-weight:750}
.seg.active{background:color-mix(in srgb,var(--accent) 20%,#ffffff08);color:#fff;border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:#101722;border:1px solid var(--line);border-radius:14px;padding:12px 16px;opacity:0;pointer-events:none;transition:.2s;z-index:99;box-shadow:0 15px 40px #0009}
.toast.show{opacity:1}
.progress{height:10px;border-radius:999px;background:#ffffff0c;overflow:hidden}
.progress>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));width:0;transition:.2s}
.tag{display:inline-flex;padding:6px 9px;border-radius:9px;background:#ffffff0c;color:var(--muted);font-size:12px;font-weight:700;margin:3px}
.result{padding:18px;border-radius:20px;background:color-mix(in srgb,var(--accent) 11%,#ffffff08);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}
.footer{margin-top:38px;border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px}
.footer a{text-decoration:none}
.hidden{display:none!important}
canvas{max-width:100%}
.logo-hero{width:72px;height:72px;border-radius:22px;box-shadow:0 18px 45px #0008}
