/* Subject palette: blueprint blue, paper grounds, graphite ink. */
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/plex-cyrillic.woff2") format("woff2"); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/plex-latin.woff2") format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
:root {
  --sort-control-height: 44px;
  --sort-control-padding: 8px;
  --bg: #f3f4f7;
  --surface: #ffffff;
  --surface-alt: #f8f9fb;
  --border: #e4e7ec;
  --border-strong: #cfd4dc;
  --text: #14171c;
  --text-secondary: #4b5566;
  --muted: #5b6470;

  --accent: #2f5fdb;
  --accent-hover: #2650bd;
  --accent-light: #eaf0ff;
  --accent-contrast: #ffffff;

  --green: #17874a;
  --green-light: #e7f7ee;
  --amber: #b5650a;
  --amber-light: #fdf1e3;
  --red: #c8281f;
  --red-light: #fdecec;
  --grey: #9aa1ab;
  --grey-light: #eef0f3;

  --radius-sm: 7px;
  --radius-md: 10px;
  --radius-lg: 14px;

  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.06);
  --shadow-md: 0 4px 16px rgba(16, 24, 40, 0.08);
  --shadow-lg: 0 16px 40px rgba(16, 24, 40, 0.16);

  --sidebar-w: 236px;
  --topbar-h: 58px;

  --font: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color-scheme: light;

  --ink: #14171c;
  --muted-strong: #4b5566;
  --surface-2: #f8f9fb;
  --accent-soft: #eaf0ff;
  --accent-text: #2f5fdb;
  --accent-fill: #2f5fdb;
  --accent-on-fill: #ffffff;
}

@media screen {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #141b26;
    --surface: #1e2937;
    --surface-alt: #253242;
    --border: #3b4a5d;
    --border-strong: #536478;
    --text: #f1f5fa;
    --text-secondary: #cbd5e1;
    --muted: #acbbcb;
    --accent: #a7c0ff;
    --accent-hover: #c1d1ff;
    --accent-light: #243b64;
    --accent-contrast: #12203a;
    --green: #80d9aa;
    --green-light: #1b3d31;
    --amber: #ffcb84;
    --amber-light: #47351f;
    --red: #ffa5a2;
    --red-light: #4d292d;
    --grey: #8796aa;
    --grey-light: #303d4d;
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.2);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.4);
  
  --ink: #f1f5fa;
  --muted-strong: #cbd5e1;
  --surface-2: #253242;
  --accent-soft: #243b64;
  --accent-text: #a7c0ff;
  --accent-fill: #a7c0ff;
  --accent-on-fill: #12203a;
}
  :root:not([data-theme="light"]) .btn-primary,
  :root:not([data-theme="light"]) .btn-refresh,
  :root:not([data-theme="light"]) .btn-preset.active,
  :root:not([data-theme="light"]) .subtab.active { color: var(--accent-contrast); }
  :root:not([data-theme="light"]) .brand-mark,
  :root:not([data-theme="light"]) .login-brand-mark { background: var(--accent); color: var(--accent-contrast); }
}

