:root {
  color-scheme: light;
  --sre-root-font-size: 100%;

  /* Cloud is the no-script/default palette. ui-themes.css overrides these
     values after the persisted or system theme has been resolved. */
  --sre-background: #f5f7fb;
  --sre-background-rgb: 245, 247, 251;
  --sre-surface: #ffffff;
  --sre-surface-rgb: 255, 255, 255;
  --sre-surface-raised: #ffffff;
  --sre-surface-soft: #eef2f8;
  --sre-surface-hover: #f3f0fb;
  --sre-text: #162033;
  --sre-text-rgb: 22, 32, 51;
  --sre-muted: #5b6678;
  --sre-muted-rgb: 91, 102, 120;
  --sre-border: #d9e0ea;
  --sre-border-rgb: 217, 224, 234;
  --sre-border-strong: #9aa6b6;
  --sre-accent: #6f3ccf;
  --sre-accent-rgb: 111, 60, 207;
  --sre-accent-strong: #4f2aa6;
  --sre-accent-soft: #eee7ff;
  --sre-on-accent: #ffffff;

  --sre-font-sans: "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --sre-font-mono: "Cascadia Code", "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  --sre-slate-950: #0f172a;
  --sre-slate-900: #1e293b;
  --sre-slate-700: #334155;
  --sre-slate-600: #475569;
  --sre-slate-500: #64748b;
  --sre-slate-300: #cbd5e1;
  --sre-slate-200: #e2e8f0;
  --sre-slate-100: #f1f5f9;
  --sre-slate-50: #f8fafc;
  --sre-white: #ffffff;

  --sre-purple-700: #5b2eb3;
  --sre-purple-600: #6f3ccf;
  --sre-purple-100: #ede9fe;
  --sre-purple-50: #f7f5ff;

  --sre-success: #16794a;
  --sre-success-soft: #ecfdf3;
  --sre-success-border: #a7e2c0;
  --sre-warning: #9a5b08;
  --sre-warning-soft: #fffbeb;
  --sre-warning-border: #f5d889;
  --sre-danger: #b42318;
  --sre-danger-soft: #fff1f2;
  --sre-danger-border: #fecdd3;
  --sre-info: #175cd3;
  --sre-info-soft: #eff8ff;
  --sre-info-border: #b2ddff;

  --sre-sidebar-width: 17.5rem;
  --sre-sidebar-collapsed-width: 4.75rem;
  --sre-topbar-height: 4rem;
  --sre-content-max: 112rem;
  --sre-radius-sm: 0.375rem;
  --sre-radius-md: 0.625rem;
  --sre-radius-lg: 0.875rem;
  --sre-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05);
  --sre-shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --sre-shadow-lg: 0 24px 60px rgba(15, 23, 42, 0.14);
  --sre-focus-ring: 0 0 0 3px rgba(111, 60, 207, 0.24);

  --sre-space-1: 0.25rem;
  --sre-space-2: 0.5rem;
  --sre-space-3: 0.75rem;
  --sre-space-4: 1rem;
  --sre-space-5: 1.25rem;
  --sre-space-6: 1.5rem;
  --sre-space-8: 2rem;
  --sre-control-height: 2.625rem;
  --sre-row-padding-y: 0.75rem;
  --sre-panel-padding: 1.25rem;

  /* Compatibility tokens for existing page styles. */
  --rm-font-sans: var(--sre-font-sans);
  --rm-font-display: var(--sre-font-sans);
  --rm-background: var(--sre-background);
  --rm-ink: var(--sre-text);
  --rm-text: var(--sre-text);
  --rm-muted: var(--sre-muted);
  --rm-text-muted: var(--sre-muted);
  --rm-accent: var(--sre-accent);
  --rm-accent-strong: var(--sre-accent-strong);
  --rm-accent-soft: var(--sre-accent-soft);
  --rm-on-accent: var(--sre-on-accent);
  --rm-border: var(--sre-border);
  --rm-border-strong: var(--sre-border-strong);
  --rm-surface: var(--sre-surface);
  --rm-surface-raised: var(--sre-surface-raised);
  --rm-surface-soft: var(--sre-surface-soft);
  --rm-warn-soft: var(--sre-warning-soft);
  --rm-warn-border: var(--sre-warning-border);
  --rm-danger-soft: var(--sre-danger-soft);
  --rm-danger-border: var(--sre-danger-border);
  --rm-success-soft: var(--sre-success-soft);
  --rm-success-border: var(--sre-success-border);
  --rm-info-soft: var(--sre-info-soft);
  --rm-info-border: var(--sre-info-border);
  --rm-shadow: var(--sre-shadow-sm);
  --rm-lift: var(--sre-shadow-md);
  --rm-radius-lg: var(--sre-radius-lg);
  --rm-radius-md: var(--sre-radius-md);
  --rm-radius-sm: var(--sre-radius-sm);
  --text: var(--sre-text);
  --muted: var(--sre-muted);
  --border: var(--sre-border);
  --surface: var(--sre-surface);
  --accent: var(--sre-accent);
}

/* Interface scale sets this rem baseline inline so every value from 30–100%
   resizes the complete workspace without disturbing viewport-sized layouts,
   sticky positioning, or responsive breakpoints. */

/* Typeface choices use fonts already available on Windows and fall back to
   the system stack. The preference is applied in <head> before first paint. */
html[data-typeface="system"] {
  --sre-font-sans: "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

html[data-typeface="calibri"] {
  --sre-font-sans: Calibri, Carlito, "Segoe UI", system-ui, sans-serif;
}

html[data-typeface="arial"] {
  --sre-font-sans: Arial, Helvetica, system-ui, sans-serif;
}

html[data-typeface="tahoma"] {
  --sre-font-sans: Tahoma, Verdana, "Segoe UI", system-ui, sans-serif;
}

html[data-density="compact"] {
  --sre-space-2: 0.375rem;
  --sre-space-3: 0.625rem;
  --sre-space-4: 0.75rem;
  --sre-space-5: 1rem;
  --sre-space-6: 1.25rem;
  --sre-space-8: 1.5rem;
  --sre-control-height: 2.25rem;
  --sre-row-padding-y: 0.5rem;
  --sre-panel-padding: 1rem;
}
