:root{
  --bg:#0b1018; --panel:#0f1522; --text:#ebf1ff; --muted:#a1aec5; --border:#1c2740;
  --radius:16px; --space:20px; --max:720px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{
  color:var(--text);
  background:linear-gradient(180deg,#101726 0%,#0b1018 60%,#090d14 100%);
  font:15px/1.6 system-ui,Segoe UI,Roboto,Inter;
  display:grid;place-items:center;
}
.wrap{
  width:100%;max-width:var(--max);
  padding:var(--space) clamp(12px,4vw,28px);
  margin-inline:auto;
}
.card{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:clamp(16px,2vw,24px);
  box-shadow:0 8px 32px rgba(0,0,0,.35);
}
h1{margin:0 0 10px;font-size:clamp(22px,3.2vw,28px)}
p{margin:0 0 12px}
.steps{margin:12px 0 18px;padding-left:18px;color:var(--muted)}
.actions{display:flex;gap:10px;flex-wrap:wrap}
button{
  appearance:none;border:1px solid #223153;border-radius:12px;
  background:#0f1d36;color:var(--text);
  padding:12px 16px;cursor:pointer;min-height:44px;
}
button:hover{transform:translateY(-1px);box-shadow:0 0 18px rgba(124,196,255,.25)}
button.ghost{background:transparent;border-color:#2a3857}
.tiny{color:var(--muted);font-size:12px;margin-top:10px}

/* Consent Overlay */
.px-consent-overlay {
  position:fixed;top:0;left:0;right:0;bottom:0;
  background:rgba(0,0,0,.65);
  display:none;place-items:center;
  z-index:200;
}

.px-consent-modal {
  background:#101726;padding:20px;border-radius:12px;
  max-width:360px;width:90%;text-align:center;
  border:1px solid var(--border)
}

.px-consent-actions {
  display:flex;gap:12px;margin-top:16px;
}

