/* ============================================================
   REVENUECAT THEME — снято с живого app.revenuecat.com
   Активна только при body.design-modern.
   Светлая/тёмная темы через html[data-bs-theme=...].
   ============================================================ */

/* ---------- Токены: светлая тема (база) ---------- */
body.design-modern {
    /* RC tokens */
    --rc-surface-root: #eef0f4;
    --rc-surface: #ffffff;
    --rc-surface-2: #f6f6f8;
    --rc-surface-3: #f0f0f4;
    --rc-border: #e0e0e0;
    --rc-border-2: #d4d4dd;
    --rc-text: #09090d;
    --rc-text-2: #5b5b68;
    --rc-text-3: #8f8f9c;
    --rc-primary: #576cdb;
    --rc-primary-2: #2840bd;
    --rc-primary-hover: #6c7ee0;
    --rc-primary-tint: #eaedfb;
    --rc-success: #11d484;
    --rc-success-text: #00723a;
    --rc-success-bg: #ccf8e3;
    --rc-danger: #f2545b;
    --rc-danger-strong: #b0171f;
    --rc-danger-text: #971d1d;
    --rc-danger-bg: #ffdedb;
    --rc-warning-text: #ac592d;
    --rc-warning-bg: #ffdec4;
    --rc-info-bg: #f2f6ff;
    --rc-info-text: #4151a4;
    --rc-shadow: 0 2px 4px rgba(0,0,0,.06), 0 .5px 0 rgba(0,0,0,.06), 0 0 0 .5px rgba(0,0,0,.05);
    --rc-shadow-menu: 0 2px 4px rgba(0,0,0,.06), 0 .5px 0 rgba(0,0,0,.06), 0 0 0 .5px rgba(0,0,0,.05);
    --rc-radius: 8px;
    --rc-radius-lg: 12px;
    --rc-font-head: ObjectSans, Inter, sans-serif;

    /* Bootstrap vars */
    --bs-body-bg: var(--rc-surface-root);
    --bs-body-color: var(--rc-text);
    --bs-secondary-color: var(--rc-text-2);
    --bs-tertiary-bg: var(--rc-surface-2);
    --bs-secondary-bg: var(--rc-surface-3);
    --bs-border-color: var(--rc-border);
    --bs-border-radius: var(--rc-radius);
    --bs-border-radius-sm: 6px;
    --bs-border-radius-lg: var(--rc-radius-lg);
    --bs-primary: var(--rc-primary);
    --bs-primary-rgb: 87, 108, 219;
    --bs-link-color: var(--rc-primary);
    --bs-link-hover-color: var(--rc-primary-2);
    --bs-link-color-rgb: 87, 108, 219;
    --bs-link-hover-color-rgb: 40, 64, 189;
    --bs-emphasis-color: var(--rc-text);
    --bs-warning-bg-subtle: var(--rc-warning-bg);
    --bs-success-bg-subtle: var(--rc-success-bg);
    --bs-danger-bg-subtle: var(--rc-danger-bg);

    /* Legacy-переменные old dark-theme (используются inline во вьюхах) */
    --dark-bg: var(--rc-surface-root);
    --dark-surface: var(--rc-surface);
    --dark-surface-2: var(--rc-surface-2);
    --dark-surface-3: var(--rc-surface-3);
    --dark-border: var(--rc-border);
    --dark-border-2: var(--rc-border-2);
    --accent: var(--rc-primary);
    --accent-light: var(--rc-primary-hover);
    --accent-glow: rgba(87,108,219,.25);
    --accent-gradient: linear-gradient(180deg, var(--rc-primary) 0%, var(--rc-primary-2) 100%);
    --green: var(--rc-success);
    --green-soft: var(--rc-success-bg);
    --red: var(--rc-danger);
    --red-soft: var(--rc-danger-bg);
    --yellow: #f28d09;
    --yellow-soft: var(--rc-warning-bg);
    --text-primary: var(--rc-text);
    --text-secondary: var(--rc-text-2);
    --text-muted: var(--rc-text-3);
    --text-accent: var(--rc-primary);
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 14px;
    --shadow-sm: var(--rc-shadow);
    --shadow-md: var(--rc-shadow);
    --shadow-lg: 0 8px 30px rgba(0,0,0,.10);
    --shadow-glow: none;

    font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
    font-size: .875rem;
    background: var(--rc-surface-root) !important;
    color: var(--rc-text);
}

/* Масштаб 90%: через rem-скейлинг (zoom ломает позиционирование
   выпадающих списков select2/daterangepicker) */
html:has(body.design-modern) { font-size: 90%; }

/* ---------- Токены: тёмная тема ---------- */
html[data-bs-theme="dark"] body.design-modern {
    --rc-surface-root: #121212;
    --rc-surface: #1e1e1e;
    --rc-surface-2: #292929;
    --rc-surface-3: #303030;
    --rc-border: #333333;
    --rc-border-2: #4e4e4e;
    --rc-text: #ffffff;
    --rc-text-2: #c1c1c1;
    --rc-text-3: #8f8f9c;
    --rc-primary: #7f94ff;
    --rc-primary-2: #576cdb;
    --rc-primary-hover: #93a5ff;
    --rc-primary-tint: rgba(127,148,255,.12);
    --rc-success-text: #5ede9f;
    --rc-success-bg: #1d573f;
    --rc-danger-text: #ffa59f;
    --rc-danger-bg: #502224;
    --rc-warning-text: #ffb076;
    --rc-warning-bg: #4d2321;
    --rc-info-bg: rgba(127,148,255,.12);
    --rc-info-text: #b1bcff;
    --rc-shadow: 0 2px 4px rgba(0,0,0,.30), 0 0 0 .5px rgba(255,255,255,.06);
    --rc-shadow-menu: 0 6px 18px rgba(0,0,0,.45), 0 0 0 .5px rgba(255,255,255,.08);

    --bs-primary-rgb: 127, 148, 255;
    --bs-link-color-rgb: 127, 148, 255;
    --bs-link-hover-color-rgb: 147, 165, 255;
    --bs-link-hover-color: var(--rc-primary-hover);

    --accent-glow: rgba(127,148,255,.25);
    --yellow: #fd9b46;
    --shadow-lg: 0 8px 30px rgba(0,0,0,.5);
}

/* ============================================================
   Типографика
   ============================================================ */
body.design-modern h1, body.design-modern h2, body.design-modern h3,
body.design-modern h4, body.design-modern h5, body.design-modern h6,
body.design-modern .admin-logo,
body.design-modern .fs-3.fw-bold,
body.design-modern header .fw-semibold {
    font-family: var(--rc-font-head);
    letter-spacing: -.01em;
}
body.design-modern .btn,
body.design-modern .form-control,
body.design-modern .form-select,
body.design-modern .dropdown-menu,
body.design-modern .table {
    font-size: .875rem;
}
body.design-modern .form-label {
    font-size: .75rem;
    font-weight: 600;
}

/* ============================================================
   Каркас: фон, шапка, сайдбар
   ============================================================ */

/* --- Заголовок страницы: из топбара в контент (как у RC) --- */
body.design-modern header .topbar-title { display: none; }
body.design-modern .rc-page-title {
    display: block !important;
    font-family: var(--rc-font-head);
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--rc-text);
    margin: .25rem 0 1.25rem;
}

/* --- Основная область: белая «простыня» на сером фоне --- */
body.design-modern main.container-fluid {
    background: var(--rc-surface);
    border-radius: 14px;
    box-shadow: var(--rc-shadow);
    padding: 1.5rem 1.75rem;
    margin: 0 .75rem .75rem .75rem;
    width: auto;
    flex: 1 1 auto;
}

/* --- Сайдбар: без кнопки «Выйти» (выход в меню аватара) и без гориз. скролла --- */
body.design-modern aside nav { overflow-x: hidden !important; }
body.design-modern aside div:has(> form[action*="logout"]),
body.design-modern .offcanvas div:has(> form[action*="logout"]) { display: none !important; }

/* --- Дашборд: крупные цифры фирменным шрифтом, больше воздуха --- */
body.design-modern .dash-card .fs-3 {
    font-family: var(--rc-font-head);
    font-weight: 700;
    font-size: 2.25rem !important;
    letter-spacing: -.02em;
}
body.design-modern .row.g-3:has(.dash-card) {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
}
html[data-bs-theme="light"] body.design-modern { background: #eef0f4 !important; }
html[data-bs-theme="dark"]  body.design-modern { background: #121212 !important; }

html[data-bs-theme="light"] body.design-modern header.sticky-top,
html[data-bs-theme="dark"]  body.design-modern header.sticky-top {
    background: var(--rc-surface-root) !important;
    border-bottom: 0 !important;
}

/* Сайдбар: как в RC — узкий, без бордеров и разделительных линий */
html[data-bs-theme="light"] body.design-modern aside,
html[data-bs-theme="dark"]  body.design-modern aside {
    background: var(--rc-surface-root) !important;
    border-right: 0 !important;
    width: 232px !important;
}

/* Подразделы на одном уровне с названием раздела (без сдвига вправо) */
body.design-modern aside .submenu > ul,
body.design-modern .offcanvas .submenu > ul {
    margin-left: 0 !important;
}
body.design-modern aside .border-bottom,
body.design-modern aside .border-top,
body.design-modern .offcanvas .border-bottom,
body.design-modern .offcanvas .border-top {
    border: 0 !important;
}
html[data-bs-theme="light"] body.design-modern .offcanvas,
html[data-bs-theme="dark"]  body.design-modern .offcanvas {
    background: var(--rc-surface-root) !important;
}

body.design-modern .admin-logo {
    background: none !important;
    -webkit-text-fill-color: var(--rc-text) !important;
    color: var(--rc-text) !important;
    font-weight: 700;
}

/* --- Меню сайдбара: пилюли как в RC --- */
html[data-bs-theme="light"] body.design-modern .nav .nav-link,
html[data-bs-theme="dark"]  body.design-modern .nav .nav-link {
    color: var(--rc-text) !important;
    font-weight: 400;
    border-radius: var(--rc-radius);
}
html[data-bs-theme="light"] body.design-modern .nav .nav-link:hover,
html[data-bs-theme="light"] body.design-modern .nav .has-children:hover > .nav-parent {
    background: rgba(0,0,0,.05) !important;
}
html[data-bs-theme="dark"] body.design-modern .nav .nav-link:hover,
html[data-bs-theme="dark"] body.design-modern .nav .has-children:hover > .nav-parent {
    background: rgba(255,255,255,.07) !important;
}
html[data-bs-theme="light"] body.design-modern .nav .nav-link.active,
html[data-bs-theme="light"] body.design-modern .nav .has-children.open > .nav-parent {
    background: #ffffff !important;
    color: var(--rc-text) !important;
    font-weight: 600;
    box-shadow: var(--rc-shadow);
}
html[data-bs-theme="dark"] body.design-modern .nav .nav-link.active,
html[data-bs-theme="dark"] body.design-modern .nav .has-children.open > .nav-parent {
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    font-weight: 600;
}
html[data-bs-theme="light"] body.design-modern .nav .has-children .submenu .nav-link,
html[data-bs-theme="dark"]  body.design-modern .nav .has-children .submenu .nav-link {
    color: var(--rc-text-2) !important;
    font-weight: 400;
}
html[data-bs-theme="light"] body.design-modern .nav .has-children .submenu .nav-link:hover { background: rgba(0,0,0,.05) !important; color: var(--rc-text) !important; }
html[data-bs-theme="dark"]  body.design-modern .nav .has-children .submenu .nav-link:hover { background: rgba(255,255,255,.07) !important; color: #fff !important; }
html[data-bs-theme="light"] body.design-modern .nav .has-children .submenu .nav-link.active {
    background: #ffffff !important;
    color: var(--rc-text) !important;
    font-weight: 600;
    box-shadow: var(--rc-shadow);
}
html[data-bs-theme="dark"] body.design-modern .nav .has-children .submenu .nav-link.active {
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    font-weight: 600;
}

/* ============================================================
   Карточки
   ============================================================ */
html[data-bs-theme="light"] body.design-modern .card,
html[data-bs-theme="dark"]  body.design-modern .card {
    background: var(--rc-surface) !important;
    border: 0 !important;
    border-radius: var(--rc-radius-lg);
    box-shadow: var(--rc-shadow);
}
html[data-bs-theme="light"] body.design-modern .card-header,
html[data-bs-theme="dark"]  body.design-modern .card-header {
    background: transparent !important;
    color: var(--rc-text) !important;
    border-bottom: 1px solid var(--rc-border) !important;
    font-weight: 600;
}
html[data-bs-theme="light"] body.design-modern .card-footer,
html[data-bs-theme="dark"]  body.design-modern .card-footer {
    background: transparent !important;
    border-top: 1px solid var(--rc-border) !important;
}

/* ============================================================
   Таблицы
   ============================================================ */
body.design-modern .table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--rc-text);
    --bs-table-border-color: var(--rc-border);
    --bs-table-striped-bg: var(--rc-surface-2);
    --bs-table-hover-bg: var(--rc-surface-2);
    --bs-table-hover-color: var(--rc-text);
}
body.design-modern .table thead th {
    background: var(--rc-surface-2) !important;
    color: var(--rc-text-2);
    font-weight: 600;
    font-size: .8125rem;
    border-bottom: 1px solid var(--rc-border);
}
body.design-modern .table td, body.design-modern .table th {
    border-color: var(--rc-border);
    padding-top: .65rem;
    padding-bottom: .65rem;
}
/* Единый светлый цвет всех линий таблиц (включая bordered-сетки) */
body.design-modern .table > :not(caption) > * > *,
body.design-modern .table-bordered > :not(caption) > * > * {
    border-color: var(--rc-border) !important;
}
body.design-modern .table-bordered { border-color: var(--rc-border) !important; }
body.design-modern .table > thead { border-bottom: 1px solid var(--rc-border); }
body.design-modern .table-light,
body.design-modern .table .table-light th {
    background: var(--rc-surface-2) !important;
    color: var(--rc-text) !important;
}
body.design-modern .table-active,
body.design-modern .table .table-active td {
    background: var(--rc-primary-tint) !important;
}

/* ============================================================
   Кнопки
   ============================================================ */
body.design-modern .btn { border-radius: var(--rc-radius); font-weight: 600; }

body.design-modern .btn-primary {
    background: linear-gradient(180deg, var(--rc-primary) 0%, var(--rc-primary-2) 100%);
    border: 1px solid rgba(255,255,255,.2);
    box-shadow: inset 0 1px 4px rgba(255,255,255,.08);
    color: #fff;
    transition: filter .12s ease;
}
body.design-modern .btn-primary:hover,
body.design-modern .btn-primary:focus,
body.design-modern .btn-primary:active {
    background: linear-gradient(180deg, var(--rc-primary) 0%, var(--rc-primary-2) 100%) !important;
    border-color: rgba(255,255,255,.2) !important;
    color: #fff !important;
    filter: brightness(1.12);
}

/* btn-dark используется как "второстепенная" кнопка на ряде страниц */
body.design-modern .btn-dark,
body.design-modern .btn-secondary,
body.design-modern .btn-light {
    background: var(--rc-surface);
    color: var(--rc-text);
    border: 0;
    box-shadow: var(--rc-shadow);
}
body.design-modern .btn-dark:hover,
body.design-modern .btn-secondary:hover,
body.design-modern .btn-light:hover {
    background: var(--rc-surface-2);
    color: var(--rc-text);
}

body.design-modern .btn-outline-secondary {
    color: var(--rc-text);
    border-color: var(--rc-border-2);
    background: var(--rc-surface);
}
body.design-modern .btn-outline-secondary:hover {
    background: var(--rc-surface-2);
    border-color: var(--rc-border-2);
    color: var(--rc-text);
}
body.design-modern .btn-outline-primary { color: var(--rc-primary); border-color: var(--rc-primary); }
body.design-modern .btn-outline-primary:hover { background: var(--rc-primary); border-color: var(--rc-primary); color: #fff; }
body.design-modern .btn-outline-primary.active,
body.design-modern .btn-check:checked + .btn-outline-primary {
    background: linear-gradient(180deg, var(--rc-primary) 0%, var(--rc-primary-2) 100%) !important;
    border-color: var(--rc-primary) !important;
    color: #fff !important;
}
body.design-modern .btn-outline-danger { color: var(--rc-danger); border-color: var(--rc-danger); }
body.design-modern .btn-outline-danger:hover { background: var(--rc-danger); border-color: var(--rc-danger); color: #fff; }
body.design-modern .btn-outline-info { color: var(--rc-primary); border-color: var(--rc-primary-tint); background: var(--rc-info-bg); }
body.design-modern .btn-outline-info:hover { background: var(--rc-primary); border-color: var(--rc-primary); color: #fff; }
body.design-modern .btn-outline-warning { color: var(--rc-warning-text); border-color: var(--rc-warning-bg); background: transparent; }
body.design-modern .btn-outline-warning:hover { background: var(--rc-warning-bg); color: var(--rc-warning-text); border-color: var(--rc-warning-bg); }
body.design-modern .btn-danger { background: var(--rc-danger-strong); border-color: var(--rc-danger-strong); }
body.design-modern .btn-warning { background: var(--rc-warning-bg); border-color: var(--rc-warning-bg); color: var(--rc-warning-text); }

/* ============================================================
   Бейджи — мягкие пилюли RC
   ============================================================ */
body.design-modern .badge {
    border-radius: 999px;
    font-weight: 600;
    padding: .35em .75em;
}
body.design-modern .badge.bg-success,
body.design-modern .badge.text-bg-success { background: var(--rc-success-bg) !important; color: var(--rc-success-text) !important; }
body.design-modern .badge.bg-danger,
body.design-modern .badge.text-bg-danger { background: var(--rc-danger-bg) !important; color: var(--rc-danger-text) !important; }
body.design-modern .badge.bg-warning,
body.design-modern .badge.text-bg-warning { background: var(--rc-warning-bg) !important; color: var(--rc-warning-text) !important; }
body.design-modern .badge.bg-info,
body.design-modern .badge.text-bg-info,
body.design-modern .badge.bg-primary,
body.design-modern .badge.text-bg-primary { background: var(--rc-primary-tint) !important; color: var(--rc-info-text) !important; }
body.design-modern .badge.bg-secondary,
body.design-modern .badge.text-bg-secondary { background: var(--rc-surface-3) !important; color: var(--rc-text-2) !important; }
body.design-modern .badge.text-bg-light,
body.design-modern .badge.bg-light { background: var(--rc-surface-2) !important; color: var(--rc-text-2) !important; border: 1px solid var(--rc-border) !important; }

/* ============================================================
   Формы
   ============================================================ */
body.design-modern .form-control,
body.design-modern .form-select {
    background: var(--rc-surface);
    border: 1px solid var(--rc-border-2);
    border-radius: var(--rc-radius);
    color: var(--rc-text);
}
body.design-modern .form-control::placeholder { color: var(--rc-text-3); }
body.design-modern .form-control:focus,
body.design-modern .form-select:focus {
    background: var(--rc-surface);
    color: var(--rc-text);
    border-color: var(--rc-primary);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), .18);
}
body.design-modern .form-control:disabled,
body.design-modern .form-select:disabled {
    background: var(--rc-surface-3);
    color: var(--rc-text-3);
}
body.design-modern .input-group-text {
    background: var(--rc-surface-2);
    border: 1px solid var(--rc-border-2);
    color: var(--rc-text-2);
    border-radius: var(--rc-radius);
}
body.design-modern .form-check-input:checked {
    background-color: var(--rc-primary);
    border-color: var(--rc-primary);
}
body.design-modern .form-text { color: var(--rc-text-3); }

/* select2 (bootstrap-5 theme) */
body.design-modern .select2-container--bootstrap-5 .select2-selection {
    background: var(--rc-surface);
    border: 1px solid var(--rc-border-2);
    border-radius: var(--rc-radius);
    color: var(--rc-text);
}
/* единый кегль с обычными инпутами */
body.design-modern .select2-container--bootstrap-5 .select2-selection,
body.design-modern .select2-container--bootstrap-5 .select2-selection__rendered,
body.design-modern .select2-container--bootstrap-5 .select2-selection__placeholder,
body.design-modern .select2-container--bootstrap-5 .select2-results__option,
body.design-modern .select2-container--bootstrap-5 .select2-search__field {
    font-size: .875rem !important;
}
body.design-modern .select2-container--bootstrap-5 .select2-dropdown {
    background: var(--rc-surface);
    border-color: var(--rc-border);
    border-radius: var(--rc-radius);
    color: var(--rc-text);
}
body.design-modern .select2-container--bootstrap-5 .select2-results__option--highlighted {
    background: var(--rc-primary-tint);
    color: var(--rc-text);
}
body.design-modern .select2-container--bootstrap-5 .select2-selection__choice {
    background: var(--rc-surface-2);
    border-color: var(--rc-border-2);
    color: var(--rc-text);
}
/* Выбранные элементы мультивыбора: на 10% компактнее (везде) */
body.design-modern .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice {
    font-size: .7875rem !important;
    padding: .17em .45em;
    line-height: 1.45;
    border-radius: 6px;
}
body.design-modern .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice__remove {
    font-size: .7875rem;
    width: .9em;
    height: .9em;
}
html[data-bs-theme="dark"] body.design-modern .select2-container--bootstrap-5 .select2-search__field {
    background: transparent;
    color: var(--rc-text);
}
/* Видимость выбранных значений (single и multiple) в обеих темах */
body.design-modern .select2-container--bootstrap-5 .select2-selection__rendered,
body.design-modern .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
    color: var(--rc-text) !important;
}
body.design-modern .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice {
    color: var(--rc-text) !important;
}
body.design-modern .select2-container--bootstrap-5 .select2-results__option {
    color: var(--rc-text);
}
body.design-modern .select2-container--bootstrap-5 .select2-results__option--selected {
    background: var(--rc-primary-tint);
    color: var(--rc-text);
}
/* Крестик удаления чипса — чёрный SVG, в тёмной теме инвертируем */
html[data-bs-theme="dark"] body.design-modern .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice__remove {
    filter: invert(1) grayscale(100%) brightness(200%);
}
/* Стрелка single-селекта в тёмной теме */
html[data-bs-theme="dark"] body.design-modern .select2-container--bootstrap-5 .select2-selection--single {
    background-color: var(--rc-surface);
}
html[data-bs-theme="dark"] body.design-modern .select2-container--bootstrap-5 .select2-selection--single .select2-selection__arrow b {
    border-top-color: var(--rc-text-2);
}

/* ============================================================
   Табы / сегмент-контролы
   ============================================================ */
body.design-modern .nav-underline .nav-link,
body.design-modern .nav-tabs .nav-link {
    color: var(--rc-text-2);
}
body.design-modern .nav-underline .nav-link.active,
body.design-modern .nav-tabs .nav-link.active {
    color: var(--rc-text);
    font-weight: 600;
    border-color: var(--rc-primary);
}
body.design-modern .nav-pills .nav-link.active {
    background: var(--rc-primary);
    color: #fff;
}

/* ============================================================
   Дропдауны, модалки, попапы, тосты
   ============================================================ */
body.design-modern .dropdown-menu {
    background: var(--rc-surface);
    border: 0;
    border-radius: 10px;
    box-shadow: var(--rc-shadow-menu);
    color: var(--rc-text);
}
body.design-modern .dropdown-item { color: var(--rc-text); border-radius: 6px; }
body.design-modern .dropdown-item:hover { background: var(--rc-surface-2); color: var(--rc-text); }
body.design-modern .dropdown-divider { border-color: var(--rc-border); }

body.design-modern .modal-content {
    background: var(--rc-surface);
    border: 0;
    border-radius: var(--rc-radius-lg);
    box-shadow: var(--rc-shadow-menu);
    color: var(--rc-text);
}
body.design-modern .modal-header, body.design-modern .modal-footer { border-color: var(--rc-border); }
body.design-modern .btn-close { filter: none; }
html[data-bs-theme="dark"] body.design-modern .btn-close { filter: invert(1) grayscale(100%) brightness(200%); }

/* ============================================================
   Алерты
   ============================================================ */
body.design-modern .alert { border: 0; border-radius: var(--rc-radius-lg); box-shadow: var(--rc-shadow); }
body.design-modern .alert-success { background: var(--rc-success-bg); color: var(--rc-success-text); }
body.design-modern .alert-danger  { background: var(--rc-danger-bg);  color: var(--rc-danger-text); }
body.design-modern .alert-warning { background: var(--rc-warning-bg); color: var(--rc-warning-text); }
body.design-modern .alert-info    { background: var(--rc-info-bg);    color: var(--rc-info-text); }

/* ============================================================
   Пагинация, прогресс, аватар-меню
   ============================================================ */
body.design-modern .pagination { --bs-pagination-active-bg: var(--rc-primary); --bs-pagination-active-border-color: var(--rc-primary); }
body.design-modern .progress { background: var(--rc-surface-3); border-radius: 999px; }
body.design-modern .progress-bar { background: var(--rc-primary); }

html[data-bs-theme="light"] body.design-modern .avatar-btn { background: #111; color: #fff; }
html[data-bs-theme="dark"]  body.design-modern .avatar-btn { background: #e8eaf0; color: #111; }
body.design-modern .user-menu { box-shadow: var(--rc-shadow-menu); }

/* ============================================================
   Разное: текстовые утилиты, daterangepicker, скроллбары
   ============================================================ */
body.design-modern .text-muted { color: var(--rc-text-3) !important; }
body.design-modern .bg-light-subtle,
html[data-bs-theme="light"] body.design-modern .bg-light-subtle,
html[data-bs-theme="light"] body.design-modern .card-header.bg-light-subtle {
    background: var(--rc-surface-2) !important;
    color: var(--rc-text) !important;
}
body.design-modern a { text-decoration: none; }
body.design-modern a:hover { text-decoration: underline; }
body.design-modern .btn:hover, body.design-modern .nav-link:hover { text-decoration: none; }

html[data-bs-theme="dark"] body.design-modern .daterangepicker {
    background: var(--rc-surface); border-color: var(--rc-border); color: var(--rc-text);
}
html[data-bs-theme="dark"] body.design-modern .daterangepicker .calendar-table {
    background: var(--rc-surface); border-color: var(--rc-border);
}
html[data-bs-theme="dark"] body.design-modern .daterangepicker td.off { background: transparent; color: var(--rc-text-3); }
html[data-bs-theme="dark"] body.design-modern .daterangepicker td.available:hover { background: var(--rc-surface-2); }
body.design-modern .daterangepicker td.active { background: var(--rc-primary) !important; }

html[data-bs-theme="dark"] body.design-modern ::-webkit-scrollbar { width: 10px; height: 10px; }
html[data-bs-theme="dark"] body.design-modern ::-webkit-scrollbar-thumb { background: var(--rc-border-2); border-radius: 999px; }
html[data-bs-theme="dark"] body.design-modern ::-webkit-scrollbar-track { background: transparent; }
