/* StudyCore shared design tokens. Canonical source for B2B and B2C. */
:root {
  --sc-paper: #F6F4EF;
  --sc-surface: #FFFFFF;
  --sc-ink: #171A1F;
  --sc-inverse: #171A1F;
  --sc-ink-soft: #4B5563;
  --sc-muted: #8A8F98;
  --sc-line: #E8E5DD;
  --sc-accent: #2E5BFF;
  --sc-accent-deep: #1F44CC;
  --sc-accent-soft: #EBF0FF;
  --sc-green: #279A64;
  --sc-green-soft: #E4F4EC;
  --sc-amber: #DE9A26;
  --sc-amber-soft: #FBF1DC;
  --sc-red: #DE5B4E;
  --sc-red-soft: #FCEAE8;
  --sc-r-card: 22px;
  --sc-r-control: 14px;
  --sc-r-pill: 999px;
  --sc-space-1: 4px;
  --sc-space-2: 8px;
  --sc-space-3: 12px;
  --sc-space-4: 16px;
  --sc-space-5: 20px;
  --sc-space-6: 24px;
  --sc-space-7: 32px;
  --sc-space-8: 40px;
  --sc-touch-target: 44px;
  --sc-phone-column: 430px;
  --sc-breakpoint-phone: 520px;
  --sc-breakpoint-desktop: 1024px;
  --sc-shadow-card: 0 1px 2px rgba(23, 26, 31, .05), 0 10px 30px -12px rgba(23, 26, 31, .12);
  --sc-shadow-pop: 0 2px 4px rgba(31, 68, 204, .18), 0 14px 34px -10px rgba(46, 91, 255, .45);
  --sc-font-display: "Bricolage Grotesque", sans-serif;
  --sc-font-body: "Inter", sans-serif;
  --sc-ease-out: cubic-bezier(.23, 1, .32, 1);
  --sc-ease-in-out: cubic-bezier(.77, 0, .175, 1);

  /* Compatibility aliases used by the existing B2B/B2C inline styles. */
  --paper: var(--sc-paper);
  --surface: var(--sc-surface);
  --ink: var(--sc-ink);
  --ink-soft: var(--sc-ink-soft);
  --muted: var(--sc-muted);
  --line: var(--sc-line);
  --accent: var(--sc-accent);
  --accent-deep: var(--sc-accent-deep);
  --accent-soft: var(--sc-accent-soft);
  --green: var(--sc-green);
  --green-soft: var(--sc-green-soft);
  --amber: var(--sc-amber);
  --amber-soft: var(--sc-amber-soft);
  --red: var(--sc-red);
  --red-soft: var(--sc-red-soft);
  --r-card: var(--sc-r-card);
  --r-control: var(--sc-r-control);
  --r-pill: var(--sc-r-pill);
  --shadow-card: var(--sc-shadow-card);
  --shadow-pop: var(--sc-shadow-pop);
  --font-display: var(--sc-font-display);
  --font-body: var(--sc-font-body);
  --font-d: var(--sc-font-display);
  --font-b: var(--sc-font-body);
  --bg: var(--sc-paper);
  --bg2: var(--sc-surface);
  --bg3: var(--sc-paper);
  --border: var(--sc-line);
  --text: var(--sc-ink);
  --teal: var(--sc-accent);
  --teal2: var(--sc-accent);
  --blue: var(--sc-accent-deep);
  --navy: var(--sc-ink);
  --ease-out: var(--sc-ease-out);
  --ease-in-out: var(--sc-ease-in-out);
}

:root[data-sc-theme="dark"] {
  color-scheme: dark;
  --sc-paper: #111726;
  --sc-surface: #192133;
  --sc-ink: #F6F4EF;
  --sc-inverse: #0B101B;
  --sc-ink-soft: #C3CAD8;
  --sc-muted: #929DB1;
  --sc-line: #2B3549;
  --sc-accent: #6F8CFF;
  --sc-accent-deep: #AFC0FF;
  --sc-accent-soft: #24325F;
  --sc-green: #51C58D;
  --sc-green-soft: #193B31;
  --sc-amber: #F0B856;
  --sc-amber-soft: #44351F;
  --sc-red: #F07A6E;
  --sc-red-soft: #472925;
  --sc-shadow-card: 0 1px 0 rgba(255, 255, 255, .035), 0 18px 42px -24px rgba(0, 0, 0, .72);
  --sc-shadow-pop: 0 2px 5px rgba(26, 48, 130, .35), 0 18px 42px -18px rgba(77, 111, 255, .55);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --sc-ease-out: linear;
    --sc-ease-in-out: linear;
  }
}
