/**
 * GAMESPSN Official Design System — phase 1 / 1.4.30.
 * Authority: current Cart CSS + Owner's explicit official CTA gradient.
 * OPT-IN ONLY: no :root, no generic button/input/card overrides, no --gl-* writes.
 * Registration does not load this file on other pages. See inc/design-system.php.
 * White is a contextual action treatment, not an automatic "secondary" rule.
 */
.gl-official-scope,
body.gl-official-product {
  --gs-canvas: #0a0c15;
  --gs-page-background: radial-gradient(ellipse at 83% -20%,rgba(116,35,145,.20),transparent 43%),#0a0c15;
  --gs-surface: #151929;
  --gs-surface-quiet: #111523;
  --gs-card-gradient: linear-gradient(120deg,#13182a,#111523);
  --gs-summary-gradient: linear-gradient(170deg,#14192b,#131728);
  --gs-field: #0d1121;
  --gs-border: #292e48;
  --gs-border-soft: rgba(182,184,217,.10);
  --gs-border-active: #a75be3;
  --gs-text: #f5f4ff;
  --gs-muted: #aeb6d0;
  --gs-faint: #969eb9;
  --gs-link: #d7b6ff;
  --gs-icon: #c2a8e5;
  --gs-hover-border: #50416e;
  --gs-badge-text: #e9d9ff;
  --gs-badge-surface: rgba(194,127,238,.18);
  --gs-badge-border: rgba(204,139,241,.12);
  --gs-action-shadow: 0 4px 18px rgba(188,58,217,.22);
  --gs-accent-start: #802bf0;
  --gs-accent-mid: #bc3ad9;
  --gs-accent-end: #d343c3;
  --gs-gradient: linear-gradient(110deg,var(--gs-accent-start),var(--gs-accent-mid) 55%,var(--gs-accent-end));
  --gs-white: #ffffff;
  --gs-on-white: #131627;
  --gs-success: #64e17e;
  --gs-warning: #f2ca80;
  --gs-danger: #ff9fa8;
  --gs-radius-card: 16px;
  --gs-radius-control: 10px;
  --gs-radius-small: 8px;
  --gs-content-width: 1100px;
  --gs-space-1: 4px;
  --gs-space-2: 8px;
  --gs-space-3: 12px;
  --gs-space-4: 16px;
  --gs-space-5: 24px;
  --gs-space-6: 32px;
  --gs-shadow: 0 12px 30px rgba(0,0,0,.15);
  --gs-focus: 0 0 0 3px rgba(167,91,227,.22);
}
/* Reusable opt-in primitives for later AUTHORIZED stages; no shared element reset. */
.gl-official-scope .gs-card {background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:var(--gs-radius-card)}
.gl-official-scope .gs-action {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 18px;border:1px solid transparent;border-radius:var(--gs-radius-control);font:inherit;font-weight:750;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer}
.gl-official-scope .gs-action--brand {background:var(--gs-gradient);color:var(--gs-white)}
.gl-official-scope .gs-action--white {background:var(--gs-white);color:var(--gs-on-white)}
.gl-official-scope .gs-action--quiet {background:var(--gs-surface-quiet);border-color:var(--gs-border);color:var(--gs-text)}
.gl-official-scope .gs-action:focus-visible {outline:2px solid var(--gs-link);outline-offset:3px}
.gl-official-scope .gs-action:disabled {opacity:.55;cursor:not-allowed}
