  :root{
    /* ---- Петербургский Digital Urban: светлая база ---- */
    --bg-main:#F4F7FB;
    --bg-secondary:#EAF1F8;
    --surface:#FFFFFF;
    --surface-soft:#F8FAFD;

    --bg-app:var(--bg-main);
    --bg-sidebar:#FFFFFF;
    --bg-panel:var(--surface-soft);
    --bg-card:var(--surface);
    --bg-card-alt:var(--bg-secondary);
    --bg-card-hover:#F1F6FC;
    --border-subtle:#DDE5EF;
    --border-strong:#C8D4E2;

    --text-hi:#10233F;
    --text-mid:#5F7087;
    --text-low:#8A98AA;
    --text-disabled:#B7C1CE;

    --text-on-dark:#FFFFFF;
    --text-on-muted:#E7EEF7;
    --text-on-accent:#FFFFFF;
    --text-on-accent-dark:#0B1B2E;
    --surface-readable:#102238;
    --surface-readable-2:#193049;

    --primary-dark:#12345B;
    --primary:#246BFD;
    --primary-hover:#1454D8;
    --primary-soft:#DCEAFF;

    --accent:var(--primary);
    --accent-2:#4C86FF;
    --accent-deep:var(--primary-dark);
    --accent-soft:rgba(36,107,253,0.12);
    --accent-soft-strong:rgba(36,107,253,0.24);

    --progress:#19AFA3;
    --progress-soft:#DDF7F3;
    --event:#F0A43A;
    --event-soft:#FFF2D9;
    --danger:#D94B56;
    --danger-soft:#FDE7EA;
    --cyan:#2CCBD3;
    --violet:#735CFF;
    --violet-soft:rgba(115,92,255,0.14);

    --good:var(--progress);
    --good-soft:rgba(25,175,163,0.14);
    --warn:var(--event);
    --warn-soft:rgba(240,164,58,0.16);
    --bad:var(--danger);
    --bad-soft:rgba(217,75,86,0.12);
    --info:var(--cyan);
    --info-soft:rgba(44,203,211,0.14);

    /* тёмные варианты для текста поверх бледных плашек — нужны для контраста WCAG AA на светлом фоне */
    --good-strong:#0E7A72;
    --warn-strong:#9C6A15;
    --bad-strong:#A13640;
    --info-strong:#127880;

    --dark-bg:#081A32;
    --dark-panel:#102238;
    --dark-secondary:#24405C;

    --radius-lg:18px;
    --radius-md:12px;
    --radius-sm:9px;
    --sidebar-w:236px;
    --rightcol-w:328px;
    --shadow-card:0 8px 30px rgba(22,52,91,0.08);
  }
