/* Shared styles for VSA product pages (scorecard/prompts/champion/bundle) */
:root { --bg:#08101d; --surface:rgba(18,28,46,.72); --text:#f5f7fb; --muted:#9aa6bc;
  --muted-strong:#c2ccde; --line:rgba(255,255,255,.12); --accent:#2d7ff9; --accent-strong:#5b9dff; --accent-deep:#1b56c9; }
* { box-sizing: border-box; }
body { margin:0; font-family:"Space Grotesk",system-ui,sans-serif; color:var(--text); line-height:1.65;
  background: radial-gradient(900px 500px at 78% -8%, rgba(45,127,249,.2), transparent 60%),
              linear-gradient(180deg,#0a1322,#08101d 55%,#050b14); }
.wrap { max-width:860px; margin:0 auto; padding:44px 24px 80px; }
.topnav { display:flex; justify-content:space-between; align-items:center; margin-bottom:44px; gap:16px; flex-wrap:wrap; }
.topnav a { color:var(--accent-strong); text-decoration:none; font-weight:600; font-size:.92rem; }
.eyebrow { text-transform:uppercase; letter-spacing:.22em; font-size:.74rem; font-weight:700; color:var(--accent-strong); margin:0; }
h1 { font-size:clamp(2rem,5vw,2.9rem); letter-spacing:-.04em; line-height:1.05; margin:10px 0 14px; }
.serif { font-family:"Instrument Serif",Georgia,serif; font-style:italic; }
.lead { color:var(--muted-strong); font-size:1.1rem; max-width:58ch; }
.buyrow { display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin:26px 0 8px; }
.price { font-size:2.2rem; font-weight:700; letter-spacing:-.03em; }
.price s { color:var(--muted); font-size:1.3rem; margin-right:8px; }
.btn { display:inline-block; padding:15px 30px; border-radius:999px; font-weight:700; color:#0a1020; text-decoration:none;
  border:0; cursor:pointer; font-size:1rem; font-family:inherit;
  background:linear-gradient(135deg,var(--accent-strong),var(--accent-deep));
  box-shadow:0 14px 34px -16px rgba(45,127,249,.9); transition:transform .2s; }
.btn:hover { transform:translateY(-2px); }
.btn-disabled, .btn:disabled { opacity:.55; cursor:not-allowed; pointer-events:none; transform:none; }
.per { color:var(--muted); font-size:.9rem; }
.foot-legal { margin-top:56px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; }
.foot-legal a { color:var(--accent-strong); text-decoration:none; }
section { margin-top:52px; }
h2 { letter-spacing:-.03em; font-size:1.45rem; margin:0 0 16px; }
.panel { background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:24px 26px;
  backdrop-filter:blur(14px); }
.panel pre { white-space:pre-wrap; font-size:.86rem; line-height:1.55; color:var(--muted-strong);
  font-family:"SF Mono",Consolas,monospace; margin:0; overflow-x:auto; }
.check { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.check li { padding-left:26px; position:relative; color:var(--muted-strong); }
.check li::before { content:"✓"; position:absolute; left:0; color:var(--accent-strong); font-weight:700; }
table.preview { width:100%; border-collapse:collapse; font-size:.9rem; }
table.preview th { text-align:left; color:var(--accent-strong); font-size:.74rem; text-transform:uppercase;
  letter-spacing:.12em; padding:10px 12px; border-bottom:1px solid var(--line); }
table.preview td { padding:11px 12px; border-bottom:1px solid var(--line); color:var(--muted-strong); }
table.preview td b { color:var(--text); }
.tag { display:inline-block; font-size:.72rem; font-weight:700; padding:3px 10px; border-radius:999px; }
.tag.ok { color:#4ade80; background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.35); }
.tag.no { color:#ffd479; background:rgba(255,196,87,.1); border:1px solid rgba(255,196,87,.3); }
.note { color:var(--muted); font-size:.88rem; margin-top:14px; }
.cross { margin-top:56px; text-align:center; background:var(--surface); border:1px solid var(--accent);
  border-radius:20px; padding:30px; box-shadow:0 0 60px -16px rgba(45,127,249,.35); }
.cross p { color:var(--muted-strong); max-width:52ch; margin:8px auto 18px; }
.guarantee { margin-top:34px; color:var(--muted); font-size:.9rem; text-align:center; }
