/* Shared styles for the checkout, terms and contact pages (same look as the landing page). */
:root {
  --bg: #07080c;
  --card: #12141d;
  --line: rgba(255,255,255,.08);
  --text: #f3f4f7;
  --muted: #9aa1b2;
  --violet: #7c5cff;
  --pink: #ff4f8b;
  --mint: #3fe0b5;
  --grad: linear-gradient(120deg, #7c5cff 0%, #4f8cff 45%, #ff4f8b 100%);
  --radius: 22px;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: 'Heebo', system-ui, sans-serif; font-size: 17px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
.wrap { width: min(1080px, 100% - 32px); margin-inline: auto; }
.narrow { width: min(760px, 100% - 32px); margin-inline: auto; }
.display { font-family: 'Secular One', 'Heebo', sans-serif; font-weight: 400; }
.grad-text { background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.aurora { position: fixed; inset: -20vmax; z-index: -1; pointer-events: none; filter: blur(80px); opacity: .45;
  background:
    radial-gradient(40vmax 30vmax at 80% 10%, rgba(124,92,255,.45), transparent 60%),
    radial-gradient(35vmax 25vmax at 10% 30%, rgba(79,140,255,.35), transparent 60%),
    radial-gradient(30vmax 25vmax at 60% 80%, rgba(255,79,139,.25), transparent 60%); }
nav { position: sticky; top: 0; z-index: 30; backdrop-filter: blur(16px); background: rgba(7,8,12,.7); border-bottom: 1px solid var(--line); }
nav .wrap { display: flex; align-items: center; gap: 16px; height: 64px; }
.brand { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 18px; text-decoration: none; }
.rec { width: 11px; height: 11px; border-radius: 50%; background: #ff3b5c; }
nav .back { margin-inline-start: auto; color: var(--muted); font-size: 15px; text-decoration: none; }
nav .back:hover { color: var(--text); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; cursor: pointer; text-decoration: none; font: inherit; font-weight: 800; border-radius: 999px; padding: 15px 28px; transition: transform .2s, box-shadow .2s, opacity .2s; }
.btn-primary { background: var(--grad); color: #fff; box-shadow: 0 10px 40px -10px rgba(124,92,255,.8); }
.btn-primary:hover { transform: translateY(-2px); }
.btn:disabled { opacity: .5; cursor: not-allowed; transform: none; }
h1 { font-size: clamp(34px, 5vw, 54px); line-height: 1.1; margin: 0 0 12px; }
.sub { color: var(--muted); margin: 0 0 30px; }
main { padding: 54px 0 80px; }
.card { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 30px; }
.todo { background: rgba(255,210,63,.18); color: #ffd23f; border-radius: 6px; padding: 0 6px; font-weight: 700; }
footer { border-top: 1px solid var(--line); padding: 26px 0 36px; color: var(--muted); font-size: 14px; }
footer .wrap { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
footer a { text-decoration: none; }
footer a:hover { color: var(--text); }
.toast { position: fixed; bottom: 24px; left: 50%; translate: -50% 20px; opacity: 0; pointer-events: none; z-index: 50; padding: 14px 22px; border-radius: 14px; background: #fff; color: #111; font-weight: 700; transition: .3s; }
.toast.show { opacity: 1; translate: -50% 0; }
