@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');

:root {
  --bg: #fcf8f4;
  --bg-soft: #f8f1ea;
  --panel: #ffffff;
  --panel-soft: #fffaf6;
  --panel-muted: #f4ede6;
  --sidebar: #183b37;
  --sidebar-2: #214943;
  --sidebar-border: rgba(225, 241, 236, 0.08);
  --sidebar-text: rgba(244, 251, 248, 0.94);
  --sidebar-muted: rgba(214, 235, 228, 0.58);
  --sidebar-accent: rgba(63, 153, 135, 0.22);
  --sidebar-accent-strong: rgba(63, 153, 135, 0.4);
  --text: #263238;
  --text-soft: #536268;
  --text-faint: #7c8b90;
  --heading: #1f2a30;
  --primary: #3f9987;
  --primary-strong: #327c6d;
  --primary-soft: #e7f5f1;
  --accent: #f3e6d8;
  --accent-2: #fde4db;
  --border: #ece1d6;
  --border-strong: #dfd0c1;
  --success: #2c9a63;
  --success-soft: #e8f8ef;
  --warning: #f2b84a;
  --warning-soft: #fff5db;
  --danger: #d85c5c;
  --danger-soft: #feeceb;
  --info: #5f8ff4;
  --info-soft: #ebf2ff;
  --radius-xs: 10px;
  --radius-sm: 14px;
  --radius: 18px;
  --radius-lg: 24px;
  --shadow-xs: 0 1px 2px rgba(33, 46, 52, 0.04);
  --shadow-sm: 0 8px 24px rgba(33, 46, 52, 0.06);
  --shadow-md: 0 14px 34px rgba(33, 46, 52, 0.08);
  --shadow-lg: 0 24px 54px rgba(33, 46, 52, 0.12);
  --content-max: 1480px;
}

* { box-sizing: border-box; }
html, body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  background: var(--bg);
  color: var(--text);
  font-family: 'DM Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(243, 230, 216, 0.55), transparent 28%),
    radial-gradient(circle at bottom left, rgba(231, 245, 241, 0.75), transparent 26%);
  pointer-events: none;
  z-index: 0;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }
.hidden { display: none !important; }

h1, h2, h3, h4, h5, h6,
.page-title,
.card-title,
.section-kicker,
.brand-title,
.topbar-title,
.login-title,
.tenant-title,
.provision-preview-name,
.category-selector-title,
.kpi-value,
.dashboard-metric-value,
.audit-summary-value,
.diagnostic-kpi,
.compact-heading {
  font-family: 'Plus Jakarta Sans', 'DM Sans', sans-serif;
  letter-spacing: -0.02em;
}

.app-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 288px minmax(0, 1fr);
  min-height: 100vh;
}

.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 24px 18px 20px;
  background: linear-gradient(180deg, var(--sidebar) 0%, #173531 100%);
  border-right: 1px solid var(--sidebar-border);
  box-shadow: inset -1px 0 0 rgba(255,255,255,0.03);
}
.brand {
  display: flex;
  align-items: center;
  gap: 14px;
}
.brand-badge {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 16px;
  display: grid;
  place-items: center;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
  background: linear-gradient(135deg, #53b4a0 0%, #3f9987 55%, #327c6d 100%);
  box-shadow: 0 12px 28px rgba(18, 42, 39, 0.3);
}
.brand-title {
  color: var(--sidebar-text);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.1;
}
.brand-subtitle {
  margin-top: 3px;
  font-size: 11px;
  color: var(--sidebar-muted);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.nav,
.nav-grouped {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.nav-section-label {
  margin: 16px 10px 6px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--sidebar-muted);
}
.nav-btn {
  width: 100%;
  border: 0;
  background: transparent;
  color: rgba(244, 251, 248, 0.74);
  text-align: left;
  padding: 12px 14px;
  border-radius: 16px;
  font-size: 14px;
  font-weight: 500;
  transition: background 0.16s ease, color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}
.nav-btn:hover {
  background: rgba(255,255,255,0.045);
  color: var(--sidebar-text);
  transform: translateX(1px);
}
.nav-btn.active {
  background: linear-gradient(180deg, rgba(63, 153, 135, 0.28), rgba(63, 153, 135, 0.16));
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(112, 206, 183, 0.18);
}
.nav-spacer { flex: 1; }
.sidebar-footer,
.sidebar-user-card {
  margin-top: auto;
  padding: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.06);
  display: grid;
  gap: 8px;
}
.sidebar-user-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--sidebar-muted);
}
.sidebar .field-help { color: rgba(244, 251, 248, 0.72); }

.main {
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 28px;
  background: rgba(252, 248, 244, 0.86);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(223, 208, 193, 0.55);
}
.topbar-left-block {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.topbar-title {
  color: var(--heading);
  font-size: 18px;
  font-weight: 800;
}
.topbar-subtitle {
  color: var(--text-soft);
  font-size: 13px;
}
.topbar-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.page {
  width: 100%;
  max-width: var(--content-max);
  margin: 0 auto;
  padding: 28px;
}

.card,
.provision-panel,
.table-card,
.qr-card,
.category-card,
.product-card,
.catalog-editor-card,
.audit-summary-card,
.diagnostic-mini-card,
.diagnostic-note-card,
.diagnostic-context-card,
.diagnostic-detail-panel,
.dashboard-health-card,
.dashboard-incident-card,
.dashboard-feed-card,
.tenant-card,
.category-selector-card,
.catalog-item-row,
.priority-row,
.watch-row-v2,
.status-row-v2,
.audit-item,
.diagnostic-event,
.diagnostic-collapsible,
.table-shell,
.restaurant-table-shell {
  position: relative;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(236, 225, 214, 0.95);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
}
.card::after,
.provision-panel::after,
.table-card::after,
.qr-card::after,
.category-selector-card::after,
.catalog-item-row::after,
.priority-row::after,
.audit-item::after,
.diagnostic-event::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
}
.card.pad,
.card.login-card,
.provision-panel,
.table-card,
.qr-card,
.audit-summary-card,
.dashboard-health-card,
.dashboard-incident-card,
.dashboard-feed-card,
.diagnostic-mini-card,
.diagnostic-note-card,
.diagnostic-context-card,
.diagnostic-detail-panel,
.catalog-editor-card,
.table-shell,
.restaurant-table-shell {
  padding: 22px;
}
.card-header,
.page-header,
.page-header-tight,
.tenant-top,
.tenant-top-lovable,
.tables-qr-head,
.audit-header-row,
.dashboard-feed-topline,
.diagnostic-event-top,
.diagnostic-toolbar-topline,
.catalog-workspace-header,
.provision-panel-header,
.table-row-top,
.table-analytics-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.card-title,
.page-title,
.tenant-title,
.compact-heading {
  margin: 0;
  color: var(--heading);
  font-size: 19px;
  font-weight: 800;
}
.page-copy,
.card-copy,
.section-meta,
.dashboard-feed-copy,
.dashboard-health-note,
.audit-item-copy,
.diagnostic-context-notes,
.danger-zone-copy,
.login-copy,
.field-help,
.category-selector-meta,
.catalog-item-meta,
.watch-row-copy,
.status-row-label,
.scan-bar-label,
.audit-summary-label,
.dashboard-metric-label,
.kpi-sub {
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.55;
}
.section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding: 7px 12px;
  border-radius: 999px;
  background: var(--primary-soft);
  color: var(--primary-strong);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.grid { display: grid; gap: 16px; }
.grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.grid-4,
.dashboard-kpi-grid,
.summary-grid,
.restaurants-kpis,
.compact-kpis,
.settings-system-grid,
.settings-danger-grid,
.diagnostic-summary-row,
.diagnostic-summary-row-extended,
.diagnostic-health-grid,
.audit-summary-grid,
.lovable-info-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.dashboard-kpi-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dashboard-kpi-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dashboard-kpi-grid-5,
.dashboard-kpi-grid-v2 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.compact-grid,
.diagnostic-grid-dense,
.audit-filters-grid,
.form-grid,
.diagnostic-filter-grid,
.diagnostic-filter-grid-compact,
.settings-switch-grid,
.table-editor-grid,
.provision-grid-lg,
.provision-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.compact-grid > *,
.diagnostic-grid-dense > *,
.form-grid > * { min-width: 0; }
.compact-top,
.compact-bottom,
.compact-right,
.compact-actions,
.inline-actions,
.dashboard-inline-actions,
.tables-qr-inline-actions,
.audit-badges,
.audit-tenant-actions,
.diagnostic-action-pills,
.diagnostic-playbook-actions,
.diagnostic-playbook-actions-secondary,
.diagnostic-scope-actions,
.watch-row-actions,
.btn-row-static,
.action-row-tight,
.filters,
.restaurants-toolbar,
.restaurants-filters,
.tabbar,
.tabbar-lovable,
.diagnostic-tabbar,
.audit-view-tabs,
.diagnostic-overview-inline-filters,
.provision-footer,
.diagnostic-time-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.compact {
  padding: 10px 14px !important;
  border-radius: var(--radius-sm) !important;
}

.btn,
.filter-btn,
.tenant-tab-btn,
.diagnostic-tab-btn,
.priority-link {
  appearance: none;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--heading);
  min-height: 42px;
  padding: 10px 14px;
  border-radius: 14px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 1px 0 rgba(255,255,255,0.9), var(--shadow-xs);
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.btn:hover,
.filter-btn:hover,
.tenant-tab-btn:hover,
.diagnostic-tab-btn:hover,
.priority-link:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm);
  border-color: var(--border-strong);
}
.btn:active,
.filter-btn:active,
.tenant-tab-btn:active,
.diagnostic-tab-btn:active,
.priority-link:active {
  transform: translateY(0);
}
.btn.small,
.filter-btn,
.tenant-tab-btn,
.diagnostic-tab-btn { min-height: 38px; padding: 9px 12px; font-size: 13px; }
.btn.full-width { width: 100%; }
.btn.primary,
.filter-btn.active,
.tabbar .btn.active,
.tenant-tab-btn.active,
.diagnostic-tab-btn.active,
.priority-link {
  background: linear-gradient(180deg, #53b4a0 0%, #3f9987 100%);
  border-color: transparent;
  color: #fff;
  box-shadow: 0 14px 26px rgba(63, 153, 135, 0.24);
}
.btn.success { background: linear-gradient(180deg, #36ae71 0%, #2c9a63 100%); border-color: transparent; color:#fff; box-shadow: 0 14px 26px rgba(44,154,99,0.2); }
.btn.warning { background: linear-gradient(180deg, #f5ca76 0%, #f2b84a 100%); border-color: transparent; color:#53380d; box-shadow: 0 14px 26px rgba(242,184,74,0.22); }
.btn.danger,
.btn.ghost-danger,
.ghost-danger { background: var(--danger-soft); border-color: #f6c6c6; color: #b74b4b; }
.btn.ghost,
.ghost { background: rgba(255,255,255,0.68); }
.btn-row-static .btn,
.inline-actions .btn,
.compact-actions .btn,
.dashboard-inline-actions .btn,
.tables-qr-inline-actions .btn,
.audit-tenant-actions .btn { white-space: nowrap; }

.input,
.select,
.textarea,
.search-input,
.diagnostic-inline-select {
  width: 100%;
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.9);
  color: var(--text);
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 15px;
  outline: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.9);
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.textarea { min-height: 110px; resize: vertical; }
.input::placeholder,
.textarea::placeholder,
.search-input::placeholder { color: #9aa6aa; }
.input:focus,
.select:focus,
.textarea:focus,
.search-input:focus,
.diagnostic-inline-select:focus {
  border-color: rgba(63,153,135,0.42);
  box-shadow: 0 0 0 4px rgba(63,153,135,0.12);
  background: #fff;
}
.field { display: grid; gap: 8px; }
.field-label {
  color: var(--heading);
  font-size: 13px;
  font-weight: 700;
}
.field-warning { color: #a37216; font-size: 12px; }

.pill,
.badge,
.severity-pill,
.diagnostic-occurrence,
.diagnostic-state-pill,
.diagnostic-family-pill,
.diagnostic-resolved-pill,
.diagnostic-action-pill,
.preview-pill,
.status-dot,
.diagnostic-state-pill,
.diagnostic-family-pill,
.diagnostic-occurrence {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 6px 11px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.pill,
.preview-pill,
.diagnostic-family-pill,
.diagnostic-occurrence { background: var(--panel-muted); color: var(--text-soft); }
.api-pill { max-width: 320px; overflow: hidden; text-overflow: ellipsis; }
.badge.active,
.pill.success,
.severity-pill.success,
.severity-pill.ready,
.severity-pill.operational,
.diagnostic-state-pill.success,
.diagnostic-state-pill.resolved,
.status-dot.success,
.text-success {
  background: var(--success-soft);
  border-color: #bee7d0;
  color: #247c50;
}
.badge.warning,
.pill.warning,
.severity-pill.warning,
.severity-pill.warn,
.severity-pill.monitor,
.diagnostic-state-pill.warning {
  background: var(--warning-soft);
  border-color: #f4d48e;
  color: #9b6d11;
}
.badge.danger,
.pill.danger,
.severity-pill.danger,
.severity-pill.error,
.severity-pill.critical,
.severity-pill.suspended,
.diagnostic-state-pill.active,
.diagnostic-action-pill.danger,
.status-dot.danger {
  background: var(--danger-soft);
  border-color: #f5c7c7;
  color: #ba4d4d;
}
.pill.info,
.severity-pill.info,
.status-dot.info { background: var(--info-soft); border-color:#c9dafd; color:#486ecc; }
.badge,
.pill.active { background: var(--primary-soft); border-color: rgba(63,153,135,0.15); color: var(--primary-strong); }

.notice {
  padding: 15px 17px;
  border-radius: 18px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.94);
  box-shadow: var(--shadow-xs);
  line-height: 1.55;
}
.notice.success { background: var(--success-soft); border-color: #c7ead6; color: #236e49; }
.notice.warning,
.notice.warn { background: var(--warning-soft); border-color: #f4d48f; color: #8d6510; }
.notice.danger,
.notice.error { background: var(--danger-soft); border-color: #f3cbcb; color: #a94949; }
.notice.muted { background: var(--panel-muted); border-color: var(--border); color: var(--text-soft); }
.empty,
.loading {
  padding: 26px;
  text-align: center;
  color: var(--text-soft);
}
.empty.dark {
  background: rgba(255,255,255,0.74);
  border: 1px dashed var(--border-strong);
  border-radius: 18px;
}

.login-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 28px;
}
.login-card {
  width: min(520px, 100%);
  display: grid;
  gap: 18px;
  padding: 30px;
  background: rgba(255,255,255,0.94);
  border-radius: 30px;
  border: 1px solid rgba(236, 225, 214, 0.96);
  box-shadow: var(--shadow-lg);
}
.login-title {
  margin: 2px 0 0;
  color: var(--heading);
  font-size: 31px;
  font-weight: 800;
}
.login-copy { font-size: 14px; }
.login-toggle-row { margin-top: -2px; }

.kpi,
.dashboard-metric-tile,
.audit-summary-card,
.diagnostic-mini-card,
.settings-system-item {
  padding: 18px 18px 16px;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(236,225,214,0.96);
  border-radius: 24px;
  box-shadow: var(--shadow-sm);
}
.kpi-label,
.dashboard-metric-label {
  color: var(--text-soft);
  font-size: 13px;
  font-weight: 500;
}
.kpi-value,
.dashboard-metric-value,
.audit-summary-value,
.diagnostic-kpi {
  margin-top: 10px;
  color: var(--heading);
  font-size: 30px;
  line-height: 1;
  font-weight: 800;
}
.kpi-sub { margin-top: 7px; }
.kpi.success,
.dashboard-metric-tile.success { background: linear-gradient(180deg, #ffffff 0%, #f2fbf7 100%); }
.kpi.warn,
.kpi.warning,
.dashboard-metric-tile.warn { background: linear-gradient(180deg, #ffffff 0%, #fffaf0 100%); }
.kpi.critical,
.kpi.danger,
.dashboard-metric-tile.danger { background: linear-gradient(180deg, #ffffff 0%, #fff5f4 100%); }
.kpi.info,
.dashboard-metric-tile.info { background: linear-gradient(180deg, #ffffff 0%, #f6f8ff 100%); }

.dashboard-v2,
.diagnostic-shell,
.settings-shell,
.catalog-shell,
.provision-shell { display: grid; gap: 20px; }
.dash-section,
.watch-section,
.audit-tenant-section,
.settings-section {
  display: grid;
  gap: 16px;
}
.dash-section-header.compact h2,
.audit-tenant-header h2,
.settings-section h2,
.provision-panel-header h2 {
  margin: 0;
  font-size: 21px;
  color: var(--heading);
}
.priority-list,
.watch-list-v2,
.status-list-v2,
.audit-item-list,
.audit-group-list,
.audit-day-groups,
.diagnostic-event-list,
.diagnostic-event-list-tight,
.diagnostic-side-list,
.dashboard-stack,
.catalog-product-list,
.tables-grid,
.audit-timeline-list,
.diagnostic-timeline {
  display: grid;
  gap: 14px;
}
.priority-row,
.watch-row-v2,
.status-row-v2,
.audit-item,
.diagnostic-event,
.tables-qr-item,
.restaurant-row {
  padding: 16px 18px;
}
.priority-row,
.watch-row-v2,
.status-row-v2,
.audit-item-topline,
.restaurant-row,
.tables-qr-row,
.diagnostic-event-top,
.diagnostic-mini-top,
.scan-bar-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.priority-row-main,
.priority-row-content,
.watch-row-title,
.watch-row-copy,
.audit-item-main,
.audit-item-detail,
.diagnostic-timeline-content,
.restaurant-cell-main,
.catalog-item-main,
.table-qr-preview-shell {
  min-width: 0;
  display: grid;
  gap: 6px;
}
.watch-row-title,
.priority-row-main strong,
.audit-item-main strong,
.audit-day-title,
.diagnostic-event-heading,
.restaurant-cell-main strong,
.table-head,
.tables-qr-head,
.tenant-heading {
  color: var(--heading);
  font-size: 15px;
  font-weight: 800;
}
.dashboard-lower-grid,
.audit-layout,
.tenant-layout,
.tenant-layout-lovable,
.provision-layout,
.catalog-top-grid,
.catalog-workspace-grid,
.diagnostic-layout,
.diagnostic-layout-rich,
.diagnostic-layout-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(330px, 0.95fr);
  gap: 18px;
  align-items: start;
}
.diagnostic-main,
.provision-main,
.catalog-main-panel,
.tenant-layout > div,
.audit-layout > div { display: grid; gap: 18px; }
.diagnostic-side,
.provision-side,
.catalog-side-card,
.table-side-card,
.diagnostic-side-card,
.provision-preview-card {
  position: sticky;
  top: 92px;
}
.dashboard-feed-card,
.dashboard-health-card,
.dashboard-incident-card,
.category-selector-card,
.catalog-item-row,
.audit-item,
.diagnostic-event,
.diagnostic-collapsible,
.tables-qr-item,
.restaurant-row,
.table-card,
.qr-card,
.tenant-recent {
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}
.dashboard-feed-card:hover,
.dashboard-health-card:hover,
.dashboard-incident-card:hover,
.category-selector-card:hover,
.catalog-item-row:hover,
.audit-item:hover,
.diagnostic-event:hover,
.tables-qr-item:hover,
.restaurant-row:hover,
.table-card:hover,
.qr-card:hover,
.tenant-recent:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
  border-color: var(--border-strong);
}
.category-selector-card.active,
.catalog-item-row.active,
.tables-qr-selectable.active,
.table-row.active,
.restaurant-row.active {
  border-color: rgba(63,153,135,0.4);
  background: linear-gradient(180deg, #ffffff 0%, #f4fbf8 100%);
}

.tenant-top-actions,
.tables-qr-inline-actions,
.dashboard-inline-actions,
.audit-tenant-actions,
.settings-section-actions,
.diagnostic-toolbar-actions,
.diagnostic-toolbar-bottom,
.scan-chart,
.scan-bar-wrap,
.switch-row,
.tenant-title-row,
.tenant-status-row,
.table-row,
.table-session-alert,
.audit-detail-grid,
.diagnostic-context-grid,
.diagnostic-context-grid-wide,
.diagnostic-facts,
.diagnostic-facts-grid,
.diagnostic-facts-grid-compact,
.diagnostic-checklist,
.diagnostic-inline-summary,
.audit-detail-block,
.settings-system-item,
.table-qr-preview {
  display: grid;
  gap: 12px;
}
.switch-row {
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px dashed var(--border);
}
.switch-row:last-child { border-bottom: 0; }
.table-row,
.table-row-top,
.tenant-title-row,
.tenant-status-row { align-items: center; }

.tenant-heading-lovable,
.page-lovable,
.topbar-lovable,
.tabbar-lovable { position: relative; }
.tenant-top,
.tenant-top-lovable,
.restaurant-table-head,
.tables-qr-head,
.audit-header-row {
  padding: 0 0 4px;
}
.tenant-domain,
.audit-day-title,
.topbar-subtitle,
.restaurant-table-head,
.table-head,
.scan-bar-label,
.dashboard-feed-meta,
.audit-item-meta,
.diagnostic-timeline-top,
.diagnostic-fact {
  color: var(--text-soft);
  font-size: 13px;
}
.avatar,
.avatar-large {
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #f5cfbd 0%, #efb9aa 100%);
  color: #7f4536;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 800;
}
.avatar { width: 38px; height: 38px; font-size: 13px; }
.avatar-large { width: 54px; height: 54px; font-size: 16px; }

.provision-stepper {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.provision-step {
  padding: 15px 16px;
  border-radius: 20px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.86);
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 700;
  color: var(--text-soft);
}
.provision-step.active {
  background: linear-gradient(180deg, #f4fbf8 0%, #ffffff 100%);
  border-color: rgba(63,153,135,0.28);
  color: var(--primary-strong);
}
.provision-step.done {
  background: linear-gradient(180deg, #f0fbf4 0%, #ffffff 100%);
  border-color: rgba(44,154,99,0.24);
  color: #247c50;
}
.provision-step-index {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: var(--primary-soft);
  color: var(--primary-strong);
  font-size: 12px;
  font-weight: 800;
  flex-shrink: 0;
}
.provision-step.done .provision-step-index { background: var(--success-soft); color: #247c50; }
.provision-preview-card {
  padding: 24px;
  border-radius: 26px;
  background: linear-gradient(180deg, #ffffff 0%, #fdf8f3 100%);
}
.provision-preview-name {
  font-size: 28px;
  color: var(--heading);
  margin: 4px 0 0;
}
.provision-preview-meta span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px dashed var(--border);
}
.provision-preview-meta span:last-child { border-bottom: 0; padding-bottom: 0; }

.code-inline,
.code-block {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  background: #f7efe7;
  color: #7d4c37;
  border: 1px solid #eed9c9;
  border-radius: 12px;
}
.code-inline { padding: 3px 8px; }
.code-block {
  padding: 14px;
  font-size: 12px;
  line-height: 1.6;
  overflow: auto;
  word-break: break-word;
  overflow-wrap: anywhere;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.tabbar,
.tabbar-lovable,
.diagnostic-tabbar,
.audit-view-tabs {
  padding: 8px;
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(236,225,214,0.96);
  border-radius: 18px;
  box-shadow: var(--shadow-xs);
}
.tabbar .btn,
.tabbar-lovable .btn,
.diagnostic-tab-btn,
.tenant-tab-btn,
.audit-view-tabs .btn {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--text-soft);
}
.tabbar .btn.active,
.tabbar-lovable .btn.active,
.diagnostic-tab-btn.active,
.tenant-tab-btn.active,
.audit-view-tabs .btn.active {
  background: #fff;
  color: var(--primary-strong);
  border-color: rgba(63,153,135,0.12);
  box-shadow: var(--shadow-xs);
}

.settings-section {
  padding: 22px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(236,225,214,0.96);
  border-radius: 26px;
  box-shadow: var(--shadow-sm);
}
.settings-section-body,
.settings-accordion-list { display: grid; gap: 16px; }
.settings-section-copy { color: var(--text-soft); }
.settings-system-item {
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 12px;
}
.settings-section-icon {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: var(--primary-soft);
  color: var(--primary-strong);
  display: grid;
  place-items: center;
  font-weight: 800;
}
.danger-zone-copy { max-width: 72ch; }

.diagnostic-toolbar,
.audit-filter-card,
.distribution-panel,
.catalog-product-list-card,
.table-side-card,
.diagnostic-side-card {
  padding: 18px;
  background: rgba(255,255,255,0.92);
  border-radius: 24px;
  border: 1px solid rgba(236,225,214,0.96);
  box-shadow: var(--shadow-sm);
}
.diagnostic-toolbar,
.audit-filter-card { display: grid; gap: 16px; }
.diagnostic-toolbar-row,
.diagnostic-toolbar-topline,
.diagnostic-toolbar-bottom { justify-content: space-between; }
.diagnostic-filter-field,
.search-field,
.diagnostic-search-field { min-width: 180px; }
.diagnostic-action-strip,
.diagnostic-action-strip-compact {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-radius: 20px;
  border: 1px solid rgba(236,225,214,0.96);
  background: rgba(255,255,255,0.92);
}
.diagnostic-action-strip.has-action {
  background: linear-gradient(180deg, #fff7f6 0%, #ffffff 100%);
  border-color: #efc5c1;
}
.diagnostic-collapsible {
  padding: 14px 16px;
  background: rgba(255,255,255,0.9);
  border-style: dashed;
}
.diagnostic-collapsible summary {
  cursor: pointer;
  color: var(--heading);
  font-weight: 800;
  list-style: none;
}
.diagnostic-collapsible summary::-webkit-details-marker { display:none; }
.diagnostic-collapsible[open] summary { margin-bottom: 12px; }
.diagnostic-timeline-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
}
.diagnostic-timeline-dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  margin-top: 6px;
  background: var(--primary);
  box-shadow: 0 0 0 4px rgba(63,153,135,0.12);
}
.audit-day-group,
.audit-tenant-section,
.diagnostic-detail-block,
.diagnostic-detail-sections,
.diagnostic-context-list,
.diagnostic-context-list-tight,
.diagnostic-quick-notes,
.diagnostic-quick-notes-compact,
.diagnostic-playbook-grid,
.diagnostic-detail-tools { display: grid; gap: 14px; }
.diagnostic-facts-grid,
.diagnostic-facts-grid-compact,
.diagnostic-context-grid,
.diagnostic-context-grid-wide {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.diagnostic-fact,
.audit-detail-block,
.diagnostic-context-card,
.diagnostic-note-card,
.dashboard-health-note {
  padding: 14px 16px;
  border-radius: 18px;
  background: var(--panel-soft);
  border: 1px solid rgba(236,225,214,0.9);
}

.restaurant-table-shell,
.table-shell,
.tables-qr-shell,
.catalog-shell,
.audit-layout,
.diagnostic-shell-epure { display: grid; gap: 18px; }
.restaurant-table-head,
.table-head,
.tables-qr-head {
  font-weight: 700;
  color: var(--heading);
}
.table-row,
.tables-qr-row,
.restaurant-row {
  border-top: 1px dashed var(--border);
  padding-top: 14px;
}
.table-row:first-child,
.tables-qr-row:first-child,
.restaurant-row:first-child { border-top: 0; padding-top: 0; }
.table-qr-preview,
.table-qr-preview-shell {
  padding: 14px;
  border-radius: 18px;
  background: var(--panel-soft);
  border: 1px dashed var(--border-strong);
}
.scan-chart { display: grid; gap: 12px; }
.scan-bar-wrap { align-items: center; }
.scan-bar {
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, #79c2b4 0%, #3f9987 100%);
}
.scan-bar-value { color: var(--heading); font-weight: 800; }
.chart-panel,
.chart-shell {
  padding: 16px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(236,225,214,0.96);
}
.chart-svg { width: 100%; height: auto; }
.chart-grid-lines line { stroke: #ecdccf; stroke-dasharray: 4 4; }
.chart-line { stroke: var(--primary); stroke-width: 3; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.chart-xlabels text { fill: var(--text-faint); font-size: 11px; }

.catalog-category-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; }
.category-selector-card {
  padding: 18px;
  text-align: left;
  display: grid;
  gap: 12px;
}
.category-selector-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.category-selector-title { font-size: 16px; font-weight: 800; }
.category-selector-preview { display:flex; flex-wrap:wrap; gap:8px; }
.catalog-item-title-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.catalog-item-row { justify-content: space-between; align-items: flex-start; }
.catalog-item-row,
.catalog-workspace,
.catalog-main-panel { display: grid; gap: 14px; }
.catalog-editor-card { background: linear-gradient(180deg, #fffdfb 0%, #ffffff 100%); }

.provision-link-box,
.summary-grid,
.audit-summary-grid,
.lovable-info-grid { align-items: stretch; }
.back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--primary-strong);
  font-weight: 700;
}
.back-link:hover { color: var(--primary); }
.row-arrow { color: var(--text-faint); font-size: 18px; }

.modal-overlay {
  position: fixed;
  inset: 0;
  padding: 24px;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(27, 39, 43, 0.42);
  backdrop-filter: blur(6px);
  z-index: 100;
}
.modal-overlay.visible { display: flex; }
.modal {
  width: min(560px, 100%);
  padding: 24px;
  border-radius: 28px;
  background: rgba(255,255,255,0.98);
  border: 1px solid rgba(236,225,214,0.96);
  box-shadow: var(--shadow-lg);
  display: grid;
  gap: 16px;
}
.modal-title {
  color: var(--heading);
  font-size: 21px;
  font-weight: 800;
}
.modal-actions {
  display:flex;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}

@media (max-width: 1340px) {
  .dashboard-kpi-grid-5,
  .dashboard-kpi-grid-v2,
  .dashboard-kpi-grid,
  .dashboard-kpi-grid-4,
  .summary-grid,
  .restaurants-kpis,
  .compact-kpis,
  .diagnostic-summary-row,
  .diagnostic-summary-row-extended,
  .audit-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-lower-grid,
  .audit-layout,
  .tenant-layout,
  .tenant-layout-lovable,
  .provision-layout,
  .catalog-top-grid,
  .catalog-workspace-grid,
  .diagnostic-layout,
  .diagnostic-layout-rich,
  .diagnostic-layout-overview { grid-template-columns: 1fr; }
  .diagnostic-side,
  .provision-side,
  .catalog-side-card,
  .table-side-card,
  .diagnostic-side-card,
  .provision-preview-card { position: static; }
}

@media (max-width: 1080px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar {
    position: static;
    height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--sidebar-border);
  }
  .topbar { padding: 16px 20px; }
  .page { padding: 20px; }
  .grid-4,
  .grid-3,
  .grid-2,
  .dashboard-kpi-grid-5,
  .dashboard-kpi-grid-v2,
  .dashboard-kpi-grid,
  .dashboard-kpi-grid-4,
  .dashboard-kpi-grid-3,
  .summary-grid,
  .restaurants-kpis,
  .compact-kpis,
  .settings-system-grid,
  .settings-danger-grid,
  .diagnostic-summary-row,
  .diagnostic-summary-row-extended,
  .audit-summary-grid,
  .lovable-info-grid,
  .compact-grid,
  .diagnostic-grid-dense,
  .audit-filters-grid,
  .form-grid,
  .diagnostic-filter-grid,
  .diagnostic-filter-grid-compact,
  .settings-switch-grid,
  .table-editor-grid,
  .provision-grid-lg,
  .provision-review-grid,
  .diagnostic-facts-grid,
  .diagnostic-facts-grid-compact,
  .diagnostic-context-grid,
  .diagnostic-context-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .page,
  .topbar,
  .sidebar { padding-left: 16px; padding-right: 16px; }
  .topbar,
  .page-header,
  .page-header-tight,
  .tenant-top,
  .tenant-top-lovable,
  .tables-qr-head,
  .restaurant-table-head,
  .audit-header-row,
  .table-row-top,
  .catalog-workspace-header,
  .diagnostic-action-strip,
  .diagnostic-action-strip-compact,
  .priority-row,
  .watch-row-v2,
  .status-row-v2,
  .audit-item-topline,
  .restaurant-row,
  .tables-qr-row,
  .diagnostic-event-top,
  .diagnostic-mini-top,
  .scan-bar-wrap { align-items: stretch; }
  .grid-4,
  .grid-3,
  .grid-2,
  .dashboard-kpi-grid-5,
  .dashboard-kpi-grid-v2,
  .dashboard-kpi-grid,
  .dashboard-kpi-grid-4,
  .dashboard-kpi-grid-3,
  .summary-grid,
  .restaurants-kpis,
  .compact-kpis,
  .settings-system-grid,
  .settings-danger-grid,
  .diagnostic-summary-row,
  .diagnostic-summary-row-extended,
  .audit-summary-grid,
  .lovable-info-grid,
  .compact-grid,
  .diagnostic-grid-dense,
  .audit-filters-grid,
  .form-grid,
  .diagnostic-filter-grid,
  .diagnostic-filter-grid-compact,
  .settings-switch-grid,
  .table-editor-grid,
  .provision-grid-lg,
  .provision-review-grid,
  .diagnostic-facts-grid,
  .diagnostic-facts-grid-compact,
  .diagnostic-context-grid,
  .diagnostic-context-grid-wide,
  .provision-stepper { grid-template-columns: 1fr; }
  .topbar-right,
  .diagnostic-toolbar-row,
  .diagnostic-toolbar-topline,
  .diagnostic-toolbar-bottom,
  .filters,
  .restaurants-toolbar,
  .restaurants-filters,
  .tabbar,
  .tabbar-lovable,
  .diagnostic-tabbar,
  .audit-view-tabs,
  .diagnostic-overview-inline-filters,
  .provision-footer,
  .diagnostic-time-actions,
  .compact-top,
  .compact-bottom,
  .compact-right,
  .compact-actions,
  .inline-actions,
  .dashboard-inline-actions,
  .tables-qr-inline-actions,
  .audit-badges,
  .audit-tenant-actions,
  .diagnostic-action-pills,
  .diagnostic-playbook-actions,
  .diagnostic-playbook-actions-secondary,
  .diagnostic-scope-actions,
  .watch-row-actions,
  .btn-row-static,
  .action-row-tight { width: 100%; }
  .api-pill { max-width: 100%; }
}

/* Phase UI fix: tenant list table + tenant detail stage alignment */
.split {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.split > * {
  min-width: 0;
}

.badge,
.pill,
.severity-pill,
.diagnostic-occurrence,
.diagnostic-state-pill,
.diagnostic-family-pill,
.diagnostic-resolved-pill,
.diagnostic-action-pill,
.preview-pill,
.status-dot {
  width: fit-content;
  max-width: 100%;
  flex: 0 0 auto;
}

.restaurant-table-shell {
  gap: 0;
  padding: 12px;
  overflow-x: auto;
}

.restaurant-table-head,
.restaurant-row {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) 110px 150px 160px 130px 110px 150px 48px;
  align-items: center;
  column-gap: 18px;
  row-gap: 12px;
  min-width: 1128px;
}

.restaurant-table-head {
  padding: 8px 14px 14px;
  margin-bottom: 6px;
  border-bottom: 1px solid rgba(236, 225, 214, 0.95);
  color: var(--text-soft);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.restaurant-row {
  width: 100%;
  border: 0;
  border-top: 1px solid rgba(236, 225, 214, 0.85);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 18px 14px;
  text-align: left;
}

.restaurant-row:first-of-type {
  border-top: 0;
}

.restaurant-row::after {
  display: none;
}

.restaurant-row:hover {
  transform: none;
  background: linear-gradient(180deg, rgba(247, 252, 250, 0.98) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: inset 0 0 0 1px rgba(63, 153, 135, 0.14);
  border-radius: 18px;
}

.restaurant-cell-main {
  gap: 4px;
}

.restaurant-cell-main strong {
  font-size: 15px;
  line-height: 1.2;
}

.restaurant-cell-main span {
  color: var(--text-soft);
  font-size: 13px;
}

.restaurant-row > div:not(.restaurant-cell-main) {
  min-width: 0;
  color: var(--heading);
  font-size: 14px;
}

.restaurant-row .badge,
.restaurant-row .pill {
  justify-self: start;
}

.row-arrow {
  justify-self: end;
  color: var(--text-soft);
  font-size: 20px;
}

.tenant-layout-single {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
}

.tenant-top-shell,
.tenant-tab-stage {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.tenant-top-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 220px);
  align-items: start;
  gap: 22px;
}

.tenant-top-main {
  min-width: 0;
  display: grid;
  gap: 18px;
  align-content: start;
}

.tenant-heading-lovable {
  width: 100%;
}

.tenant-status-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}

.tenant-status-row .badge {
  align-self: flex-start;
}

.tenant-top-actions-inline {
  display: grid;
  gap: 14px;
  align-content: end;
  justify-items: stretch;
  min-width: 0;
}

.tenant-top-actions-inline .btn {
  width: 100%;
}

.tenant-tab-stage {
  display: grid;
  gap: 18px;
}

.tenant-tab-stage > .grid,
.tenant-tab-stage > .card,
.tenant-tab-stage > .catalog-shell,
.tenant-tab-stage > .restaurant-table-shell,
.tenant-tab-stage > .table-shell {
  width: 100%;
}

.tenant-tab-stage .catalog-shell,
.tenant-tab-stage .grid {
  justify-items: stretch;
}

.summary-item {
  display: grid;
  gap: 6px;
  min-width: 0;
  align-content: start;
}

.summary-item-label {
  overflow-wrap: anywhere;
}

.summary-item-value {
  color: var(--heading);
  font-size: 15px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.lovable-info-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 22px;
}

.lovable-info-grid .summary-item {
  padding: 2px 0;
}

.catalog-workspace-grid {
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  align-items: start;
}

.catalog-main-panel,
.catalog-side-card,
.catalog-workspace,
.catalog-product-list-card,
.catalog-product-list,
.catalog-item-row,
.catalog-item-main,
.catalog-item-title-row {
  min-width: 0;
}

.catalog-item-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px;
}

.catalog-item-main {
  gap: 8px;
}

.catalog-item-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.catalog-item-title-row strong,
.catalog-item-meta {
  overflow-wrap: anywhere;
}

.catalog-item-row .inline-actions {
  justify-content: flex-start;
}

.table-editor-grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

.table-editor-grid > * {
  min-width: 0;
}

.table-side-card {
  position: static;
  display: grid;
  gap: 16px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  justify-items: start;
}

.table-side-card > .table-qr-preview-shell,
.table-side-card > .table-analytics-head,
.table-side-card > .scan-chart-card {
  width: clamp(320px, 50%, 640px);
  max-width: 100%;
  margin-inline: auto;
}

.table-qr-preview-shell {
  display: grid;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.table-qr-preview {
  display: grid;
  place-items: center;
  min-height: 200px;
  padding: 12px;
  background: rgba(255,255,255,0.96);
  overflow: hidden;
}

.table-qr-preview img {
  width: min(100%, 176px);
  max-width: 176px;
  max-height: 176px;
  object-fit: contain;
}

.table-analytics-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.scan-chart-card {
  display: grid;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.scan-chart-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.scan-chart-total {
  color: var(--heading);
  font-size: 15px;
  font-weight: 800;
}

.scan-chart-shell {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.scan-chart-yaxis {
  display: grid;
  align-content: stretch;
  justify-items: end;
  padding: 14px 0 26px;
  color: var(--text-faint);
  font-size: 11px;
  font-weight: 700;
}

.scan-chart-yaxis span {
  display: flex;
  align-items: center;
}

.scan-chart-stage {
  display: grid;
  gap: 10px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.scan-chart {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  border-radius: 20px;
  border: 1px solid rgba(236, 225, 214, 0.95);
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(250,245,240,0.72) 100%);
  padding: 14px 14px 12px;
  overflow: hidden;
}

.scan-chart-svg {
  width: 100%;
  height: 220px;
  display: block;
}

.scan-chart-grid-line,
.scan-chart-axis-line {
  stroke: rgba(223, 208, 193, 0.95);
  stroke-width: 1;
  stroke-dasharray: 4 5;
}

.scan-chart-axis-line {
  stroke-dasharray: none;
}

.scan-chart-area {
  fill: rgba(95, 159, 141, 0.16);
}

.scan-chart-line {
  fill: none;
  stroke: var(--primary);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.scan-chart-dot {
  fill: var(--primary);
  stroke: rgba(255,255,255,0.92);
  stroke-width: 2;
}

.scan-chart-xlabels {
  display: grid;
  gap: 0;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.scan-chart-x-label {
  min-width: 0;
  opacity: 0;
  color: var(--text-faint);
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

.scan-chart-x-label.visible {
  opacity: 1;
}

@media (max-width: 1340px) {
  .tenant-top-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .tenant-top-actions-inline {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
    align-content: start;
  }
}

@media (max-width: 1180px) {
  .restaurant-table-shell {
    padding: 10px;
  }

  .restaurant-table-head,
  .restaurant-row {
    min-width: 1040px;
  }

  .catalog-workspace-grid,
  .table-editor-grid,
  .lovable-info-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .table-side-card > .table-qr-preview-shell,
  .table-side-card > .table-analytics-head,
  .table-side-card > .scan-chart-card {
    width: clamp(320px, 50%, 640px);
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  .tenant-top-actions-inline {
    grid-template-columns: minmax(0, 1fr);
  }

  .scan-chart-shell {
    grid-template-columns: 1fr;
  }

  .scan-chart-yaxis {
    display: none;
  }
}


.tenant-domain,
.restaurant-cell-main span,
.summary-item-value {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.tenant-settings-shell {
  display: grid;
  gap: 16px;
}

.toggle-stack {
  display: grid;
  gap: 10px;
}

/* Bloc 5 — Support cockpit */
.support-grid { align-items: stretch; }
.support-action-list { display: flex; flex-wrap: wrap; gap: 10px; }
.support-incident-card { padding: 16px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.78); }
.support-incident-grid { margin-top: 12px; }
.support-playbook-list { margin: 8px 0 14px 18px; padding: 0; color: var(--muted, #64748b); line-height: 1.55; }

/* Blocs 7 + 8 — Analytics menu et produits */
.product-analytics-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}
.product-analytics-grid > .full-span,
.product-analytics-header {
  grid-column: 1 / -1;
}
.product-analytics-grid > .product-kpi { grid-column: span 3; }
.product-analytics-health,
.product-analytics-funnel,
.product-analytics-grid > .card.pad:not(.full-span):not(.product-analytics-header) { grid-column: span 6; }
.product-analytics-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.product-kpi {
  min-height: 148px;
  display: grid;
  gap: 6px;
  align-content: start;
}
.product-kpi .kpi-sub {
  color: var(--text-soft);
  font-size: 13px;
}
.product-analytics-controls { display: flex; align-items: end; gap: 10px; flex-wrap: wrap; }
.product-analytics-health { border-color: rgba(251, 191, 36, .35); background: rgba(255, 251, 235, .72); }
.product-analytics-health.good { border-color: rgba(34, 197, 94, .28); background: rgba(240, 253, 244, .72); }
.product-analytics-health.medium { border-color: rgba(251, 191, 36, .35); background: rgba(255, 251, 235, .72); }
.product-analytics-health.low { border-color: rgba(244, 114, 182, .25); background: rgba(253, 242, 248, .58); }
.product-analytics-funnel {
  min-height: auto;
  display: grid;
  gap: 12px;
  align-content: start;
}
.product-funnel-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 0;
}
.product-funnel-step { border: 1px solid rgba(20, 184, 166, .16); border-radius: 16px; padding: 12px; background: rgba(240, 253, 250, .65); }
.product-funnel-step strong { display: block; font-size: 24px; color: #0f172a; }
.product-funnel-step span { display: block; margin-top: 3px; font-weight: 800; color: #115e59; }
.product-funnel-step small { display: block; margin-top: 4px; color: #64748b; }
.product-recommendations { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 12px; }
.product-recommendation { border: 1px solid rgba(245, 158, 11, .24); border-radius: 18px; padding: 14px; background: rgba(255, 251, 235, .72); }
.product-recommendation strong { color: #0f172a; }
.product-recommendation p { margin: 8px 0 6px; color: #475569; line-height: 1.45; }
.product-recommendation small { color: #92400e; font-weight: 700; line-height: 1.4; }
.product-mini-list,
.product-dormant-list,
.product-category-list { display: grid; gap: 10px; margin-top: 12px; }
.product-mini-row { border: 1px solid rgba(148, 163, 184, .22); border-radius: 15px; padding: 11px 12px; background: rgba(255, 255, 255, .72); }
.product-mini-row strong { display: block; color: #0f172a; }
.product-mini-row span { display: block; margin-top: 4px; font-weight: 800; color: #0f766e; }
.product-mini-row small { display: block; margin-top: 4px; color: #64748b; line-height: 1.35; }
.product-category-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: start; border: 1px solid rgba(148, 163, 184, .22); border-radius: 15px; padding: 11px 12px; background: rgba(255, 255, 255, .72); }
.product-category-row strong { display: block; color: #0f172a; }
.product-category-row span { font-weight: 900; color: #0f766e; }
.product-category-row small { color: #64748b; }
.product-analytics-table { display: grid; gap: 8px; margin-top: 14px; }
.product-analytics-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) minmax(84px, .72fr) minmax(58px, .52fr) minmax(58px, .52fr) minmax(58px, .52fr) minmax(70px, .62fr) minmax(118px, .9fr) minmax(240px, 1.35fr);
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
}
.product-analytics-row.head { font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .04em; color: #64748b; background: rgba(248, 250, 252, .9); }
.product-analytics-row strong { display: block; color: #0f172a; }
.product-analytics-row small { display: block; margin-top: 4px; color: #64748b; line-height: 1.35; }
.small-empty { padding: 10px 0; }
@media (max-width: 1200px) {
  .product-analytics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-analytics-grid > .product-kpi,
  .product-analytics-health,
  .product-analytics-funnel,
  .product-analytics-grid > .card.pad:not(.full-span):not(.product-analytics-header) { grid-column: span 1; }
  .product-analytics-row { grid-template-columns: 1fr 1fr; }
  .product-analytics-row.head { display: none; }
  .product-funnel-steps { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .product-analytics-grid { grid-template-columns: 1fr; }
  .product-analytics-grid > .product-kpi,
  .product-analytics-health,
  .product-analytics-funnel,
  .product-analytics-grid > .card.pad:not(.full-span):not(.product-analytics-header) { grid-column: 1 / -1; }
}
/* Bloc 9 — Vue d’ensemble plateforme consolidée */
.bloc9-business-kpis { margin-top: -4px; }
.bloc9-business-grid { align-items: stretch; }
.bloc9-list,
.bloc9-activity-list {
  display: grid;
  gap: 12px;
}
.bloc9-tenant-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 15px 16px;
  border: 1px solid rgba(236,225,214,0.96);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #fffdf9 100%);
}
.bloc9-tenant-row.problem { background: linear-gradient(180deg, #ffffff 0%, #fff8f4 100%); }
.bloc9-tenant-row.inactive { background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%); }
.bloc9-rank {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: var(--primary-strong);
  background: rgba(63,153,135,0.1);
}
.bloc9-rank.danger {
  color: #b42318;
  background: rgba(217,45,32,0.1);
}
.bloc9-rank.muted {
  color: var(--text-soft);
  background: rgba(15,23,42,0.06);
}
.bloc9-tenant-main {
  min-width: 0;
  display: grid;
  gap: 4px;
}
.bloc9-tenant-main strong {
  color: var(--heading);
  font-size: 15px;
  font-weight: 850;
}
.bloc9-tenant-main span,
.bloc9-tenant-metric span {
  color: var(--text-soft);
  font-size: 13px;
}
.bloc9-tenant-metric {
  display: grid;
  gap: 3px;
  text-align: right;
  white-space: nowrap;
}
.bloc9-tenant-metric strong {
  color: var(--heading);
  font-size: 15px;
  font-weight: 900;
}
.bloc9-activity-section .dashboard-feed-card { box-shadow: none; }

@media (max-width: 980px) {
  .bloc9-tenant-row {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .bloc9-tenant-metric { text-align: left; }
}


/* KPIs charge temps réel — restaurants live / utilisateurs / sessions */
.live-load-kpis {
  margin-top: -4px;
}

.live-load-kpis .kpi {
  min-height: 118px;
}

/* Bloc 9.2 — Santé technique instantanée */
.platform-health-section {
  margin-top: -4px;
}

.platform-health-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.platform-health-details {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.platform-health-detail {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.76);
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.platform-health-detail strong {
  font-size: 12px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.platform-health-detail span {
  font-weight: 800;
  color: #0f172a;
}

.platform-slow-routes {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.platform-slow-routes strong {
  font-size: 12px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-right: 4px;
}

.platform-slow-routes span {
  border: 1px solid rgba(245, 158, 11, 0.22);
  background: rgba(255, 251, 235, 0.86);
  color: #92400e;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 700;
}

@media (max-width: 1180px) {
  .platform-health-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-health-details { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .platform-health-grid { grid-template-columns: 1fr; }
  .platform-health-detail { align-items: flex-start; flex-direction: column; }
}

/* Bloc 9.2 — qualification lisible des seuils santé */
.technical-kpi {
  min-height: 154px;
  display: flex;
  flex-direction: column;
}

.kpi-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.technical-state {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .045em;
  border: 1px solid rgba(15, 23, 42, 0.08);
}

.technical-state-success {
  color: #166534;
  background: rgba(220, 252, 231, 0.92);
  border-color: rgba(34, 197, 94, 0.22);
}

.technical-state-warn {
  color: #92400e;
  background: rgba(254, 243, 199, 0.92);
  border-color: rgba(245, 158, 11, 0.24);
}

.technical-state-critical {
  color: #991b1b;
  background: rgba(254, 226, 226, 0.92);
  border-color: rgba(239, 68, 68, 0.24);
}

.technical-state-neutral {
  color: #475569;
  background: rgba(241, 245, 249, 0.92);
  border-color: rgba(148, 163, 184, 0.22);
}

.technical-threshold,
.technical-extra {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

.technical-threshold {
  font-weight: 800;
  color: #334155;
}

.technical-extra {
  margin-top: auto;
  padding-top: 9px;
}

.platform-health-detail {
  flex-wrap: wrap;
}

.platform-health-detail > div {
  display: grid;
  gap: 2px;
}

.platform-health-detail small {
  color: #94a3b8;
  font-size: 12px;
  font-weight: 600;
}

.platform-health-detail em {
  flex-basis: 100%;
  font-style: normal;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.platform-health-detail-success {
  border-color: rgba(34, 197, 94, 0.20);
  background: linear-gradient(180deg, #ffffff 0%, #f0fdf4 100%);
}

.platform-health-detail-warn {
  border-color: rgba(245, 158, 11, 0.24);
  background: linear-gradient(180deg, #ffffff 0%, #fffbeb 100%);
}

.platform-health-detail-critical {
  border-color: rgba(239, 68, 68, 0.24);
  background: linear-gradient(180deg, #ffffff 0%, #fef2f2 100%);
}

.platform-health-detail-neutral {
  border-color: rgba(148, 163, 184, 0.22);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.platform-health-legend {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.platform-health-legend span {
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.78);
  border-radius: 999px;
  padding: 7px 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.platform-health-legend b {
  color: #0f172a;
}

/* Bloc 9.4B — séparation charge staff/client */
.platform-staff-routes span {
  border-color: rgba(14, 165, 233, 0.22);
  background: rgba(240, 249, 255, 0.88);
  color: #075985;
}

.platform-client-routes span {
  border-color: rgba(34, 197, 94, 0.20);
  background: rgba(240, 253, 244, 0.88);
  color: #166534;
}

.platform-tables-profile span {
  border-radius: 18px;
  line-height: 1.45;
  max-width: 920px;
}

.platform-tables-profile em {
  display: inline-block;
  margin-top: 4px;
  color: #0f766e;
  font-style: normal;
}

/* Bloc 9.12 — graphiques santé terrain */
.metric-chart-panel {
  margin-top: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.06);
  padding: 16px;
}

.metric-chart-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.metric-chart-header strong {
  display: block;
  color: #0f172a;
  font-size: 15px;
  letter-spacing: -0.01em;
}

.metric-chart-header span {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  margin-top: 3px;
}

.metric-chart-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.metric-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.metric-chart-card {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  padding: 14px;
  min-width: 0;
}

.metric-chart-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 8px;
}

.metric-chart-card-head strong {
  display: block;
  color: #0f172a;
  font-size: 14px;
}

.metric-chart-card-head span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
  margin-top: 3px;
}

.metric-chart-card-head b {
  color: #0f766e;
  background: rgba(204, 251, 241, 0.64);
  border: 1px solid rgba(20, 184, 166, 0.18);
  border-radius: 999px;
  padding: 6px 9px;
  white-space: nowrap;
  font-size: 12px;
}

.metric-chart-svg {
  width: 100%;
  height: 220px;
  overflow: visible;
}

.metric-chart-gridline {
  stroke: rgba(148, 163, 184, 0.25);
  stroke-width: 1;
}

.metric-chart-axis,
.metric-chart-threshold-label {
  fill: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.metric-chart-axis-line {
  stroke: rgba(15, 23, 42, 0.18);
  stroke-width: 1.2;
}

.metric-chart-threshold {
  stroke: rgba(245, 158, 11, 0.45);
  stroke-width: 1.1;
  stroke-dasharray: 6 6;
}

.metric-chart-line {
  fill: none;
  stroke: #14b8a6;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.metric-chart-point {
  fill: #0f766e;
  stroke: #ffffff;
  stroke-width: 2;
  cursor: crosshair;
}

.metric-chart-summary {
  color: #334155;
  font-size: 12px;
  font-weight: 800;
  margin-top: 8px;
}

.metric-chart-bands {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.metric-chart-bands span {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  padding: 5px 8px;
  background: rgba(255, 255, 255, 0.8);
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}

@media (max-width: 1100px) {
  .metric-chart-header { flex-direction: column; }
  .metric-chart-actions { justify-content: flex-start; }
  .metric-chart-grid { grid-template-columns: 1fr; }
}

/* Bloc 9.12B — graphiques cockpit lisibles par paliers */
.metric-chart-zone { pointer-events: none; }
.metric-chart-zone-ok { fill: rgba(34, 197, 94, 0.075); }
.metric-chart-zone-warn { fill: rgba(245, 158, 11, 0.105); }
.metric-chart-zone-bad { fill: rgba(239, 68, 68, 0.105); }
.metric-chart-zone-critical { fill: rgba(124, 58, 237, 0.12); }

.metric-value-pill {
  border-radius: 999px;
  padding: 6px 9px;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 900;
}
.metric-value-ok {
  color: #047857 !important;
  background: rgba(220, 252, 231, 0.85) !important;
  border: 1px solid rgba(34, 197, 94, 0.28) !important;
}
.metric-value-warn {
  color: #b45309 !important;
  background: rgba(254, 243, 199, 0.9) !important;
  border: 1px solid rgba(245, 158, 11, 0.32) !important;
}
.metric-value-bad {
  color: #b91c1c !important;
  background: rgba(254, 226, 226, 0.9) !important;
  border: 1px solid rgba(239, 68, 68, 0.32) !important;
}
.metric-value-critical {
  color: #6d28d9 !important;
  background: rgba(237, 233, 254, 0.94) !important;
  border: 1px solid rgba(124, 58, 237, 0.36) !important;
}

.metric-chart-point-ok { fill: #16a34a; }
.metric-chart-point-warn { fill: #f59e0b; }
.metric-chart-point-bad { fill: #dc2626; }
.metric-chart-point-critical { fill: #7c3aed; }

.metric-chart-time-label {
  fill: #64748b;
  font-size: 10.5px;
  font-weight: 800;
}

.metric-chart-bands span.metric-band-ok {
  color: #047857;
  border-color: rgba(34, 197, 94, 0.24);
  background: rgba(220, 252, 231, 0.62);
}
.metric-chart-bands span.metric-band-warn {
  color: #b45309;
  border-color: rgba(245, 158, 11, 0.28);
  background: rgba(254, 243, 199, 0.68);
}
.metric-chart-bands span.metric-band-bad {
  color: #b91c1c;
  border-color: rgba(239, 68, 68, 0.28);
  background: rgba(254, 226, 226, 0.68);
}
.metric-chart-bands span.metric-band-critical {
  color: #6d28d9;
  border-color: rgba(124, 58, 237, 0.32);
  background: rgba(237, 233, 254, 0.72);
}

.role-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 8px 0 10px 0;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(20, 184, 166, 0.12);
  color: #0f766e;
  border: 1px solid rgba(20, 184, 166, 0.22);
  font-size: 12px;
  font-weight: 900;
}

.rbac-current-role-banner {
  margin-bottom: 16px;
}

.rbac-disabled,
button.rbac-disabled {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  filter: grayscale(0.35);
}

button.rbac-disabled {
  box-shadow: none !important;
}

/* Bloc 6 — Journal de commandes tenant */
.tenant-orders-shell {
  display: grid;
  gap: 18px;
}

.tenant-orders-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 12px;
}

.tenant-order-kpi {
  padding: 16px;
}

.tenant-order-kpi span,
.tenant-order-kpi small {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.tenant-order-kpi strong {
  display: block;
  margin: 6px 0 4px;
  color: #1f2933;
  font-size: 24px;
  line-height: 1.1;
}

.tenant-orders-filters {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr 0.9fr 0.9fr auto auto auto;
  gap: 12px;
  align-items: end;
}

.tenant-orders-filters label {
  display: grid;
  gap: 6px;
  color: #334155;
  font-size: 12px;
  font-weight: 900;
}

.tenant-orders-filters input,
.tenant-orders-filters select {
  min-height: 42px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 14px;
  padding: 9px 11px;
  background: #fff;
  color: #0f172a;
  font-weight: 700;
}

.tenant-orders-filters .checkbox-line {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
}

.tenant-orders-list {
  display: grid;
  gap: 12px;
}

.tenant-order-card {
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

.tenant-order-card summary {
  cursor: pointer;
  list-style: none;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px 18px;
}

.tenant-order-card summary::-webkit-details-marker {
  display: none;
}

.tenant-order-main,
.tenant-order-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.tenant-order-main strong {
  font-size: 16px;
  color: #0f172a;
}

.tenant-order-main span,
.tenant-order-main .muted {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.tenant-order-meta strong {
  color: #0f172a;
  font-size: 16px;
}

.tenant-order-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 16px;
  padding: 0 18px 18px;
}

.tenant-order-detail-block {
  border: 1px solid rgba(226, 232, 240, 0.92);
  border-radius: 18px;
  background: rgba(248, 250, 252, 0.72);
  padding: 14px;
}

.tenant-order-detail-block h4 {
  margin: 0 0 10px;
  color: #1f2933;
  font-size: 14px;
}

.tenant-order-items {
  display: grid;
  gap: 8px;
}

.tenant-order-item-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.88);
}

.tenant-order-item-row:last-child {
  border-bottom: 0;
}

.tenant-order-item-row small {
  display: block;
  margin-top: 3px;
  color: #64748b;
  font-weight: 700;
}

.compact-dl {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 8px 12px;
  margin: 0 0 12px;
}

.compact-dl dt {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}

.compact-dl dd {
  margin: 0;
  color: #0f172a;
  font-size: 12px;
  font-weight: 800;
  word-break: break-word;
}

.tenant-order-anomalies {
  display: grid;
  gap: 8px;
  margin: 10px 0;
}

.mini-incident {
  border: 1px solid rgba(245, 158, 11, 0.28);
  border-radius: 14px;
  padding: 9px 10px;
  background: rgba(254, 243, 199, 0.52);
}

.mini-incident span {
  display: block;
  color: #92400e;
  font-size: 12px;
  font-weight: 800;
  margin-top: 2px;
}

@media (max-width: 1200px) {
  .tenant-orders-kpis {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
  }
  .tenant-orders-filters,
  .tenant-order-detail-grid {
    grid-template-columns: 1fr;
  }
  .tenant-order-card summary {
    grid-template-columns: 1fr;
  }
}

/* Bloc 5 complet — Support cockpit orienté résolution */
.support-hero {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 16px;
}
.support-hero h2 { margin: 4px 0 6px; }
.support-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.support-diagnostic-grid { margin-bottom: 16px; }
.support-diagnostic-card {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(255,255,255,.76);
  padding: 16px;
  box-shadow: var(--shadow-xs);
}
.support-diagnostic-card.error { border-color: rgba(216, 92, 92, .35); background: linear-gradient(180deg, rgba(254,236,235,.72), rgba(255,255,255,.88)); }
.support-diagnostic-card.warning { border-color: rgba(242, 184, 74, .42); background: linear-gradient(180deg, rgba(255,245,219,.8), rgba(255,255,255,.88)); }
.support-diagnostic-card.active, .support-diagnostic-card.info, .support-diagnostic-card.neutral { border-color: rgba(63,153,135,.22); }
.support-now-card { margin-bottom: 16px; }
.support-priority-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}
.support-priority-card {
  display: grid;
  gap: 8px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-xs);
}
.support-priority-card.error { border-color: rgba(216,92,92,.45); background: linear-gradient(180deg, rgba(254,236,235,.72), rgba(255,255,255,.92)); }
.support-priority-card.warning { border-color: rgba(242,184,74,.48); background: linear-gradient(180deg, rgba(255,245,219,.82), rgba(255,255,255,.92)); }
.support-priority-card.neutral { border-color: rgba(95,143,244,.2); }
.support-priority-top, .support-incident-statuses, .support-timeline-actions, .support-log-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.support-priority-actions { margin-top: 4px; }
.support-timeline-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
}
.support-timeline-row { align-items: flex-start; }
.support-timeline-actions { justify-content: flex-end; }
.support-playbook-card summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.support-playbook-block {
  margin: 10px 0;
  padding: 10px 12px;
  border-radius: var(--radius-sm);
  background: rgba(248,241,234,.72);
  color: var(--text-soft);
  line-height: 1.45;
}
.support-playbook-block strong { display: block; color: var(--heading); margin-bottom: 4px; }
.support-log-actions { margin-top: 8px; justify-content: space-between; }
@media (max-width: 760px) {
  .support-hero { flex-direction: column; }
  .support-hero-actions { justify-content: flex-start; }
  .support-priority-grid { grid-template-columns: 1fr; }
}

/* Bloc 1 — settings inheritance / overrides */
.settings-resolution-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.settings-resolution-card {
  border: 1px solid var(--border, #eadfd2);
  background: rgba(255, 255, 255, 0.72);
  border-radius: 16px;
  padding: 12px;
  display: grid;
  gap: 6px;
}
.settings-resolution-card strong {
  color: var(--text, #1f2933);
  font-size: 13px;
}
.settings-resolution-card small {
  color: var(--muted, #64748b);
  font-weight: 700;
}
.settings-family-header {
  gap: 16px;
  align-items: flex-start;
}
.settings-family-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.settings-family-actions .btn[disabled] {
  opacity: .55;
  cursor: not-allowed;
}
@media (max-width: 860px) {
  .settings-family-header { flex-direction: column; }
  .settings-family-actions { justify-content: flex-start; }
}

/* Bloc 2 — tenant onboarding / provisioning */
.tenant-onboarding-shell { display: grid; gap: 18px; }
.onboarding-hero { display: flex; justify-content: space-between; align-items: flex-start; gap: 22px; }
.onboarding-hero h2 { margin: 4px 0 8px; font-size: 24px; }
.onboarding-progress-card { min-width: 240px; display: grid; gap: 10px; padding: 14px; border: 1px solid var(--border, #e5e7eb); border-radius: 18px; background: rgba(248,250,252,.8); }
.progress-ring-label { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.progress-ring-label strong { font-size: 28px; line-height: 1; }
.progress-ring-label span { color: var(--muted, #64748b); font-size: 13px; }
.progress-bar { height: 10px; background: #e5e7eb; border-radius: 999px; overflow: hidden; }
.progress-bar span { display: block; height: 100%; background: linear-gradient(90deg, #22c55e, #16a34a); border-radius: 999px; transition: width .25s ease; }
.onboarding-grid { align-items: start; }
.onboarding-family-card { min-height: 100%; }
.onboarding-checklist { display: grid; gap: 10px; }
.onboarding-check-item { display: grid; grid-template-columns: 28px 1fr auto; gap: 12px; align-items: center; padding: 12px; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; }
.onboarding-check-item.done { border-color: rgba(34,197,94,.35); background: rgba(240,253,244,.65); }
.onboarding-check-item.pending { border-color: rgba(245,158,11,.3); background: rgba(255,251,235,.55); }
.onboarding-check-icon { width: 26px; height: 26px; border-radius: 999px; display: grid; place-items: center; font-weight: 800; background: #e5e7eb; color: #475569; }
.onboarding-check-item.done .onboarding-check-icon { background: #22c55e; color: #fff; }
.onboarding-check-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
@media (max-width: 900px) { .onboarding-hero { flex-direction: column; } .onboarding-progress-card { width: 100%; } .onboarding-check-item { grid-template-columns: 28px 1fr; } .onboarding-check-actions { grid-column: 1 / -1; justify-content: flex-start; } }

/* Bloc 3A — lisibilité support/audit/debug */
.support-readable-card,
.support-readable-row {
  border-left: 3px solid rgba(59, 130, 246, 0.22);
}

.support-readable-copy {
  color: #475569;
  font-size: 0.88rem;
  line-height: 1.45;
  margin-top: 4px;
}

.support-readable-note {
  background: rgba(248, 250, 252, 0.85);
  border: 1px solid rgba(226, 232, 240, 0.9);
  border-radius: 12px;
  color: #334155;
  font-size: 0.84rem;
  line-height: 1.4;
  margin-top: 8px;
  padding: 8px 10px;
}

.support-type-pill {
  background: rgba(15, 23, 42, 0.06);
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  color: #334155;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 4px 9px;
}

.technical-details {
  background: rgba(15, 23, 42, 0.025);
  border: 1px dashed rgba(100, 116, 139, 0.35);
  border-radius: 14px;
  margin-top: 12px;
  padding: 10px 12px;
}

.technical-details > summary {
  cursor: pointer;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 800;
  list-style: none;
}

.technical-details > summary::-webkit-details-marker {
  display: none;
}

.technical-details > summary::before {
  content: '▸';
  display: inline-block;
  margin-right: 6px;
  transition: transform 0.15s ease;
}

.technical-details[open] > summary::before {
  transform: rotate(90deg);
}

.technical-details-body {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.technical-json {
  background: #0f172a;
  border-radius: 12px;
  color: #e2e8f0;
  font-size: 0.74rem;
  line-height: 1.45;
  max-height: 260px;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
}

.audit-item-copy,
.diagnostic-event-title,
.platform-log-item strong {
  overflow-wrap: anywhere;
}


/* v45 — Beordy SuperAdmin DA aligned with Manager v44
   Scope: UI/DA only. Signature #ff7e4f, ink #141426, Poppins typography. */
:root{
  --beordy-signature:#ff7e4f!important;
  --beordy-signature-deep:#e95723!important;
  --beordy-signature-dark:#cf4e20!important;
  --beordy-signature-soft:#fff1ec!important;
  --beordy-halo:#ffb69c!important;
  --beordy-ink:#141426!important;
  --beordy-ink-soft:#5f5f74!important;
  --beordy-ink-light:#858596!important;
  --beordy-line:#e8e8f0!important;
  --beordy-line-strong:#dadae6!important;
  --bg:#ffffff!important;
  --bg-soft:#ffffff!important;
  --panel:#ffffff!important;
  --panel-soft:#ffffff!important;
  --panel-muted:#fbfbfd!important;
  --text:#141426!important;
  --text-soft:#5f5f74!important;
  --text-faint:#858596!important;
  --heading:#141426!important;
  --primary:#ff7e4f!important;
  --primary-strong:#e95723!important;
  --primary-soft:#fff1ec!important;
  --accent:#fff1ec!important;
  --accent-2:#ffded2!important;
  --border:#e8e8f0!important;
  --border-strong:#dadae6!important;
}
html,
body,
button,
input,
select,
textarea{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;
}
html,body{
  background:#fff!important;
  color:var(--beordy-ink)!important;
  font-weight:400!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:geometricPrecision!important;
}
body::before{display:none!important;content:none!important;background:none!important;}
.app-shell.beordy-superadmin-shell{
  grid-template-columns:320px minmax(0,1fr)!important;
  background:#fff!important;
}
.main{background:#fff!important;min-width:0!important;}
.page.page-lovable{
  max-width:1480px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:0 36px 36px!important;
  background:#fff!important;
}
.topbar.topbar-lovable.app-page-head{
  position:relative!important;
  top:auto!important;
  z-index:1!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  max-width:1480px!important;
  width:100%!important;
  margin:0 auto 22px!important;
  padding:32px 36px 0!important;
  background:transparent!important;
  border-bottom:0!important;
  backdrop-filter:none!important;
  box-shadow:none!important;
}
.topbar-left-block{display:grid!important;gap:4px!important;min-width:0!important;}
.app-page-head .eyebrow{
  color:var(--beordy-ink)!important;
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:-.01em!important;
  text-transform:none!important;
}
.app-page-head .topbar-title,
.app-page-head .h1{
  color:var(--beordy-signature)!important;
  font-size:34px!important;
  line-height:1.02!important;
  font-weight:600!important;
  letter-spacing:-.045em!important;
}
.app-page-head .topbar-subtitle,
.app-page-head .copy{
  color:var(--beordy-ink-soft)!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:300!important;
}
/* Sidebar Beordy — même template graphique que Manager. */
.sidebar.beordy-sidebar{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  overflow:hidden auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:30px 22px 22px!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 88% 8%, rgba(255,182,156,.42) 0%, rgba(255,182,156,.18) 18%, transparent 34%),
    radial-gradient(circle at 20% 4%, rgba(255,255,255,.18) 0%, transparent 28%),
    linear-gradient(170deg,#ff9168 0%, var(--beordy-signature) 42%, #f06436 69%, var(--beordy-signature-deep) 100%)!important;
  border-right:1px solid rgba(255,255,255,.42)!important;
  box-shadow:22px 0 54px rgba(207,78,32,.22)!important;
  backdrop-filter:none!important;
}
.sidebar.beordy-sidebar::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:-1!important;
  width:320px!important;
  height:320px!important;
  left:-150px!important;
  top:-130px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
}
.sidebar.beordy-sidebar::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:-1!important;
  inset:auto -80px 190px 40px!important;
  height:260px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(207,78,32,.10))!important;
  transform:skewY(-18deg)!important;
  border-radius:46px!important;
}
.beordy-brand{
  display:flex!important;
  align-items:center!important;
  gap:15px!important;
  margin:2px 2px 42px!important;
  color:#fff!important;
}
.beordy-mark{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  border-radius:19px!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  font-size:34px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.08em!important;
  background:linear-gradient(145deg,rgba(255,255,255,.32),rgba(255,255,255,.13))!important;
  border:1px solid rgba(255,255,255,.40)!important;
  box-shadow:0 18px 34px rgba(112,48,17,.16), inset 0 1px 0 rgba(255,255,255,.25)!important;
  text-shadow:0 1px 2px rgba(113,46,18,.18)!important;
}
.beordy-brand-copy strong{
  display:block!important;
  color:#fff!important;
  font-size:38px!important;
  line-height:.95!important;
  font-weight:600!important;
  letter-spacing:-.065em!important;
  text-shadow:0 2px 8px rgba(111,48,18,.16)!important;
}
.beordy-brand-copy span{
  display:block!important;
  margin-top:11px!important;
  color:rgba(255,255,255,.94)!important;
  font-size:17px!important;
  line-height:1.22!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  text-shadow:0 1px 2px rgba(111,48,18,.14)!important;
}
.sidebar.beordy-sidebar .nav{
  display:grid!important;
  gap:16px!important;
}
.sidebar.beordy-sidebar .nav-section-label{display:none!important;}
.sidebar.beordy-sidebar .nav-btn{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:17px!important;
  min-height:54px!important;
  width:100%!important;
  padding:9px 16px!important;
  border-radius:20px!important;
  border-color:transparent!important;
  background:transparent!important;
  color:#fff!important;
  text-align:left!important;
  font-size:16px!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  text-shadow:0 1px 2px rgba(112,48,17,.16)!important;
  box-shadow:none!important;
  transition:transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease!important;
}
.sidebar.beordy-sidebar .nav-btn:hover{
  transform:translateX(2px)!important;
  background:rgba(255,255,255,.08)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn.active{
  min-height:64px!important;
  padding:12px 16px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,248,245,.94))!important;
  color:var(--beordy-signature-deep)!important;
  border-color:rgba(255,255,255,.82)!important;
  box-shadow:0 18px 34px rgba(111,48,18,.16), inset 0 1px 0 rgba(255,255,255,.70)!important;
  text-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn.active:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:-22px!important;
  top:12px!important;
  width:5px!important;
  height:40px!important;
  border-radius:0 999px 999px 0!important;
  background:var(--beordy-signature-deep)!important;
}
.sidebar.beordy-sidebar .nav-ico{
  width:40px!important;
  height:40px!important;
  flex:0 0 40px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:transparent!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-ico svg{
  width:20px!important;
  height:20px!important;
  color:currentColor!important;
  stroke-width:2.15!important;
}
.sidebar.beordy-sidebar .nav-btn.active .nav-ico{
  background:transparent!important;
  color:var(--beordy-signature-deep)!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.sidebar-fill{flex:1 1 auto!important;min-height:52px!important;}
.sidebar.beordy-sidebar .sidebar-tenant{
  margin:0!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 34px!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px!important;
  min-height:86px!important;
  border-radius:21px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.23),rgba(255,255,255,.12))!important;
  border:1px solid rgba(255,255,255,.30)!important;
  box-shadow:0 18px 36px rgba(113,48,18,.14), inset 0 1px 0 rgba(255,255,255,.14)!important;
  backdrop-filter:blur(10px)!important;
}
.sidebar.beordy-sidebar .tenant-mark{
  width:52px!important;
  height:52px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.32),rgba(255,255,255,.14))!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.sidebar.beordy-sidebar .tenant-mark svg{width:24px!important;height:24px!important;color:#fff!important;stroke-width:2.1!important;}
.sidebar.beordy-sidebar .tenant-copy{min-width:0!important;}
.sidebar.beordy-sidebar .tenant-copy strong,
.sidebar.beordy-sidebar .sidebar-tenant strong{
  display:block!important;
  color:#fff!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:600!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 1px 2px rgba(111,48,18,.16)!important;
}
.sidebar.beordy-sidebar .tenant-copy span,
.sidebar.beordy-sidebar .sidebar-tenant span{
  display:block!important;
  margin-top:5px!important;
  color:rgba(255,255,255,.84)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:400!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 1px 2px rgba(111,48,18,.12)!important;
}
.tenant-more{
  width:34px!important;
  height:34px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  font-size:13px!important;
  letter-spacing:1px!important;
  line-height:1!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .sidebar-bottom{margin-top:14px!important;}
.sidebar.beordy-sidebar .logout-btn{
  width:100%!important;
  min-height:60px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.28)!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
  text-shadow:0 1px 2px rgba(111,48,18,.15)!important;
}
.sidebar.beordy-sidebar .logout-btn:hover{background:rgba(255,255,255,.22)!important;border-color:rgba(255,255,255,.40)!important;}
.sidebar.beordy-sidebar .logout-icon{font-size:22px!important;line-height:1!important;}
/* Composants SuperAdmin harmonisés Beordy */
.card,
.provision-panel,
.table-card,
.qr-card,
.category-card,
.product-card,
.catalog-editor-card,
.audit-summary-card,
.diagnostic-mini-card,
.diagnostic-note-card,
.diagnostic-context-card,
.diagnostic-detail-panel,
.dashboard-health-card,
.dashboard-incident-card,
.dashboard-feed-card,
.tenant-card,
.category-selector-card,
.catalog-item-row,
.priority-row,
.watch-row-v2,
.status-row-v2,
.audit-item,
.diagnostic-event,
.diagnostic-collapsible,
.table-shell,
.restaurant-table-shell,
.kpi,
.dashboard-metric-tile,
.product-kpi,
.tenant-order-card,
.tenant-order-detail-block,
.support-diagnostic-card,
.support-priority-card,
.settings-resolution-card,
.onboarding-progress-card,
.onboarding-check-item,
.metric-chart-panel{
  background:rgba(255,255,255,.96)!important;
  border-color:var(--beordy-line)!important;
  color:var(--beordy-ink)!important;
  box-shadow:0 10px 30px rgba(20,20,38,.055)!important;
}
.card-title,
.page-title,
.tenant-title,
.compact-heading,
.dashboard-feed-card h2,
.dashboard-health-card h2,
.dashboard-incident-card h2,
.dash-section-header h2,
.settings-section h2,
.provision-panel-header h2,
.support-hero h2,
.onboarding-hero h2,
.tenant-order-main strong,
.tenant-order-meta strong,
.tenant-order-detail-block h4,
.platform-log-item strong,
.product-analytics-table strong,
.metric-chart-header strong,
.bloc9-tenant-metric strong,
.kpi-value,
.dashboard-metric-value,
.audit-summary-value,
.diagnostic-kpi,
.technical-kpi strong,
.progress-ring-label strong,
.compact-dl dd{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  color:var(--beordy-ink)!important;
  font-weight:600!important;
  letter-spacing:-.018em!important;
}
.kpi-label,
.dashboard-metric-label,
.audit-summary-label,
.field-label,
.field span,
.btn,
.filter-btn,
.tenant-tab-btn,
.diagnostic-tab-btn,
.priority-link,
.badge,
.pill,
.role-chip,
.status-chip,
.support-type-pill{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  color:var(--beordy-ink)!important;
  font-weight:600!important;
}
.page-copy,
.card-copy,
.section-meta,
.dashboard-feed-copy,
.dashboard-health-note,
.audit-item-copy,
.diagnostic-context-notes,
.danger-zone-copy,
.login-copy,
.field-help,
.category-selector-meta,
.catalog-item-meta,
.watch-row-copy,
.status-row-label,
.scan-bar-label,
.kpi-sub,
.dashboard-metric-copy,
.tenant-order-main span,
.tenant-order-main .muted,
.tenant-order-item-row small,
.compact-dl dt,
.support-readable-copy,
.support-readable-note,
.settings-resolution-card small,
.progress-ring-label span,
.muted,
small{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  color:var(--beordy-ink-light)!important;
  font-weight:300!important;
}
.kpi-label,
.dashboard-metric-label,
.audit-summary-label{
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}
.btn.primary,
.filter-btn.active,
.tabbar .btn.active,
.tenant-tab-btn.active,
.diagnostic-tab-btn.active,
.priority-link{
  background:linear-gradient(135deg,var(--beordy-signature),var(--beordy-signature-deep))!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 14px 26px rgba(255,126,79,.22)!important;
}
.btn.primary *,
.filter-btn.active *,
.tabbar .btn.active *,
.tenant-tab-btn.active *,
.diagnostic-tab-btn.active *,
.priority-link *{color:#fff!important;}
.btn:not(.primary):not(.danger):not(.warning):not(.success),
.filter-btn:not(.active),
.tenant-tab-btn:not(.active),
.diagnostic-tab-btn:not(.active){
  color:var(--beordy-ink)!important;
  border-color:var(--beordy-line)!important;
  background:#fff!important;
}
.input,
.select,
.textarea,
.tenant-orders-filters input,
.tenant-orders-filters select{
  border-color:var(--beordy-line)!important;
  color:var(--beordy-ink)!important;
  background:#fff!important;
  font-weight:400!important;
}
.section-kicker,
.eyebrow{
  color:var(--beordy-signature)!important;
  background:var(--beordy-signature-soft)!important;
  font-weight:600!important;
}
.login-shell{
  min-height:100vh!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
  background:#fff!important;
}
.login-card{
  border-color:var(--beordy-line)!important;
  box-shadow:0 18px 50px rgba(20,20,38,.08)!important;
}
.beordy-login-badge,
.login-card .brand-badge{
  background:linear-gradient(135deg,var(--beordy-signature),var(--beordy-signature-deep))!important;
  color:#fff!important;
  font-size:24px!important;
  font-weight:600!important;
}
.login-title{
  color:var(--beordy-signature)!important;
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:600!important;
}
@media(max-width:1180px){
  .app-shell.beordy-superadmin-shell{grid-template-columns:1fr!important;}
  .sidebar.beordy-sidebar{
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    padding:24px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.38)!important;
    border-radius:0 0 28px 28px!important;
  }
  .topbar.topbar-lovable.app-page-head{padding:24px 24px 0!important;}
  .page.page-lovable{padding:0 24px 28px!important;}
}
@media(max-width:760px){
  .beordy-brand{margin-bottom:24px!important;}
  .beordy-brand-copy strong{font-size:32px!important;}
  .beordy-brand-copy span{font-size:15px!important;}
  .sidebar.beordy-sidebar .nav{gap:9px!important;}
  .sidebar.beordy-sidebar .nav-btn{min-height:56px!important;font-size:15px!important;border-radius:17px!important;}
  .sidebar.beordy-sidebar .nav-ico{width:36px!important;height:36px!important;border-radius:12px!important;}
  .sidebar.beordy-sidebar .sidebar-tenant{grid-template-columns:46px minmax(0,1fr) 32px!important;}
  .sidebar.beordy-sidebar .tenant-mark{width:46px!important;height:46px!important;border-radius:15px!important;}
  .app-page-head .topbar-title,.app-page-head .h1{font-size:30px!important;}
}

/* v46 — Page Supervision impression : ordre, lisibilité et structure support.
   Scope: page /print uniquement. Aucune règle métier modifiée. */
.print-supervision-v46{
  gap:22px!important;
  padding-bottom:34px!important;
}
.print-supervision-v46 .section-kicker{
  margin-bottom:8px!important;
}
.print-supervision-v46 h2,
.print-supervision-v46 h3{
  margin:0!important;
  color:var(--beordy-ink)!important;
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-weight:600!important;
  letter-spacing:-.035em!important;
}
.print-supervision-v46 h2{font-size:25px!important;line-height:1.14!important;}
.print-supervision-v46 h3{font-size:20px!important;line-height:1.18!important;}
.print-supervision-v46 .muted,
.print-supervision-v46 small{
  color:var(--beordy-ink-light)!important;
  font-weight:300!important;
  line-height:1.5!important;
}
.print-command-center{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"copy actions" "strip strip"!important;
  gap:18px!important;
  align-items:start!important;
  padding:22px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 62%,var(--beordy-signature-soft) 100%)!important;
  box-shadow:0 14px 36px rgba(20,20,38,.055)!important;
}
.print-command-copy{grid-area:copy!important;min-width:0!important;}
.print-command-copy p{max-width:720px!important;margin:8px 0 0!important;font-size:14px!important;}
.print-command-actions{
  grid-area:actions!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.print-command-strip{
  grid-area:strip!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.print-command-strip > div{
  min-height:76px!important;
  padding:14px 16px!important;
  border:1px solid rgba(255,126,79,.22)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.76)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;
}
.print-command-strip span{
  display:block!important;
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.print-command-strip strong{
  display:block!important;
  margin-top:4px!important;
  color:var(--beordy-ink)!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.035em!important;
}
.print-kpi-zone .print-health-grid{
  gap:16px!important;
}
.print-supervision-v46 .kpi{
  position:relative!important;
  min-height:130px!important;
  padding:20px 20px 18px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 12px 32px rgba(20,20,38,.055)!important;
  overflow:hidden!important;
}
.print-supervision-v46 .kpi:after{
  content:""!important;
  position:absolute!important;
  right:18px!important;
  bottom:18px!important;
  width:62px!important;
  height:34px!important;
  opacity:.48!important;
  background:repeating-linear-gradient(135deg,transparent 0 13px,rgba(255,126,79,.34) 13px 16px,transparent 16px 26px)!important;
}
.print-supervision-v46 .kpi-label{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:600!important;
}
.print-supervision-v46 .kpi-value{
  margin-top:10px!important;
  color:var(--beordy-ink)!important;
  font-size:30px!important;
  font-weight:600!important;
}
.print-supervision-v46 .kpi-sub{
  max-width:82%!important;
  margin-top:7px!important;
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.print-card-block{
  gap:18px!important;
  padding:20px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:26px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(20,20,38,.052)!important;
}
.print-section-heading{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
}
.print-section-heading p{margin:7px 0 0!important;font-size:14px!important;}
.print-active-filters{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:9px 12px!important;
  border-radius:999px!important;
  background:var(--beordy-signature-soft)!important;
  border:1px solid rgba(255,126,79,.18)!important;
  color:var(--beordy-signature-deep)!important;
  font-size:12px!important;
  font-weight:600!important;
}
.print-filter-grid{
  display:grid!important;
  grid-template-columns:1.15fr 1fr .8fr 1fr!important;
  gap:14px!important;
}
.print-supervision-v46 .field{
  gap:7px!important;
}
.print-supervision-v46 .field-label{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  font-weight:600!important;
}
.print-supervision-v46 .input,
.print-supervision-v46 select.input{
  min-height:48px!important;
  border-radius:15px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fff!important;
  color:var(--beordy-ink)!important;
  font-weight:400!important;
  box-shadow:none!important;
}
.print-quick-actions{
  gap:10px!important;
}
.print-quick-actions .btn,
.print-device-actions .btn,
.print-job-actions .btn{
  min-height:38px!important;
  border-radius:14px!important;
}
.print-two-column-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.print-activity-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.print-pairing-section{
  position:sticky!important;
  top:22px!important;
}
.print-pairing-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:13px!important;
}
.print-pairing-submit{
  width:100%!important;
  min-height:48px!important;
  border-radius:15px!important;
}
.print-soft-note{
  display:grid!important;
  gap:3px!important;
  padding:14px 15px!important;
  border-radius:18px!important;
  background:var(--beordy-signature-soft)!important;
  border:1px solid rgba(255,126,79,.18)!important;
}
.print-soft-note strong{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
  font-size:13px!important;
}
.print-soft-note span{
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.print-empty-state{
  display:grid!important;
  place-items:center!important;
  min-height:96px!important;
  padding:18px!important;
  border:1px dashed var(--beordy-line-strong)!important;
  border-radius:20px!important;
  background:#fbfbfd!important;
  color:var(--beordy-ink-soft)!important;
  text-align:center!important;
  font-weight:300!important;
}
.print-empty-state.compact{min-height:76px!important;}
.print-device-list,
.print-job-list,
.print-tenant-stat-list,
.print-attempt-list{
  display:grid!important;
  gap:12px!important;
}
.print-device-card,
.print-job-card,
.print-tenant-stat-row,
.print-attempt-row{
  border:1px solid var(--beordy-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(20,20,38,.035)!important;
}
.print-device-card{
  display:grid!important;
  gap:14px!important;
  padding:16px!important;
}
.print-device-main{
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  min-width:0!important;
}
.print-device-icon{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  color:var(--beordy-signature)!important;
  background:var(--beordy-signature-soft)!important;
  border:1px solid rgba(255,126,79,.20)!important;
  font-weight:600!important;
}
.print-device-copy{min-width:0!important;display:grid!important;gap:3px!important;}
.print-device-title-row{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
.print-device-title-row strong,
.print-job-copy strong,
.print-tenant-stat-row strong{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
  letter-spacing:-.02em!important;
}
.print-device-uid{
  overflow-wrap:anywhere!important;
  font-size:12px!important;
}
.print-device-meta-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.print-device-meta-grid > div{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  padding:12px!important;
  border-radius:16px!important;
  background:#fbfbfd!important;
  border:1px solid var(--beordy-line)!important;
}
.print-device-meta-grid span,
.print-job-table span,
.print-command-strip span{
  color:var(--beordy-ink-light)!important;
  font-size:11px!important;
  font-weight:300!important;
}
.print-device-meta-grid strong,
.print-job-table strong,
.print-job-time strong{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
}
.print-device-meta-grid small,
.print-job-status small,
.print-job-time small,
.print-attempt-row small{
  display:block!important;
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.print-job-card{
  display:grid!important;
  grid-template-columns:minmax(250px,1.15fr) minmax(150px,.75fr) minmax(210px,1fr) minmax(160px,.8fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  padding:15px 16px!important;
}
.print-job-main{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
}
.print-job-table{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  display:grid!important;
  place-items:center!important;
  gap:0!important;
  border-radius:17px!important;
  background:var(--beordy-signature-soft)!important;
  color:var(--beordy-signature-deep)!important;
  border:1px solid rgba(255,126,79,.20)!important;
}
.print-job-table span{font-size:10px!important;line-height:1!important;}
.print-job-table strong{font-size:20px!important;line-height:1!important;color:var(--beordy-signature-deep)!important;}
.print-job-copy,
.print-job-status,
.print-job-time,
.print-job-error{
  min-width:0!important;
  display:grid!important;
  gap:5px!important;
}
.print-job-copy .muted{
  overflow-wrap:anywhere!important;
  font-size:12px!important;
}
.print-job-error strong{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
  font-size:13px!important;
  overflow-wrap:anywhere!important;
}
.print-job-actions{
  justify-content:flex-end!important;
}
.print-tenant-stat-row,
.print-attempt-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:13px 14px!important;
}
.print-tenant-stat-row span,
.print-attempt-row span{
  display:block!important;
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.print-mini-metrics{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
.print-mini-metrics span{
  display:inline-flex!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#fbfbfd!important;
  border:1px solid var(--beordy-line)!important;
  color:var(--beordy-ink-soft)!important;
  font-size:11px!important;
  font-weight:400!important;
}
.print-attempt-row > div:first-child{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
.print-attempt-row > div:last-child{text-align:right!important;min-width:0!important;}
.print-attempt-row strong{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
}
.print-supervision-v46 .badge.active,
.print-supervision-v46 .badge.success{
  color:#186347!important;
  background:#eaf8f1!important;
  border-color:#bfe8d3!important;
}
.print-supervision-v46 .badge.warning,
.print-supervision-v46 .btn.warning{
  color:#9a5a00!important;
  background:#fff5df!important;
  border-color:#f4d99b!important;
}
.print-supervision-v46 .badge.error,
.print-supervision-v46 .badge.critical{
  color:#b42318!important;
  background:#fff0ee!important;
  border-color:#ffc9c3!important;
}
.print-supervision-v46 .badge.draft{
  color:var(--beordy-ink-soft)!important;
  background:#f6f6fa!important;
  border-color:var(--beordy-line)!important;
}
.print-supervision-v46 .btn.warning{
  box-shadow:none!important;
  font-weight:600!important;
}
@media(max-width:1320px){
  .print-two-column-layout{grid-template-columns:1fr!important;}
  .print-pairing-section{position:relative!important;top:auto!important;}
  .print-job-card{grid-template-columns:1fr 1fr!important;}
  .print-job-actions{justify-content:flex-start!important;}
}
@media(max-width:980px){
  .print-command-center{grid-template-columns:1fr!important;grid-template-areas:"copy" "actions" "strip"!important;}
  .print-command-actions{justify-content:flex-start!important;}
  .print-command-strip,
  .print-filter-grid,
  .print-device-meta-grid,
  .print-activity-grid{grid-template-columns:1fr!important;}
  .print-section-heading{display:grid!important;}
  .print-active-filters{justify-self:start!important;}
}
@media(max-width:720px){
  .print-supervision-v46 h2{font-size:22px!important;}
  .print-supervision-v46 h3{font-size:18px!important;}
  .print-card-block,.print-command-center{padding:16px!important;border-radius:22px!important;}
  .print-job-card{grid-template-columns:1fr!important;}
  .print-tenant-stat-row,.print-attempt-row{align-items:flex-start!important;flex-direction:column!important;}
  .print-attempt-row > div:last-child{text-align:left!important;}
}

/* v47 — Vue d'ensemble SuperAdmin : cockpit lisible, priorités d'abord, diagnostic avancé reclassé. */
.dashboard-overview-v47{
  display:grid!important;
  gap:22px!important;
}
.overview-command-center-v47{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(480px,.85fr)!important;
  gap:20px!important;
  align-items:stretch!important;
  padding:24px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 64%,var(--beordy-signature-soft) 100%)!important;
  box-shadow:0 16px 42px rgba(20,20,38,.06)!important;
}
.overview-command-center-v47.tone-success{background:linear-gradient(135deg,#fff 0%,#fff 68%,#eefaf4 100%)!important;}
.overview-command-center-v47.tone-warning{background:linear-gradient(135deg,#fff 0%,#fff 65%,#fff7e7 100%)!important;}
.overview-command-center-v47.tone-critical{background:linear-gradient(135deg,#fff 0%,#fff 62%,#fff0ee 100%)!important;}
.overview-command-main-v47{
  display:grid!important;
  align-content:center!important;
  gap:10px!important;
  min-width:0!important;
}
.overview-command-main-v47 .section-kicker{justify-self:start!important;margin-bottom:2px!important;}
.overview-command-main-v47 h2{
  margin:0!important;
  color:var(--beordy-ink)!important;
  font-size:34px!important;
  line-height:1.06!important;
  font-weight:600!important;
  letter-spacing:-.045em!important;
}
.overview-command-center-v47.tone-success .overview-command-main-v47 h2{color:#16804f!important;}
.overview-command-center-v47.tone-warning .overview-command-main-v47 h2{color:#a76205!important;}
.overview-command-center-v47.tone-critical .overview-command-main-v47 h2{color:#b42318!important;}
.overview-command-main-v47 p{
  max-width:760px!important;
  margin:0!important;
  color:var(--beordy-ink-soft)!important;
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:300!important;
}
.overview-status-metas-v47{
  display:flex!important;
  gap:9px!important;
  flex-wrap:wrap!important;
  margin-top:6px!important;
}
.overview-status-metas-v47 span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  color:var(--beordy-ink-soft)!important;
  font-size:12px!important;
  font-weight:400!important;
}
.overview-command-side-v47{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.overview-mini-metric-v47{
  display:grid!important;
  gap:5px!important;
  min-height:116px!important;
  padding:16px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.82)!important;
  box-shadow:0 8px 22px rgba(20,20,38,.035)!important;
}
.overview-mini-metric-v47 span{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:600!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
}
.overview-mini-metric-v47 strong{
  color:var(--beordy-ink)!important;
  font-size:30px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.045em!important;
}
.overview-mini-metric-v47 small{
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:300!important;
}
.overview-mini-metric-v47.tone-critical{border-color:#ffc9c3!important;background:#fff8f7!important;}
.overview-mini-metric-v47.tone-warning{border-color:#f4d99b!important;background:#fffaf0!important;}
.overview-mini-metric-v47.tone-success{border-color:#bfe8d3!important;background:#f7fdf9!important;}
.overview-priority-board-v47,
.overview-section-v47,
.overview-audit-section-v47,
.overview-advanced-diagnostics-v47{
  padding:18px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(20,20,38,.048)!important;
}
.overview-section-copy{
  margin:6px 0 0!important;
  color:var(--beordy-ink-light)!important;
  font-size:13px!important;
  font-weight:300!important;
  line-height:1.5!important;
}
.overview-priority-list-v47{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:11px!important;
  margin-top:12px!important;
}
.overview-priority-list-v47 .priority-row{
  min-height:74px!important;
  padding:14px 16px!important;
  border-radius:21px!important;
  box-shadow:0 8px 22px rgba(20,20,38,.035)!important;
}
.overview-priority-list-v47 .priority-row-main{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.overview-priority-list-v47 .priority-row-content strong{
  color:var(--beordy-ink)!important;
  font-size:15px!important;
  font-weight:600!important;
}
.overview-priority-list-v47 .priority-row-content span{
  color:var(--beordy-ink-soft)!important;
  font-size:13px!important;
  font-weight:300!important;
}
.overview-service-grid-v47{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:12px!important;
}
.overview-service-card-v47{
  display:grid!important;
  gap:8px!important;
  min-height:132px!important;
  padding:17px!important;
  border-radius:22px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fff!important;
  box-shadow:0 9px 24px rgba(20,20,38,.038)!important;
}
.overview-service-card-v47.tone-success{border-color:#bfe8d3!important;background:linear-gradient(180deg,#fff,#f8fdfb)!important;}
.overview-service-card-v47.tone-warn,
.overview-service-card-v47.tone-warning{border-color:#f4d99b!important;background:linear-gradient(180deg,#fff,#fffaf1)!important;}
.overview-service-card-v47.tone-critical{border-color:#ffc9c3!important;background:linear-gradient(180deg,#fff,#fff8f7)!important;}
.overview-service-head-v47{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.overview-service-head-v47 span{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
}
.overview-service-head-v47 em{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#fbfbfd!important;
  border:1px solid var(--beordy-line)!important;
  color:var(--beordy-ink-soft)!important;
  font-style:normal!important;
  font-size:11px!important;
  font-weight:600!important;
  white-space:nowrap!important;
}
.overview-service-card-v47 strong{
  color:var(--beordy-ink)!important;
  font-size:27px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.04em!important;
}
.overview-service-card-v47 small{
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:300!important;
}
.overview-kpi-grid-v47{margin-top:12px!important;}
.overview-kpi-grid-v47 .kpi{
  min-height:116px!important;
  padding:18px!important;
  border-radius:22px!important;
  box-shadow:0 9px 24px rgba(20,20,38,.038)!important;
}
.overview-business-grid-v47{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:22px!important;
}
.overview-business-grid-v47 .dash-section,
.overview-activity-card-v47,
.overview-status-card-v47{
  padding:18px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 12px 34px rgba(20,20,38,.048)!important;
}
.compact-list-v47{
  display:grid!important;
  gap:10px!important;
  margin-top:12px!important;
}
.compact-list-v47 .bloc9-tenant-row,
.compact-list-v47 .status-row-v2,
.compact-list-v47 .audit-item{
  min-height:62px!important;
  border-radius:19px!important;
  box-shadow:none!important;
}
.overview-activity-card-v47 .chart-shell{
  min-height:260px!important;
}
.overview-status-card-v47 .status-row-v2{
  justify-content:space-between!important;
}
.overview-advanced-diagnostics-v47{
  overflow:hidden!important;
}
.overview-advanced-diagnostics-v47 > summary{
  cursor:pointer!important;
  list-style:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:4px!important;
}
.overview-advanced-diagnostics-v47 > summary::-webkit-details-marker{display:none!important;}
.overview-advanced-diagnostics-v47 > summary span:first-child{
  display:grid!important;
  gap:5px!important;
}
.overview-advanced-diagnostics-v47 > summary strong{
  color:var(--beordy-ink)!important;
  font-size:20px!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}
.overview-advanced-diagnostics-v47 > summary small{
  color:var(--beordy-ink-light)!important;
  font-size:13px!important;
  font-weight:300!important;
  line-height:1.45!important;
}
.advanced-chevron{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:9px 13px!important;
  border-radius:999px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fff!important;
  color:var(--beordy-ink)!important;
  font-size:13px!important;
  font-weight:600!important;
}
.overview-advanced-diagnostics-v47[open] .advanced-chevron{color:#fff!important;background:linear-gradient(135deg,var(--beordy-signature),var(--beordy-signature-deep))!important;border-color:transparent!important;}
.overview-advanced-body-v47{
  display:grid!important;
  gap:18px!important;
  padding-top:18px!important;
}
.overview-health-details-v47{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.overview-route-diagnostics-v47{
  display:grid!important;
  gap:10px!important;
}
.overview-route-diagnostics-v47 .platform-slow-routes,
.overview-route-diagnostics-v47 .platform-route-profile,
.overview-route-diagnostics-v47 .platform-overview-profile{
  margin:0!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
.dashboard-overview-v47 .metric-chart-panel{
  margin:0!important;
  border-radius:24px!important;
  box-shadow:0 9px 24px rgba(20,20,38,.038)!important;
}
.dashboard-overview-v47 .dash-section-header h2,
.dashboard-overview-v47 .dash-section h2{
  color:var(--beordy-ink)!important;
  font-weight:600!important;
  letter-spacing:-.03em!important;
}
.dashboard-overview-v47 .kpi-label,
.dashboard-overview-v47 .kpi-value,
.dashboard-overview-v47 .kpi-sub{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
}
.dashboard-overview-v47 .kpi-value{font-weight:600!important;color:var(--beordy-ink)!important;}
.dashboard-overview-v47 .kpi-sub{font-weight:300!important;color:var(--beordy-ink-light)!important;}
@media(max-width:1360px){
  .overview-command-center-v47{grid-template-columns:1fr!important;}
  .overview-command-side-v47{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .overview-service-grid-v47{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .overview-health-details-v47{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  .overview-command-side-v47,
  .overview-service-grid-v47,
  .overview-business-grid-v47,
  .overview-health-details-v47{grid-template-columns:1fr!important;}
  .overview-command-main-v47 h2{font-size:30px!important;}
  .overview-mini-metric-v47{min-height:96px!important;}
}
@media(max-width:720px){
  .overview-command-center-v47,
  .overview-priority-board-v47,
  .overview-section-v47,
  .overview-audit-section-v47,
  .overview-advanced-diagnostics-v47,
  .overview-business-grid-v47 .dash-section{padding:15px!important;border-radius:22px!important;}
  .overview-command-main-v47 h2{font-size:27px!important;}
  .overview-advanced-diagnostics-v47 > summary{display:grid!important;}
  .advanced-chevron{justify-self:start!important;}
}

/* Beordy SuperAdmin v49 — overview real-time charts + direct action targeting */
.overview-services-charts-v49{
  margin-top:16px!important;
}
.overview-services-charts-v49 .metric-chart-panel{
  margin:0!important;
  border-radius:24px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fff!important;
  box-shadow:0 9px 24px rgba(20,20,38,.038)!important;
}
.priority-row-clickable-v49{
  cursor:pointer!important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease!important;
}
.priority-row-clickable-v49:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(255,126,79,.38)!important;
  box-shadow:0 14px 34px rgba(20,20,38,.075)!important;
}
.priority-row-clickable-v49:focus-visible{
  outline:3px solid rgba(255,126,79,.28)!important;
  outline-offset:3px!important;
}
.priority-row-clickable-v49 .priority-link{
  pointer-events:none!important;
}
@media(max-width:980px){
  .overview-services-charts-v49 .metric-chart-grid{grid-template-columns:1fr!important;}
}

/* v50 — Optimisation lisibilité SuperAdmin : Diagnostics, Impression, Audit. */
.diagnostic-overview-v50,
.print-supervision-v50,
.audit-layout-v50{
  display:grid!important;
  gap:18px!important;
}

/* Diagnostics : la lecture rapide ne doit plus consommer une colonne verticale. */
.diagnostic-shell-epure .diagnostic-summary-row-extended{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}
.diagnostic-quick-console-v50{
  border-radius:24px!important;
  padding:20px!important;
}
.diagnostic-quick-head-v50{
  display:grid!important;
  grid-template-columns:minmax(280px,1.05fr) minmax(260px,.95fr) minmax(360px,1.25fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
.diagnostic-quick-title-v50 h2{
  margin:8px 0 6px!important;
  color:var(--beordy-ink)!important;
  font-size:24px!important;
  line-height:1.15!important;
  font-weight:600!important;
  letter-spacing:-.035em!important;
}
.diagnostic-immediate-card-v50{
  display:grid!important;
  gap:8px!important;
  min-height:100%!important;
  padding:16px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
}
.diagnostic-immediate-card-v50.has-action{
  background:linear-gradient(135deg,rgba(255,126,79,.10),rgba(255,182,156,.12))!important;
  border-color:rgba(255,126,79,.22)!important;
}
.diagnostic-immediate-card-v50 span{
  color:var(--beordy-signature)!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-size:11px!important;
  font-weight:600!important;
}
.diagnostic-immediate-card-v50 strong{
  color:var(--beordy-ink)!important;
  font-size:16px!important;
  line-height:1.28!important;
  font-weight:600!important;
}
.diagnostic-mini-strip-v50{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.diagnostic-mini-strip-v50 .diagnostic-fact{
  min-height:0!important;
  padding:12px!important;
  border-radius:17px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fbfbfd!important;
}
.diagnostic-controls-v50{
  display:grid!important;
  grid-template-columns:minmax(360px,1fr) minmax(240px,320px) auto!important;
  align-items:end!important;
  gap:12px!important;
  margin-top:16px!important;
  padding-top:16px!important;
  border-top:1px solid var(--beordy-line)!important;
}
.diagnostic-time-actions-v50{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
}
.diagnostic-time-actions-v50 .filter-btn,
.diagnostic-time-actions-v50 .diagnostic-tab-btn{
  min-height:38px!important;
  width:auto!important;
  padding:0 14px!important;
  border-radius:14px!important;
}
.diagnostic-inline-select-v50{margin:0!important;}
.diagnostic-alerts-board-v50{padding:18px!important;border-radius:24px!important;}
.diagnostic-event-list-v50 .diagnostic-event{
  padding:14px 16px!important;
  border-radius:18px!important;
}
.diagnostic-secondary-grid-v50{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start!important;
}
.diagnostic-compact-grid-v50{grid-template-columns:1fr!important;gap:10px!important;}
.diagnostic-side-list-v50{max-height:280px!important;overflow:auto!important;padding-right:4px!important;}
.diagnostic-tab-shell{
  padding:12px!important;
  border-radius:22px!important;
}
.diagnostic-tabbar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.diagnostic-tabbar .diagnostic-tab-btn{min-height:38px!important;border-radius:14px!important;}

/* Impression : une page support orientée action, avec les détails techniques en second niveau. */
.print-supervision-v50{gap:18px!important;}
.print-command-center-v50{
  grid-template-columns:minmax(360px,1fr) auto!important;
  grid-template-areas:"copy actions" "strip strip"!important;
  padding:22px!important;
  border-radius:26px!important;
}
.print-command-strip-v50{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.print-command-strip-v50 > div{min-height:66px!important;padding:12px 14px!important;}
.print-control-card-v50{
  display:grid!important;
  gap:14px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 10px 30px rgba(20,20,38,.055)!important;
}
.print-filter-grid-v50{
  grid-template-columns:1.15fr 1fr .72fr 1fr!important;
  gap:12px!important;
}
.print-action-grid-v50{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.75fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.print-side-stack-v50{display:grid!important;gap:18px!important;align-items:start!important;}
.print-priority-jobs-v50{min-width:0!important;}
.print-priority-jobs-v50 .print-job-list{gap:10px!important;}
.print-supervision-v50 .print-job-card{
  grid-template-columns:minmax(220px,1.1fr) minmax(130px,.65fr) minmax(170px,.75fr) minmax(160px,.9fr) auto!important;
  padding:13px 14px!important;
}
.print-supervision-v50 .print-device-card{
  padding:14px!important;
  gap:12px!important;
}
.print-supervision-v50 .print-device-meta-grid{
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.print-supervision-v50 .print-device-meta-grid > div{
  padding:10px 12px!important;
  grid-template-columns:88px 1fr!important;
  align-items:center!important;
  column-gap:8px!important;
}
.print-supervision-v50 .print-device-meta-grid small{grid-column:2!important;}
.print-supervision-v50 .print-pairing-section{position:relative!important;top:auto!important;}
.print-advanced-v50{
  padding:0!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 10px 30px rgba(20,20,38,.055)!important;
  overflow:hidden!important;
}
.print-advanced-v50 > summary{
  list-style:none!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:18px 20px!important;
  color:var(--beordy-ink)!important;
  font-weight:600!important;
}
.print-advanced-v50 > summary::-webkit-details-marker{display:none!important;}
.print-advanced-v50 > summary span{font-size:17px!important;font-weight:600!important;color:var(--beordy-ink)!important;}
.print-advanced-v50 > summary small{font-size:13px!important;color:var(--beordy-ink-light)!important;}
.print-advanced-v50[open] > summary{border-bottom:1px solid var(--beordy-line)!important;}
.print-activity-grid-v50{padding:18px!important;}
.print-activity-grid-v50 section{
  min-width:0!important;
  padding:0!important;
}
.print-activity-grid-v50 .print-attempt-list{max-height:460px!important;overflow:auto!important;padding-right:4px!important;}

/* Audit : filtres en haut, lecture horizontale, puis KPI. */
.audit-layout-v50{gap:18px!important;}
.audit-filter-card-v50{
  border-radius:24px!important;
  padding:20px!important;
}
.audit-header-row-v50{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:14px!important;
}
.audit-header-row-v50 .card-title{
  margin-top:6px!important;
  font-size:22px!important;
  line-height:1.18!important;
}
.audit-filters-grid-v50{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(120px,1fr))!important;
  gap:12px!important;
}
.audit-search-field-v50{grid-column:span 2!important;}
.audit-filter-footer-v50{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid var(--beordy-line)!important;
}
.audit-summary-grid-v50{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:12px!important;
}
.audit-summary-grid-v50 .audit-summary-card{
  min-height:112px!important;
  padding:16px!important;
}
.audit-summary-grid-v50 .audit-summary-value{
  font-size:25px!important;
  line-height:1.1!important;
}
.audit-layout-v50 .audit-group-list,
.audit-layout-v50 .audit-timeline-list{margin-top:0!important;}

@media(max-width:1420px){
  .diagnostic-quick-head-v50{grid-template-columns:1fr 1fr!important;}
  .diagnostic-mini-strip-v50{grid-column:1 / -1!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .print-action-grid-v50{grid-template-columns:1fr!important;}
  .print-supervision-v50 .print-device-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .print-supervision-v50 .print-device-meta-grid > div{grid-template-columns:1fr!important;}
  .print-supervision-v50 .print-device-meta-grid small{grid-column:auto!important;}
  .audit-summary-grid-v50{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .audit-filters-grid-v50{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:1100px){
  .diagnostic-shell-epure .diagnostic-summary-row-extended{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .diagnostic-controls-v50{grid-template-columns:1fr!important;align-items:stretch!important;}
  .diagnostic-secondary-grid-v50{grid-template-columns:1fr!important;}
  .print-command-center-v50{grid-template-columns:1fr!important;grid-template-areas:"copy" "actions" "strip"!important;}
  .print-filter-grid-v50{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .print-supervision-v50 .print-job-card{grid-template-columns:1fr 1fr!important;}
  .audit-summary-grid-v50{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .audit-filters-grid-v50{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .audit-search-field-v50{grid-column:1 / -1!important;}
}
@media(max-width:720px){
  .diagnostic-shell-epure .diagnostic-summary-row-extended,
  .diagnostic-mini-strip-v50,
  .print-command-strip-v50,
  .print-filter-grid-v50,
  .audit-summary-grid-v50,
  .audit-filters-grid-v50{grid-template-columns:1fr!important;}
  .diagnostic-quick-head-v50{grid-template-columns:1fr!important;}
  .print-supervision-v50 .print-job-card{grid-template-columns:1fr!important;}
  .audit-header-row-v50,
  .audit-filter-footer-v50{display:grid!important;}
}

/* v51 — Audit KPI au-dessus des filtres + Configuration lisible DA Beordy.
   Scope: SuperAdmin UI only. Aucun changement métier/API. */
.audit-layout-v51{
  grid-template-columns:1fr!important;
  align-items:start!important;
  justify-items:stretch!important;
  width:100%!important;
  gap:18px!important;
}
.audit-layout-v51 > *{
  min-width:0!important;
}
.audit-summary-grid-v51{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  order:1!important;
}
.audit-summary-grid-v51 .audit-summary-card{
  min-width:0!important;
  min-height:122px!important;
  padding:18px!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 10px 30px rgba(20,20,38,.055)!important;
}
.audit-summary-grid-v51 .audit-summary-label{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  line-height:1.18!important;
  font-weight:600!important;
  letter-spacing:.045em!important;
}
.audit-summary-grid-v51 .audit-summary-value{
  margin-top:8px!important;
  color:var(--beordy-ink)!important;
  font-size:27px!important;
  line-height:1.05!important;
  font-weight:600!important;
  letter-spacing:-.035em!important;
  overflow-wrap:anywhere!important;
}
.audit-summary-grid-v51 .audit-summary-card:nth-child(5) .audit-summary-value{
  font-size:21px!important;
  line-height:1.12!important;
}
.audit-layout-v51 .audit-filter-card-v51{
  order:2!important;
  width:100%!important;
  max-width:none!important;
}
.audit-layout-v51 .audit-group-list,
.audit-layout-v51 .audit-timeline-list,
.audit-layout-v51 > .card:not(.audit-filter-card-v51){
  order:3!important;
}
.audit-layout-v51 .audit-filter-card-v51 .audit-header-row-v50{
  align-items:flex-start!important;
  margin-bottom:18px!important;
}
.audit-layout-v51 .audit-filters-grid-v50{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
.audit-layout-v51 .audit-search-field-v50{
  grid-column:span 2!important;
}
.audit-layout-v51 .audit-filter-footer-v50{
  border-top:1px solid var(--beordy-line)!important;
}

.settings-shell-v51{
  display:grid!important;
  gap:22px!important;
  width:100%!important;
  max-width:1280px!important;
  margin:0 auto!important;
  padding:24px!important;
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 14px 42px rgba(20,20,38,.06)!important;
}
.settings-shell-v51 > .card-header{
  padding-bottom:4px!important;
  border-bottom:0!important;
}
.settings-shell-v51 > .card-header .card-title{
  color:var(--beordy-ink)!important;
  font-size:24px!important;
  line-height:1.16!important;
  font-weight:600!important;
}
.settings-shell-v51 > .card-header .card-copy{
  margin-top:4px!important;
  color:var(--beordy-ink-light)!important;
  font-size:14px!important;
  font-weight:300!important;
}
.settings-shell-v51 .settings-accordion-list{
  display:grid!important;
  gap:14px!important;
}
.settings-shell-v51 .settings-section{
  display:block!important;
  overflow:hidden!important;
  padding:0!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:0 10px 30px rgba(20,20,38,.045)!important;
}
.settings-shell-v51 .settings-section-toggle{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:78px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:18px 20px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(135deg,#fff 0%,#fff 58%,var(--beordy-signature-soft) 100%)!important;
  color:var(--beordy-ink)!important;
  text-align:left!important;
  box-shadow:none!important;
}
.settings-shell-v51 .settings-section-toggle > span:first-child{
  min-width:0!important;
  display:grid!important;
  gap:5px!important;
}
.settings-shell-v51 .settings-section-toggle strong{
  display:block!important;
  color:var(--beordy-ink)!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}
.settings-shell-v51 .settings-section-copy{
  display:block!important;
  color:var(--beordy-ink-light)!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:300!important;
}
.settings-shell-v51 .settings-section-icon{
  order:-1!important;
  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;
  margin-right:0!important;
  border-radius:14px!important;
  background:var(--beordy-signature-soft)!important;
  color:var(--beordy-signature-deep)!important;
  display:grid!important;
  place-items:center!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:600!important;
  border:1px solid rgba(255,126,79,.16)!important;
}
.settings-shell-v51 .settings-section.open .settings-section-toggle{
  background:linear-gradient(135deg,#fff 0%,#fff7f3 100%)!important;
  border-bottom:1px solid var(--beordy-line)!important;
}
.settings-shell-v51 .settings-section-body.visible{
  display:grid!important;
  gap:20px!important;
  padding:22px!important;
  background:#fff!important;
}
.settings-shell-v51 .settings-section-body.hidden{
  display:none!important;
}
.settings-shell-v51 .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 20px!important;
  align-items:start!important;
}
.settings-shell-v51 .field{
  min-width:0!important;
  gap:8px!important;
}
.settings-shell-v51 .field-label{
  color:var(--beordy-ink)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
}
.settings-shell-v51 .input,
.settings-shell-v51 .select,
.settings-shell-v51 textarea{
  min-height:50px!important;
  border-radius:16px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fff!important;
  color:var(--beordy-ink)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
  font-size:14px!important;
  font-weight:400!important;
}
.settings-shell-v51 .input:focus,
.settings-shell-v51 .select:focus,
.settings-shell-v51 textarea:focus{
  border-color:rgba(255,126,79,.42)!important;
  box-shadow:0 0 0 4px rgba(255,126,79,.12)!important;
}
.settings-shell-v51 .field-help,
.settings-shell-v51 .field-warning{
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:300!important;
}
.settings-shell-v51 .settings-section-actions{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:12px!important;
  margin-top:2px!important;
}
.settings-shell-v51 .settings-section-actions .btn{
  width:100%!important;
  min-height:48px!important;
  border-radius:16px!important;
}
.settings-shell-v51 .settings-switch-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.settings-shell-v51 .switch-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:14px 16px!important;
  border:1px solid var(--beordy-line)!important;
  border-radius:18px!important;
  background:#fbfbfd!important;
}
.settings-shell-v51 .switch-row strong{
  color:var(--beordy-ink)!important;
  font-size:14px!important;
  font-weight:600!important;
}
.settings-shell-v51 .notice,
.settings-shell-v51 .danger-zone-copy{
  padding:14px 16px!important;
  border-radius:18px!important;
  background:#fbfbfd!important;
  border:1px solid var(--beordy-line)!important;
}
.settings-shell-v51 .settings-system-grid,
.settings-shell-v51 .settings-danger-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.settings-shell-v51 .settings-system-item{
  padding:14px 16px!important;
  border-radius:18px!important;
  border:1px solid var(--beordy-line)!important;
  background:#fbfbfd!important;
}
.settings-shell-v51 .settings-system-item span{
  color:var(--beordy-ink-light)!important;
  font-size:12px!important;
  font-weight:300!important;
}
.settings-shell-v51 .settings-system-item strong{
  color:var(--beordy-ink)!important;
  font-size:14px!important;
  font-weight:600!important;
}

@media(max-width:1280px){
  .audit-summary-grid-v51{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .audit-layout-v51 .audit-filters-grid-v50{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  .audit-summary-grid-v51,
  .audit-layout-v51 .audit-filters-grid-v50,
  .settings-shell-v51 .form-grid,
  .settings-shell-v51 .settings-switch-grid,
  .settings-shell-v51 .settings-system-grid,
  .settings-shell-v51 .settings-danger-grid{
    grid-template-columns:1fr!important;
  }
  .audit-layout-v51 .audit-search-field-v50{grid-column:1!important;}
  .settings-shell-v51{padding:18px!important;border-radius:24px!important;}
  .settings-shell-v51 .settings-section-body.visible{padding:18px!important;}
}

/* v52 — Configuration accordéons : titres recentrés à gauche du contenu, plus d'effet collé à droite.
   Scope: SuperAdmin UI only. Aucun changement métier/API. */
.settings-shell-v51 .settings-section-toggle{
  justify-content:flex-start!important;
}
.settings-shell-v51 .settings-section-toggle > span:first-child{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  justify-items:start!important;
  text-align:left!important;
}
.settings-shell-v51 .settings-section-toggle strong,
.settings-shell-v51 .settings-section-copy{
  text-align:left!important;
}
.settings-shell-v51 .settings-section-icon{
  order:0!important;
}


/* v53 — Branding Beordy SuperAdmin : logo officiel, colonne blanche, contour orange droit.
   Scope: DA sidebar uniquement. Aucun changement métier/API. */
.sidebar.beordy-sidebar{
  background:#fff!important;
  border-right:8px solid var(--beordy-signature)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar::before,
.sidebar.beordy-sidebar::after{
  display:none!important;
  content:none!important;
}
.beordy-brand{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin:4px 6px 44px!important;
  color:var(--beordy-signature)!important;
}
.beordy-logo-img{
  display:block!important;
  width:min(235px,100%)!important;
  height:auto!important;
  object-fit:contain!important;
}
.beordy-mark,
.beordy-brand-copy{
  display:none!important;
}
.sidebar.beordy-sidebar .nav-btn{
  color:var(--beordy-ink)!important;
  text-shadow:none!important;
  background:transparent!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn:hover{
  background:rgba(255,126,79,.06)!important;
  color:var(--beordy-signature-deep)!important;
  border-color:rgba(255,126,79,.10)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn.active{
  background:linear-gradient(135deg,rgba(255,241,236,.98),rgba(255,250,248,.96))!important;
  color:var(--beordy-signature-deep)!important;
  border-color:rgba(255,126,79,.18)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn.active:before{
  display:none!important;
  content:none!important;
}
.sidebar.beordy-sidebar .nav-ico{
  color:var(--beordy-ink)!important;
  text-shadow:none!important;
}
.sidebar.beordy-sidebar .nav-btn:hover .nav-ico,
.sidebar.beordy-sidebar .nav-btn.active .nav-ico{
  color:var(--beordy-signature-deep)!important;
}
.sidebar.beordy-sidebar .sidebar-tenant{
  background:#fff!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.sidebar.beordy-sidebar .tenant-mark{
  background:var(--beordy-signature-soft)!important;
  color:var(--beordy-signature-deep)!important;
  border:1px solid rgba(255,126,79,.18)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .tenant-mark svg{
  color:var(--beordy-signature-deep)!important;
}
.sidebar.beordy-sidebar .tenant-copy strong,
.sidebar.beordy-sidebar .sidebar-tenant strong{
  color:var(--beordy-ink)!important;
  text-shadow:none!important;
}
.sidebar.beordy-sidebar .tenant-copy span,
.sidebar.beordy-sidebar .sidebar-tenant span{
  color:var(--beordy-ink-soft)!important;
  text-shadow:none!important;
}
.tenant-more{
  background:#fff!important;
  color:var(--beordy-ink)!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .logout-btn{
  background:#fff!important;
  color:var(--beordy-ink)!important;
  border:1px solid var(--beordy-line)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.sidebar.beordy-sidebar .logout-btn:hover{
  background:var(--beordy-signature-soft)!important;
  border-color:rgba(255,126,79,.20)!important;
  color:var(--beordy-signature-deep)!important;
}
@media(max-width:1180px){
  .sidebar.beordy-sidebar{
    border-right:0!important;
    border-bottom:8px solid var(--beordy-signature)!important;
  }
}
@media(max-width:760px){
  .beordy-logo-img{
    width:min(210px,100%)!important;
  }
}

/* v54 — SuperAdmin Beordy : background #f7f7f7, sidebar blanche, séparation par ombre.
   Scope: DA uniquement. Aucun changement métier/API/backend. */
:root{
  --bg:#f7f7f7!important;
  --bg-soft:#f7f7f7!important;
}
html,
body{
  background:#f7f7f7!important;
}
.app-shell.beordy-superadmin-shell{
  background:#f7f7f7!important;
}
.main{
  background:#f7f7f7!important;
}
.page.page-lovable{
  background:transparent!important;
}
.sidebar.beordy-sidebar{
  background:#fff!important;
  border-right:0!important;
  box-shadow:18px 0 42px rgba(20,20,38,.08)!important;
}
.sidebar.beordy-sidebar::before,
.sidebar.beordy-sidebar::after{
  display:none!important;
  content:none!important;
}
.sidebar.beordy-sidebar .nav-btn.active{
  background:linear-gradient(135deg,rgba(255,241,236,.96),rgba(255,250,248,.94))!important;
  border-color:rgba(255,126,79,.14)!important;
  box-shadow:none!important;
}
.sidebar.beordy-sidebar .sidebar-tenant,
.sidebar.beordy-sidebar .logout-btn,
.tenant-more{
  box-shadow:0 10px 26px rgba(20,20,38,.035)!important;
}
@media(max-width:1180px){
  .sidebar.beordy-sidebar{
    border-right:0!important;
    border-bottom:0!important;
    box-shadow:0 16px 36px rgba(20,20,38,.08)!important;
  }
}

/* Bloc 11 hotfix support opérationnel: garder la lecture principale simple. */
.support-operational-card {
  border: 1px solid rgba(20, 20, 38, 0.08);
  border-radius: 18px;
  padding: 14px;
  background: #fff;
  display: grid;
  gap: 12px;
}
.support-operational-card.error {
  border-color: rgba(239, 68, 68, 0.24);
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.95), #fff);
}
.support-operational-card.warning {
  border-color: rgba(255, 126, 79, 0.28);
  background: linear-gradient(180deg, rgba(255, 247, 237, 0.95), #fff);
}
.support-operational-card.active {
  border-color: rgba(34, 197, 94, 0.24);
  background: linear-gradient(180deg, rgba(240, 253, 244, 0.95), #fff);
}
.support-operational-main {
  display: grid;
  gap: 8px;
}
.support-operational-main > strong {
  font-size: 1.02rem;
  color: #141426;
}
.support-operational-where {
  color: #8b8ea3;
  font-size: 0.92rem;
}
.support-operational-action,
.diagnostic-main-action-line {
  border: 1px solid rgba(20, 20, 38, 0.08);
  border-radius: 12px;
  padding: 10px 12px;
  background: #f8fafc;
  color: #141426;
  font-weight: 600;
}
.support-priority-grid-operational {
  align-items: stretch;
}
.support-watch-card .support-operational-card,
.support-watch-card .support-incident-card {
  opacity: 0.92;
}
.support-hero-operational .badge {
  align-self: flex-start;
}
.diagnostic-subtitle-operational {
  font-weight: 800;
  color: #141426;
  margin: 10px 0 8px;
}
.technical-details.inline {
  display: inline-block;
  margin-left: 8px;
}
.print-job-operational-card .print-job-error strong {
  color: #141426;
  font-size: 0.9rem;
}
.print-job-operational-card.active .print-job-error strong {
  color: #15803d;
}
.print-job-operational-card.error .print-job-error strong {
  color: #b91c1c;
}
.audit-item-detail .technical-details {
  margin-top: 8px;
}

/* Beordy — Takeaway superadmin v1 : filtres commandes par canal. */
.tenant-orders-filters{grid-template-columns:repeat(8,minmax(0,1fr))!important}
@media(max-width:1180px){.tenant-orders-filters{grid-template-columns:1fr 1fr!important}}
@media(max-width:760px){.tenant-orders-filters{grid-template-columns:1fr!important}}


/* Beordy — Hotfix commandes UX : filtres date/heure alignés et résumé compact lisible. */
.tenant-orders-filters{
  grid-template-columns:1fr!important;
}
.tenant-orders-filters-main{
  display:grid!important;
  grid-template-columns:minmax(260px,1.3fr) minmax(160px,.75fr) minmax(160px,.75fr) minmax(170px,.8fr)!important;
  gap:12px!important;
}
.tenant-orders-date-row{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) minmax(120px,.55fr) minmax(170px,1fr) minmax(120px,.55fr)!important;
  gap:12px!important;
  align-items:end!important;
}
.tenant-order-compact-meta{
  color:#64748b!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}
@media(max-width:1180px){
  .tenant-orders-filters-main,.tenant-orders-date-row{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:760px){
  .tenant-orders-filters-main,.tenant-orders-date-row{grid-template-columns:1fr!important;}
}


/* Beordy — Orders UX hotfix: titre commande + résumé sur une seule ligne */
.tenant-order-title-inline{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  color:#0f172a!important;
  font-size:16px!important;
  font-weight:950!important;
  line-height:1.35!important;
}
.tenant-order-title-inline span{
  color:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
}
.tenant-order-title-inline .tenant-order-inline-dot{
  color:#64748b!important;
  font-weight:950!important;
}
.tenant-order-main .tenant-order-compact-meta{
  display:none!important;
}
