/*
 * sPMS Admin — Redesign Layer v1
 * Loaded LAST so it wins specificity battles.
 * Fixes:
 *   1. Re-enables transitions / animations (admin.css kills them globally)
 *   2. Unified design tokens
 *   3. Consistent sidebar, topbar, cards, tables, forms, buttons, badges
 *   4. Mobile drawer sidebar
 *   5. Page-level entrance animations
 */

/* ══════════════════════════════════════════════════════════════════════════
   1. DESIGN TOKENS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui {
  /* Colour system */
  --r-ink:          #0d1f33;
  --r-ink-soft:     #3a5069;
  --r-ink-muted:    #4a5d72;
  --r-surface:      #ffffff;
  --r-surface-soft: #f7fafb;
  --r-bg:           #f2f5f8;
  --r-line:         #dce5ef;
  --r-line-soft:    #eaf0f6;
  --r-brand:        #0f766e;
  --r-brand-mid:    #2f74b5;
  --r-brand-soft:   rgba(15,118,110,.1);
  --r-green:        #0f7246;
  --r-green-bg:     rgba(15,114,70,.09);
  --r-amber:        #b45309;
  --r-amber-bg:     rgba(180,83,9,.09);
  --r-red:          #b42318;
  --r-red-bg:       rgba(180,35,24,.09);
  --r-purple:       #7c3aed;
  --r-sidebar-bg:   #0d1e2b;
  --r-topbar-bg:    #111820;

  /* Spacing & radius */
  --r-radius-sm:    8px;
  --r-radius:       12px;
  --r-radius-lg:    18px;
  --r-radius-xl:    22px;

  /* Shadows */
  --r-shadow-sm:    0 2px 6px rgba(13,31,51,.06);
  --r-shadow:       0 4px 16px rgba(13,31,51,.07);
  --r-shadow-lg:    0 8px 32px rgba(13,31,51,.1);
  --r-shadow-card:  0 1px 3px rgba(13,31,51,.05), 0 8px 20px rgba(13,31,51,.07);

  /* Transitions */
  --r-ease:         0.18s ease;
  --r-ease-spring:  0.22s cubic-bezier(.34,1.56,.64,1);

  /* Font */
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  -webkit-font-smoothing: antialiased;
  background: var(--r-bg) !important;
  color: var(--r-ink) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   2. RE-ENABLE TRANSITIONS
   admin.css line 5-9 disables ALL animations with !important.
   We need higher specificity to restore them.
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui button,
body[data-admin-mode="pms"].mbp-enterprise-ui a,
body[data-admin-mode="pms"].mbp-enterprise-ui input,
body[data-admin-mode="pms"].mbp-enterprise-ui select,
body[data-admin-mode="pms"].mbp-enterprise-ui textarea,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-tab,
body[data-admin-mode="pms"].mbp-enterprise-ui .button,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-user-chip,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-user-menu,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-card,
body[data-admin-mode="pms"].mbp-enterprise-ui [class*="booking-card"],
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-edge {
  transition:
    background-color var(--r-ease),
    border-color var(--r-ease),
    color var(--r-ease),
    box-shadow var(--r-ease),
    transform var(--r-ease),
    opacity var(--r-ease),
    width 0.22s ease,
    max-width 0.22s ease !important;
}

/* Page-level entrance for each admin page */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page.is-active,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page[style*="display"],
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-page.is-active {
  animation: r-page-in 0.25s ease both !important;
}
@keyframes r-page-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ══════════════════════════════════════════════════════════════════════════
   3. TOPBAR
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-topbar {
  background: var(--r-topbar-bg) !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.06), 0 4px 20px rgba(0,0,0,.22) !important;
  backdrop-filter: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-utility {
  padding: 10px 20px !important;
  min-height: 60px !important;
}

/* Topbar search */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search {
  border-radius: 10px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.07) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search:hover,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search:focus-within {
  background: rgba(255,255,255,.12) !important;
  border-color: rgba(15,118,110,.5) !important;
}

/* Topbar icon buttons */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-topbar-icon-button {
  border-radius: 10px !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  background: rgba(255,255,255,.07) !important;
  color: rgba(255,255,255,.9) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-topbar-icon-button:hover {
  background: rgba(255,255,255,.14) !important;
  border-color: rgba(255,255,255,.18) !important;
  transform: translateY(-1px) !important;
}

/* Date pill */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-utility-date {
  font-size: 12px !important;
  color: rgba(255,255,255,.6) !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
}

/* User chip */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-user-chip {
  border-radius: 12px !important;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  gap: 10px !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-user-chip:hover {
  background: rgba(255,255,255,.12) !important;
  border-color: rgba(15,118,110,.4) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-user-avatar {
  width: 32px !important;
  height: 32px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, var(--r-brand), var(--r-brand-mid)) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   4. SIDEBAR
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar {
  background: var(--r-sidebar-bg) !important;
  border-right: 1px solid rgba(255,255,255,.06) !important;
  box-shadow: 2px 0 12px rgba(0,0,0,.12) !important;
  width: 256px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout {
  padding-left: 256px !important;
  transition: padding-left 0.22s ease !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout.is-collapsed {
  padding-left: 0 !important;
}

/* Desktop: slide sidebar off-screen when collapsed */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout.is-collapsed .mbp-shell-sidebar {
  transform: translateX(-100%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout.is-collapsed .mbp-shell-sidebar-toggle {
  transform: rotate(180deg) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-head {
  padding: 16px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  margin-bottom: 8px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-brand {
  gap: 10px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-brand strong {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: -.01em !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-brand span:last-child {
  font-size: 11px !important;
  color: rgba(255,255,255,.55) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-mark {
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, var(--r-brand), #0a5e58) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 12px rgba(15,118,110,.3) !important;
}

/* Section labels */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-sidebar-section-label {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.38) !important;
  margin: 16px 14px 4px !important;
  padding: 0 !important;
}

/* Nav items */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab {
  border-radius: 10px !important;
  padding: 10px 14px 10px 44px !important;
  margin: 0 10px !important;
  width: calc(100% - 20px) !important;
  min-height: 42px !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab::before {
  width: 22px !important;
  height: 22px !important;
  left: 12px !important;
  border-radius: 7px !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab:hover {
  background: rgba(255,255,255,.07) !important;
  border-color: rgba(255,255,255,.1) !important;
  color: #fff !important;
  transform: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab.is-active,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab.active {
  background: linear-gradient(135deg, rgba(15,118,110,.55), rgba(15,118,110,.35)) !important;
  border-color: rgba(15,118,110,.4) !important;
  color: #fff !important;
  box-shadow: none !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab.is-active::before,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-nav .mbp-page-tab.active::before {
  background: rgba(255,255,255,.2) !important;
  border-color: rgba(255,255,255,.2) !important;
}

/* Sidebar scrollbar */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar::-webkit-scrollbar { width: 3px; }
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,.12); border-radius: 999px;
}

/* Sidebar toggle button */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-toggle {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.7) !important;
  border-radius: 8px !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-toggle:hover {
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
}

/* Mobile nav toggle */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-nav-toggle {
  border-radius: 10px !important;
  background: rgba(255,255,255,.09) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #fff !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   5. CONTENT AREA & PANELS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-content {
  padding: 16px 18px 28px !important;
}

/* All panels / cards */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-head,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card {
  background: var(--r-surface) !important;
  border: 1px solid var(--r-line) !important;
  border-radius: var(--r-radius-lg) !important;
  box-shadow: var(--r-shadow-card) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-reporting-hero,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-reports-center-hero {
  border-radius: var(--r-radius-xl) !important;
  border: 1px solid var(--r-line) !important;
  background: linear-gradient(135deg, #fff 0%, #f5f9ff 100%) !important;
  box-shadow: var(--r-shadow) !important;
}

/* Hero accent bar */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero::before,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-reporting-hero::before {
  height: 3px !important;
  background: linear-gradient(90deg, var(--r-brand) 0%, var(--r-brand-mid) 60%, transparent 100%) !important;
}

/* Hero headings */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero h3,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-reporting-hero h3,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero-copy h3 {
  font-size: 1.65rem !important;
  letter-spacing: -.04em !important;
  color: var(--r-ink) !important;
  font-weight: 800 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-kicker {
  color: var(--r-brand) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   6. TABLES
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .widefat {
  border: 1px solid var(--r-line) !important;
  border-radius: var(--r-radius-lg) !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat thead th {
  background: #f8fafb !important;
  color: var(--r-ink-muted) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  padding: 12px 14px !important;
  border-bottom: 1px solid var(--r-line) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat td {
  padding: 13px 14px !important;
  font-size: 13.5px !important;
  color: var(--r-ink-soft) !important;
  border-bottom: 1px solid var(--r-line-soft) !important;
  vertical-align: middle !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr {
  cursor: pointer;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr:hover td {
  background: rgba(15,118,110,.03) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr.is-selected td {
  background: rgba(15,118,110,.05) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr.is-selected td:first-child {
  box-shadow: inset 3px 0 0 var(--r-brand) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody tr:last-child td {
  border-bottom: none !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   7. BUTTONS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .button {
  min-height: 38px !important;
  border-radius: var(--r-radius) !important;
  border: 1px solid var(--r-line) !important;
  background: var(--r-surface) !important;
  color: var(--r-ink-soft) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  box-shadow: var(--r-shadow-sm) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .button:hover {
  border-color: rgba(15,118,110,.3) !important;
  color: var(--r-brand) !important;
  transform: translateY(-1px) !important;
  box-shadow: var(--r-shadow) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .button.button-primary {
  background: linear-gradient(135deg, var(--r-brand), #0a5e58) !important;
  border-color: var(--r-brand) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(15,118,110,.28) !important;
  font-weight: 700 !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .button.button-primary:hover {
  filter: brightness(1.08) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(15,118,110,.36) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .button.button-ghost {
  background: transparent !important;
  border-color: var(--r-line) !important;
  box-shadow: none !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .button.button-ghost:hover {
  background: var(--r-surface-soft) !important;
}

/* Serenity primary button (dashboard) */
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-primary-button {
  background: linear-gradient(135deg, var(--r-brand), #0a5e58) !important;
  border: none !important;
  color: #fff !important;
  border-radius: var(--r-radius) !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(15,118,110,.28) !important;
  min-height: 40px !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-primary-button:hover {
  filter: brightness(1.08) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 22px rgba(15,118,110,.36) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   8. FORMS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
body[data-admin-mode="pms"].mbp-enterprise-ui select,
body[data-admin-mode="pms"].mbp-enterprise-ui textarea {
  min-height: 42px !important;
  border-radius: var(--r-radius) !important;
  border: 1.5px solid var(--r-line) !important;
  background: var(--r-surface-soft) !important;
  color: var(--r-ink) !important;
  font-family: inherit !important;
  font-size: 14px !important;
  box-shadow: none !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui input:focus,
body[data-admin-mode="pms"].mbp-enterprise-ui select:focus,
body[data-admin-mode="pms"].mbp-enterprise-ui textarea:focus {
  outline: none !important;
  border-color: var(--r-brand) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(15,118,110,.12) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui input::placeholder,
body[data-admin-mode="pms"].mbp-enterprise-ui textarea::placeholder {
  color: var(--r-ink-muted) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-field label,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-field label {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  color: var(--r-ink-muted) !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   9. STATUS BADGES
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge,
body[data-admin-mode="pms"].mbp-enterprise-ui [class*="status-badge"],
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-status {
  display: inline-flex !important;
  align-items: center !important;
  padding: 3px 10px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  text-transform: capitalize !important;
  border: 1px solid transparent !important;
}

/* Confirmed / Complete / Paid */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-confirmed,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-complete,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-paid,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-checked_out {
  background: var(--r-green-bg) !important;
  color: var(--r-green) !important;
  border-color: rgba(15,114,70,.18) !important;
}

/* Pending / Trial */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-pending,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-trial {
  background: var(--r-amber-bg) !important;
  color: var(--r-amber) !important;
  border-color: rgba(180,83,9,.18) !important;
}

/* Cancelled / No-show / Danger */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-cancelled,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-no-show,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-badge.is-danger {
  background: var(--r-red-bg) !important;
  color: var(--r-red) !important;
  border-color: rgba(180,35,24,.18) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   10. DASHBOARD KPI CARDS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-card {
  background: var(--r-surface) !important;
  border: 1px solid var(--r-line) !important;
  border-radius: var(--r-radius-lg) !important;
  box-shadow: var(--r-shadow-card) !important;
  padding: 18px 20px !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card:hover,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--r-shadow-lg) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-value,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-value {
  font-size: 26px !important;
  font-weight: 800 !important;
  letter-spacing: -.04em !important;
  color: var(--r-ink) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-label,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-label {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  color: var(--r-ink-muted) !important;
}

/* KPI progress bars */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-bar-track,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-bar {
  height: 4px !important;
  border-radius: 999px !important;
  background: var(--r-line-soft) !important;
  overflow: hidden !important;
  margin-top: 8px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   11. LOGIN PAGE
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-shell {
  min-height: 100vh !important;
  background:
    radial-gradient(circle at 20% 80%, rgba(15,118,110,.12), transparent 44%),
    radial-gradient(circle at 80% 20%, rgba(47,116,181,.1), transparent 40%),
    linear-gradient(180deg, #f0f5fa 0%, #eaf2f8 100%) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-brand {
  background: linear-gradient(145deg, #0d1e2b 0%, #0a3d36 60%, #0f3350 100%) !important;
  border-radius: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-brand-inner h1 {
  font-size: clamp(32px, 4vw, 52px) !important;
  font-weight: 800 !important;
  letter-spacing: -.04em !important;
  color: #fff !important;
  line-height: 1.08 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-brand-inner p {
  color: rgba(255,255,255,.75) !important;
  line-height: 1.7 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-brand-points {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 28px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-brand-points span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 7px 14px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.1) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  color: rgba(255,255,255,.9) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-card {
  border-radius: 0 !important;
  border: none !important;
  border-left: 1px solid var(--r-line) !important;
  background: #fff !important;
  box-shadow: none !important;
  padding: clamp(32px, 6vw, 64px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-head h2 {
  font-size: clamp(24px, 3vw, 34px) !important;
  font-weight: 800 !important;
  letter-spacing: -.04em !important;
  color: var(--r-ink) !important;
  margin-bottom: 6px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-head p {
  color: var(--r-ink-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-kicker {
  display: inline-flex !important;
  align-items: center !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  background: var(--r-brand-soft) !important;
  border: 1px solid rgba(15,118,110,.2) !important;
  color: var(--r-brand) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  margin-bottom: 14px !important;
}

/* Login form */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-form {
  display: grid !important;
  gap: 14px !important;
  margin-top: 24px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-login-form .button.button-primary {
  min-height: 46px !important;
  font-size: 15px !important;
  border-radius: var(--r-radius-lg) !important;
  margin-top: 4px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   12. USER DROPDOWN & STATUS BAR
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-user-menu,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-mobile-user-menu {
  background: rgba(12,20,28,.96) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: var(--r-radius-lg) !important;
  box-shadow: 0 20px 44px rgba(0,0,0,.28) !important;
  backdrop-filter: blur(20px) !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-user-menu-link {
  border-radius: 8px !important;
  color: rgba(255,255,255,.88) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  background: transparent !important;
  border-color: rgba(255,255,255,.07) !important;
  min-height: 42px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-user-menu-link:hover {
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
}

/* Status toast */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-status:not(:empty) {
  border-radius: var(--r-radius) !important;
  padding: 10px 16px !important;
  font-size: 13px !important;
  box-shadow: var(--r-shadow-lg) !important;
  background: var(--r-ink) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  animation: r-toast-in .22s ease both !important;
}
@keyframes r-toast-in {
  from { opacity: 0; transform: translateY(-8px) scale(.96); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-status.is-success {
  background: rgba(15,114,70,.94) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-status.is-error {
  background: rgba(180,35,24,.94) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   13. SESSION WARNING BANNER
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-session-warning {
  background: var(--r-ink) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: var(--r-radius) !important;
  box-shadow: var(--r-shadow-lg) !important;
  color: #fff !important;
  animation: r-toast-in .22s ease both !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   14. FILTER BAR / TOOLBAR
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-report-catalog-shell {
  background: var(--r-surface) !important;
  border: 1px solid var(--r-line) !important;
  border-radius: var(--r-radius-xl) !important;
  box-shadow: var(--r-shadow-card) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   15. BOOKING / APPOINTMENT CARDS
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .report-row,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-related-booking {
  border-radius: var(--r-radius-lg) !important;
  border: 1px solid var(--r-line-soft) !important;
  background: var(--r-surface) !important;
  box-shadow: var(--r-shadow-sm) !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-card:hover,
body[data-admin-mode="pms"].mbp-enterprise-ui .report-row:hover {
  border-color: var(--r-line) !important;
  box-shadow: var(--r-shadow) !important;
  transform: translateY(-1px) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   16. SCROLLBARS (global for admin)
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"]::-webkit-scrollbar { width: 6px; height: 6px; }
body[data-admin-mode="pms"]::-webkit-scrollbar-track { background: transparent; }
body[data-admin-mode="pms"]::-webkit-scrollbar-thumb {
  background: rgba(13,31,51,.18); border-radius: 999px;
}
body[data-admin-mode="pms"]::-webkit-scrollbar-thumb:hover {
  background: rgba(13,31,51,.32);
}

/* ══════════════════════════════════════════════════════════════════════════
   17. MOBILE — TABLET BREAKPOINT ≤860px
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {

  /* Sidebar: off-canvas drawer */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout {
    padding-left: 0 !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar {
    top: 52px !important;
    left: 0 !important;
    bottom: 0 !important;
    transform: translateX(-100%) !important;
    border-radius: 0 !important;
    z-index: 1200 !important;
    box-shadow: 4px 0 32px rgba(0,0,0,.28) !important;
    transition: transform 0.22s ease !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout.is-nav-open .mbp-shell-sidebar {
    transform: translateX(0) !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-overlay.is-visible {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Topbar: compact */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-utility {
    min-height: 52px !important;
    padding: 8px 14px !important;
  }

  /* Content area: tighter padding */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-content {
    padding: 12px 12px 32px !important;
  }

  /* CRITICAL: ≥16px on ALL inputs prevents iOS auto-zoom on focus.
     Must match the :not() selector specificity (0,6,2) used in Section 7. */
  body[data-admin-mode="pms"].mbp-enterprise-ui input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
  body[data-admin-mode="pms"].mbp-enterprise-ui select,
  body[data-admin-mode="pms"].mbp-enterprise-ui textarea {
    font-size: 16px !important;
  }

  /* Touch targets: 44px minimum (Apple HIG / WCAG) */
  body[data-admin-mode="pms"].mbp-enterprise-ui .button,
  body[data-admin-mode="pms"].mbp-enterprise-ui input,
  body[data-admin-mode="pms"].mbp-enterprise-ui select,
  body[data-admin-mode="pms"].mbp-enterprise-ui textarea {
    min-height: 44px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-tab {
    min-height: 40px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
  }

  /* Page tabs: horizontal scroll, no wrap */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-tabs {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 2px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-tabs::-webkit-scrollbar {
    display: none !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-tab {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
  }

  /* Hero panels: compact */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero {
    padding: 14px !important;
  }

  /* Cards & panels: compact */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-surface {
    padding: 12px !important;
  }

  /* Page gap tighter */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page {
    gap: 10px !important;
  }

  /* Filter row: stack vertically */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-row,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  /* Search full width */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-search,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Table actions: wrap, full-width buttons */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-section-actions,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-actions {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  /* Tables: horizontal scroll */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel {
    overflow-x: auto !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat {
    min-width: 600px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat th,
  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat td {
    padding: 10px 12px !important;
    font-size: 13px !important;
  }

  /* KPI / stat cards: 2-col grid */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-stats,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-kpi-row {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card {
    padding: 14px 12px !important;
  }

  /* Inline form grids: single column */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-inline-form-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-detail-grid {
    grid-template-columns: 1fr !important;
  }

  /* Hero heading */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero-copy h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-title {
    font-size: 1.2rem !important;
  }

  /* Billing layout: stack */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-billing-layout {
    grid-template-columns: 1fr !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   17b. MOBILE — PHONE BREAKPOINT ≤640px
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 640px) {

  /* Topbar: tightest */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-utility {
    min-height: 48px !important;
    padding: 6px 10px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar {
    top: 48px !important;
  }

  /* Content: edge-to-edge */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-content {
    padding: 8px 8px 80px !important;
  }

  /* Cards: minimal padding */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-surface {
    padding: 12px 10px !important;
    border-radius: 12px !important;
  }

  /* Grids: single column */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-card-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-inline-form-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-detail-grid-panel {
    grid-template-columns: 1fr !important;
  }

  /* KPI stay 2-col but smaller */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card {
    padding: 12px 10px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card span,
  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card span {
    font-size: 10px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card strong,
  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card strong {
    font-size: 20px !important;
  }

  /* Dashboard grids: 2-col */
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-shell {
    flex-direction: column !important;
  }

  /* Hero: stack */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-layout {
    flex-direction: column !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero-copy h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-title {
    font-size: 1.1rem !important;
  }

  /* Section actions: full-width stack */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-section-actions .button,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-actions .button {
    flex: 1 1 auto !important;
  }

  /* Report rows: compact */
  body[data-admin-mode="pms"].mbp-enterprise-ui .report-row-meta {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
  }

  /* Detail panels: full width */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-detail-grid-panel {
    grid-template-columns: 1fr !important;
  }

  /* Topbar search: hide on tiny screens to save space */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-global-search {
    display: none !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   18. FOCUS RINGS (accessibility)
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui *:focus-visible {
  outline: 2px solid var(--r-brand) !important;
  outline-offset: 2px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   19. PAGE NAV ROW (suite pill bar)
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-nav-row {
  background: #fff !important;
  border-bottom: 1px solid var(--r-line) !important;
  padding: 8px 20px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-suite-pill {
  border-radius: 999px !important;
  background: var(--r-surface) !important;
  border: 1px solid var(--r-line) !important;
  color: var(--r-ink-soft) !important;
  box-shadow: var(--r-shadow-sm) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   20. CREATE POPOVER
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-create-popover {
  background: var(--r-ink) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: var(--r-radius-lg) !important;
  box-shadow: 0 20px 44px rgba(0,0,0,.3) !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-create-popover button {
  background: transparent !important;
  border-color: rgba(255,255,255,.07) !important;
  color: rgba(255,255,255,.9) !important;
  border-radius: 8px !important;
  font-size: 13px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-create-popover button:hover {
  background: rgba(255,255,255,.09) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #fff !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   21. AUTH BOOT / LOADING SCREEN
   ══════════════════════════════════════════════════════════════════════════ */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-auth-boot {
  background: var(--r-bg) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-auth-boot-card {
  background: #fff !important;
  border: 1px solid var(--r-line) !important;
  border-radius: var(--r-radius-xl) !important;
  box-shadow: var(--r-shadow-lg) !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   22. PRINT — hide chrome when printing
   ══════════════════════════════════════════════════════════════════════════ */
@media print {
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-topbar,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar-edge,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-nav-row {
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-layout {
    padding-left: 0 !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   23. DASHBOARD — COMPACT SERENITY LAYOUT
   ══════════════════════════════════════════════════════════════════════════ */

/* Strip the inner slate background — the global bg already provides contrast */
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-page.is-active {
  padding: 0 !important;
  gap: 14px !important;
  background: transparent !important;
  border-radius: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-header {
  padding: 0 0 4px !important;
  gap: 12px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-header h1 {
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  color: var(--r-ink) !important;
  margin: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-shell {
  gap: 14px !important;
  align-items: flex-start !important;
}

/* KPI strip — tight 4-col row */
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
  gap: 10px !important;
  margin: 20px 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-card {
  padding: 14px 16px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-value {
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: -.04em !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-label {
  font-size: 10px !important;
}

/* Appointments card */
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-appointments-card {
  padding: 0 !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-card-head {
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--r-line-soft) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-table-wrap {
  overflow-x: auto !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-appointments-table th,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-appointments-table td {
  padding: 10px 12px !important;
  font-size: 13px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-table-footer {
  padding: 10px 16px !important;
  border-top: 1px solid var(--r-line-soft) !important;
  font-size: 12px !important;
  color: var(--r-brand) !important;
  font-weight: 600 !important;
  width: 100% !important;
  text-align: left !important;
  background: transparent !important;
  border-radius: 0 !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}

/* Right rail */
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-right-rail {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-staff-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-stock-card {
  padding: 0 !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-staff-list,
body[data-admin-mode="pms"].mbp-enterprise-ui #serenity-stock-alerts {
  padding: 6px 8px 10px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   24. PAGE STABILITY — consistent panel spacing & calm entrance
   ══════════════════════════════════════════════════════════════════════════ */

/* Tone down entrance animation to avoid layout shift */
@keyframes r-page-in {
  from { opacity: 0; transform: translateY(4px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Consistent gap between panels on every page */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  align-content: start !important;
}

/* Consistent hero padding */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero {
  padding: 20px 22px !important;
}

/* Consistent panel padding */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell {
  padding: 16px 18px !important;
}

/* Panel heads don't need double padding */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-head,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel-head {
  padding: 0 !important;
  margin-bottom: 12px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Card grids */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-card-grid {
  gap: 12px !important;
}

/* Mobile: single column on all grids below 640 */
@media (max-width: 640px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-card-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-inline-form-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-booking-layout {
    flex-direction: column !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-shell {
    flex-direction: column !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   25. MOBILE FINAL OVERRIDES — z-index safety net, must stay last
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {
  /* Overlay below sidebar */
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-overlay {
    z-index: 1100 !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-sidebar {
    z-index: 1300 !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   26. MODAL / POPUP — COMPLETE OVERHAUL
   Fixes: elevation, backdrop, scrolling, close button, spacing, typography
   ══════════════════════════════════════════════════════════════════════════ */

/* Wrapper: fixed overlay, flex-centered, above everything — only when visible */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal:not([hidden]) {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
  padding-top: 88px !important;
  overflow: hidden !important;
}

/* Ensure hidden modals stay hidden regardless of other rules */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal[hidden] {
  display: none !important;
}


/* Dialog (form modals) and card (detail modals): flex column, capped height */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-dialog,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-card {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  max-height: min(88vh, 860px) !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid rgba(15, 23, 42, 0.07) !important;
  box-shadow:
    0 32px 80px rgba(18, 33, 52, 0.20),
    0 8px 24px rgba(18, 33, 52, 0.10) !important;
}

/* Dialog: wider for multi-field forms */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-dialog {
  width: min(800px, calc(100vw - 48px)) !important;
}

/* Card: slightly narrower for detail/info views */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-card {
  width: min(720px, calc(100vw - 48px)) !important;
}

/* Header: pinned, explicit white so scrolled content doesn't bleed through */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-head {
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 18px 22px 16px !important;
  background: #ffffff !important;
  border-bottom: 1px solid #e5e7eb !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-head h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0d1f33 !important;
  margin: 0 !important;
  line-height: 1.35 !important;
}

/* Close button: consistent 32px target, visible hover state */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-close {
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  border: 1px solid #e5e7eb !important;
  background: transparent !important;
  color: #4a5d72 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: background 0.15s, border-color 0.15s, color 0.15s !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-close:hover {
  background: #f1f5f9 !important;
  border-color: #cbd5e1 !important;
  color: #0d1f33 !important;
}

/* Scrollable body: flex: 1 1 auto + min-height: 0 is the key unlock */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: none !important;
  padding: 20px 22px !important;
  background: #ffffff !important;
  -webkit-overflow-scrolling: touch !important;
}

/* Footer: pinned, subtle tint to anchor CTA buttons */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-footer {
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  padding: 14px 22px !important;
  background: #f8fafc !important;
  border-top: 1px solid #e5e7eb !important;
}

/* Context info strip inside modal body */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-context {
  color: #4a5d72 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-context strong {
  color: #0d1f33 !important;
}

/* Thin scrollbar inside modal body */
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-body::-webkit-scrollbar {
  width: 5px;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-body::-webkit-scrollbar-track {
  background: transparent;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-body::-webkit-scrollbar-thumb {
  background: rgba(15, 23, 42, 0.15);
  border-radius: 999px;
}
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-body::-webkit-scrollbar-thumb:hover {
  background: rgba(15, 23, 42, 0.30);
}

/* Mobile: bottom sheet pattern */
@media (max-width: 640px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal {
    padding: 0 !important;
    align-items: flex-end !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-dialog,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-modal-card {
    width: 100% !important;
    max-height: 92vh !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }
}

/* ══════════════════════════════════════════════════════════════════════════
   27. LOGIN PAGE — SOFT ELEGANT REDESIGN
   ══════════════════════════════════════════════════════════════════════════ */

/* Full-width page */
.mbp-login-shell {
  background: #f4f6f8 !important;
  min-height: 100vh !important;
  display: grid !important;
  align-items: stretch !important;
  padding: 0 !important;
}

/* Full-width two-column split */
.mbp-login-split {
  display: grid !important;
  grid-template-columns: minmax(340px, 1fr) minmax(400px, 1fr) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100vh !important;
  background: transparent !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Brand panel — soft teal */
.mbp-login-brand {
  display: grid !important;
  align-items: end !important;
  padding: 64px 56px !important;
  background: linear-gradient(160deg, #0b4f4a 0%, #0f766e 55%, #0d9488 100%) !important;
  color: #e6faf8 !important;
  position: relative !important;
  overflow: hidden !important;
}

.mbp-login-brand::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(36rem 24rem at 10% 20%, rgba(255,255,255,0.07) 0%, transparent 65%),
    radial-gradient(28rem 20rem at 90% 85%, rgba(0,0,0,0.12) 0%, transparent 65%) !important;
  pointer-events: none !important;
}

.mbp-login-brand::after {
  content: "" !important;
  position: absolute !important;
  inset: 24px !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 22px !important;
  pointer-events: none !important;
}

.mbp-login-brand-inner {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  gap: 20px !important;
  max-width: 400px !important;
}

.mbp-login-brand .mbp-login-kicker {
  display: inline-block !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  background: rgba(255,255,255,0.1) !important;
  color: rgba(255,255,255,0.9) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  width: fit-content !important;
}

.mbp-login-brand h1 {
  font-size: clamp(28px, 3.2vw, 44px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: #ffffff !important;
  margin: 0 !important;
}

.mbp-login-brand p {
  font-size: 14px !important;
  color: rgba(230,250,248,0.82) !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}

.mbp-login-brand-points {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.mbp-login-brand-points span {
  display: inline-flex !important;
  align-items: center !important;
  padding: 7px 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  background: rgba(255,255,255,0.1) !important;
  color: rgba(255,255,255,0.92) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Login card: clean white, soft shadow */
.mbp-login-card,
.mbp-login-split .mbp-login-card {
  width: 100% !important;
  min-height: unset !important;
  padding: 40px !important;
  border-radius: 20px !important;
  border: 1px solid #e4e8ed !important;
  background: #ffffff !important;
  box-shadow: 0 4px 24px rgba(13,31,51,0.07), 0 1px 4px rgba(13,31,51,0.04) !important;
  display: grid !important;
  align-content: start !important;
  gap: 0 !important;
}

/* Logo mark above heading */
.mbp-login-card::before {
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: #0f766e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M17 43V21h10l5 8 5-8h10v22h-7V32l-6 9h-4l-6-9v11z' fill='white'/%3E%3C/svg%3E") center/80% no-repeat;
  margin-bottom: 20px;
}

/* Kicker label */
.mbp-login-card .mbp-login-kicker {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #0f766e !important;
  margin-bottom: 6px !important;
}

/* Heading */
.mbp-login-card .mbp-login-head h1,
.mbp-login-card .mbp-login-head h2 {
  font-size: 24px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #0d1f33 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

/* Sub-copy */
.mbp-login-card .mbp-login-head p {
  font-size: 13px !important;
  color: #5a6a7a !important;
  margin: 8px 0 0 !important;
  line-height: 1.6 !important;
}

.mbp-login-head {
  margin-bottom: 28px !important;
}

/* Form fields: clean borderless rows inside a card */
.mbp-login-card .mbp-login-form {
  gap: 0 !important;
  background: #f7f9fb !important;
  border: 1px solid #e4e8ed !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

.mbp-login-card .mbp-login-form .mbp-field {
  padding: 12px 16px !important;
  border-bottom: 1px solid #e4e8ed !important;
  background: transparent !important;
  border-radius: 0 !important;
  gap: 4px !important;
}

.mbp-login-card .mbp-login-form .mbp-field:last-of-type {
  border-bottom: none !important;
}

.mbp-login-card .mbp-login-form .mbp-field label {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #8a9aaa !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  display: block !important;
}

.mbp-login-card .mbp-login-form .mbp-field input {
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  height: 32px !important;
  min-height: unset !important;
  font-size: 14px !important;
  color: #0d1f33 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  width: 100% !important;
}

.mbp-login-card .mbp-login-form .mbp-field input:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* Remember me checkbox */
.mbp-login-card .mbp-login-form .mbp-checkbox {
  padding: 10px 16px !important;
  font-size: 13px !important;
  color: #5a6a7a !important;
  border-bottom: 1px solid #e4e8ed !important;
  width: 100% !important;
}

/* Sign in button */
.mbp-login-card .mbp-login-form .button.button-primary {
  margin: 16px 0 0 !important;
  min-height: 44px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  background: #0f766e !important;
  border-color: #0f766e !important;
  color: #fff !important;
  width: 100% !important;
  letter-spacing: 0.01em !important;
}

.mbp-login-card .mbp-login-form .button.button-primary:hover {
  background: #0d9488 !important;
  border-color: #0d9488 !important;
}

/* Forgot password link row */
.mbp-login-meta {
  display: flex !important;
  justify-content: flex-end !important;
  margin-bottom: 20px !important;
}

.mbp-login-card .mbp-login-link {
  font-size: 13px !important;
  color: #0f766e !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.mbp-login-card .mbp-login-link:hover {
  text-decoration: underline !important;
  color: #0d9488 !important;
}

/* Footer links */
.mbp-login-card .mbp-status {
  font-size: 12px !important;
  color: #8a9aaa !important;
  text-align: center !important;
  line-height: 1.7 !important;
  margin-top: 4px !important;
}

.mbp-login-card .mbp-status a {
  color: #0f766e !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.mbp-login-card .mbp-status a:hover { text-decoration: underline !important; }

/* Status message */
.mbp-login-card #admin-status {
  border-radius: 10px !important;
  background: #f7f9fb !important;
  border: 1px solid #e4e8ed !important;
  font-size: 13px !important;
  color: #5a6a7a !important;
  margin-top: 12px !important;
}

/* Tablet: collapse brand panel, card gets more room */
@media (max-width: 768px) {
  .mbp-login-split {
    grid-template-columns: 1fr !important;
    min-height: 100vh !important;
  }
  .mbp-login-brand {
    display: none !important;
  }
  .mbp-login-shell {
    align-items: center !important;
    padding: 24px 16px !important;
    background: #f0f4f7 !important;
  }
  .mbp-login-split {
    min-height: unset !important;
    max-width: 480px !important;
    margin: 0 auto !important;
  }
  .mbp-login-card,
  .mbp-login-split .mbp-login-card {
    padding: 36px 32px !important;
    border-radius: 20px !important;
  }
}


/* Phone: bottom-sheet style */
@media (max-width: 480px) {
  .mbp-login-shell {
    align-items: flex-end !important;
    padding: 0 !important;
    background: #e8ecf0 !important;
  }
  .mbp-login-split {
    max-width: 100% !important;
    width: 100% !important;
  }
  .mbp-login-card,
  .mbp-login-split .mbp-login-card {
    padding: 28px 20px max(28px, env(safe-area-inset-bottom)) !important;
    border-radius: 22px 22px 0 0 !important;
    box-shadow: 0 -4px 32px rgba(13,31,51,0.10) !important;
  }
  .mbp-login-card::before {
    width: 36px !important;
    height: 36px !important;
    margin-bottom: 16px !important;
  }
  .mbp-login-head {
    margin-bottom: 20px !important;
  }
  .mbp-login-card .mbp-login-head h1,
  .mbp-login-card .mbp-login-head h2 {
    font-size: 20px !important;
  }
}


/* ─────────────────────────────────────────────────────────────────── *
 * Section 28 — Calendar Daily Section Enhancement                    *
 * ─────────────────────────────────────────────────────────────────── */

/* Agenda panel wrapper */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-agenda-panel {
  padding: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-agenda-panel .mbp-page-head {
  padding: 18px 22px 14px !important;
  border-bottom: 1px solid #e8ecf2 !important;
  background: #ffffff !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  flex-shrink: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0d1f33 !important;
  letter-spacing: -0.01em !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-subtitle {
  font-size: 12px !important;
  color: #7a8fa6 !important;
  margin-top: 3px !important;
  line-height: 1.4 !important;
}

/* Focus list container */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-list.mbp-stack-list {
  padding: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 9px !important;
  overflow-y: auto !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

/* Focus item — rich appointment card */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  border: 1px solid #e4eaf2 !important;
  border-left: 4px solid var(--mbp-calendar-accent, #0f766e) !important;
  box-shadow: 0 1px 4px rgba(13,31,51,0.05) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: box-shadow 0.14s ease, transform 0.14s ease !important;
  position: relative !important;
  min-height: 72px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item:hover {
  box-shadow: 0 6px 20px rgba(13,31,51,0.10) !important;
  transform: translateY(-1px) !important;
  border-color: var(--mbp-calendar-accent, #0f766e) !important;
}

/* First div — main info block */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item > div:first-child {
  flex: 1 !important;
  padding: 13px 12px 12px 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  min-width: 0 !important;
}

/* Customer name + avatar */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item > div:first-child > strong {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #0d1f33 !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.3 !important;
}

/* Time / Service / Staff detail line */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item > div:first-child > p {
  font-size: 11.5px !important;
  color: #5a7090 !important;
  margin: 0 !important;
  line-height: 1.45 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  letter-spacing: 0.01em !important;
}

/* Meta column — badge + price */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-meta {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 13px 16px 12px 12px !important;
  flex-shrink: 0 !important;
  min-width: 90px !important;
}

/* Price */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-meta > strong {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0d1f33 !important;
  letter-spacing: -0.01em !important;
}

/* Status badge inside focus items */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge {
  font-size: 10px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 20px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  border: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-pending {
  background: #fef3cd !important;
  color: #91650a !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-confirmed {
  background: #d1f4e0 !important;
  color: #136d37 !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-checked-in {
  background: #dbeafe !important;
  color: #1848a0 !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-completed,
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-checked-out {
  background: #e9edf3 !important;
  color: #3a4d63 !important;
}
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-cancelled,
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-badge.status-no-show {
  background: #fee2e2 !important;
  color: #991b1b !important;
}

/* Avatar inside focus item */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item .mbp-calendar-avatar {
  width: 26px !important;
  height: 26px !important;
  font-size: 11px !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
  border: 2px solid var(--mbp-calendar-accent-soft, rgba(15,118,110,0.15)) !important;
}

/* Empty state */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-list .report-row {
  text-align: center !important;
  padding: 36px 20px !important;
  background: #f8fafc !important;
  border: 1px dashed #d0dae6 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-list .report-row-title {
  display: block !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0d1f33 !important;
  margin-bottom: 6px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-list .report-row-meta {
  font-size: 12px !important;
  color: #7a8fa6 !important;
  margin: 0 auto !important;
  max-width: 280px !important;
  line-height: 1.5 !important;
}

/* ── Day Board enhancements ─────────────────────────────────────── */

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-staff-board {
  display: flex !important;
  flex-direction: column !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #dce8ee !important;
}

/* Board header */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-head {
  background: linear-gradient(to bottom, #f4f8fb, #edf3f8) !important;
  border-bottom: 2px solid #d4e2ed !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 3 !important;
}

/* Staff column header */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-staff {
  padding: 12px 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-staff > strong {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #0d1f33 !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

/* Staff avatar in board header */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-staff-avatar {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 2.5px solid var(--mbp-calendar-accent-soft, rgba(15,118,110,0.20)) !important;
  background: var(--mbp-calendar-surface, #f1f6fc) !important;
  color: var(--mbp-calendar-accent, #0f766e) !important;
  overflow: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-staff-avatar img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Board time rows */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-row {
  min-height: 52px !important;
  border-bottom: 1px solid #ecf2f6 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-row:last-child {
  border-bottom: none !important;
}

/* Alternating row tint */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-row:nth-child(odd) {
  background: #fcfeff !important;
}

/* Time label */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-slot-time {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  color: #7a8fa6 !important;
  text-align: center !important;
  letter-spacing: 0.03em !important;
}

/* Board cell */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-board-cell {
  border-left: 1px solid #e8f0f5 !important;
  padding: 4px !important;
  vertical-align: top !important;
}

/* Day card inside board */
body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-day-card {
  border-radius: 8px !important;
  padding: 7px 10px !important;
  font-size: 12px !important;
  border-left: 3px solid var(--mbp-calendar-accent, #0f766e) !important;
  background: var(--mbp-calendar-surface, #f1f6fc) !important;
  box-shadow: 0 1px 4px rgba(13,31,51,0.07) !important;
  width: 100% !important;
  text-align: left !important;
  transition: box-shadow 0.12s ease !important;
  cursor: pointer !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-day-card:hover {
  box-shadow: 0 4px 12px rgba(13,31,51,0.12) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-day-card-time {
  font-size: 10px !important;
  font-weight: 600 !important;
  color: var(--mbp-calendar-accent, #0f766e) !important;
  letter-spacing: 0.04em !important;
  margin-bottom: 3px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-day-card-body > strong {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #0d1f33 !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  line-height: 1.3 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-day-card-body > p {
  font-size: 11px !important;
  color: #5a7090 !important;
  margin: 1px 0 0 !important;
  line-height: 1.35 !important;
}

/* Mobile: compact agenda */
@media (max-width: 860px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page #calendar-focus-list.mbp-stack-list {
    padding: 10px !important;
    gap: 7px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-item {
    min-height: 64px !important;
  }
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-focus-meta {
    min-width: 80px !important;
    padding: 10px 12px 10px 8px !important;
  }
}

/* Mobile app compaction pass */
body[data-admin-mode="pms"].mbp-enterprise-ui {
  overflow-x: hidden !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-content,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-surface {
  max-width: 100% !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-shell,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-agenda,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-day-agenda {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-weekdays,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-month {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 4px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-weekdays span {
  color: #718198 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-blank {
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day {
  align-items: center !important;
  background: #fff !important;
  border: 1px solid #e3ebf3 !important;
  border-radius: 8px !important;
  color: #10243e !important;
  display: grid !important;
  gap: 0 !important;
  justify-items: center !important;
  padding: 3px 2px !important;
  position: relative !important;
  text-align: center !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day span {
  display: none !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day strong {
  font-size: 13px !important;
  line-height: 1 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day small {
  align-items: center !important;
  background: #edf3f8 !important;
  border-radius: 999px !important;
  color: #4a5d72 !important;
  display: flex !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  height: 14px !important;
  justify-content: center !important;
  min-width: 14px !important;
  padding: 0 4px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day small:empty {
  background: #cfd8e3 !important;
  height: 4px !important;
  min-width: 4px !important;
  padding: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.has-bookings {
  border-color: rgba(15,118,110,.35) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.is-busy small,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.is-heavy small {
  background: #0f766e !important;
  color: #fff !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.is-heavy {
  box-shadow: inset 0 -3px 0 #0f766e !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.is-today {
  border-color: #0f766e !important;
  box-shadow: inset 0 0 0 1px #0f766e !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-day.is-selected {
  background: #10243e !important;
  border-color: #10243e !important;
  color: #fff !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-agenda,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-day-list,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-agenda-list {
  display: grid !important;
  gap: 7px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-agenda-head,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-day-summary,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-day-head {
  align-items: center !important;
  background: #f7fafc !important;
  border: 1px solid #e4ebf2 !important;
  border-radius: 10px !important;
  display: flex !important;
  justify-content: space-between !important;
  min-height: 38px !important;
  padding: 8px 10px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-day-summary.is-today,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-day.is-today .mbp-calendar-week-day-head {
  border-color: rgba(15,118,110,.45) !important;
  background: rgba(15,118,110,.08) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-day {
  border: 1px solid #e3ebf3 !important;
  border-radius: 12px !important;
  display: grid !important;
  gap: 7px !important;
  padding: 8px !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-week-day.is-selected {
  border-color: #10243e !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-card,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking {
  align-items: center !important;
  background: var(--mbp-calendar-surface, #f1f6fc) !important;
  border: 1px solid rgba(16,36,62,.08) !important;
  border-left: 3px solid var(--mbp-calendar-accent, #0f766e) !important;
  border-radius: 9px !important;
  color: #10243e !important;
  display: grid !important;
  gap: 6px !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  min-height: 48px !important;
  padding: 7px 8px !important;
  text-align: left !important;
  width: 100% !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking {
  grid-template-columns: 54px minmax(0, 1fr) !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-time,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking > span {
  color: var(--mbp-calendar-accent, #0f766e) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-main {
  display: grid !important;
  min-width: 0 !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-main strong,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking strong {
  font-size: 13px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-main small,
body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking small {
  color: #5b718a !important;
  font-size: 11px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-status {
  background: rgba(255,255,255,.7) !important;
  border-radius: 999px !important;
  color: #4a5d72 !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  max-width: 64px !important;
  overflow: hidden !important;
  padding: 4px 6px !important;
  text-overflow: ellipsis !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

@media (max-width: 720px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-shell-content {
    overflow-x: hidden !important;
    padding: 8px 8px 72px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-admin-page {
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-hero-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-header {
    border-radius: 10px !important;
    gap: 8px !important;
    padding: 10px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-hero-copy p:not(.mbp-hero-kicker),
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero-copy p:not(.mbp-hero-kicker),
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-hero-copy p,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-page-copy {
    font-size: 12px !important;
    line-height: 1.35 !important;
    margin: 2px 0 0 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-enterprise-hero h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-hero-copy h3,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-header h1,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-hero h1 {
    font-size: 18px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-hero,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-dashboard-shell,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-columns,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-columns-focus,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-columns-insights,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-billing-layout,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-customer-profile-workspace {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-stats-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-card-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-filter-shell,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-group-card {
    border-radius: 10px !important;
    padding: 10px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-package-summary-card {
    border-radius: 9px !important;
    min-height: 0 !important;
    padding: 9px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .stat-card strong,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-card strong,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-card strong {
    font-size: 18px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-hero .mbp-hero-copy p:not(.mbp-hero-kicker),
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-staff-rail,
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-agenda-panel {
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-shell {
    padding: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-toolbar {
    display: grid !important;
    gap: 7px !important;
    grid-template-columns: auto 1fr !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-toolbar h3 {
    align-self: center !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-nav,
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-view-tabs,
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-filters {
    display: grid !important;
    gap: 4px !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(0, auto) !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-view-tabs {
    grid-column: 1 / -1 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .button,
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page select {
    border-radius: 8px !important;
    font-size: 12px !important;
    min-height: 34px !important;
    padding: 6px 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-hero-actions,
  body[data-admin-mode="pms"].mbp-enterprise-ui #calendar-page .mbp-calendar-filters {
    width: 100% !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table-panel,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-responsive-table-wrap,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-customer-booking-table-wrap {
    overflow: visible !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table {
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat thead,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table thead {
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody,
  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tr,
  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat td,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table tbody,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table tr,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table td {
    display: block !important;
    width: 100% !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tbody,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table tbody {
    display: grid !important;
    gap: 7px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat tr,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table tr {
    background: #fff !important;
    border: 1px solid #e3ebf3 !important;
    border-radius: 10px !important;
    padding: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat td,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table td {
    align-items: baseline !important;
    border: 0 !important;
    display: flex !important;
    gap: 8px !important;
    justify-content: space-between !important;
    padding: 4px 0 !important;
    text-align: right !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .widefat td::before,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-table td::before {
    color: #718198 !important;
    content: attr(data-label) !important;
    flex: 0 0 42% !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: uppercase !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-layout,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-group-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-inline-form-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-detail-grid-panel {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-nav,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-customer-profile-tabs {
    display: grid !important;
    gap: 6px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    overflow: visible !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-settings-nav .button,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-customer-profile-tabs .button {
    font-size: 12px !important;
    justify-content: center !important;
    min-height: 36px !important;
    padding: 7px !important;
    white-space: normal !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui #reservation-profile-page .mbp-profile-block,
  body[data-admin-mode="pms"].mbp-enterprise-ui #customer-profile-page .mbp-profile-block,
  body[data-admin-mode="pms"].mbp-enterprise-ui #billing-page .mbp-panel {
    border-radius: 10px !important;
    padding: 10px !important;
  }
}

@media (max-width: 390px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-dashboard-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .serenity-kpi-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-profile-stats-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-card-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-today-kpi-grid {
    grid-template-columns: 1fr !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-card,
  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-mobile-booking {
    grid-template-columns: 48px minmax(0, 1fr) !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui .mbp-calendar-agenda-status {
    display: none !important;
  }
}

/* LTR mobile repair: keep English admin cards left-to-right */
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl),
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-admin-page,
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-table-panel,
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .report-row,
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card,
body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-card {
  direction: ltr !important;
  text-align: left !important;
}

@media (max-width: 720px) {
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card {
    align-items: center !important;
    direction: ltr !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card td {
    direction: ltr !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card td::before {
    content: none !important;
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card-main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    order: 1 !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card-chevron {
    margin-left: auto !important;
    order: 2 !important;
    padding-left: 6px !important;
    padding-right: 0 !important;
    text-align: right !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card-primary,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-summary-grid,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card-secondary {
    direction: ltr !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-mobile-card-primary strong {
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .widefat td,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-table td {
    direction: ltr !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .widefat td::before,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .mbp-table td::before {
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-shell {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-nav,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-nav .mbp-stack-list {
    display: grid !important;
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-nav-group {
    display: grid !important;
    gap: 6px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-nav-group .mbp-sidebar-section-label {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) #pms-settings-details-page .mbp-settings-nav .button {
    justify-content: center !important;
    min-width: 0 !important;
    text-align: center !important;
    width: 100% !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-table-wrap {
    overflow: visible !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table tbody,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table tr,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td {
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table tbody {
    display: grid !important;
    gap: 8px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table tr {
    background: #fff !important;
    border: 1px solid #e3ebf3 !important;
    border-radius: 10px !important;
    display: grid !important;
    gap: 4px !important;
    grid-template-columns: 46px minmax(0, 1fr) auto !important;
    padding: 9px !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td {
    border: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td::before {
    content: none !important;
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(1) {
    align-self: center !important;
    color: #52657a !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    grid-row: 1 / span 2 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(2) {
    grid-column: 2 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(3) {
    grid-column: 2 !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(4) {
    display: none !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(5) {
    align-self: start !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    width: auto !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-appointments-table td:nth-child(6) {
    align-self: end !important;
    grid-column: 3 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    width: auto !important;
  }

  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-person,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-service-badge,
  body[data-admin-mode="pms"].mbp-enterprise-ui:not(.is-rtl) .serenity-status-pill {
    direction: ltr !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
  }
}
