/* GHOST checkout theme — same palette, fonts and buttons as ghostagents.in */
:root{
  --void:#0B0C0E; --slate:#121418; --panel:#171A1F; --steel:#23262C;
  --line-2:rgba(248,248,255,.16);
  --fog:#8B929D; --mist:#B9C0CA; --ghosttone:#F8F8FF;
  --aura:#9FB4FF; --aura-dim:rgba(159,180,255,.14); --ecto:#7FE9C4;
  --bg:#0B0C0E; --card:#121418; --line:rgba(248,248,255,.09); --fg:#F8F8FF; --mut:#8B929D; --acc:#9FB4FF;
  --ok:#7FE9C4; --warn:#F0C48A; --bad:#FFA8A8;
  --display:'Manrope',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}
html{background:var(--void);}
body{background:var(--void)!important;color:var(--fg);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased;}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(680px 420px at 12% -8%,rgba(159,180,255,.12),transparent 70%),
             radial-gradient(720px 460px at 104% 4%,rgba(127,233,196,.07),transparent 72%);}
.wrap{position:relative;z-index:1;}
h1,h2,h3,h4,.brand strong,.price{font-family:var(--display);}
h1{font-weight:200;letter-spacing:-.035em;font-size:clamp(32px,4.6vw,52px);line-height:1.02;margin:0 0 16px;color:var(--ghosttone);}
h2{font-weight:300;letter-spacing:-.02em;color:var(--ghosttone);}
h3,h4{font-weight:500;color:var(--ghosttone);}
p.lead{color:var(--mist);font-size:18px;max-width:640px;}
a{color:var(--aura);text-decoration:none;} a:hover{text-decoration:underline;}
/* brand */
header{margin-bottom:40px;align-items:center;}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ghosttone);text-decoration:none;}
.logo{width:40px;height:40px;border-radius:12px;background:var(--panel);border:1px solid var(--line-2);
  display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:18px;color:var(--ghosttone);}
.brand strong{display:block;font-size:16px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.1;color:var(--ghosttone);}
.brand .sub{display:block;font-size:12px;color:var(--fog);letter-spacing:.04em;}
/* surfaces */
.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;}
ul{color:var(--fog);} ul li{margin:7px 0;}
label{color:var(--fog);font-size:13px;letter-spacing:.01em;}
input,select,textarea{background:var(--slate)!important;color:var(--ghosttone)!important;
  border:1px solid var(--line-2)!important;border-radius:12px!important;padding:13px 14px!important;
  font-family:var(--body)!important;font-size:15px;outline:none;}
input:focus,select:focus,textarea:focus{border-color:var(--aura)!important;box-shadow:0 0 0 3px var(--aura-dim)!important;}
::placeholder{color:#6E747E;}
/* buttons */
button{background:var(--ghosttone)!important;color:var(--void)!important;border:1px solid transparent!important;
  border-radius:100px!important;font-family:var(--body)!important;font-weight:500!important;font-size:.93rem!important;
  padding:15px 30px!important;letter-spacing:-.01em;cursor:pointer;box-shadow:none;
  transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .2s;}
button:hover:not(:disabled){transform:translateY(-1px);opacity:.94;}
button:disabled{opacity:.55;cursor:progress;}
.btn-ghost{background:transparent!important;color:var(--ghosttone)!important;border:1px solid var(--line-2)!important;}
/* state */
.badge{color:var(--ecto);border:1px solid rgba(127,233,196,.35);background:rgba(127,233,196,.08);}
.msg.err{background:rgba(255,168,168,.10);border:1px solid rgba(255,168,168,.35);color:#FFD9D9;}
.msg.ok{background:rgba(127,233,196,.10);border:1px solid rgba(127,233,196,.35);color:#CFFBEC;}
.price{font-weight:200;letter-spacing:-.03em;font-size:44px;} .price small{color:var(--fog);font-family:var(--body);}
.qr,img.qr{background:#fff;padding:10px;border-radius:14px;}
code,.mono,.ref{font-family:var(--mono);color:var(--aura);}
table{color:var(--fg);} th{color:var(--fog);font-family:var(--display);font-weight:600;}
td,th{border-bottom:1px solid var(--line);padding:10px 8px;}
footer{color:#6E747E;font-size:13px;border-top:1px solid var(--line);padding-top:22px;margin-top:56px;}
footer a{color:var(--fog);}
hr{border:0;border-top:1px solid var(--line);}
