/* Shared chrome for the standalone public pages (pricing / terms / privacy /
   refund). Loaded AFTER styles.css — inherits the theme tokens. Pure styling:
   the pages' markup and content stay untouched. */

/* full-page blueprint backdrop: faint grid + gold/teal glow, fixed behind everything */
body{position:relative}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(720px 360px at 50% -10%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),
             radial-gradient(560px 320px at 85% 8%,color-mix(in srgb,var(--accent-2) 12%,transparent),transparent 70%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px),
                   linear-gradient(90deg,color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px);
  background-size:34px 34px;
  -webkit-mask-image:radial-gradient(90% 55% at 50% 0%,#000 20%,transparent 100%);
          mask-image:radial-gradient(90% 55% at 50% 0%,#000 20%,transparent 100%)}

.legal-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;
  padding:13px 22px;margin:0 auto;max-width:none;
  background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);font-size:14px}
.legal-nav .brand-mark{cursor:default}
.legal-nav a{margin-left:auto;font-weight:600;text-decoration:none;color:var(--ink-2)}
.legal-nav a:hover{color:var(--accent)}

.legal-wrap{max-width:860px;margin:30px auto 40px;padding:38px clamp(20px,5vw,46px) 44px;
  background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line);
  border-radius:16px;box-shadow:0 24px 70px -28px rgba(0,0,0,.45)}
.legal-wrap h1{font-size:2rem;margin:.1em 0 .15em;letter-spacing:-.4px}
.legal-wrap .updated{opacity:.62;font-size:.9rem;margin-bottom:1.8em;font-family:var(--mono)}
.legal-wrap h2{font-size:1.12rem;margin:1.9em 0 .5em;padding-top:1.35em;
  border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent)}
.legal-wrap p,.legal-wrap li{line-height:1.7;opacity:.92}
.legal-wrap ul{padding-left:1.2em;margin:.4em 0}
.legal-wrap li{margin:.3em 0}
.legal-wrap a{color:var(--accent-2);text-decoration:underline;text-underline-offset:2px}
.legal-wrap a:hover{color:var(--accent)}

.legal-callout{border:1px solid color-mix(in srgb,var(--accent-2) 38%,transparent);
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent-2) 10%,transparent),color-mix(in srgb,var(--accent-2) 4%,transparent));
  border-radius:12px;padding:15px 18px;margin:1.2em 0}

table.legal-tbl{width:100%;border-collapse:separate;border-spacing:0;margin:.6em 0;
  border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.92rem}
table.legal-tbl th{background:var(--panel-2);text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}
table.legal-tbl td{text-align:left;padding:9px 12px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);vertical-align:top}
table.legal-tbl tr:last-child td{border-bottom:none}

.legal-foot{max-width:860px;margin:0 auto 30px;padding:18px 22px;opacity:.65;font-size:.85rem;
  border-top:1px solid var(--line);text-align:center}
.legal-foot a{color:var(--muted)}
.legal-foot a:hover{color:var(--ink)}

/* ── pricing page ── */
.pricing-page .legal-wrap h1{text-align:center;font-size:2.2rem}
.pricing-page .legal-wrap .updated{text-align:center;font-family:var(--sans);font-size:.98rem;opacity:.75}
.price-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0 8px}
@media(max-width:560px){.price-cards{grid-template-columns:1fr}}
.price-card{position:relative;border:1px solid var(--line);border-radius:14px;padding:28px 24px;
  text-align:center;background:linear-gradient(180deg,var(--panel-2),transparent);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.price-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent-2) 45%,var(--line));
  box-shadow:0 16px 40px -14px rgba(0,0,0,.4)}
.price-card.hot{border-color:color-mix(in srgb,var(--accent-2) 55%,var(--line));
  box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-2) 8%,transparent)}
.price-badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);
  background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#10140c;font-weight:700;
  font-size:11.5px;border-radius:999px;padding:3px 12px;white-space:nowrap}
.price-name{font-weight:600;font-size:1.02rem;opacity:.85}
.price-amount{font-size:2.4rem;font-weight:800;margin:8px 0 2px;font-family:var(--mono);letter-spacing:-1px}
.price-per{font-size:.95rem;opacity:.65;font-weight:500;font-family:var(--sans);letter-spacing:0}
.pp-note{font-size:.85rem;opacity:.65;margin-top:8px}
.legal-wrap a.price-cta{display:inline-block;margin-top:16px;
  background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 72%,var(--accent-2)));
  color:#10140c;font-weight:700;border-radius:10px;padding:11px 24px;text-decoration:none;
  box-shadow:0 8px 26px -8px color-mix(in srgb,var(--accent) 60%,transparent)}
.legal-wrap a.price-cta:hover{filter:brightness(1.07);color:#10140c}
.inc{border:1px solid var(--line);border-radius:14px;padding:22px 26px;margin:22px 0;background:var(--panel-2)}
.inc h2{font-size:1.05rem;margin:0 0 12px;border:none;padding:0}
.inc ul{columns:2;column-gap:34px;padding-left:1.15em;margin:0}
@media(max-width:560px){.inc ul{columns:1}}
.inc li{margin:.35em 0;break-inside:avoid}
.fineprint{font-size:.88rem;opacity:.75;line-height:1.7;margin-top:20px}
