:root {
  color-scheme: light;

  /* Brand Core */
  --lm-ink: #171923;
  --lm-primary: #3157D5;
  --lm-primary-strong: #4F46F5;
  --lm-button-purple: #4F46E5;
  --lm-button-disabled-bg: #E9EDF2;
  --lm-button-disabled-border: #D3DAE3;
  --lm-button-disabled-text: #526071;
  --lm-teal: #14B8A6;

  /* Neutral */
  --lm-page: #F7F8F5;
  --lm-surface: #FFFFFF;
  --lm-text: #171923;
  --lm-muted: #667085;
  --lm-border: #DFE3E8;

  /* Accent Palette */
  --lm-lime: #D9FF57;
  --lm-mint: #C9F3DF;
  --lm-sky: #CCE9FB;
  --lm-coral: #FFB2A1;
  --lm-lavender: #E4E1FF;
  --lm-cream: #FFF1C7;
  --lm-dark: #171923;

  /* Semantic Status Colors (Retained) */
  --color-success: #16A36A;
  --color-warning: #F59E0B;
  --color-danger: #DC4C4C;
  --color-teal-soft: #E9FAF7;
  --color-teal-text: #087C70;
  --color-success-soft: #EAF7F0;
  --color-success-text: #11663F;
  --color-warning-soft: #FFF5DF;
  --color-warning-text: #825000;
  --color-danger-soft: #FDEEEE;
  --color-danger-text: #A12B2B;

  /* System Color Mappings */
  --color-background: var(--lm-page);
  --color-surface: var(--lm-surface);
  --color-surface-elevated: #FFFFFF;
  --color-border: var(--lm-border);
  --color-control-border: #94A3B8;
  --color-text: var(--lm-text);
  --color-text-secondary: var(--lm-muted);
  --color-primary: var(--lm-primary);
  --color-primary-hover: var(--lm-primary-strong);
  --color-secondary: var(--lm-teal);
  --color-on-primary: #FFFFFF;
  --color-focus: var(--lm-primary-strong);

  /* Typography */
  --font-ui: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
  --font-display: 'Gmarket Sans', 'GmarketSans', 'Pretendard', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;

  /* Geometry & Radius */
  --radius-bento: 32px;
  --radius-card: 20px;
  --radius-control: 12px;
  --radius-pill: 999px;

  /* Spacing */
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem;
  --space-4: 1rem; --space-5: 1.5rem; --space-6: 2rem;
  --space-7: 3rem; --space-8: 4rem;

  /* Shadows (Subtle, crisp) */
  --shadow-card: 0 2px 12px rgba(23, 25, 35, 0.04);
  --shadow-overlay: 0 16px 48px rgba(23, 25, 35, 0.12);

  /* Bootstrap Variable Bridges */
  --bs-body-font-family: var(--font-ui);
  --bs-body-color: var(--color-text);
  --bs-body-bg: var(--color-background);
  --bs-border-color: var(--color-border);
  --bs-primary: var(--color-primary);
  --bs-primary-rgb: 49, 87, 213;
}

[data-theme="dark"] {
  color-scheme: dark;
  --lm-page: #0D1321;
  --lm-surface: #151D2E;
  --lm-text: #F1F5F9;
  --lm-muted: #94A3B8;
  --lm-border: #29364D;
  --color-background: #0D1321;
  --color-surface: #151D2E;
  --color-surface-elevated: #1D273A;
  --color-border: #29364D;
  --color-control-border: #6D7D98;
  --color-text: #F1F5F9;
  --color-text-secondary: #94A3B8;
  --color-primary: #6D8BFF;
  --color-primary-hover: #89A1FF;
  --color-secondary: #2DD4BF;
  --color-on-primary: #0D1321;
  --color-focus: #6D8BFF;
  --color-teal-soft: #11352F;
  --color-teal-text: #80E5D6;
  --color-success-soft: #123626;
  --color-success-text: #88DDB2;
  --color-warning-soft: #3C2D17;
  --color-warning-text: #FFD28B;
  --color-danger-soft: #3E2228;
  --color-danger-text: #FFADB7;
  --bs-primary-rgb: 109, 139, 255;
}

/* Shared primary controls also follow the independent administrator theme. */
:is([data-theme="dark"], [data-admin-theme="dark"]) {
  --lm-button-disabled-bg: #2A3546;
  --lm-button-disabled-border: #465367;
  --lm-button-disabled-text: #BBC5D4;
}
