/* ===== Admin/report visual normalization ===== */
body.crm-admin-page .card,
body.crm-report-page .card,
body.crm-public-page .card,
body.crm-doc-page .card,
body.crm-auth-page .panel,
body.crm-auth-page .login-card{
  background: color-mix(in srgb, var(--crm-surface) 96%, var(--crm-bg) 4%) !important;
  border: 1px solid var(--crm-border) !important;
  box-shadow: var(--crm-shadow-sm) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.crm-admin-page .card,
body.crm-report-page .card{ border-radius: 22px !important; }
body.crm-admin-page .pad,
body.crm-report-page .pad,
body.crm-public-page .pad,
body.crm-doc-page .pad{ padding: 22px !important; }
body.crm-admin-page .title,
body.crm-report-page .title,
body.crm-admin-page .modal-title,
body.crm-report-page .modal-title,
body.crm-admin-page .brand-title,
body.crm-report-page .brand-title,
body.crm-admin-page .brand-name,
body.crm-report-page .brand-name{ color: var(--crm-text) !important; }
body.crm-admin-page .meta,
body.crm-report-page .meta,
body.crm-admin-page .muted,
body.crm-report-page .muted,
body.crm-admin-page .brand-sub,
body.crm-report-page .brand-sub,
body.crm-doc-page .subtitle,
body.crm-public-page .hero-subtitle{ color: var(--crm-muted) !important; }
body.crm-admin-page .btn,
body.crm-report-page .btn,
body.crm-auth-page .btn,
body.crm-public-page .btn,
body.crm-doc-page .btn,
body.crm-admin-page button,
body.crm-report-page button{
  border-radius: 12px !important;
  border: 1px solid var(--crm-border) !important;
  background: var(--crm-surface) !important;
  color: var(--crm-text) !important;
  box-shadow: none !important;
}
body.crm-admin-page .btn:hover,
body.crm-report-page .btn:hover,
body.crm-auth-page .btn:hover,
body.crm-public-page .btn:hover,
body.crm-doc-page .btn:hover,
body.crm-admin-page button:hover,
body.crm-report-page button:hover{ border-color: color-mix(in srgb, var(--crm-accent) 34%, var(--crm-border) 66%) !important; }
body.crm-admin-page .btn.primary,
body.crm-report-page .btn.primary,
body.crm-auth-page .btn.primary,
body.crm-public-page .btn.primary,
body.crm-doc-page .btn.primary,
body.crm-admin-page .primary,
body.crm-report-page .primary{
  background: linear-gradient(135deg, var(--crm-accent), color-mix(in srgb, var(--crm-accent) 55%, var(--crm-accent-2) 45%)) !important;
  color: #fff !important;
  border-color: transparent !important;
}
body.crm-admin-page input:not([type="checkbox"]):not([type="radio"]),
body.crm-admin-page select,
body.crm-admin-page textarea,
body.crm-admin-page .input,
body.crm-report-page input:not([type="checkbox"]):not([type="radio"]),
body.crm-report-page select,
body.crm-report-page textarea,
body.crm-report-page .input,
body.crm-auth-page input:not([type="checkbox"]):not([type="radio"]),
body.crm-auth-page .input,
body.crm-public-page input:not([type="checkbox"]):not([type="radio"]),
body.crm-doc-page input:not([type="checkbox"]):not([type="radio"]){
  min-height: 44px;
  border-radius: 12px !important;
  background: var(--crm-surface) !important;
  border: 1px solid var(--crm-border) !important;
  color: var(--crm-text) !important;
  box-shadow: none !important;
}
body.crm-admin-page textarea,
body.crm-report-page textarea{ min-height: 110px; }
body.crm-admin-page input:not([type="checkbox"]):not([type="radio"]):focus,
body.crm-admin-page select:focus,
body.crm-admin-page textarea:focus,
body.crm-admin-page .input:focus,
body.crm-report-page input:not([type="checkbox"]):not([type="radio"]):focus,
body.crm-report-page select:focus,
body.crm-report-page textarea:focus,
body.crm-report-page .input:focus,
body.crm-auth-page input:not([type="checkbox"]):not([type="radio"]):focus,
body.crm-auth-page .input:focus,
body.crm-public-page input:not([type="checkbox"]):not([type="radio"]):focus,
body.crm-doc-page input:not([type="checkbox"]):not([type="radio"]):focus{ outline: none; border-color: color-mix(in srgb, var(--crm-accent) 46%, var(--crm-border) 54%) !important; box-shadow: 0 0 0 4px color-mix(in srgb, var(--crm-accent) 16%, transparent) !important; }

body.crm-admin-page input[type="checkbox"],
body.crm-admin-page input[type="radio"],
body.crm-report-page input[type="checkbox"],
body.crm-report-page input[type="radio"],
body.crm-auth-page input[type="checkbox"],
body.crm-auth-page input[type="radio"],
body.crm-public-page input[type="checkbox"],
body.crm-public-page input[type="radio"],
body.crm-doc-page input[type="checkbox"],
body.crm-doc-page input[type="radio"]{
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: auto;
  -webkit-appearance: auto;
}
body.crm-admin-page .wrap,
body.crm-report-page .wrap{ max-width: 1480px !important; }
body.crm-admin-page .top,
body.crm-report-page .top{ margin-bottom: 18px !important; }
body.crm-admin-page .grid,
body.crm-report-page .grid{ gap: 18px !important; }
body.crm-admin-page table,
body.crm-report-page table{ width:100%; border-collapse:separate; border-spacing:0; }
body.crm-admin-page table thead th,
body.crm-report-page table thead th{
  position: sticky; top: 0; z-index: 3; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: var(--crm-muted);
  background: color-mix(in srgb, var(--crm-surface-2) 95%, var(--crm-bg) 5%) !important;
  border-bottom: 1px solid var(--crm-border) !important;
}
body.crm-admin-page table th,
body.crm-admin-page table td,
body.crm-report-page table th,
body.crm-report-page table td{
  padding: 12px 14px !important; border-bottom: 1px solid var(--crm-border) !important; color: var(--crm-text) !important;
}
body.crm-admin-page tbody tr:hover,
body.crm-report-page tbody tr:hover{ background: color-mix(in srgb, var(--crm-accent) 5%, var(--crm-surface) 95%) !important; }
body.crm-admin-page .table-wrap,
body.crm-admin-page .table-box,
body.crm-report-page .table-wrap,
body.crm-report-page .table-box{
  border: 1px solid var(--crm-border) !important; border-radius: 18px !important; overflow: auto !important; background: var(--crm-surface) !important;
}
body.crm-admin-page .pill,
body.crm-report-page .pill,
body.crm-admin-page .tag,
body.crm-report-page .tag,
body.crm-admin-page .badge,
body.crm-report-page .badge,
body.crm-doc-page .badge,
body.crm-public-page .badge{
  background: color-mix(in srgb, var(--crm-accent) 8%, var(--crm-surface) 92%) !important;
  color: var(--crm-text) !important;
  border: 1px solid color-mix(in srgb, var(--crm-accent) 18%, var(--crm-border) 82%) !important;
}
body.crm-admin-page .kpi,
body.crm-admin-page .stat,
body.crm-report-page .kpi,
body.crm-report-page .stat,
body.crm-admin-page .tile,
body.crm-report-page .tile{
  background: var(--crm-surface) !important;
  border: 1px solid var(--crm-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--crm-shadow-sm) !important;
}
body.crm-admin-page .kpis,
body.crm-admin-page .stats,
body.crm-admin-page .tiles,
body.crm-report-page .kpis,
body.crm-report-page .stats,
body.crm-report-page .tiles,
body.crm-public-page .grid,
body.crm-doc-page .grid{
  gap: 16px !important;
}
body.crm-admin-page .overlay,
body.crm-admin-page .modal-backdrop,
body.crm-report-page .overlay,
body.crm-report-page .modal-backdrop{ background: rgba(15,23,42,.42) !important; }
body.crm-admin-page .modal,
body.crm-admin-page .modal-card,
body.crm-report-page .modal,
body.crm-report-page .modal-card{
  background: var(--crm-surface) !important; border: 1px solid var(--crm-border) !important; box-shadow: var(--crm-shadow-lg) !important; border-radius: 22px !important;
}
body.crm-admin-page .status,
body.crm-admin-page .status-on,
body.crm-admin-page .status-off,
body.crm-report-page .status{
  background: transparent !important; border-color: var(--crm-border) !important; color: var(--crm-text) !important;
}
body.crm-admin-page .empty,
body.crm-report-page .empty{
  padding: 18px; border: 1px dashed var(--crm-border); border-radius: 16px; color: var(--crm-muted); background: color-mix(in srgb, var(--crm-surface) 84%, var(--crm-bg) 16%);
}
body.crm-admin-page .split,
body.crm-report-page .split,
body.crm-admin-page .title-row,
body.crm-report-page .title-row,
body.crm-admin-page .top-actions,
body.crm-report-page .top-actions,
body.crm-admin-page .head-row,
body.crm-report-page .head-row,
body.crm-admin-page .filters-head,
body.crm-report-page .filters-head{
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap;
}
body.crm-admin-page .filters,
body.crm-report-page .filters{
  display:grid; gap:16px !important; align-items:start; margin-bottom: 14px;
}
@media (min-width: 1180px){
  body.crm-admin-page .filters,
  body.crm-report-page .filters{ grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
}
body.crm-admin-page .field,
body.crm-report-page .field{ min-width: 0; }
body.crm-admin-page .field .label,
body.crm-admin-page .field .label-row,
body.crm-report-page .field .label,
body.crm-report-page .field .label-row{ margin-bottom: 8px; color: var(--crm-muted); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
body.crm-admin-page .hero-badge,
body.crm-public-page .hero-badge,
body.crm-auth-page .hero-badge{ background: rgba(47,108,246,.10) !important; color: var(--crm-accent) !important; border: 1px solid rgba(47,108,246,.16) !important; }
body.crm-admin-page .nav a,
body.crm-public-page .nav a,
body.crm-auth-page .nav a{ color: var(--crm-muted) !important; }
body.crm-public-page .topbar-inner,
body.crm-auth-page .topbar-inner,
body.crm-doc-page .topbar,
body.crm-doc-page .topbar > .brand,
body.crm-doc-page .topbar > div{
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
}
body.crm-public-page .topbar-inner,
body.crm-auth-page .topbar-inner{
  background: color-mix(in srgb, var(--crm-surface) 96%, var(--crm-bg) 4%) !important;
  border:1px solid var(--crm-border) !important; box-shadow: var(--crm-shadow-sm) !important;
}
body.crm-public-page .wrap,
body.crm-auth-page .wrap{ max-width: 1320px !important; }
body.crm-public-page .hero,
body.crm-auth-page .hero,
body.crm-doc-page .hero{
  background: transparent !important;
}
body.crm-doc-page .container{ max-width: 1360px !important; width: min(1360px, calc(100% - 40px)); }
body.crm-doc-page .topbar,
body.crm-doc-page .hero,
body.crm-doc-page .card{ border-radius: 22px !important; }
body.crm-doc-page .topbar,
body.crm-doc-page .hero{ background: var(--crm-surface) !important; border: 1px solid var(--crm-border) !important; box-shadow: var(--crm-shadow-sm) !important; }
body.crm-doc-page .grid{ grid-template-columns: minmax(0, 1.3fr) minmax(340px, .7fr) !important; align-items:start; }
body.crm-doc-page .small,
body.crm-doc-page .subtitle{ color: var(--crm-muted) !important; }
@media (max-width: 1024px){
  body.crm-doc-page .grid{ grid-template-columns: 1fr !important; }
}


/* ===== Hide legacy theme controls after moving switch into sidebar ===== */
body.crm-admin-page .theme-fab,
body.crm-admin-page .theme-toggle,
body.crm-admin-page .theme-switch,
body.crm-report-page .theme-fab,
body.crm-report-page .theme-toggle,
body.crm-report-page .theme-switch{
  display:none !important;
}


/* ===== CRM shell isolation: do not let per-page CSS restyle sidebar ===== */
body.crm-admin-page .crm-shell-frame .crm-sidebar,
body.crm-report-page .crm-shell-frame .crm-sidebar,
body.crm-admin-page .crm-shell-frame .crm-sidebar *,
body.crm-report-page .crm-shell-frame .crm-sidebar *{
  box-sizing: border-box !important;
}
body.crm-admin-page .crm-shell-frame .crm-sidebar a,
body.crm-admin-page .crm-shell-frame .crm-sidebar button,
body.crm-report-page .crm-shell-frame .crm-sidebar a,
body.crm-report-page .crm-shell-frame .crm-sidebar button{
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* ===== Dashboard: profile card moved into sidebar ===== */
body.crm-admin-page .avatar,
body.crm-admin-page .avatar-circle,
body.crm-admin-page .avatar-name,
body.crm-admin-page .avatar-sub{
  display:none !important;
}


/* ===== 2026-03 final UX pass ===== */
body.crm-admin-page .overlay,
body.crm-admin-page .modal-backdrop,
body.crm-report-page .overlay,
body.crm-report-page .modal-backdrop{
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}
body.crm-admin-page .overlay.show,
body.crm-admin-page .modal-backdrop.open,
body.crm-report-page .overlay.show,
body.crm-report-page .modal-backdrop.open{
  overflow-y:auto !important;
  overscroll-behavior: contain !important;
  align-items:flex-start !important;
  padding-top:24px !important;
  padding-bottom:24px !important;
}
body.crm-admin-page .overlay .modal,
body.crm-admin-page .modal-backdrop .modal,
body.crm-report-page .overlay .modal,
body.crm-report-page .modal-backdrop .modal{
  margin:auto !important;
  max-height:calc(100vh - 48px) !important;
  overflow:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
}
body.crm-admin-page .modal-h,
body.crm-admin-page .modal-f,
body.crm-report-page .modal-head,
body.crm-report-page .modal-f{
  position:sticky;
  z-index:2;
}
body.crm-admin-page .modal-h,
body.crm-report-page .modal-head{ top:0; background:inherit; }
body.crm-admin-page .modal-f,
body.crm-report-page .modal-f{ bottom:0; background:color-mix(in srgb, var(--crm-surface) 92%, var(--crm-bg) 8%) !important; }
body.crm-admin-page .filters,
body.crm-report-page .filters{ overflow:visible !important; }
body.crm-admin-page .field,
body.crm-report-page .field,
body.crm-admin-page .table-wrap,
body.crm-report-page .table-wrap{ min-width:0 !important; }
body.crm-admin-page .ms-panel,
body.crm-admin-page .u-ms .ms-panel,
body.crm-report-page .ms-panel{
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:0 26px 70px rgba(2,8,23,.24) !important;
}
body.crm-report-page #f_shop,
body.crm-report-page .field--shop{
  grid-column:auto !important;
}
@media (min-width: 1280px){
  body.crm-report-page #f_shop,
  body.crm-report-page .field--shop{ grid-column: span 2 !important; }
}
body.crm-admin-page .shops-list,
body.crm-admin-page .list,
body.crm-admin-page .table-wrap,
body.crm-report-page .list,
body.crm-report-page .table-wrap{
  -webkit-overflow-scrolling:touch !important;
}
