:root {
  /* ── Brand palette (deep navy → vivid blue) ── */
  --brand-dark: #051b36;
  --brand-mid: #051b36;
  --brand-accent: #174275;
  --brand-light: #174275;

  /* ── Accent / Orange-Gold (from "Submit Paper" btn & stats bar) ── */
  --accent: #f5a623;
  --accent-light: #f7b94a;
  --accent-dark: #d48c10;
  --accent-low-light: #f7b84a64;

  /* ── Semantic text ── */
  --text-primary: #0d1b3e;
  --text-mid: #1f2d50;
  --text-muted: #4a5568;
  --text-on-brand: #ffffff;
  --text-on-brand-sub: #ffffffcc;
  --text-on-brand-dim: #ffffff99;
  --text-on-accent: #1a0e00;

  /* ── Surface / Background ── */
  --surface-primary: #ffffff;
  --surface-secondary: #f0f4fb;
  --surface-tint: #dde8f8;
  --surface-tint-dim: rgba(221, 232, 248, 0.45);
  --surface-cream: #fdf8ee; /* warm cream hero background */
  --surface-cream-dim: rgba(253, 248, 238, 0.65);
  --surface-fadwhite: #fdfeff; /* ultra-light off-white for gradients */
  --surface-fadwhite-dim: rgba(254, 248, 234, 0.12);

  /* ── Border ── */
  --border-default: #e2e8f0;
  --border-brand: #c8d7f5;
  --border-brand-mid: rgba(10, 33, 88, 0.18);
  --badge-bg: #ffffff14;
  --badge-accent-bg: #f5a6231f;

  /* ── Gradients ── */
  --gradient-brand: linear-gradient(98.71deg, #051b36 0%, #174275 100%);
  --gradient-brand-h: linear-gradient(107.72deg, #051b36 0%, #174275 100%);
  --gradient-accent: linear-gradient(100.52deg, #f5a623 0%, #f7c060 100%);
  --gradient-hero: linear-gradient(180deg, #edf7ff 0%, #fdfeff 100%);
  --gradient-banner: linear-gradient(94.68deg, #051b36 0%, #174275 100%);
  --gradient-cfp: linear-gradient(102.88deg, #051b36 0%, #174275 100%);

  /* ── Glow overlays ── */
  --glow-accent: rgba(241, 242, 245, 0.52);
  --glow-accent-mid: rgba(163, 182, 219, 0.16);
  --glow-brand: rgba(10, 33, 88, 0.28);

  /* ── Shadows ── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
  --shadow-btn:
    0px 1px 2px rgba(0, 0, 0, 0.08), 0px 2px 2px rgba(0, 0, 0, 0.08),
    0px 1px 1px rgba(0, 0, 0, 0.06);
  --shadow-card: 0px 10px 40px -12px rgba(10, 33, 88, 0.24);

  /* ── Radius ── */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --radius-2xl: 24px;
  --radius-3xl: 34px;
  --radius-4xl: 44px;

  /* ── Typography ── */
  --font-sans: "DM Sans", sans-serif;
  --font-display: "Space Grotesk", sans-serif;
  --font-mono: "Roboto", monospace;

  /* ── Component tokens ── */
  --header-bg: #ffffff;
  --footer-bg: #051b36;
  --footer-text: #ffffffcc;
  --footer-heading: #f5a623;
  --announcement-bg: #051b36;
  --announcement-text: #fdf8ee;

  /* ── Feature icons ── */
  --icon-bg: #dde8f8;
  --icon-color: #051b36;

  /* ── Badges ── */
  --badge-peer-bg: rgba(10, 33, 88, 0.06);
  --badge-peer-color: #0a2158;
  --badge-peer-border: rgba(10, 33, 88, 0.2);
  --badge-open-bg: rgba(212, 140, 16, 0.08);
  --badge-open-color: #b87a10;
  --badge-bg: #ffffff14;
  --badge-accent-bg: #f5a6231f;

  /* ── Links / interactive ── */
  --link-color: #174275;
  --link-hover: #0a2158;
  --nav-hover-bg: #eef3fc;
  --nav-active-bg: #dde8f8;

  /* ── Stats / counter bar (orange-gold band) ── */
  --stats-bg: #f5a623;
  --stats-text: #0a2158;
  --stats-label: #1a0e00cc;

  /* ── Current-issue header band ── */
  --issue-header-bg: #0a2158;
  --issue-header-text: #ffffff;

  /* ── DOI badge ── */
  --doi-bg: #f5a623;
  --doi-text: #0a2158;

  /* ── Paper card article number ── */
  --article-num-bg: #174275;
  --article-num-text: #ffffff;

  /* ── Inline citation highlight ── */
  --cite-bg: rgba(23, 66, 117, 0.06);
  --cite-border: #174275;

  /* ── Sidebar journal panel ── */
  --sidebar-header-bg: #174275;
  --sidebar-header-text: #ffffff;
  --sidebar-item-hover-bg: #f0f4fb;

  /* ── Submit button (primary CTA) ── */
  --btn-primary-bg: #f5a623;
  --btn-primary-text: #0a2158;
  --btn-primary-hover: #d48c10;

  /* ── Secondary / outlined button ── */
  --btn-secondary-bg: transparent;
  --btn-secondary-border: #174275;
  --btn-secondary-text: #174275;
  --btn-secondary-hover: #dde8f8;

  /* ── Nav submit button ── */
  --btn-nav-bg: #174275;
  --btn-nav-text: #ffffff;
  --btn-nav-hover: #0a2158;

  /* ── Open Access tag ── */
  --tag-open-bg: #fff4e0;
  --tag-open-text: #b87a10;
  --tag-open-border: #f5c060;

  /* ── Peer Reviewed tag ── */
  --tag-peer-bg: #e8effc;
  --tag-peer-text: #174275;
  --tag-peer-border: #c8d7f5;

  /* ── Author location pin ── */
  --pin-color: #f5a623;

  /* ── Divider ── */
  --divider: #e2e8f0;
  --contrast-red: #b50113;
  --h2-text: #a34d04;
  --h3-text: #de0670;
}
