/* Shared look for the public pages: rounder, softer, same space theme. Loaded after space.css. */
body.space .pagehead { position: relative; padding-top: 64px; }
body.space .pagehead h1, body.space .hero-block h1 { font-weight: 700; }
body.space .lede { color: var(--muted); }

/* Buttons everywhere become pills */
body.space .btn-discord, body.space .btn-outline, body.space .btn-secondary, body.space .btn-big,
body.space button, body.space .btn-link, body.space .btn-nav { border-radius: 8px; }
body.space .btn-discord { background: var(--accent); color: var(--accent-ink); box-shadow: var(--glow-bot); height: 48px; padding: 0 24px; }
body.space .btn-discord:hover { background: #a99eff; transform: translateY(-1px); }
body.space .btn-outline { border-color: var(--line2); background: rgba(255, 255, 255, .04); }
body.space .btn-link { background: var(--link); color: var(--link-ink); }
body.space button.small { border-radius: 8px; }

/* Cards, boxes and panels */
body.space .card, body.space .box, body.space .cta-card, body.space .note, body.space .panel { border-radius: var(--r-card); background: rgba(255, 255, 255, .025); border-color: var(--line); }
body.space .note { border-radius: 12px; }
body.space input, body.space select, body.space textarea { border-radius: 10px; background: rgba(255, 255, 255, .04); border-color: var(--line2); }
body.space input:focus, body.space select:focus, body.space textarea:focus { border-color: var(--accent); outline: none; box-shadow: 0 0 0 3px rgba(139, 124, 255, .25); }
body.space code { border-radius: 8px; background: rgba(139, 124, 255, .12); border-color: rgba(139, 124, 255, .25); }
body.space table { border-radius: 12px; overflow: hidden; }

/* Features: each group is a rounded card */
body.space .fgroup { background: rgba(255, 255, 255, .025); border: 1px solid var(--line); border-radius: var(--r-card); padding: 34px; margin-top: 18px; }
body.space .fgroup:first-of-type { margin-top: 36px; }
body.space .fitem .icon { color: var(--link); }
/* How it works */
body.space .steps { border-left: 1px solid var(--line2); }
body.space .step::before { background: var(--link); box-shadow: 0 0 0 4px rgba(62, 216, 242, .18); }
/* About */
body.space .principles { border-radius: var(--r-card); background: transparent; gap: 14px; border: 0; }
body.space .principle { border: 1px solid var(--line); border-radius: var(--r-card); background: rgba(255, 255, 255, .025); }
/* Premium step cards and plan cards */
body.space .steps3 > *, body.space .plans > *, body.space .plan { border-radius: var(--r-card); }
body.space .legal-content { max-width: 78ch; }
body.space .legal-content h2 { font-size: 24px; margin-top: 34px; }
@media (max-width: 820px) { body.space .fgroup { padding: 24px; } }

/* Soft glow behind the top of every inner page, like the reference sites */
body.space .pagehead, body.space .hero-block { position: relative; }
body.space .pagehead::before, body.space .hero-block::before { content: ""; position: absolute; z-index: -1; left: 50%; top: -80px; width: min(1000px, 100vw); height: 420px; transform: translateX(-50%); background: radial-gradient(closest-side, rgba(139, 124, 255, .22), rgba(139, 124, 255, .06) 60%, transparent); pointer-events: none; }
