
/* шрифт вшит локально (без интернета) — Inter Variable из ./protoss-files/ */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("/protoss-files/InterVariable.woff2") format("woff2")}
/* ============ ВЕРБА · дизайн-система ============
   Идентичность: «графитовая консоль» — нейтральный тёмный графит (фон), серый текст,
   ОДИН синий (лазурный) акцент для выделения/выбора/действий. Красный — только запись/
   удаление/опасность. Моноширинный — для данных (таймкоды, GPU%, токены).
   Всё локально: ни одного внешнего интернет-ресурса (шрифт вшит из ./protoss-files/). */

:root{
  /* официальный логотип Verba (data-URI, встроен — внешних ресурсов нет) */
  --logo-url:url("/assets/logo.png");
  /* бренд — лазурно-синий акцент (моно-палитра: синий + серый) */
  --ink:#11161D; --ink-2:#222A35; --iris:#2E8FE0; --iris-600:#1F6FC2; --iris-300:#84BEF0;
  /* cyan свёрнут в синий, brass — в нейтральный сланцевый серый (моно) */
  --cyan:#84BEF0; --cyan-600:#2E8FE0; --brass:#9AA4B4; --brass-700:#6E7889;
  /* семантика (без изменений): зелёный/жёлтый — статус, красный — запись/удаление/опасность */
  --ok:#10B981; --warn:#F59E0B; --bad:#EF4444; --info:#5BB0F2; --rec:#FF6347;
  /* семантические псевдонимы статуса сообщений: success — зелёный, error/danger — красный.
     Едины для тостов, инлайн-ошибок форм и баннеров. Не вводить отдельных хардкод-цветов. */
  --success:var(--ok); --error:var(--bad); --danger:var(--bad);
  /* радиусы / тени / движение */
  --r-xs:3px; --r-sm:5px; --r-md:6px; --r-lg:9px; --r-xl:12px; --r-pill:6px;
  --ease:cubic-bezier(.22,.61,.36,1); --fast:140ms; --med:260ms; --slow:480ms;
  --shadow-1:0 1px 2px rgba(3,5,8,.30), 0 1px 1px rgba(3,5,8,.18);
  --shadow-2:0 10px 30px -12px rgba(3,5,8,.55), 0 4px 12px -8px rgba(3,5,8,.42);
  --shadow-3:0 30px 70px -28px rgba(2,3,5,.72);
  --ring:0 0 0 3px color-mix(in oklab, var(--iris) 45%, transparent);
  /* типографика */
  --font:"Inter","Segoe UI Variable",-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  --mono:ui-monospace,"SF Mono","Cascadia Code","JetBrains Mono","Roboto Mono",Menlo,Consolas,monospace;
  --sidebar-w:248px;
}

/* ---------- DARK (по умолчанию) — нейтральный графит, серый текст ---------- */
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0D1117; --bg-2:#11161D; --grad-bg:var(--bg);
  --surface:#161B22; --surface-2:#1C232C; --surface-3:#28313C;
  --elev:rgba(170,185,210,.05); --hairline:rgba(160,175,200,.11); --hairline-2:rgba(160,175,200,.06);
  --txt:#D5DAE2; --txt-2:#98A2B0; --txt-3:#5E6776; --txt-on:#0D1117;
  --glass:rgba(16,21,28,.66); --glass-brd:rgba(160,175,200,.10);
  --chip:rgba(160,175,200,.06); --chip-brd:rgba(160,175,200,.12);
  --accent-grad:var(--iris);
  --accent-soft:var(--surface-2);
}
/* ---------- LIGHT — чистый «технологичный» светлый: холодный белый + синий ---------- */
:root[data-theme="light"]{
  color-scheme:light;
  --bg:#EEF2F8; --bg-2:#E7ECF4;
  --grad-bg:#F1F4FA;   /* плоский фон (PyCharm-стиль, без градиента) */
  --surface:#FFFFFF; --surface-2:#F4F7FB; --surface-3:#E6ECF4;
  --elev:rgba(46,143,224,.07); --hairline:rgba(22,42,72,.13); --hairline-2:rgba(22,42,72,.07);
  --txt:#16202E; --txt-2:#4D596A; --txt-3:#687482; --txt-on:#FFFFFF;
  --glass:rgba(255,255,255,.74); --glass-brd:rgba(22,42,72,.10);
  --chip:rgba(22,42,72,.045); --chip-brd:rgba(22,42,72,.12);
  --accent-grad:var(--iris);   /* плоский синий, без градиента (PyCharm-стиль) */
  --accent-soft:#E6F1FC;
  --shadow-1:0 1px 2px rgba(22,42,72,.08), 0 1px 1px rgba(22,42,72,.05);
  --shadow-2:0 10px 30px -14px rgba(22,42,72,.22), 0 4px 12px -8px rgba(22,42,72,.14);
  --shadow-3:0 30px 70px -30px rgba(22,42,72,.30);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:hidden;max-width:100%}
body{
  margin:0; font-family:var(--font); background:var(--bg); color:var(--txt);
  font-size:15px; line-height:1.5; letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  background-image:var(--grad-bg); background-attachment:fixed; min-height:100vh;
}
h1,h2,h3,h4,p{margin:0}
button{font-family:inherit; cursor:pointer; border:none; background:none; color:inherit}
a{color:inherit; text-decoration:none}
::selection{background:color-mix(in oklab,var(--iris) 40%, transparent)}
:focus-visible{outline:none; box-shadow:var(--ring); border-radius:var(--r-xs)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--txt-3) 40%,transparent); border-radius:9px; border:2px solid transparent; background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:color-mix(in oklab,var(--txt-3) 70%,transparent); background-clip:padding-box}

.mono{font-family:var(--mono); font-feature-settings:"tnum" 1,"zero" 1; letter-spacing:-.02em}
.eyebrow{font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--txt-3)}
.fe{font-family:var(--mono); font-size:10px; font-weight:600; letter-spacing:.02em; color:var(--iris-300);
  background:var(--chip); border:1px solid var(--chip-brd); padding:1px 6px; border-radius:2px; white-space:nowrap}
:root[data-theme="light"] .fe{color:var(--iris-600)}

