/* =====================================================================
   BAZA — тема «Стекло» (glassmorphism): полупрозрачные матовые карточки
   поверх тёплого фона. Включается data-theme="glass" на <html>.
   Можно поставить своё фото фоном (кнопка «Фон» у переключателя темы).
   ===================================================================== */
[data-theme="glass"] {
  color-scheme: light;
  --surface-000: rgba(255, 255, 255, 0.40);
  --surface-100: rgba(255, 255, 255, 0.24);
  --surface-200: rgba(255, 255, 255, 0.36);
  --glass-solid: #f3f2ef;                  /* непрозрачный — для закреплённых колонок таблиц */
  --line: rgba(60, 60, 60, 0.12);
  --line-control: rgba(40, 40, 40, 0.35);
  --ink: #1c1c1e;
  --ink-muted: #5e5e63;
  --accent: #d23f0c;
  --accent-hover: #b3350a;
  --on-accent: #ffffff;
  --accent-soft: rgba(210, 63, 12, 0.10);
  --accent-text: #a3300a;
  --info: #1f5fd6; --info-soft: rgba(31, 95, 214, 0.10); --info-text: #1a4fb3;
  --success: #0b7a50; --success-soft: rgba(11, 122, 80, 0.12); --success-text: #07603e;
  --warning: #a65b00; --warning-soft: rgba(230, 150, 30, 0.16); --warning-text: #8a4b00;
  --danger: #c8243a; --danger-soft: rgba(200, 36, 58, 0.10); --danger-text: #a51c30;
  --sidebar-bg: rgba(255, 255, 255, 0.52);
  --sidebar-item-active: rgba(255, 255, 255, 0.75);
  --sidebar-text: #45454a;
  --sidebar-text-active: #111113;
  --sidebar-accent: #d23f0c;
  --shadow-card: 0 1px 0 rgba(255, 255, 255, 0.8) inset, 0 8px 28px -12px rgba(0, 0, 0, 0.18);
  --shadow-hover: 0 1px 0 rgba(255, 255, 255, 0.8) inset, 0 14px 36px -12px rgba(0, 0, 0, 0.24);
  --shadow-pop: 0 24px 60px -16px rgba(0, 0, 0, 0.30);
  --glass-blur: blur(26px) saturate(150%);
  --glass-edge: 1px solid rgba(255, 255, 255, 0.75);
  --an-other: #8e8e93;
}

/* ---------- фон ---------- */
[data-theme="glass"], [data-theme="glass"] body {
  background-color: #d8cdbf;
  background-image: url("glass-bg.jpg");          /* размытая комната — чтобы стекло было видно */
  background-position: center;
  background-attachment: fixed;
  background-size: cover;
}
/* своё фото фоном: --glass-photo задаётся из скрипта */
[data-theme="glass"].has-photo, [data-theme="glass"].has-photo body {
  background-image: linear-gradient(rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0.35)), var(--glass-photo);
  background-position: center; background-size: cover; background-attachment: fixed;
}
[data-theme="glass"] .crm-body, [data-theme="glass"] .crm-main, [data-theme="glass"] .page { background: transparent; }

/* ---------- матовое стекло ---------- */
[data-theme="glass"] :is(.bz-card, .an-card, .an-strip > div, .ads-strip > div, .table-card, .settings-card, .card-form,
    .cab-card, .u-card, .bd-card, .bd-new, .bd-app, .chart-card, .period-card, .calc-card, .review-card, .returns-card,
    .chats-list, .chat-window, .bz-stat, .modal, .pr-dlg, .bz-toast, .an-tip, .an-cal, .bd-tools, .bd-zoom, .bd-props,
    .bd-help, .bz-task, .bz-col, .tpl-item, .pm-group, .spp-promo, .bz-cmd, .grand-total-card) {
  background-color: transparent;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.66) 0%, rgba(255, 255, 255, 0.40) 100%);
  -webkit-backdrop-filter: var(--glass-blur);
  backdrop-filter: var(--glass-blur);
  border: var(--glass-edge);
}
[data-theme="glass"] :is(.bz-card, .an-card, .table-card, .bd-app) { border-radius: 18px; }
[data-theme="glass"] .an-card .an-card, [data-theme="glass"] .bz-card .bz-card { -webkit-backdrop-filter: none; backdrop-filter: none; }

/* переключатели-«таблетки» и поля */
[data-theme="glass"] :is(.bz-seg, .an-mode, .tabs, .fin-tabs) {
  background: rgba(255, 255, 255, 0.30);
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.45);
}
[data-theme="glass"] :is(.bz-seg a.is-active, .bz-seg button.is-active, .an-filters .bz-seg a.is-active, .tab-btn.active) {
  background: rgba(255, 255, 255, 0.85); box-shadow: 0 4px 14px -6px rgba(60, 38, 20, 0.35);
}
[data-theme="glass"] :is(.bz-input, input[type=text], input[type=search], input[type=password], input[type=number], input[type=date], select, textarea) {
  background-color: rgba(255, 255, 255, 0.55);
}
[data-theme="glass"] .bz-btn--secondary { background: rgba(255, 255, 255, 0.55); border-color: rgba(255, 255, 255, 0.7); }
[data-theme="glass"] .bz-btn--primary { box-shadow: 0 6px 16px -8px rgba(210, 63, 12, 0.55); }

/* таблицы: шапка и закреплённые колонки — плотнее, чтобы не просвечивали при прокрутке */
[data-theme="glass"] :is(.bz-table thead th, .an-table thead th) { background: rgba(255, 255, 255, 0.55); }
[data-theme="glass"] :is(.ads-table .ads-c0, .an-report td:first-child, .an-report th:first-child, .sticky-col, .pr-sticky,
    .ads-table th, .ads-table tfoot td) {
  background: rgba(246, 244, 240, 0.86) !important;
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
[data-theme="glass"] .bz-table tbody tr:hover td { background: rgba(255, 255, 255, 0.35); }

/* ---------- боковое меню ---------- */
[data-theme="glass"] .crm-sidebar {
  background: var(--sidebar-bg);
  -webkit-backdrop-filter: blur(28px) saturate(140%); backdrop-filter: blur(28px) saturate(140%);
  border-right: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 8px 0 40px -24px rgba(0, 0, 0, 0.25);
}
[data-theme="glass"] .crm-nav a.active, [data-theme="glass"] .crm-dd-btn.active { background: var(--sidebar-item-active); box-shadow: 0 4px 14px -8px rgba(0, 0, 0, 0.25); }
[data-theme="glass"] .crm-user { background: rgba(255, 255, 255, 0.55); }
[data-theme="glass"] .crm-username { color: var(--ink); }
[data-theme="glass"] .crm-nav-bottom { border-top-color: rgba(0, 0, 0, 0.08); }
[data-theme="glass"] .crm-sub li { border-left-color: rgba(0, 0, 0, 0.10); }
[data-theme="glass"] .theme-seg { background: rgba(255, 255, 255, 0.45); }
[data-theme="glass"] .theme-seg button.is-active { background: rgba(255, 255, 255, 0.95); box-shadow: 0 2px 8px -4px rgba(0, 0, 0, 0.3); }
/* логотип: на светлом стекле — тёмный */
.crm-logo-glass { display: none !important; }
[data-theme="glass"] .crm-logo-glass { display: block !important; }
[data-theme="glass"] .crm-logo:not(.crm-logo-glass) { display: none !important; }

/* шапка на телефоне (прилипает) */
[data-theme="glass"] .crm-header { background: transparent; }
@media (max-width: 900px) {
  [data-theme="glass"] .crm-header { background: rgba(255, 255, 255, 0.55); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
}

/* мелочи */
[data-theme="glass"] .flash { -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
[data-theme="glass"] .bd-canvas { background-color: rgba(255, 255, 255, 0.22); }
[data-theme="glass"] .an-plot .area { opacity: .22; }

/* ---------- переключатель темы в меню ---------- */
.theme-seg { display: flex; gap: 2px; margin: 8px 0 2px; padding: 3px; border-radius: 12px; background: var(--sidebar-item-active); }
.theme-seg button { flex: 1; display: flex; align-items: center; justify-content: center; gap: 4px; height: 30px; padding: 0 4px;
  border: 0; border-radius: 9px; background: transparent; color: var(--sidebar-text); font: 700 11.5px var(--font-sans); cursor: pointer; white-space: nowrap; }
.theme-seg button svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.theme-seg button:hover { color: var(--sidebar-text-active); }
.theme-seg button.is-active { background: rgba(255, 255, 255, 0.16); color: var(--sidebar-text-active); }
[data-theme="light"] .theme-seg button.is-active, :root:not([data-theme]) .theme-seg button.is-active { background: rgba(255, 255, 255, 0.14); }
.theme-photo { display: none; gap: 6px; margin: 4px 2px 0; font-size: 11.5px; font-weight: 700; }
[data-theme="glass"] .theme-photo { display: flex; }
.theme-photo button { border: 0; background: none; padding: 2px 4px; color: var(--sidebar-text); font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.theme-photo button:hover { color: var(--sidebar-text-active); }

/* браузеры без размытия — просто плотнее */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  [data-theme="glass"] { --surface-000: rgba(255, 252, 248, 0.92); --surface-100: rgba(255, 252, 248, 0.6); }
  [data-theme="glass"] .crm-sidebar { background: rgba(248, 247, 245, 0.96); }
}

/* подписи, которые лежат прямо на фоне (справа может быть тёмный шкаф) — на стеклянную плашку */
[data-theme="glass"] :is(.an-sync .bz-badge, .bd-save) {
  background: rgba(255, 255, 255, 0.78); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  padding: 4px 10px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.8);
}
[data-theme="glass"] .an-sync .bz-badge--success { color: var(--success-text); }

/* стекло внутри стекла — без второго слоя (иначе карточка становится почти белой и с двойной рамкой) */
[data-theme="glass"] :is(.bz-card, .an-card, .table-card, .card-form, .cab-card, .u-card, .bd-card, .chart-card, .period-card,
    .calc-card, .review-card, .returns-card, .bz-stat, .bz-col, .pm-group)
  :is(.bz-card, .an-card, .bz-stat, .table-card, .chart-card, .bz-task, .tpl-item, .pm-group, .spp-promo, .calc-card) {
  background-image: none; background-color: transparent;
  -webkit-backdrop-filter: none; backdrop-filter: none;
  border-color: transparent; box-shadow: none;
}
/* всплывающие окна и меню — плотное стекло, чтобы текст под ними не мешал */
[data-theme="glass"] :is(dialog, .modal, .pr-dlg, .au-dlg, .an-plan-pop, .an-cal, .an-tip, .bd-props, .bd-help, .bz-toast,
    .erp-pop, .dropdown, .menu-pop) {
  background-color: rgba(250, 249, 247, 0.92) !important; background-image: none !important;
  -webkit-backdrop-filter: blur(22px) saturate(140%); backdrop-filter: blur(22px) saturate(140%);
  border: 1px solid rgba(255, 255, 255, 0.8);
}
/* мелкие плитки внутри карточек — лёгкая подложка, без «белых полей» */
[data-theme="glass"] :is(.an-errix-cab, .au-kpis > div, .ads-camp-all > div, .spp-inf > div, .au-how > div, .fs-rows, .an-kv > div) {
  background-color: rgba(255, 255, 255, 0.22);
}
[data-theme="glass"] :is(.bz-table, .an-table) :is(td, th) { background-color: transparent; }
[data-theme="glass"] :is(.bz-table, .an-table) thead th { background-color: rgba(255, 255, 255, 0.28); }
/* ERP: свои плитки и кнопки */
[data-theme="glass"] :is(.erp-newdoc button, .erp-step, .erp-onboard a, .erp-sticky-actions) {
  background-color: transparent; background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.36));
  -webkit-backdrop-filter: var(--glass-blur); backdrop-filter: var(--glass-blur); border: var(--glass-edge);
}
[data-theme="glass"] .erp-seg a.is-active { background: rgba(255, 255, 255, 0.85); }
/* прокручиваемые таблицы (зарплата и др.) — тоже стекло; поля ввода — полупрозрачные, а не белые */
[data-theme="glass"] :is(.pr-scroll, .payroll-scroll, .postings-table-wrap, .fx-table-wrap) {
  background-color: transparent; background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.36));
  -webkit-backdrop-filter: var(--glass-blur); backdrop-filter: var(--glass-blur); border: var(--glass-edge);
}
[data-theme="glass"] :is(.bz-input, input[type=text], input[type=search], input[type=password], input[type=number], input[type=date], select, textarea) {
  background-color: rgba(255, 255, 255, 0.42); border-color: rgba(60, 60, 60, 0.18);
}
[data-theme="glass"] :is(.bz-input, input, select, textarea):focus { background-color: rgba(255, 255, 255, 0.8); }
[data-theme="glass"] .pr-table .wage-input:not(.has-value) { background-color: rgba(255, 255, 255, 0.22); }
[data-theme="glass"] :is(.pr-day td, .week-note-row td, .week-paid-row td) { background-color: transparent; }
