/* Тема «Светлая» (light) — нейтральная, системный интерфейсный шрифт, средние радиусы, тени мягкие.
   Резервная: правило :root держит страницу читаемой, если атрибут data-theme не успел встать. */
:root, [data-theme="light"] {
  color-scheme: light;

  /* цвет: поверхности и обводки */
  --bg: var(--p-slate-50);
  --surface-1: var(--p-slate-0);
  --surface-2: var(--p-slate-100);
  --surface-3: var(--p-slate-200);
  --surface-raised: var(--p-slate-0);
  --field-bg: var(--p-slate-0);
  --border: var(--p-slate-200);
  --border-strong: #7a8ca6;
  --border-raised: var(--p-slate-300);
  /* цвет: текст */
  --fg: var(--p-slate-900);
  --fg-muted: var(--p-slate-600);
  --link: var(--p-sky-700);
  --link-hover: var(--p-sky-800);
  /* цвет: акцент и статусы */
  --accent: var(--p-green-700);
  --on-accent: var(--p-slate-0);
  --success: var(--p-green-700);   --on-success: var(--p-slate-0);
  --warn: var(--p-amber-750);      --on-warn: var(--p-slate-0);
  --danger: var(--p-red-700);      --on-danger: var(--p-slate-0);
  --info: var(--p-sky-700);        --on-info: var(--p-slate-0);
  --notice: var(--p-orange-600);   --on-notice: var(--p-slate-900);
  --warn-fill: var(--p-amber-500);
  --soft-strength: 6%;
  /* цвет: фокус, выделение, оверлей, скроллбар */
  --ring: var(--p-slate-900);
  --selection-bg: #bfdbfe;
  --selection-fg: var(--p-slate-900);
  --overlay: var(--p-scrim-light);
  --scroll-thumb: var(--p-slate-300);
  --scroll-thumb-hover: var(--p-slate-500);
  /* цвет: код, логи, диффы, выделение найденного */
  --code-bg: var(--p-slate-100);
  --code-fg: var(--p-slate-900);
  --diff-add: var(--p-green-700);
  --diff-del: var(--p-red-700);
  --diff-hunk: var(--p-sky-700);
  --mark-bg: #fde68a;
  --mark-fg: var(--p-slate-900);
  /* цвет: серии графиков (различимы и без цвета — по порядку и маркерам) */
  --chart-1: var(--p-green-700); --chart-2: var(--p-sky-700); --chart-3: var(--p-amber-700);
  --chart-4: var(--p-red-700); --chart-5: var(--p-violet-700); --chart-6: var(--p-teal-700);

  /* типографика */
  --font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-heading: var(--font);
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-data: var(--font);
  --fs-xs: 12px; --fs-sm: 13px; --fs-md: 14px; --fs-base: 15px; --fs-lg: 16px; --fs-xl: 18px; --fs-2xl: 22px; --fs-3xl: 28px;
  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600; --fw-bold: 700; --heading-weight: 600;
  --lh-body: 1.5; --lh-tight: 1.25; --lh-loose: 1.65;
  --tracking-caps: .04em;

  /* форма */
  --r-xs: 4px; --r-sm: 6px; --r: 8px; --r-lg: 12px; --r-xl: 16px; --r-pill: 999px;
  --border-w: 1px; --focus-w: 2px; --focus-offset: 2px;
  --icon-size: 18px; --icon-stroke: 2;

  /* тени и elevation: мягкие, поверхности разделяет тень */
  --shadow: 0 1px 2px rgba(15, 23, 42, .06);
  --shadow-md: 0 6px 24px rgba(15, 23, 42, .12);
  --shadow-lg: 0 20px 60px rgba(15, 23, 42, .2);
  --shadow-sidebar: 10px 0 24px -10px rgba(15, 23, 42, .25);
  --shadow-focus: 0 0 0 3px var(--accent-soft);
  --shadow-mark: inset 0 -1px 0 var(--warn);

  /* плотность */
  --density: 1;
  --control-h: 38px; --control-h-sm: 32px; --nav-h: 40px;

  /* движение */
  --dur-fast: .15s; --dur: .18s; --dur-slow: .24s;
  --ease: cubic-bezier(.2, .8, .2, 1);

  /* состояния: hover = surface-2, active = surface-3; недоступное — сплошными цветами */
  --disabled-bg: var(--p-slate-100);
  --disabled-fg: var(--p-slate-500);
  --disabled-border: var(--p-slate-200);
}
