/* ============================================================
   FMS Admin — SaaS-шелл v2 «Список → Карточка» (2026-07-12).
   Структура одобрена по макету /admin-mockup.
   Подключается ПОСЛЕДНИМ и перебивает старые слои admin.css.
   Экраны: data-admin-screen="list" | "detail" на .admin-app.
   ============================================================ */

body.admin-page {
  --fms-teal: #139fb8;
  --fms-teal-dark: #0e7d92;
  --fms-teal-light: #62c2d0;
  --fms-teal-soft: #e8f6f9;
  --fms-teal-soft2: #d4eef3;
  --fms-ink: #131f22;
  --fms-muted: #64777c;
  --fms-line: #e2ebee;
  --fms-bg: #f5f8f9;
  --fms-amber: #e8a13c;
  --fms-red: #d64545;
  --admin-accent: #139fb8;
  --admin-accent-soft: #e0f3f7;
  --admin-ink: #131f22;
  --admin-line: rgba(19, 31, 34, 0.1);
  background: var(--fms-bg);
}

/* ─── Каркас: рейл + контент ─── */
.admin-app .admin-shell {
  display: grid !important;
  grid-template-columns: 224px minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: start !important;
}

/* ─── Рейл ─── */
.admin-app .admin-sidebar,
.admin-app .admin-console-nav {
  position: sticky !important;
  top: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
  width: auto !important;
  max-height: calc(100vh - 32px) !important;
  overflow: auto !important;
  padding: 18px 12px !important;
  background: #ffffff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 16px !important;
}
.admin-app .admin-sidebar-top { padding: 2px 10px 4px !important; }
.admin-app .admin-sidebar-copy .eyebrow { color: var(--fms-teal) !important; }
.admin-app .admin-sidebar-copy strong { font-size: 0.95rem !important; }

.admin-app .admin-sidebar-nav {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  justify-content: flex-start !important;
}
.admin-app .admin-sidebar-nav a {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  box-sizing: border-box !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border-radius: 11px !important;
  color: var(--fms-ink) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.admin-app .admin-sidebar-nav a:hover { background: var(--fms-teal-soft) !important; }
.admin-app .admin-sidebar-nav a.is-active,
.admin-app .admin-sidebar-nav a[aria-current="page"] {
  background: var(--fms-teal-soft) !important;
  color: var(--fms-teal-dark) !important;
}

/* ─── Низ рейла: «Выйти» ─── */
.admin-app .admin-sidebar-foot {
  margin-top: auto !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--fms-line) !important;
}
.admin-app .admin-sidebar-logout.admin-sidebar-logout {
  width: 100% !important;
  justify-content: center !important;
  min-height: 40px !important;
  border-radius: 11px !important;
  border-color: var(--fms-line) !important;
  background: #ffffff !important;
  color: var(--fms-muted) !important;
}
.admin-app .admin-sidebar-logout:hover { border-color: var(--fms-teal-light) !important; color: var(--fms-teal-dark) !important; }

/* ─── Гамбург ─── */
.admin-burger {
  position: fixed !important;
  top: 14px !important;
  left: 14px !important;
  z-index: 60 !important;
  width: 42px !important; height: 42px !important;
  display: none !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  padding: 0 !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 11px !important;
  background: #ffffff !important;
  cursor: pointer !important;
  box-shadow: 0 2px 10px rgba(19, 31, 34, 0.08) !important;
}
.admin-burger span { display: block; width: 18px; height: 2px; background: var(--fms-teal-dark); border-radius: 2px; }

/* ════════════════════════════════════════════
   ЭКРАН «СПИСОК»: только таблица клиентов
   ════════════════════════════════════════════ */
.admin-app .admin-clients-layout.admin-clients-layout.admin-clients-layout {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
}

/* переключение экранов (повтор класса - чтобы перебить старые
   сверхспецифичные селекторы admin.css с двойными атрибутами) */
.admin-app[data-admin-screen="list"] .admin-workspace-grid.admin-workspace-grid.admin-workspace-grid { display: none !important; }
.admin-app[data-admin-screen="detail"] .admin-company-browser.admin-company-browser.admin-company-browser { display: none !important; }
.admin-app[data-admin-screen="detail"] .admin-workspace-grid.admin-workspace-grid.admin-workspace-grid { display: block !important; }

.admin-app .admin-company-browser.admin-company-browser.admin-company-browser {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 1080px !important;
  max-height: none !important;
  margin: 0 auto !important;
  overflow: visible !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  order: 0 !important;
}

/* Заголовок списка: Клиенты · чипы · +Новый клиент */
.admin-app .admin-panel-head.admin-panel-head.admin-panel-head {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.admin-app .admin-list-headrow.admin-list-headrow {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  margin-bottom: 16px !important;
}
.admin-app .admin-list-headrow h2 {
  order: 0 !important;
  margin: 0 !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
}
.admin-app .admin-list-headrow .admin-stats { order: 1 !important; }
.admin-app .admin-list-headrow .button--primary {
  order: 2 !important;
  margin-left: auto !important;
  width: auto !important;
}

/* Статы как чипы */
.admin-app .admin-stats,
.admin-app .admin-console-stats {
  display: flex !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.admin-app .admin-stats article {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: #fff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 999px !important;
  padding: 3px 12px !important;
  margin: 0 !important;
  box-shadow: none !important;
}
.admin-app .admin-stats article span {
  color: var(--fms-muted) !important;
  font-size: 0.78rem !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.admin-app .admin-stats article strong {
  font-size: 0.9rem !important;
  color: var(--fms-ink) !important;
}

/* Панель инструментов */
.admin-app .admin-company-tools.admin-company-tools.admin-company-tools {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
.admin-app .admin-company-search { flex: 1 1 240px !important; max-width: 360px !important; margin: 0 !important; }
.admin-app .admin-company-search input {
  width: 100% !important;
  min-height: 40px !important;
  padding: 8px 13px !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 11px !important;
  background: #fff !important;
}
.admin-app .admin-company-filters {
  display: flex !important;
  gap: 3px !important;
  background: #fff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 11px !important;
  padding: 3px !important;
}
.admin-app .admin-company-filter {
  border: 0 !important;
  background: transparent !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  min-height: 32px !important;
  color: var(--fms-muted) !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
}
.admin-app .admin-company-filter.is-active {
  background: var(--fms-teal-soft) !important;
  color: var(--fms-teal-dark) !important;
}
.admin-app .admin-company-filters + .admin-company-filter,
.admin-app [data-admin-companies-csv] {
  border: 1px solid var(--fms-line) !important;
  background: #fff !important;
  border-radius: 11px !important;
  color: var(--fms-muted) !important;
}
.admin-app .admin-company-sort { margin: 0 !important; }
.admin-app .admin-company-sort select {
  min-height: 40px !important;
  padding: 8px 10px !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: var(--fms-muted) !important;
}
.admin-app .admin-company-count { color: var(--fms-muted) !important; font-size: 0.82rem !important; margin: 0 0 8px !important; }

/* Список = строки таблицы */
.admin-app .admin-company-list {
  display: block !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
.admin-app .admin-company-list article { position: relative !important; }
.admin-app .admin-company-item {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 14px 48px 14px 18px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--fms-line) !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
  transform: none !important;
  text-align: left !important;
  cursor: pointer !important;
}
.admin-app .admin-company-list article:last-child .admin-company-item { border-bottom: 0 !important; }
.admin-app .admin-company-item:hover { background: var(--fms-teal-soft) !important; }
.admin-app .admin-company-item.is-active { background: #fff !important; }
.admin-app .admin-company-item strong { font-size: 0.95rem !important; }
.admin-app .admin-company-item span,
.admin-app .admin-company-item em {
  color: var(--fms-muted) !important;
  font-size: 0.83rem !important;
  font-style: normal !important;
}
.admin-app .admin-company-expiry { font-weight: 700 !important; }
.admin-app .admin-company-delete {
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  background: transparent !important;
  color: #b6c4c9 !important;
  font-size: 1rem !important;
  cursor: pointer !important;
  padding: 8px !important;
}
.admin-app .admin-company-delete:hover { color: var(--fms-red) !important; }

/* Строка-таблица клиента: колонки Компания/Руководитель/Тариф/Оплачен до/Статус + меню ⋯ */
.admin-app .admin-company-list article.admin-company-row {
  display: flex !important;
  align-items: stretch !important;
  border-bottom: 1px solid var(--fms-line) !important;
}
.admin-app .admin-company-list article.admin-company-row:last-child { border-bottom: 0 !important; }
.admin-app .admin-company-row .admin-company-item {
  display: grid !important;
  grid-template-columns: minmax(180px, 2fr) minmax(120px, 1fr) minmax(90px, 0.7fr) minmax(100px, 0.85fr) minmax(150px, 1.1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 1 auto !important;
  width: auto !important;
  padding: 12px 14px !important;
  border-bottom: 0 !important;
}
.admin-app .admin-company-cell {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: var(--fms-muted) !important;
  font-size: 0.85rem !important;
}
.admin-app .admin-company-cell--name {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: normal !important;
}
.admin-app .admin-company-avatar {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: var(--fms-teal-soft) !important;
  color: var(--fms-teal-dark) !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
}
.admin-app .admin-company-cell-text {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 0 !important;
}
.admin-app .admin-company-cell-text strong {
  font-size: 0.95rem !important;
  color: var(--fms-ink) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.admin-app .admin-company-cell-text small {
  font-size: 0.78rem !important;
  color: var(--fms-muted) !important;
}
.admin-app .admin-company-cell--status {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: normal !important;
}
.admin-app .admin-company-status-dot {
  flex: 0 0 auto !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #b6c4c9 !important;
}
.admin-app .admin-company-status-dot.is-new { background: #b6c4c9 !important; }
.admin-app .admin-company-status-dot.is-active { background: #22a06b !important; }
.admin-app .admin-company-status-dot.is-expiring { background: #d69b1f !important; }
.admin-app .admin-company-status-dot.is-expired { background: var(--fms-red) !important; }

/* Меню «⋯»: нативный details/summary, поповер поверх строки */
.admin-app .admin-row-menu {
  position: relative !important;
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
}
.admin-app .admin-row-menu summary {
  list-style: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  margin-right: 8px !important;
  border-radius: 8px !important;
  color: var(--fms-muted) !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}
.admin-app .admin-row-menu summary::-webkit-details-marker { display: none !important; }
.admin-app .admin-row-menu summary:hover { background: var(--fms-teal-soft) !important; color: var(--fms-teal-dark) !important; }
.admin-app .admin-row-menu-popover {
  position: absolute !important;
  top: 100% !important;
  right: 8px !important;
  z-index: 20 !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 150px !important;
  padding: 6px !important;
  background: #fff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
}
.admin-app .admin-row-menu-item {
  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
  padding: 8px 10px !important;
  border-radius: 6px !important;
  font-size: 0.85rem !important;
  color: var(--fms-ink) !important;
  cursor: pointer !important;
}
.admin-app .admin-row-menu-item:hover { background: var(--fms-teal-soft) !important; }
.admin-app .admin-row-menu-item--danger { color: var(--fms-red) !important; }
.admin-app .admin-row-menu-item--danger:hover { background: rgba(214, 62, 62, 0.08) !important; }

/* Диагностика — вниз, ненавязчиво */
.admin-app .admin-system-diagnostics {
  max-width: 1080px !important;
  margin: 18px auto 0 !important;
  border: 0 !important;
  padding: 0 !important;
}

/* ════════════════════════════════════════════
   ЭКРАН «КАРТОЧКА КЛИЕНТА»
   ════════════════════════════════════════════ */
.admin-app .admin-workspace-grid,
.admin-app .admin-workspace {
  display: block !important;
  width: 100% !important;
  max-width: 1150px !important;
  margin: 0 auto !important;
  min-width: 0 !important;
}
.admin-app .admin-workspace > .admin-panel {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* Хлебная крошка + действия */
/* Специфичность утроена: .admin-panel-head (список клиентов, строка 151)
   и .admin-panel-head--row (карточка клиента) - один и тот же элемент носит
   оба класса, и без утроения фон карточки перебивался прозрачным фоном
   правила для списка. */
.admin-app .admin-panel-head--row.admin-panel-head--row.admin-panel-head--row {
  /* Липкая шапка карточки: заголовок и «Сохранить» всегда под рукой,
     не нужно скроллить вверх на длинной форме. */
  position: sticky !important;
  top: 0 !important;
  z-index: 8 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  padding: 10px 14px !important;
  margin: 0 0 14px !important;
  background: rgba(245, 248, 249, 0.94) !important;
  backdrop-filter: blur(6px) !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 12px !important;
}
.admin-app .admin-dirty-indicator {
  font-size: 0.8rem !important;
  color: var(--fms-muted) !important;
  white-space: nowrap !important;
}
.admin-app .admin-dirty-indicator.is-dirty {
  color: #d69b1f !important;
  font-weight: 600 !important;
}
.admin-app .admin-crumb-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  min-width: 0 !important;
}
.admin-app .admin-back-link {
  border: 0 !important;
  background: transparent !important;
  color: var(--fms-muted) !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  padding: 6px 4px !important;
  font-size: 0.9rem !important;
}
.admin-app .admin-back-link:hover { color: var(--fms-teal-dark) !important; }
.admin-app .admin-crumb-row h2 {
  margin: 0 !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
.admin-app .admin-paid-summary {
  margin: 0 !important;
  padding: 3px 12px !important;
  background: var(--fms-teal-soft) !important;
  color: var(--fms-teal-dark) !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
}

/* Вкладки */
.admin-app .admin-client-tabs {
  display: flex !important;
  gap: 2px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border-bottom: 2px solid var(--fms-line) !important;
  overflow-x: auto !important;
}
.admin-app .admin-client-tab {
  display: inline-flex !important;
  align-items: center !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  margin-bottom: -2px !important;
  background: transparent !important;
  padding: 9px 15px !important;
  min-height: 0 !important;
  color: var(--fms-muted) !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
.admin-app .admin-client-tab:hover { color: var(--fms-ink) !important; }
.admin-app .admin-client-tab.is-active {
  color: var(--fms-teal-dark) !important;
  border-bottom-color: var(--fms-teal) !important;
  background: transparent !important;
}
.admin-app .admin-client-tab span { display: none !important; }

/* Контент секции: одна колонка по центру */
.admin-app .admin-dashboard-container {
  display: block !important;
  max-width: 780px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.admin-app .admin-dashboard-column { display: contents !important; }

.admin-app [data-admin-section] { display: none !important; }
.admin-app[data-admin-client-view="overview"] [data-admin-section="overview"],
.admin-app[data-admin-client-view="profile"] [data-admin-section="profile"],
.admin-app[data-admin-client-view="schedule"] [data-admin-section="schedule"],
.admin-app[data-admin-client-view="integrations"] [data-admin-section="integrations"],
.admin-app[data-admin-client-view="access"] [data-admin-section="access"],
.admin-app[data-admin-client-view="report"] [data-admin-section="report"] {
  display: block !important;
  margin-bottom: 14px !important;
}

.admin-app .admin-card {
  background: #ffffff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 14px !important;
  padding: 22px !important;
  box-shadow: none !important;
}
.admin-app .admin-card--highlight {
  border-color: var(--fms-teal-light) !important;
  background: var(--fms-teal-soft) !important;
}
.admin-app .admin-card-header .eyebrow { color: var(--fms-teal) !important; }

/* Дополнительные настройки автообзвона: свёрнуты по умолчанию, как диагностика в «Системе» */
.admin-app .admin-advanced-settings {
  border: 1px solid var(--fms-line) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
}
.admin-app .admin-advanced-settings summary {
  list-style: none !important;
  cursor: pointer !important;
  font-weight: 600 !important;
  color: var(--fms-teal-dark) !important;
  font-size: 0.88rem !important;
}
.admin-app .admin-advanced-settings summary::-webkit-details-marker { display: none !important; }
.admin-app .admin-advanced-settings[open] summary { margin-bottom: 4px !important; }

/* Сотрудники: компактная строка вместо всегда открытой формы + модалка редактирования */
.admin-app .admin-staff-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 10px 12px !important;
  margin: 0 0 8px !important;
  background: #ffffff !important;
  border: 1px solid var(--fms-line) !important;
  border-radius: 10px !important;
}
.admin-app .admin-staff-row.is-dragging { opacity: 0.5 !important; }
.admin-app .admin-staff-drag-handle {
  flex: 0 0 auto !important;
  cursor: grab !important;
  color: var(--fms-muted) !important;
  padding: 4px !important;
}
.admin-app .admin-staff-status-dot {
  flex: 0 0 auto !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #22a06b !important;
}
.admin-app .admin-staff-status-dot.is-inactive { background: #b6c4c9 !important; }
.admin-app .admin-staff-summary-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
.admin-app .admin-staff-summary-text strong {
  font-size: 0.92rem !important;
  color: var(--fms-ink) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.admin-app .admin-staff-summary-text small {
  font-size: 0.78rem !important;
  color: var(--fms-muted) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.admin-app .admin-staff-remove {
  flex: 0 0 auto !important;
  border: 0 !important;
  background: transparent !important;
  color: #b6c4c9 !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  padding: 6px 8px !important;
}
.admin-app .admin-staff-remove:hover { color: var(--fms-red) !important; }

/* Модалка сотрудника переиспользует .admin-modal-overlay/.admin-modal (тот же shell, что у confirm-диалога) */
.admin-app .admin-staff-modal {
  max-width: 560px !important;
}
.admin-app .admin-staff-modal-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}
.admin-app .admin-staff-modal-head h4 {
  margin: 0 !important;
  font-size: 1.05rem !important;
}
.admin-app .admin-staff-modal-close {
  border: 0 !important;
  background: transparent !important;
  font-size: 1.2rem !important;
  line-height: 1 !important;
  color: var(--fms-muted) !important;
  cursor: pointer !important;
  padding: 4px 8px !important;
}
.admin-app .admin-staff-modal-close:hover { color: var(--fms-ink) !important; }

/* Визуальная нормализация полей форм: единая высота 44px, светлые бордеры вместо почти чёрных */
.admin-app .field input,
.admin-app .field select {
  min-height: 44px !important;
  padding: 12px 14px !important;
  border-color: var(--fms-line) !important;
}
.admin-app .field textarea {
  padding: 12px 14px !important;
  border-color: var(--fms-line) !important;
}
.admin-app .field input:focus,
.admin-app .field select:focus,
.admin-app .field textarea:focus {
  border-color: var(--fms-teal) !important;
}

.admin-app .button--primary {
  background: var(--fms-teal) !important;
  border-color: var(--fms-teal) !important;
  color: #fff !important;
}
.admin-app .button--primary:hover {
  background: var(--fms-teal-dark) !important;
  border-color: var(--fms-teal-dark) !important;
}

/* Вид «Партнёры»/«Система»: клиентский раздел полностью скрыт (id перебивает всё) */
.admin-app[data-admin-main-view="partners"] #admin-clients,
.admin-app[data-admin-main-view="system"] #admin-clients,
.admin-app[data-admin-main-view="system"] #admin-partners,
.admin-app[data-admin-main-view="clients"] #admin-system,
.admin-app[data-admin-main-view="partners"] #admin-system { display: none !important; }

.admin-app .admin-panel--system .admin-integration-status {
  margin-top: 4px !important;
}

/* Пустое состояние: нет клиентов — прячем карточку */
.admin-app.is-admin-empty .admin-panel-head--row.admin-panel-head--row.admin-panel-head--row,
.admin-app.is-admin-empty .admin-client-tabs,
.admin-app.is-admin-empty .admin-dashboard-container { display: none !important; }
.admin-app .admin-company-empty {
  padding: 42px 20px !important;
  text-align: center !important;
  color: var(--fms-muted) !important;
}
.admin-app .admin-company-empty .button { margin-top: 12px !important; }

/* ════════════════════════════════════════════
   Мобилка: рейл-drawer + гамбург
   ════════════════════════════════════════════ */
@media (max-width: 900px) {
  .admin-app .admin-shell { grid-template-columns: 1fr !important; gap: 14px !important; }
  .admin-burger { display: flex !important; }
  .admin-app .admin-sidebar,
  .admin-app .admin-console-nav {
    position: fixed !important;
    top: 0 !important;
    left: -110% !important;
    z-index: 55 !important;
    width: 78vw !important;
    max-width: 300px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    border-radius: 0 16px 16px 0 !important;
    transition: left 0.2s ease !important;
    box-shadow: 12px 0 40px rgba(0, 0, 0, 0.14) !important;
  }
  .admin-app.is-sidebar-open .admin-sidebar,
  .admin-app.is-sidebar-open .admin-console-nav { left: 0 !important; }
  body.admin-page .admin-main { padding-top: 8px; }
  .admin-app .admin-list-headrow { padding-top: 48px !important; }
  .admin-app .admin-panel-head--row.admin-panel-head--row.admin-panel-head--row { padding-top: 48px !important; }
  .admin-app .admin-company-item { padding-left: 14px !important; }
  .admin-app .admin-dirty-indicator,
  .admin-app .admin-shortcut-hint { display: none !important; }

  /* Строка клиента на мобилке — карточка, не сжатая таблица */
  .admin-app .admin-company-row .admin-company-item {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    padding: 14px 44px 14px 14px !important;
  }
  .admin-app .admin-company-cell--manager,
  .admin-app .admin-company-cell--tariff,
  .admin-app .admin-company-cell--paid {
    white-space: normal !important;
    font-size: 0.8rem !important;
  }
  .admin-app .admin-company-cell--manager::before { content: "Руководитель: " !important; }
  .admin-app .admin-company-cell--tariff::before { content: "Тариф: " !important; }
  .admin-app .admin-company-cell--paid::before { content: "Оплачен до: " !important; }
  .admin-app .admin-row-menu { position: absolute !important; right: 4px !important; top: 10px !important; }
}
