/* Flow — shared styles. Monochrome: black, white, greys. Colour only inside product content (sites, logos, emoji). */
:root{
  --bg:#0a0a0a;--bg2:#0e0e0e;--panel:#121212;--panel2:#181818;--line:#222;--line2:#2e2e2e;
  --text:#fafafa;--mute:#a3a3a3;--dim:#6b6b6b;
  --grad:linear-gradient(180deg,#fff 0%,#8f8f8f 100%);
  --green:#e5e5e5;--red:#e5e5e5;--amber:#d4d4d4;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
::selection{background:#fff;color:#000}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;cursor:pointer;border-radius:999px;padding:12px 20px;font-weight:600;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn:focus-visible,input:focus-visible,.tab:focus-visible{outline:2px solid #fff;outline-offset:2px}
.btn-primary{background:#fff;color:#0a0a0a;box-shadow:0 8px 30px -10px #ffffff66}
.btn-primary:hover{box-shadow:0 12px 40px -10px #ffffff99}
.btn-ghost{background:#ffffff0a;color:var(--text);border:1px solid var(--line2)}
.btn-ghost:hover{border-color:#555}
.btn-white{background:#fff;color:#0a0a0a}
.btn-dark{background:#0a0a0a;color:#fff;border:1px solid #3a3a3a;box-shadow:0 0 0 4px #ffffff08,0 10px 40px -12px #ffffff40}
.btn-dark:hover{border-color:#777}
.btn .arr{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;margin-right:-8px}
.btn-primary .arr{background:#0a0a0a;color:#fff}
.btn-dark .arr,.btn-ghost .arr{background:#fff;color:#0a0a0a}
.btn[disabled]{opacity:.6;pointer-events:none}
.spin{width:16px;height:16px;border:2px solid #0003;border-top-color:#000;border-radius:50%;animation:rot .7s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}}

/* nav */
.nav{position:sticky;top:12px;z-index:50;margin:12px auto 0;max-width:1120px;padding:0 20px}
.nav-in{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 18px;border:1px solid var(--line);border-radius:999px;background:#0a0a0acc;backdrop-filter:blur(14px);box-shadow:0 10px 40px -10px #000}
.nav-links{display:flex;gap:26px;color:var(--mute);font-size:14px}
.nav-links a:hover{color:var(--text)}
.nav-r{display:flex;gap:8px;align-items:center}
.nav-r .btn{padding:8px 16px;font-size:14px}
.nav-r .btn .arr{width:22px;height:22px}
.wm{display:flex;align-items:center;gap:9px;font:600 22px Outfit,sans-serif;letter-spacing:-.4px}
.wm img{height:17px}

/* chips */
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border:1px solid var(--line2);border-radius:999px;font-size:13px;color:var(--mute);background:#ffffff06}
.dot{width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 #ffffffaa;animation:pulse 1.8s infinite;flex:none}
@keyframes pulse{70%{box-shadow:0 0 0 8px #ffffff00}100%{box-shadow:0 0 0 0 #ffffff00}}

/* url cta */
.urlcta{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 18px;border:1px solid var(--line2);border-radius:999px;background:#111;box-shadow:0 20px 60px -24px #ffffff30,inset 0 1px 0 #ffffff0d;max-width:580px;transition:border-color .2s}
.urlcta:focus-within{border-color:#666}
.urlcta svg{flex:none;color:var(--mute)}
.urlcta input{flex:1;min-width:0;background:none;border:0;color:var(--text);font-size:16px;outline:none;padding:10px 4px}
.urlcta input::placeholder{color:var(--dim)}
.urlcta.shake{animation:shake .3s}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.cta-err{color:#fff;font-size:13px;min-height:20px;margin-top:8px;opacity:.85}

/* reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}*{animation:none!important;transition:none!important}}

/* generic */
.card{background:var(--panel);border:1px solid var(--line);border-radius:20px}
.h2{font-size:46px;line-height:1.06;letter-spacing:-1.6px;margin:0 0 14px;font-weight:700}
.lead{color:var(--mute);font-size:17px;max-width:620px}
.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-weight:600;margin-bottom:14px}
section{padding:110px 0}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}
.t-paid{background:#fff;color:#0a0a0a}.t-no{background:#ffffff0d;color:var(--dim)}.t-rage{background:#ffffff14;color:var(--text);border:1px solid #ffffff26}
.good{color:#fff}.warn{color:#d4d4d4}.bad{color:#fff}

@media (max-width:820px){
  .nav-links{display:none}
  .h2{font-size:32px;letter-spacing:-.8px}
  section{padding:76px 0}
}
@media (max-width:560px){
  .urlcta{flex-direction:column;align-items:stretch;padding:8px;border-radius:22px}
  .urlcta > svg{display:none}
  .urlcta .btn{width:100%}
  .nav-r .btn-ghost{display:none}
}
