﻿/* ============================================================
   ADMIN ZONE RESET - neutralizes legacy admin.css within admin panel
   ============================================================ */
#admin-view,
#admin-shell,
.admin-shell {
  font-family: var(--font-family) !important;
  font-size: var(--font-size-base) !important;
  line-height: var(--line-height-base) !important;
  color: var(--color-gray-900) !important;
  background: var(--page-bg) !important;
}

#admin-view input,
#admin-view select,
#admin-view textarea,
.admin-shell input,
.admin-shell select,
.admin-shell textarea {
  padding: var(--input-padding) !important;
  border-radius: var(--input-radius) !important;
  font-size: var(--input-font-size) !important;
  font-family: var(--font-family) !important;
}

#admin-view nav,
.admin-shell nav {
  height: auto !important;
  padding: 0 !important;
  position: relative !important;
}

/* ============================================================
   LAYOUT SHELL
   ============================================================ */

body.bladezy-unified-app,
#admin-view,
#admin-login-view {
  background: var(--page-bg);
  color: var(--color-gray-900);
  font-family: var(--font-family);
}

.owner-appointment-modal-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--color-gray-200);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.98);
}

.owner-appointment-modal-section-compact {
  gap: 12px;
}

.owner-appointment-section-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.owner-appointment-section-head-compact {
  gap: 2px;
}

.owner-appointment-section-title {
  font-family: var(--font-cond);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-gray-800);
}

.owner-appointment-section-copy {
  font-size: 12px;
  line-height: 1.55;
  color: var(--color-gray-600);
}

.owner-appointment-recurring-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--color-gray-200);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(248, 250, 252, 0.92) 100%);
}

.owner-appointment-recurring-grid {
  gap: 14px;
}

.owner-appointment-recurring-end-options {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.owner-appointment-recurring-end-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--color-gray-200);
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.9);
}

.owner-appointment-recurring-end-title {
  font-family: var(--font-cond);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-gray-700);
}

.owner-appointment-recurring-choice {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: var(--color-gray-800);
}

.owner-appointment-recurring-choice-row {
  display: grid;
  grid-template-columns: auto auto minmax(96px, 120px) auto;
  align-items: center;
  column-gap: 10px;
  row-gap: 8px;
  justify-content: start;
}

.owner-appointment-recurring-choice input[type="radio"] {
  margin: 0;
  flex: 0 0 auto;
}

.owner-appointment-recurring-choice-copy {
  white-space: nowrap;
}

.owner-appointment-recurring-inline-input,
.owner-appointment-recurring-inline-date {
  min-width: 0;
  width: auto;
  flex: 0 0 auto;
}

.owner-appointment-recurring-inline-input {
  width: 96px;
}

.owner-appointment-recurring-inline-date {
  width: min(220px, 100%);
}

.owner-appointment-recurring-helper,
.owner-appointment-recurring-note,
.owner-appointment-recurring-error {
  font-size: 12px;
  line-height: 1.6;
}

.owner-appointment-recurring-helper {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--color-gray-700);
}

.owner-appointment-recurring-note {
  color: var(--color-gray-600);
}

.owner-appointment-recurring-error {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(176, 92, 58, 0.18);
  background: rgba(255, 247, 237, 0.9);
  color: #9a3412;
}

.owner-appointment-recurring-preview {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--color-gray-200);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.96);
}

.owner-appointment-recurring-preview-title {
  font-family: var(--font-cond);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-gray-700);
}

.owner-appointment-recurring-preview-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1.2fr) minmax(0, 0.9fr) minmax(0, 1.2fr) minmax(0, 1.2fr);
  gap: 10px;
  align-items: start;
  padding: 10px 0;
  border-top: 1px solid var(--color-gray-100);
  font-size: 13px;
  color: var(--color-gray-800);
}

.owner-appointment-recurring-preview-row:first-child {
  border-top: 0;
  padding-top: 0;
}

.owner-appointment-recurring-preview-row-header {
  padding-bottom: 8px;
  border-bottom: 1px solid var(--color-gray-200);
  font-family: var(--font-cond);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-gray-600);
}

.owner-appointment-footer-alerts {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.owner-appointment-footer-alert-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 12px;
}

#appointment-modal .owner-appointment-selected-client[hidden],
#appointment-modal .owner-appointment-client-results[hidden],
#appointment-modal .owner-appointment-override-warning[hidden],
#appointment-modal .owner-appointment-recurring-error[hidden],
#appointment-modal .owner-appointment-recurring-preview[hidden],
#appointment-modal .owner-appointment-modal-section[hidden],
#appointment-modal #am-repeat-field[hidden] {
  display: none !important;
}

.owner-appointment-confirm-dialog {
  width: min(520px, calc(100vw - 32px));
  border-radius: 18px;
  border: 1px solid var(--color-gray-200);
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.24);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.owner-appointment-confirm-dialog-head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
}

.owner-appointment-confirm-dialog-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
}

#appointment-modal input,
#appointment-modal select,
#appointment-modal textarea,
#am-override-confirm-modal .btn-sm,
#am-override-confirm-modal .btn-sm-ghost,
#apt-cancel-confirm-modal .btn-sm,
#apt-cancel-confirm-modal .btn-sm-ghost,
#recurring-appointment-conflict-modal .btn-sm,
#recurring-appointment-conflict-modal .btn-sm-ghost {
  min-height: 42px;
}

.owner-recurring-conflict-dialog {
  width: min(640px, calc(100vw - 32px));
}

.owner-recurring-conflict-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.owner-recurring-conflict-stat {
  border: 1px solid var(--color-gray-200);
  border-radius: 14px;
  background: var(--color-gray-50);
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.owner-recurring-conflict-stat strong {
  font-size: 1.1rem;
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
}

.owner-recurring-conflict-stat span {
  font-size: var(--font-size-xs);
  color: var(--color-gray-600);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
}

.owner-recurring-conflict-stat-warn {
  background: rgba(245, 158, 11, 0.08);
  border-color: rgba(245, 158, 11, 0.24);
}

.owner-recurring-conflict-list-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: left;
}

.owner-recurring-conflict-list-title {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
}

.owner-recurring-conflict-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 260px;
  overflow-y: auto;
  padding-right: 4px;
}

.owner-recurring-conflict-row {
  border: 1px solid var(--color-gray-200);
  border-radius: 14px;
  background: #fff;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.owner-recurring-conflict-row-date {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.owner-recurring-conflict-row-date strong {
  font-size: var(--font-size-sm);
  color: var(--color-gray-900);
}

.owner-recurring-conflict-row-date span,
.owner-recurring-conflict-row-reason,
.owner-recurring-conflict-empty,
.owner-recurring-conflict-status {
  font-size: var(--font-size-sm);
  color: var(--color-gray-600);
}

.owner-recurring-conflict-row-reason {
  font-weight: var(--font-weight-medium);
  text-align: right;
}

.owner-recurring-conflict-empty {
  border: 1px dashed var(--color-gray-300);
  border-radius: 14px;
  padding: 14px;
  background: var(--color-gray-50);
}

.owner-recurring-conflict-status {
  border-radius: 14px;
  padding: 12px 14px;
  background: var(--color-gray-50);
  border: 1px solid var(--color-gray-200);
}

.owner-recurring-conflict-status[data-tone="error"] {
  background: rgba(239, 68, 68, 0.08);
  border-color: rgba(239, 68, 68, 0.22);
  color: var(--color-danger-700, #b91c1c);
}

#appointment-modal input,
#appointment-modal select,
#appointment-modal textarea {
  padding: 10px 12px !important;
  font-size: 14px !important;
}

#appointment-modal textarea {
  min-height: 76px;
}

@media (max-width: 760px) {
  .owner-appointment-modal-section {
    padding: 14px;
  }

  .owner-appointment-recurring-preview-row,
  .owner-appointment-recurring-preview-row-header {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .owner-appointment-recurring-choice-row {
    grid-template-columns: auto 1fr;
    align-items: flex-start;
  }

  .owner-appointment-recurring-inline-input,
  .owner-appointment-recurring-inline-date {
    width: 100%;
    flex: 1 1 100%;
  }

  .owner-appointment-recurring-choice-row .owner-appointment-recurring-choice-copy:last-child,
  .owner-appointment-recurring-choice-row .owner-appointment-recurring-inline-input,
  .owner-appointment-recurring-choice-row .owner-appointment-recurring-inline-date {
    grid-column: 2;
  }

  .owner-appointment-confirm-dialog-actions {
    flex-direction: column;
  }

  .owner-appointment-confirm-dialog-actions .btn-sm,
  .owner-appointment-confirm-dialog-actions .btn-sm-ghost {
    width: 100%;
    justify-content: center;
  }

  .owner-recurring-conflict-summary {
    grid-template-columns: 1fr;
  }

  .owner-recurring-conflict-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .owner-recurring-conflict-row-reason {
    text-align: left;
  }
}

@media (max-width: 640px) {
  .owner-appointment-footer-alert-actions {
    flex-direction: column;
  }

  .owner-appointment-footer-alert-actions .btn-sm,
  .owner-appointment-footer-alert-actions .btn-sm-ghost {
    width: 100%;
    justify-content: center;
  }
}

.admin-shell,
#admin-view {
  display: flex;
  min-height: 100vh;
  background: var(--page-bg);
  overflow: hidden;
}

.admin-shell-layout {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}

.admin-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: visible;
  min-width: 0;
  max-width: var(--content-max-width);
  margin: 0 auto;
  width: 100%;
  padding: 0 0 28px;
}

.admin-main {
  flex: 1;
  overflow-y: auto;
  padding: 0 24px;
  background: var(--page-bg);
  min-width: 0;
}

.admin-main-shell {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

#admin-view .admin-sidebar,
#admin-shell .admin-sidebar,
.admin-shell .admin-sidebar {
  position: fixed !important;
  top: 0;
  bottom: 0;
  flex: 0 0 auto;
}

#admin-view .admin-main {
  padding: 0 24px !important;
  margin: 0 0 0 214px;
  width: calc(100% - 214px);
  max-width: none;
  overflow-x: hidden;
}

#admin-view .admin-sms-setup-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 40px;
  margin: 0 0 12px;
  padding: 8px 14px;
  border: 1px solid rgba(220, 38, 38, 0.18);
  border-radius: 12px;
  background: rgba(220, 38, 38, 0.08);
  box-shadow: none;
}

#admin-view .admin-sms-setup-banner[hidden] {
  display: none !important;
}

#admin-view .admin-sms-setup-banner-copy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}

#admin-view .admin-sms-setup-banner-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(220, 38, 38, 0.18);
  background: rgba(220, 38, 38, 0.12);
  font-family: var(--font-cond);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #b91c1c;
}

#admin-view .admin-sms-setup-banner-divider {
  font-size: 14px;
  line-height: 1;
  color: rgba(15, 23, 42, 0.42);
}

#admin-view .admin-sms-setup-banner-body {
  font-size: 13px;
  line-height: 1.45;
  color: var(--admin-text);
}

#admin-view .admin-sms-setup-banner-cta {
  flex-shrink: 0;
  min-height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #b91c1c;
  box-shadow: none;
  white-space: nowrap;
}

#admin-view .admin-sms-setup-banner-cta:hover {
  background: transparent;
  color: #991b1b;
  text-decoration: underline;
}

#admin-view .admin-backend-truth-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 40px;
  margin: 0 0 12px;
  padding: 10px 14px;
  border: 1px solid rgba(180, 83, 9, 0.2);
  border-radius: 12px;
  background: rgba(245, 158, 11, 0.1);
}

#admin-view .admin-backend-truth-banner[hidden] {
  display: none !important;
}

#admin-view .admin-backend-truth-banner-copy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}

#admin-view .admin-backend-truth-banner-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(180, 83, 9, 0.2);
  background: rgba(245, 158, 11, 0.16);
  font-family: var(--font-cond);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #92400e;
}

#admin-view .admin-backend-truth-banner-divider {
  font-size: 14px;
  line-height: 1;
  color: rgba(15, 23, 42, 0.42);
}

#admin-view .admin-backend-truth-banner-body {
  font-size: 13px;
  line-height: 1.45;
  color: var(--admin-text);
}

#admin-view .admin-backend-truth-banner-cta {
  flex-shrink: 0;
  white-space: nowrap;
  color: #92400e;
}

#admin-view .admin-backend-truth-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  border: 1px solid rgba(180, 83, 9, 0.18);
  border-radius: 14px;
  background: rgba(245, 158, 11, 0.08);
}

#admin-view .admin-backend-truth-card-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--admin-text);
}

#admin-view .admin-backend-truth-card-copy {
  font-size: 13px;
  line-height: 1.55;
  color: var(--admin-text);
}

#admin-view .admin-backend-truth-card-cta {
  align-self: flex-start;
  color: #92400e;
}

#admin-view .account-backend-truth-note {
  margin-bottom: 14px;
}

#admin-view .admin-shell-status-banners {
  margin: 0;
}

#admin-view .admin-tab-panel {
  display: none;
  flex-direction: column;
  gap: var(--space-4);
}

#admin-view .admin-tab-panel.active {
  display: flex;
}

/* ============================================================
   HQ ZONE RESET
   ============================================================ */

#hq-view {
  font-family: var(--font-family);
  color: var(--bladezy-text);
}

/* ============================================================
   SIDEBAR NAVIGATION
   ============================================================ */

.admin-sidebar {
  width: var(--nav-width);
  min-width: var(--nav-width);
  background: var(--nav-bg);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 0 0 var(--space-4) 0;
  border-right: 1px solid rgba(255,255,255,0.08);
  transition: width var(--transition-base), min-width var(--transition-base);
}

.admin-sidebar-chrome {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 100%;
}

.admin-sidebar-nav-region {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
}

.admin-sidebar-status-region {
  flex: 0 0 auto;
  margin-top: auto;
  padding: 10px 14px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0) 0%, rgba(248, 250, 252, 0.92) 24%);
}

.admin-sidebar-sms-status-row {
  width: 100%;
  border: 0;
  background: transparent;
  color: #334155;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  column-gap: 10px;
  row-gap: 4px;
  padding: 7px 2px 5px;
  text-align: left;
  cursor: pointer;
  transition: color 0.16s ease, opacity 0.16s ease;
}

.admin-sidebar-sms-status-row:hover {
  color: #0f172a;
}

.admin-sidebar-sms-status-main,
.admin-sidebar-sms-status-title-wrap,
.admin-sidebar-sms-status-state {
  display: flex;
  align-items: center;
}

.admin-sidebar-sms-status-main {
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  row-gap: 4px;
  column-gap: 10px;
}

.admin-sidebar-sms-status-title-wrap {
  gap: 7px;
  min-width: 0;
  flex: 0 1 auto;
}

.admin-sidebar-sms-status-icon {
  width: 15px;
  height: 15px;
  color: #334155;
  flex: 0 0 auto;
}

.admin-sidebar-sms-status-icon svg {
  width: 15px;
  height: 15px;
  display: block;
}

.admin-sidebar-sms-status-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #0f172a;
}

.admin-sidebar-sms-status-state {
  gap: 6px;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  color: #334155;
  white-space: normal;
  overflow-wrap: anywhere;
  flex: 1 1 92px;
}

.admin-sidebar-sms-status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d4a017;
  flex: 0 0 auto;
}

.admin-sidebar-sms-status-state[data-tone="inactive"] .admin-sidebar-sms-status-dot {
  background: #d4a017;
}

.admin-sidebar-sms-status-state[data-tone="ready"] .admin-sidebar-sms-status-dot {
  background: #ca8a04;
}

.admin-sidebar-sms-status-state[data-tone="active"] .admin-sidebar-sms-status-dot {
  background: #16a34a;
}

.admin-sidebar-sms-status-state[data-tone="attention"] .admin-sidebar-sms-status-dot {
  background: #f59e0b;
}

.admin-sidebar-sms-status-action {
  align-self: center;
  justify-self: end;
  font-size: 11px;
  font-weight: 700;
  color: #2563eb;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

.admin-sidebar-sms-status-row:hover .admin-sidebar-sms-status-icon,
.admin-sidebar-sms-status-row:hover .admin-sidebar-sms-status-title,
.admin-sidebar-sms-status-row:hover .admin-sidebar-sms-status-state,
.admin-sidebar-sms-status-row:focus-visible .admin-sidebar-sms-status-icon,
.admin-sidebar-sms-status-row:focus-visible .admin-sidebar-sms-status-title,
.admin-sidebar-sms-status-row:focus-visible .admin-sidebar-sms-status-state {
  color: #0f172a;
}

.admin-sidebar-sms-status-action:hover,
.admin-sidebar-sms-status-row:hover .admin-sidebar-sms-status-action,
.admin-sidebar-sms-status-row:focus-visible .admin-sidebar-sms-status-action {
  color: #1d4ed8;
}

.admin-sidebar-sms-status-row:focus-visible {
  outline: 2px solid rgba(148, 163, 184, 0.38);
  outline-offset: 3px;
  border-radius: 8px;
}

.admin-sidebar.collapsed .admin-sidebar-status-region {
  padding: 10px 8px 12px;
}

.admin-sidebar.collapsed .admin-sidebar-sms-status-row {
  justify-content: center;
  padding: 6px 0 4px;
}

.admin-sidebar.collapsed .admin-sidebar-sms-status-main {
  justify-content: center;
}

.admin-sidebar.collapsed .admin-sidebar-sms-status-action,
.admin-sidebar.collapsed .admin-sidebar-sms-status-state span:last-child {
  display: none;
}

@media (max-width: 1320px) {
  #admin-view .admin-sidebar-sms-status-row {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view .admin-sidebar-sms-status-main {
    align-items: flex-start;
  }

  #admin-view .admin-sidebar-sms-status-action {
    justify-self: start;
    align-self: start;
    padding-left: 22px;
  }
}

#admin-view .admin-topbar-shop-context-row,
#admin-view .admin-topbar-shop-selector-wrap {
  display: none !important;
}

#admin-view .admin-sms-setup-banner {
  display: none !important;
}

.admin-sidebar-nav-region {
  flex: 1 1 auto;
  min-height: 0;
}

.admin-logo,
.sidebar-brand {
  padding: var(--space-5) var(--space-4) var(--space-4);
  border-bottom: 1px solid var(--color-navy-700);
  margin-bottom: var(--space-3);
  min-height: auto;
}

.admin-logo {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-2);
}

.admin-logo-brand-row {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  min-width: 0;
}

.admin-logo-text {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}

.admin-logo-brand {
  margin-right: var(--space-2);
  flex-shrink: 0;
}

.admin-logo-img {
  width: 28px;
  min-width: 28px;
  height: 28px;
  display: block;
}

.admin-logo-shop,
.sidebar-brand-name {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
  line-height: var(--line-height-tight);
}

.admin-logo-role,
.sidebar-brand-role {
  font-size: var(--font-size-xs);
  color: var(--color-gray-400);
  margin-top: 2px;
}

.admin-logo-close {
  color: var(--color-gray-400);
  font-size: var(--font-size-sm);
  cursor: pointer;
}

.admin-nav-list,
.sidebar-section {
  padding: 0;
}

.admin-nav-group {
  padding: var(--space-3) var(--space-4) var(--space-1);
}

.admin-nav-group-label,
.sidebar-section-label {
  font-size: var(--nav-section-label-size);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-400);
  padding: 0 var(--space-2);
  margin-top: 16px;
  margin-bottom: var(--space-2);
}

.admin-nav {
  list-style: none;
  padding: var(--space-1) var(--space-3);
}

.admin-nav-item,
.sidebar-nav-item {
  margin-bottom: 1px;
}

.admin-nav-item,
.sidebar-nav-link {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  height: var(--nav-item-height);
  padding: var(--nav-item-padding);
  border-radius: var(--nav-item-radius);
  font-size: var(--nav-font-size);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-300);
  text-decoration: none;
  transition: background var(--transition-fast), color var(--transition-fast);
  cursor: pointer;
  white-space: nowrap;
}

.admin-nav-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-nav-item-client-intelligence .admin-nav-label {
  font-size: inherit;
  line-height: inherit;
  white-space: nowrap;
}

.nav-tooltip {
  display: none;
  position: absolute;
  left: 64px;
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-gray-800);
  color: var(--color-white);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  padding: 4px 10px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 1000;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
  opacity: 0;
}

@keyframes tooltip-appear {
  from { opacity: 0; }
  to { opacity: 1; }
}

.admin-nav-item:hover,
.sidebar-nav-link:hover {
  background: var(--color-navy-800);
  color: var(--color-white);
}

.admin-nav-item.active,
.sidebar-nav-link.active {
  background: var(--color-navy-700);
  color: var(--color-white);
  font-weight: var(--font-weight-semibold);
}

.admin-nav-item.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: var(--space-1);
  bottom: var(--space-1);
  width: var(--space-1);
  border-radius: var(--pill-radius);
  background: var(--color-blue-mid);
}

.admin-nav-item[data-tab="intelligence"].active,
.admin-nav-item[data-tab="client-intelligence"].active {
  background: rgba(22, 163, 74, 0.14);
}

.admin-nav-item[data-tab="intelligence"].active::before,
.admin-nav-item[data-tab="client-intelligence"].active::before {
  background: var(--color-intelligence-mid);
}

.admin-nav-item[data-tab="intelligence"]:hover,
.admin-nav-item[data-tab="client-intelligence"]:hover {
  background: rgba(22, 163, 74, 0.1);
}

.admin-nav-item {
  position: relative;
  min-height: var(--nav-item-height);
}

.admin-nav-icon,
.sidebar-nav-icon {
  width: var(--nav-icon-size);
  height: var(--nav-icon-size);
  color: currentColor;
  opacity: 0.9;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.admin-nav-icon svg,
.sidebar-nav-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-width: 1.75;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.sidebar-nav-icon img {
  display: block;
  width: auto;
  height: 16px;
}

.admin-nav-badge,
.intelligence-badge {
  margin-left: auto;
}

.admin-sidebar.collapsed {
  width: 56px !important;
  min-width: 56px !important;
  overflow: hidden;
  transition: width 200ms ease, min-width 200ms ease;
}

.admin-sidebar {
  transition: width 200ms ease, min-width 200ms ease;
}

.admin-sidebar.collapsed .admin-nav-group {
  padding-left: var(--space-2);
  padding-right: var(--space-2);
}

.admin-sidebar.collapsed .admin-nav-group-label,
.admin-sidebar.collapsed .admin-nav-label,
.admin-sidebar.collapsed .admin-logo-text,
.admin-sidebar.collapsed .admin-nav-badge,
.admin-sidebar.collapsed .admin-exit-label,
.admin-sidebar.collapsed .sidebar-nav-link span:not(.nav-tooltip),
.admin-sidebar.collapsed .sidebar-section-label,
.admin-sidebar.collapsed .sidebar-brand-name,
.admin-sidebar.collapsed .sidebar-brand-role,
.admin-sidebar.collapsed .collapse-label,
.admin-sidebar.collapsed .admin-sidebar-toggle-label {
  display: none !important;
}

.admin-sidebar.collapsed .admin-logo {
  justify-content: center;
  padding: 12px 0;
}

.admin-sidebar.collapsed .admin-logo-brand-row {
  justify-content: center;
}

.admin-sidebar.collapsed .admin-logo-brand {
  margin-right: 0;
}

.admin-sidebar.collapsed .admin-logo-img {
  width: 32px;
  min-width: 32px;
  height: 32px;
  margin: 0 auto;
}

.admin-sidebar.collapsed .sidebar-nav-icon,
.admin-sidebar.collapsed .admin-nav-icon {
  width: 18px;
  height: 18px;
}

.admin-sidebar.collapsed .admin-logo-close {
  display: none;
}

.admin-sidebar.collapsed .admin-nav-item,
.admin-sidebar.collapsed .admin-exit-btn {
  justify-content: center;
  padding: 0;
}

.admin-sidebar.collapsed .admin-nav-item,
.admin-sidebar.collapsed .admin-exit-btn,
.admin-sidebar.collapsed .sidebar-nav-link {
  position: relative;
}

.admin-sidebar.collapsed .admin-nav-item:hover .nav-tooltip,
.admin-sidebar.collapsed .admin-exit-btn:hover .nav-tooltip,
.admin-sidebar.collapsed .sidebar-nav-link:hover .nav-tooltip {
  display: block;
  animation: tooltip-appear 0ms 300ms forwards;
}

.admin-exit-btn,
.sidebar-footer {
  margin-top: auto;
  padding: var(--space-3);
  border-top: 1px solid var(--color-navy-700);
  color: var(--color-gray-400);
  font-size: var(--font-size-sm);
  display: flex;
  align-items: center;
  gap: var(--space-2);
  cursor: pointer;
  position: relative;
}

.admin-exit-btn:hover {
  color: var(--color-white);
}

.sidebar-nav-link input[type="checkbox"],
.nav-checkbox,
.admin-nav-item input[type="checkbox"] {
  display: none !important;
}

/* ============================================================
   TOP BAR
   ============================================================ */

#admin-view .admin-topbar,
.admin-topbar-shell {
  position: sticky;
  top: 0;
  z-index: 100;
  background: linear-gradient(180deg, rgba(248,251,255,0.98) 0%, rgba(248,250,252,0.96) 100%);
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  backdrop-filter: blur(10px);
}

.admin-topbar-shell {
  padding: 10px 24px 12px;
}

.admin-topbar {
  min-height: 64px;
  background: transparent;
  border-bottom: none;
  display: grid;
  grid-template-columns: minmax(320px, 1.18fr) minmax(340px, 500px) auto;
  align-items: center;
  padding: 0;
  column-gap: 18px;
  position: static;
  top: auto;
  z-index: auto;
  width: 100%;
}

#admin-view .admin-topbar-brand,
.admin-topbar-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  width: 100%;
  max-width: none;
  overflow: visible;
}

.admin-topbar-zone {
  min-width: 0;
}

.admin-topbar-zone-brand {
  justify-self: start;
}

.admin-topbar-zone-search {
  justify-self: stretch;
}

.admin-topbar-zone-meta {
  justify-self: end;
}

.admin-topbar-menu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-right: 2px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.76);
  color: #0F1E36;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

.admin-topbar-menu-toggle:hover {
  background: #ffffff;
  border-color: rgba(148, 163, 184, 0.28);
  color: #0f172a;
}

.admin-topbar-menu-icon {
  font-size: 16px;
  line-height: 1;
}

#admin-view .admin-topbar-logo,
.admin-topbar-logo {
  height: 34px;
  width: 150px;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
  flex: 0 0 auto;
  display: block;
}

.admin-topbar-brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  width: 100%;
}

.admin-topbar-brand-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  min-width: 0;
}

.admin-topbar-shop-name {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #0f172a;
  font-family: "Manrope", "DM Sans", sans-serif;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

.admin-topbar-shop-context-row {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex-wrap: wrap;
}

.admin-topbar-shop-context {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #6b7280;
  font-family: var(--admin-typography-family);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.35;
}

.admin-topbar-support-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(37, 99, 235, 0.18);
  background: rgba(37, 99, 235, 0.06);
  color: #1d4ed8;
  font-family: var(--admin-typography-family);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.admin-context-banner,
.admin-breadcrumb-banner,
[class*="you-are-in"],
.admin-location-banner {
  display: none !important;
}

.admin-topbar-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
}

#admin-view .admin-topbar-search,
.admin-topbar-search,
.topbar-search {
  width: 100%;
  min-width: 0;
  max-width: none;
  justify-self: stretch;
  align-self: center;
}

#admin-view .admin-topbar-search input,
.admin-topbar-search input,
.topbar-search input {
  width: 100%;
  height: 42px;
  border: var(--input-border);
  border-radius: 12px;
  font-size: var(--input-font-size);
  font-family: var(--font-family);
  padding: 10px 14px 10px 42px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--color-gray-900);
  outline: none;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition: border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);
}

.admin-topbar-search input:focus,
.topbar-search input:focus {
  border-color: var(--input-focus-border);
  background: var(--color-white);
  outline: 2px solid var(--color-blue-mid);
  outline-offset: 0;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.08);
}

#admin-view .admin-topbar-meta,
.admin-topbar-meta,
.topbar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: 0;
  justify-self: end;
  min-width: max-content;
}

.admin-shell-status-banners {
  width: 100%;
  max-width: var(--content-max-width);
  margin: 0 auto;
  padding: 14px 0 0;
}

.topbar-actions .btn,
.topbar-actions button,
.admin-topbar-meta .btn,
.admin-topbar-meta button,
.admin-theme-toggle,
.admin-topbar-chip {
  min-height: 30px;
  padding: 4px 10px;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  border-radius: var(--pill-radius);
  border: 1px solid var(--color-gray-200);
  background: var(--color-white);
  color: var(--color-gray-600);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  transition: all var(--transition-fast);
  white-space: nowrap;
  box-shadow: none;
}

.topbar-actions .btn:hover,
.topbar-actions button:hover,
.admin-topbar-meta .btn:hover,
.admin-topbar-meta button:hover,
.admin-theme-toggle:hover,
.admin-topbar-chip:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

.admin-topbar-chip-copy {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  line-height: 1;
}

.admin-topbar-chip-label,
.admin-utility-label,
.admin-theme-toggle-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-600);
}

.admin-topbar-chip-value,
.admin-utility-value {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
}

.topbar-status,
.admin-topbar-chip.admin-utility-status {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-600);
  padding: 4px 10px;
  border: 1px solid var(--color-gray-200);
  border-radius: var(--pill-radius);
  background: var(--color-white);
}

.topbar-status-dot,
.admin-theme-toggle-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-gray-400);
}

.topbar-status-dot.off {
  background: var(--color-gray-300);
}

.admin-hamburger {
  width: var(--space-8);
  height: var(--space-8);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--btn-radius);
  background: var(--color-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  flex-direction: column;
}

.admin-hamburger span {
  width: var(--space-4);
  height: 2px;
  background: var(--color-gray-700);
  border-radius: var(--btn-radius);
}

/* ============================================================
   PAGE HEADER
   ============================================================ */

.page-header {
  margin-bottom: var(--space-6);
}

.page-header-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-400);
  margin-bottom: var(--space-1);
}

.page-header-title {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
  line-height: var(--line-height-tight);
}

.page-header-subtitle {
  font-size: var(--font-size-sm);
  color: var(--color-gray-500);
  margin-top: var(--space-1);
}

/* ============================================================
   CARDS
   ============================================================ */

.card,
.admin-card,
.admin-table-wrap,
.compact-table-wrap,
.chart-card,
.stat-card,
.barber-dashboard-card,
.barber-list-item,
.client-profile-card,
.history-item,
.history-stat,
.blocked-item,
.photo-slot,
.credential-box,
.account-note,
.publish-card,
.howto-card,
.howto-secret-box,
.modal,
.modal-panel,
.admin-login-box {
  background: var(--card-bg);
  border: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
}

.card-header,
.admin-card-header,
.admin-table-header,
.modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.card-title,
.admin-card-title,
.admin-table-title,
.chart-card-title,
.stat-card-label,
.history-stat-label,
.client-profile-label,
.section-title,
.section-label,
.intel-section-kicker {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
}

.card-actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.card-gear,
.intelligence-module-gear,
.intel-gear {
  width: var(--space-4);
  height: var(--space-4);
  color: var(--color-gray-400);
  cursor: pointer;
  transition: color var(--transition-fast);
  flex-shrink: 0;
}

.card-gear:hover,
.intelligence-module-gear:hover,
.intel-gear:hover {
  color: var(--color-gray-600);
}

.metric-value,
.stat-card-value,
.history-stat-value,
.metric-hero-value,
.bladezy-insight-value {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
  line-height: 1;
  margin-bottom: var(--space-1);
}

.metric-label,
.stat-card-sub,
.metric-sub,
.admin-card-subtitle,
.admin-card-copy,
.admin-table-copy,
.account-panel-subtitle,
.business-intelligence-card-subtitle,
.business-intelligence-panel-note,
.barber-management-copy,
.barber-management-note,
.client-profile-box,
.notifications-group-copy,
.notifications-token-copy,
.notifications-token-help,
.account-identity-copy,
.howto-tip,
.howto-warn,
.photo-slot-desc,
.modal-sub {
  font-size: var(--font-size-base);
  color: var(--color-gray-500);
  line-height: var(--line-height-base);
}

/* ============================================================
   BUTTONS - THREE TYPES ONLY
   ============================================================ */

.btn,
.action-btn,
.btn-next,
.btn-back,
.btn-full,
.btn-sm,
.btn-sm-ghost,
.dashboard-view-pill,
.client-intel-pill,
.dashboard-section-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  min-height: var(--btn-height);
  padding: var(--btn-padding);
  font-family: var(--font-family);
  font-size: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  border-radius: var(--btn-radius);
  cursor: pointer;
  transition: all var(--transition-fast);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  box-shadow: none;
}

.btn-primary,
.btn-success,
.btn-confirm,
.btn-done,
.btn-next,
.btn-full,
.action-btn.is-primary {
  background: var(--color-navy);
  color: var(--color-white);
  border-color: var(--color-navy);
}

.btn-primary:hover,
.btn-success:hover,
.btn-confirm:hover,
.btn-done:hover,
.btn-next:hover,
.btn-full:hover,
.action-btn.is-primary:hover {
  background: var(--color-navy-800);
  border-color: var(--color-navy-800);
}

.btn-secondary,
.btn-info,
.btn-sms,
.btn-edit,
.btn-history,
.btn-payment,
.btn-cancel,
.btn-reschedule,
.btn-sm-ghost,
.btn-back,
.action-btn,
.dashboard-view-pill,
.client-intel-pill,
.dashboard-section-link {
  background: var(--color-white);
  color: var(--color-gray-700);
  border-color: var(--color-gray-200);
}

.btn-secondary:hover,
.btn-info:hover,
.btn-sms:hover,
.btn-edit:hover,
.btn-history:hover,
.btn-payment:hover,
.btn-cancel:hover,
.btn-reschedule:hover,
.btn-sm-ghost:hover,
.btn-back:hover,
.action-btn:hover,
.dashboard-view-pill:hover,
.client-intel-pill:hover,
.dashboard-section-link:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

.btn-destructive,
.btn-warning,
.btn-noshow,
.btn-danger,
.action-btn.danger {
  background: var(--color-white);
  color: var(--color-red);
  border-color: var(--color-red);
}

.btn-destructive:hover,
.btn-warning:hover,
.btn-noshow:hover,
.btn-danger:hover,
.action-btn.danger:hover {
  background: var(--color-red-light);
}

#admin-view .btn.btn-primary,
#admin-view .btn.btn-primary.btn-sm,
#admin-view .btn-primary.btn-sm {
  background: var(--color-navy);
  color: var(--color-white);
  border-color: var(--color-navy);
}

#admin-view .btn.btn-primary:hover,
#admin-view .btn.btn-primary.btn-sm:hover,
#admin-view .btn-primary.btn-sm:hover {
  background: var(--color-navy-800);
  border-color: var(--color-navy-800);
}

#admin-view .btn.btn-secondary,
#admin-view .btn.btn-secondary.btn-sm,
#admin-view .btn-secondary.btn-sm {
  background: var(--color-white);
  color: var(--color-gray-700);
  border-color: var(--color-gray-200);
}

#admin-view .btn.btn-secondary:hover,
#admin-view .btn.btn-secondary.btn-sm:hover,
#admin-view .btn-secondary.btn-sm:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

#admin-view .btn.btn-destructive,
#admin-view .btn.btn-destructive.btn-sm,
#admin-view .btn-destructive.btn-sm {
  background: var(--color-white);
  color: var(--color-red);
  border-color: var(--color-red);
}

#admin-view .btn.btn-destructive:hover,
#admin-view .btn.btn-destructive.btn-sm:hover,
#admin-view .btn-destructive.btn-sm:hover {
  background: var(--color-red-light);
}

.btn-sm,
.btn-sm-ghost,
.action-btn,
.dashboard-view-pill,
.client-intel-pill,
.dashboard-section-link {
  min-height: var(--btn-height-sm);
  padding: var(--btn-padding-sm);
  font-size: var(--font-size-sm);
}

.dashboard-view-pill.active,
.client-intel-pill.active,
.dashboard-section-link.active {
  background: var(--color-blue-light);
  border-color: var(--color-blue-mid);
  color: var(--color-blue);
}

/* ============================================================
   PILLS AND BADGES
   ============================================================ */

.pill,
.badge,
.pay-chip,
.admin-nav-badge,
.barber-status-badge,
.owner-opportunity-badge,
.waitlist-status-pill,
.intelligence-module-badge,
.intelligence-module-badge-pro {
  display: inline-flex;
  align-items: center;
  padding: var(--pill-padding);
  border-radius: var(--pill-radius);
  font-size: var(--pill-font-size);
  font-weight: var(--pill-font-weight);
  white-space: nowrap;
  line-height: 1.4;
  border: 1px solid transparent;
}

.pill-green,
.badge.b-confirmed,
.pay-chip.paid,
.owner-opportunity-badge.positive,
.waitlist-status-pill.is-booked {
  background: var(--color-green-light);
  color: var(--color-green);
}

.pill-amber,
.pay-chip.partial,
.owner-opportunity-badge.due-soon,
.waitlist-status-pill.is-notified {
  background: var(--color-amber-light);
  color: var(--color-amber);
}

.pill-red,
.pay-chip.unpaid,
.pay-chip.cancelled,
.badge.b-unpaid,
.owner-opportunity-badge.late,
.waitlist-status-pill.is-warning {
  background: var(--color-red-light);
  color: var(--color-red);
}

.pill-blue,
.intelligence-badge,
.intelligence-module-badge-pro,
.pill-pro {
  background: var(--color-intelligence-light);
  color: var(--color-intelligence);
}

.intelligence-module-badge:not(.intelligence-module-badge-pro) {
  background: #F0FDF4;
  color: #16A34A;
}

.intelligence-auto-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 4px;
  background: #DCFCE7;
  color: #16A34A;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.pill-gray,
.badge.b-neutral,
.pay-chip,
.barber-status-badge,
.waitlist-status-pill.is-muted,
.owner-opportunity-badge {
  background: var(--color-gray-100);
  color: var(--color-gray-600);
}

.owner-opportunity-badge.critical {
  background: var(--color-red-light);
  color: var(--color-red);
}

.owner-opportunity-badge.warning {
  background: var(--color-amber-light);
  color: var(--color-amber);
}

.owner-opportunity-badge.financial,
.owner-opportunity-badge.positive {
  background: var(--color-green-light);
  color: var(--color-green);
}

.owner-opportunity-badge.info {
  background: var(--color-blue-light);
  color: var(--color-blue);
}

/* ============================================================
   INPUTS AND FORM ELEMENTS
   ============================================================ */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="date"],
input[type="password"],
select,
textarea {
  min-height: var(--input-height);
  border: var(--input-border);
  border-radius: var(--input-radius);
  font-size: var(--input-font-size);
  font-family: var(--font-family);
  padding: var(--input-padding);
  background: var(--color-white);
  color: var(--color-gray-900);
  outline: none;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
  width: 100%;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--input-focus-border);
  outline: 2px solid var(--color-blue-mid);
  outline-offset: 0;
}

input::placeholder,
textarea::placeholder {
  color: var(--color-gray-400);
}

textarea {
  min-height: calc(var(--space-12) * 2);
  padding: var(--space-2) var(--space-3);
  resize: vertical;
}

.form-field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.form-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
}

/* ============================================================
   TABLES
   ============================================================ */

.data-table,
#admin-view table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-size-base);
}

.data-table th,
#admin-view th {
  text-align: left;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
  padding: var(--space-2) var(--space-4);
  border-bottom: 1px solid var(--color-gray-200);
  white-space: nowrap;
}

.data-table td,
#admin-view td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-gray-100);
  color: var(--color-gray-700);
  vertical-align: middle;
}

.data-table tr:last-child td,
#admin-view tr:last-child td {
  border-bottom: none;
}

.data-table tr:hover td,
#admin-view tbody tr:hover td {
  background: var(--color-gray-50);
}

/* ============================================================
   STATUS FILTER TILES
   ============================================================ */

.status-tiles,
.appointments-status-grid {
  display: flex;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
  flex-wrap: wrap;
}

.status-tile,
.appointments-status-card {
  flex: 1;
  min-width: 100px;
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
  padding: var(--space-4);
  cursor: pointer;
  transition: all var(--transition-fast);
  text-align: left;
  box-shadow: var(--card-shadow);
}

.status-tile:hover,
.appointments-status-card:hover {
  border-color: var(--color-gray-300);
  background: var(--color-gray-50);
}

.status-tile.active,
.appointments-status-card.active {
  border-color: var(--color-blue);
  box-shadow: 0 0 0 3px rgba(37,99,235,0.1);
  outline: none;
}

.status-tile-number,
.appointments-status-value {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
  line-height: 1;
  margin-bottom: var(--space-1);
}

.status-tile-label,
.appointments-status-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-gray-500);
}

.status-tile-sub,
.appointments-status-sub {
  font-size: var(--font-size-xs);
  color: var(--color-gray-400);
  margin-top: 2px;
}

/* ============================================================
   APPOINTMENTS / SCHEDULE / DASHBOARD COMPATIBILITY
   ============================================================ */

.dashboard-view-toggle,
.business-intelligence-head,
.appointments-toolbar,
.barber-management-head,
.waitlist-page-head,
.notifications-hero,
.account-settings-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  flex-wrap: wrap;
}

.dashboard-view-toggle-left,
.business-intelligence-head-actions,
.appointments-toolbar-actions,
.waitlist-head-actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.dashboard-view-panel {
  display: none;
}

.dashboard-view-panel.active {
  display: block;
}

.business-intelligence-shell,
.appointments-shell,
.waitlist-shell,
.account-settings-shell {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.business-intelligence-head-copy,
.appointments-page-head > div:first-child,
.waitlist-page-head > div:first-child,
.account-settings-head > div:first-child {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

#admin-view .business-intelligence-title-row {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

#admin-view .business-intelligence-title-copy {
  display: flex;
  flex-direction: column;
  gap: 0;
}

#admin-view .business-intelligence-head .business-intelligence-header-icon {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  display: block;
}

.business-intelligence-kicker,
.page-eyebrow {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-400);
}

.business-intelligence-title,
.page-title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  color: #0F1E36;
}

.business-intelligence-subtitle,
.page-subtitle {
  font-size: 13px;
  font-weight: 400;
  color: #6B7280;
  line-height: 1.5;
  margin-top: 4px;
}

.business-intelligence-periods,
.business-intelligence-tabs,
.schedule-actions-bar,
.appointments-head-actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

#admin-view [data-tab-content],
#admin-view .tab-panel,
#admin-view .dashboard-tab-content,
#admin-view [data-bi-panel],
#admin-view .business-intelligence-panel,
#admin-view .intel-tab-panel {
  display: none;
}

#admin-view [data-tab-content].active,
#admin-view .tab-panel.active,
#admin-view .dashboard-tab-content.active,
#admin-view [data-bi-panel].active,
#admin-view .business-intelligence-panel.active,
#admin-view .intel-tab-panel.active {
  display: block;
}

.business-intelligence-period,
.business-intelligence-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--btn-height-sm);
  padding: var(--btn-padding-sm);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--pill-radius);
  background: var(--color-white);
  color: var(--color-gray-600);
  font-family: var(--font-family);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  transition: all var(--transition-fast);
}

.business-intelligence-period:hover,
.business-intelligence-tab:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
  color: var(--color-gray-900);
}

.business-intelligence-period.active,
.business-intelligence-tab.active {
  background: var(--color-blue-light);
  border-color: var(--color-blue-mid);
  color: var(--color-blue);
}

#admin-view .business-intelligence-tabs {
  display: flex;
  align-items: flex-end;
  gap: 0;
  width: 100%;
  margin-top: 16px;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .business-intelligence-tab {
  min-height: 0;
  padding: 0 0 10px;
  margin: 0 24px 0 0;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: #6B7280;
  font-size: 14px;
  font-weight: 500;
}

#admin-view .business-intelligence-tab:last-child {
  margin-right: 0;
}

#admin-view .business-intelligence-tab:hover {
  background: transparent;
  border-color: transparent;
  color: #0F1E36;
}

#admin-view .business-intelligence-tab.active {
  background: transparent;
  border-bottom-color: #0F1E36;
  color: #0F1E36;
}

#admin-view .business-intelligence-panel-title-plain {
  color: #0F1E36;
  font-size: 16px;
  font-weight: 600;
}

#admin-view #biw-panel-insights .business-intelligence-ai-panel {
  margin-top: 20px;
}

#admin-view .dashboard-view-dropdown-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-height: 32px;
  padding: 6px 12px;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  background: #FFFFFF;
  color: #0F1E36;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  gap: 8px;
}

#admin-view .dashboard-view-dropdown-trigger:hover {
  background: #F8FAFC;
}

#admin-view .dashboard-view-dropdown-trigger-copy {
  color: #0F1E36;
}

#admin-view .dashboard-view-dropdown-chevron {
  color: #6B7280;
  font-size: 14px;
  line-height: 1;
}

#admin-view #biw-booking-heatmap {
  padding: 12px;
  border-radius: 8px;
  background: #FFFFFF;
}

#admin-view .business-intelligence-heatmap-chart {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .business-intelligence-heatmap-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
}

#admin-view .business-intelligence-heatmap-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

#admin-view .business-intelligence-heatmap-bars {
  width: 100%;
  height: 80px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

#admin-view .business-intelligence-heatmap-bar {
  width: 60%;
  display: block;
  border-radius: 999px 999px 0 0;
  min-height: 4px;
}

#admin-view .business-intelligence-heatmap-bar-completed {
  background: #16A34A;
}

#admin-view .business-intelligence-heatmap-bar-zero {
  background: #E2E8F0;
}

#admin-view .business-intelligence-heatmap-value {
  color: #0F1E36;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

#admin-view .business-intelligence-heatmap-day {
  color: #6B7280;
  font-size: 11px;
  text-align: center;
}

#admin-view .business-intelligence-heatmap-baseline {
  height: 1px;
  background: #E2E8F0;
}

#admin-view #biw-booking-trend {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .business-intelligence-trend-row {
  display: flex;
  align-items: center;
  gap: 6px;
}

#admin-view .business-intelligence-trend-label {
  color: #6B7280;
  font-size: 13px;
}

#admin-view .business-intelligence-trend-value {
  color: #0F1E36;
  font-size: 13px;
  font-weight: 600;
}

#admin-view .dashboard-view-dropdown-menu {
  position: fixed;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.10);
  min-width: 180px;
  z-index: 1000;
  padding: 4px 0;
}

#admin-view .dashboard-view-dropdown-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 14px;
  font-size: 13px;
  color: #0F1E36;
  text-align: left;
  background: transparent;
  border: 0;
  cursor: pointer;
}

#admin-view .dashboard-view-dropdown-item:hover {
  background: #F8FAFC;
}

#admin-view .dashboard-view-dropdown-indicator {
  width: 16px;
  min-width: 16px;
  color: #16A34A;
  font-weight: 600;
}

#admin-view .dashboard-view-dropdown-label {
  color: #0F1E36;
}

#admin-view .dashboard-view-dropdown-divider {
  height: 1px;
  margin: 4px 0;
  background: #E2E8F0;
}

#admin-view .dashboard-view-select-cache {
  display: none !important;
}

#admin-view .dashboard-shared-head-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  margin: 0 0 16px 0;
}

.business-intelligence-shell {
  gap: var(--space-5);
}

.business-intelligence-card,
.business-intelligence-panel,
.appointments-list-card,
.appointment-card,
.barber-management-shell,
.waitlist-tester-panel,
.account-grid > .admin-card {
  background: var(--card-bg);
  border: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
}

.appointments-list-card,
.appointment-card,
.business-intelligence-panel,
.barber-management-shell {
  padding: var(--card-padding);
}

.business-intelligence-panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.business-intelligence-kpi-grid,
.business-intelligence-grid-two,
.business-intelligence-opportunity-groups,
.business-intelligence-notification-groups {
  display: grid;
  gap: var(--space-4);
}

.business-intelligence-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.business-intelligence-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#admin-view #biw-panel-clients .business-intelligence-grid.business-intelligence-grid-two {
  margin-top: 16px;
}

#admin-view #biw-panel-clients > .admin-card.business-intelligence-card {
  margin-top: 16px;
}

#admin-view .business-intelligence-client-segments-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .business-intelligence-client-segments-total {
  color: #0F1E36;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 16px;
}

#admin-view .business-intelligence-client-segments-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view .business-intelligence-client-segment-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

#admin-view .business-intelligence-client-segment-label {
  color: #6B7280;
  font-size: 13px;
  width: 80px;
  flex-shrink: 0;
}

#admin-view .business-intelligence-client-segment-track {
  flex: 1;
  height: 6px;
  background: #F1F5F9;
  border-radius: 3px;
  overflow: hidden;
}

#admin-view .business-intelligence-client-segment-fill {
  display: block;
  height: 100%;
  border-radius: 3px;
}

#admin-view .business-intelligence-client-segment-fill-new {
  background: #2563EB;
}

#admin-view .business-intelligence-client-segment-fill-growth {
  background: #16A34A;
}

#admin-view .business-intelligence-client-segment-fill-risk {
  background: #D97706;
}

#admin-view .business-intelligence-client-segment-fill-vip {
  background: #DC2626;
}

#admin-view .business-intelligence-client-segment-value {
  color: #0F1E36;
  font-size: 13px;
  font-weight: 600;
  width: 28px;
  text-align: right;
  flex-shrink: 0;
}

#admin-view .business-intelligence-client-segment-percent {
  width: 40px;
  font-size: 12px;
  color: #9CA3AF;
  text-align: right;
  flex-shrink: 0;
}

#admin-view .business-intelligence-journey-flow {
  background: #F8FAFC;
  border-radius: 8px;
  padding: 16px;
  width: 100%;
  overflow: visible !important;
}

#admin-view .business-intelligence-journey-flow-track {
  display: flex;
  width: 100%;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 8px;
}

#admin-view .business-intelligence-journey-stage {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 14px;
  flex: 1 1 0;
  min-width: 90px !important;
  max-width: 120px !important;
  flex-shrink: 1 !important;
  overflow: hidden !important;
  border-top-width: 3px;
  border-top-style: solid;
  text-align: center;
  word-break: break-word !important;
}

#admin-view .business-intelligence-journey-stage-total {
  border-top-color: #D97706;
}

#admin-view .business-intelligence-journey-stage-returned {
  border-top-color: #86EFAC;
}

#admin-view .business-intelligence-journey-stage-regular {
  border-top-color: #16A34A;
}

#admin-view .business-intelligence-journey-stage-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #6B7280;
  margin-bottom: 4px;
  word-break: keep-all;
  white-space: normal;
  text-align: center;
}

#admin-view .business-intelligence-journey-stage-count {
  font-size: 24px;
  font-weight: 700;
  color: #0F1E36;
  word-break: keep-all;
  white-space: normal;
  text-align: center;
}

#admin-view .business-intelligence-journey-stage-meta {
  font-size: 11px;
  color: #16A34A;
  font-weight: 500;
  margin-top: 4px;
  word-break: keep-all;
  white-space: normal;
  text-align: center;
}

#admin-view .business-intelligence-journey-arrow-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  flex-shrink: 1 !important;
  min-width: 60px !important;
  max-width: 75px !important;
}

#admin-view .business-intelligence-journey-arrow {
  font-size: 20px;
  color: #9CA3AF;
  line-height: 1;
}

#admin-view .business-intelligence-journey-dropoff {
  font-size: 10px;
  color: #DC2626;
  text-align: center;
}

#admin-view .business-intelligence-journey-stats {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #E2E8F0;
  display: flex;
  align-items: center;
  gap: 12px;
}

#admin-view .business-intelligence-journey-stat {
  display: flex;
  align-items: center;
  gap: 6px;
}

#admin-view .business-intelligence-journey-stat-label {
  color: #6B7280;
  font-size: 13px;
}

#admin-view .business-intelligence-journey-stat-value {
  color: #0F1E36;
  font-weight: 600;
  font-size: 13px;
}

#admin-view .business-intelligence-journey-divider {
  width: 1px;
  height: 18px;
  background: #E2E8F0;
}

#admin-view .business-intelligence-client-opportunity-action {
  border: 1px solid #0F1E36;
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 500;
  color: #0F1E36;
  background: #FFFFFF;
  transition: all 0.15s ease;
  cursor: pointer;
}

#admin-view .business-intelligence-client-opportunity-action:hover {
  background: #0F1E36;
  color: #FFFFFF;
}

.business-intelligence-opportunity-groups,
.business-intelligence-notification-groups {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#admin-view .business-intelligence-opportunity-priority {
  margin-bottom: 20px;
}

#admin-view .business-intelligence-priority-banner {
  border-left: 4px solid #2563EB;
  background: #F8FAFC;
  border-radius: 8px;
  padding: 16px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

#admin-view .business-intelligence-priority-main {
  min-width: 0;
}

#admin-view .business-intelligence-priority-kicker {
  color: #2563EB;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}

#admin-view .business-intelligence-priority-title {
  color: #0F1E36;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 4px;
}

#admin-view .business-intelligence-priority-copy {
  color: #6B7280;
  font-size: 13px;
}

#admin-view .business-intelligence-priority-side {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

#admin-view .business-intelligence-priority-count {
  background: #DBEAFE;
  color: #2563EB;
  border-radius: 12px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 600;
}

#admin-view .business-intelligence-priority-action {
  background: #0F1E36;
  color: #FFFFFF;
  border: 0;
  border-radius: 6px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
}

#admin-view .business-intelligence-opportunity-summary {
  font-size: 12px;
  color: #6B7280;
  margin-bottom: 16px;
}

#admin-view .business-intelligence-opportunity-board {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
  align-items: start;
}

#admin-view .business-intelligence-opportunity-column {
  min-width: 0;
}

#admin-view .business-intelligence-opportunity-column-head {
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid #E2E8F0;
}

#admin-view .business-intelligence-opportunity-column-revenue .business-intelligence-opportunity-column-head {
  border-bottom-color: #2563EB;
}

#admin-view .business-intelligence-opportunity-column-retention .business-intelligence-opportunity-column-head {
  border-bottom-color: #16A34A;
}

#admin-view .business-intelligence-opportunity-column-operations .business-intelligence-opportunity-column-head {
  border-bottom-color: #D97706;
}

#admin-view .business-intelligence-opportunity-column-title {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

#admin-view .business-intelligence-opportunity-column-revenue .business-intelligence-opportunity-column-title {
  color: #2563EB;
}

#admin-view .business-intelligence-opportunity-column-retention .business-intelligence-opportunity-column-title {
  color: #16A34A;
}

#admin-view .business-intelligence-opportunity-column-operations .business-intelligence-opportunity-column-title {
  color: #D97706;
}

#admin-view .business-intelligence-opportunity-column-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .business-intelligence-opportunity-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  min-height: 148px;
}

#admin-view .business-intelligence-opportunity-card-title {
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .business-intelligence-opportunity-card-copy {
  font-size: 12px;
  color: #6B7280;
  line-height: 1.4;
}

#admin-view .business-intelligence-opportunity-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 4px;
}

#admin-view .business-intelligence-opportunity-pill {
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 600;
}

#admin-view .business-intelligence-opportunity-pill-revenue {
  background: #DBEAFE;
  color: #2563EB;
}

#admin-view .business-intelligence-opportunity-pill-retention {
  background: #DCFCE7;
  color: #16A34A;
}

#admin-view .business-intelligence-opportunity-pill-operations {
  background: #FEF3C7;
  color: #D97706;
}

#admin-view .business-intelligence-opportunity-action {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 5px 10px;
  font-size: 12px;
  color: #0F1E36;
  background: #FFFFFF;
  cursor: pointer;
}

#admin-view .business-intelligence-opportunity-action:hover {
  border-color: #2563EB;
  color: #2563EB;
}

#admin-view .business-intelligence-opportunity-empty-state {
  border: 1px dashed #E2E8F0;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
}

#admin-view .business-intelligence-opportunity-empty-icon {
  width: 12px;
  height: 7px;
  border-left: 2px solid #16A34A;
  border-bottom: 2px solid #16A34A;
  transform: rotate(-45deg);
  flex-shrink: 0;
  margin-top: -1px;
}

#admin-view .business-intelligence-opportunity-empty-text {
  color: #9CA3AF;
  font-size: 13px;
}

.business-intelligence-kpi-card,
.business-intelligence-staff-card {
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--space-4);
  text-align: left;
}

.business-intelligence-kpi-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  cursor: pointer;
  transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
}

.business-intelligence-kpi-card:hover {
  border-color: var(--color-gray-300);
  transform: translateY(-1px);
}

.business-intelligence-kpi-label,
.business-intelligence-staff-label,
.business-intelligence-panel-kicker,
.business-intelligence-card-title,
.business-intelligence-card-title-small {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
}

#admin-view .business-intelligence-service-revenue-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view .business-intelligence-service-revenue-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}

#admin-view .business-intelligence-service-revenue-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .business-intelligence-service-revenue-name {
  font-size: 14px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .business-intelligence-service-revenue-meta {
  font-size: 12px;
  color: #6B7280;
  margin-top: 2px;
}

#admin-view .business-intelligence-service-revenue-share {
  font-size: 11px;
  color: #9CA3AF;
  margin-top: 4px;
}

#admin-view .business-intelligence-service-revenue-total {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  white-space: nowrap;
  text-align: right;
}

#admin-view .business-intelligence-service-revenue-bar {
  height: 6px;
  border-radius: 3px;
  background: #F1F5F9;
  overflow: hidden;
}

#admin-view .business-intelligence-service-revenue-fill {
  height: 100%;
  border-radius: 3px;
  background: #16A34A;
}

#admin-view .business-intelligence-service-revenue-footer {
  border-top: 1px solid #E2E8F0;
  padding-top: 12px;
  margin-top: 2px;
}

#admin-view .business-intelligence-service-revenue-footer-label {
  font-size: 12px;
  color: #6B7280;
}

#admin-view #biw-service-revenue-chart .business-intelligence-empty {
  color: #9CA3AF;
  font-size: 13px;
  text-align: center;
}

#admin-view #biw-panel-revenue > .business-intelligence-kpi-grid {
  gap: 16px;
}

#admin-view #biw-panel-revenue > .business-intelligence-grid.business-intelligence-grid-two {
  align-items: flex-start;
  gap: 16px;
  margin-top: 16px;
}

#admin-view #biw-panel-revenue > .business-intelligence-grid.business-intelligence-grid-two > .business-intelligence-card {
  align-self: flex-start;
}

#admin-view #biw-panel-barbers > .business-intelligence-staff-strip,
#admin-view #biw-panel-barbers > .business-intelligence-grid.business-intelligence-grid-two {
  gap: 16px;
}

#admin-view #biw-panel-barbers > .business-intelligence-grid.business-intelligence-grid-two {
  margin-top: 16px;
  align-items: flex-start;
}

#admin-view #biw-panel-barbers > .business-intelligence-grid.business-intelligence-grid-two > .business-intelligence-card,
#admin-view #biw-panel-barbers > .business-intelligence-staff-strip > .business-intelligence-staff-card {
  padding: 16px;
}

#admin-view .business-intelligence-barber-performance-list {
  display: flex;
  flex-direction: column;
}

#admin-view .business-intelligence-barber-performance-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .business-intelligence-barber-performance-item:last-child {
  border-bottom: 0;
}

#admin-view .business-intelligence-barber-performance-avatar {
  width: 36px;
  min-width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 600;
  flex-shrink: 0;
}

#admin-view .business-intelligence-barber-performance-avatar-dark {
  background: #0F1E36;
  color: #FFFFFF;
}

#admin-view .business-intelligence-barber-performance-name-block {
  min-width: 110px;
}

#admin-view .business-intelligence-barber-performance-name-text {
  font-size: 14px;
  font-weight: 600;
  color: #0F1E36;
  min-width: 0;
}

#admin-view .business-intelligence-barber-performance-stats {
  display: flex;
  gap: 24px;
  align-items: center;
  margin-left: auto;
}

#admin-view .business-intelligence-barber-performance-stat {
  min-width: 70px !important;
  text-align: center;
}

#admin-view .business-intelligence-barber-performance-stat-value {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .business-intelligence-barber-performance-stat-value.is-amber {
  color: #D97706;
}

#admin-view .business-intelligence-barber-performance-stat-value.is-red {
  color: #DC2626;
}

#admin-view .business-intelligence-barber-performance-stat-value.is-muted {
  color: #9CA3AF;
}

#admin-view .business-intelligence-barber-performance-stat-label {
  margin-top: 2px;
  font-size: 11px;
  color: #9CA3AF;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap !important;
}

#admin-view #biw-panel-notifications > .business-intelligence-panel-head {
  margin-bottom: 20px;
}

#admin-view #biw-panel-notifications > .business-intelligence-panel-head .business-intelligence-panel-title {
  color: #0F1E36;
  font-size: 18px;
  font-weight: 700;
}

#admin-view #biw-panel-notifications > .business-intelligence-panel-head .business-intelligence-panel-subtitle {
  color: #6B7280;
  font-size: 13px;
}

#admin-view .business-intelligence-notification-center {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 0;
  overflow: hidden;
}

#admin-view .business-intelligence-notification-center > div {
  margin: 0;
  padding: 0;
}

#admin-view .business-intelligence-notification-section {
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0;
}

#admin-view .business-intelligence-notification-section + .business-intelligence-notification-section {
  border-top: none !important;
}

#admin-view .notif-section-wrapper,
#admin-view .notification-section,
#admin-view [class*="notif-section"],
#admin-view [class*="notification-group"],
#admin-view .business-intelligence-notification-center > .business-intelligence-notification-section {
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

#admin-view .business-intelligence-notification-section-head {
  background: #F8FAFC;
  padding: 12px 20px;
  border-bottom: 1px solid #E2E8F0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

#admin-view .business-intelligence-notification-section + .business-intelligence-notification-section .business-intelligence-notification-section-head {
  border-top: 1px solid #E2E8F0;
}

#admin-view .business-intelligence-notification-section-title {
  color: #0F1E36;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#admin-view .business-intelligence-notification-section-desc {
  color: #9CA3AF;
  font-size: 12px;
  text-align: right;
}

#admin-view .business-intelligence-notification-row {
  padding: 14px 20px;
  border-bottom: 1px solid #F1F5F9;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

#admin-view .business-intelligence-notification-row:last-child {
  border-bottom: 0;
}

#admin-view .business-intelligence-notification-row:hover {
  background: #F8FAFC;
}

#admin-view .business-intelligence-notification-row-master {
  background: #FFFBEB;
  border-left: 3px solid #D97706;
}

#admin-view .business-intelligence-notification-copy {
  min-width: 0;
  flex: 1;
}

#admin-view .business-intelligence-notification-name {
  font-size: 14px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .business-intelligence-notification-sub {
  font-size: 12px;
  color: #6B7280;
  margin-top: 2px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

#admin-view .business-intelligence-notification-tooltip {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid #9CA3AF;
  font-size: 10px;
  color: #9CA3AF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: default;
  flex-shrink: 0;
}

#admin-view #biw-panel-notifications .toggle {
  background: #D1D5DB;
  transition: background 0.2s ease;
}

#admin-view #biw-panel-notifications .toggle.on-green,
#admin-view #biw-panel-notifications .toggle[aria-checked="true"] {
  background: #16A34A;
}

#admin-view .business-intelligence-notification-pill {
  color: #6B7280;
  font-size: 12px;
  background: #F1F5F9;
  border-radius: 10px;
  padding: 3px 10px;
  white-space: nowrap;
}

#admin-view #biw-notification-alert {
  margin-top: 16px;
}

#admin-view .business-intelligence-notification-alert-card {
  background: #FEF3C7;
  border: 1px solid #FCD34D;
  border-radius: 8px;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

#admin-view .business-intelligence-notification-alert-copy {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

#admin-view .business-intelligence-notification-alert-icon {
  color: #D97706;
  font-size: 16px;
  line-height: 1;
  flex-shrink: 0;
}

#admin-view .business-intelligence-notification-alert-text {
  color: #92400E;
  font-size: 13px;
  font-weight: 500;
}

#admin-view .business-intelligence-notification-alert-action {
  background: #D97706;
  color: #FFFFFF;
  border: 0;
  border-radius: 6px;
  padding: 7px 14px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  flex-shrink: 0;
}

#admin-view #dashboard-recurring-series-reminders {
  margin: 16px 0 0;
}

#admin-view .recurring-series-reminders-stack {
  display: grid;
  gap: 12px;
}

#admin-view .recurring-series-reminder-card {
  background: #FFF7ED;
  border: 1px solid #FDBA74;
  border-radius: 12px;
  padding: 16px 18px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

#admin-view .recurring-series-reminder-copy {
  min-width: 0;
  display: grid;
  gap: 8px;
}

#admin-view .recurring-series-reminder-kicker {
  color: #C2410C;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#admin-view .recurring-series-reminder-title {
  color: #7C2D12;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

#admin-view .recurring-series-reminder-body {
  color: #9A3412;
  font-size: 13px;
  line-height: 1.55;
}

#admin-view .recurring-series-reminder-meta {
  color: #7C2D12;
  font-size: 12px;
  line-height: 1.5;
}

#admin-view .recurring-series-reminder-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

#admin-view .recurring-series-reminder-dismiss {
  color: #9A3412;
}

#admin-view .recurring-series-reminder-empty {
  color: #64748B;
  font-size: 13px;
}

#admin-view .business-intelligence-barber-heatmap {
  width: 100%;
}

#admin-view .business-intelligence-barber-heatmap-head,
#admin-view .business-intelligence-barber-heatmap-row {
  display: grid;
  grid-template-columns: 96px repeat(7, 34px);
  align-items: center;
  gap: 6px;
}

#admin-view .business-intelligence-barber-heatmap-head {
  margin-bottom: 8px;
}

#admin-view .business-intelligence-barber-heatmap-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

#admin-view .business-intelligence-barber-heatmap-day {
  font-size: 11px;
  color: #6B7280;
  text-align: center;
  padding-bottom: 8px;
}

#admin-view .business-intelligence-barber-heatmap-name {
  font-size: 12px;
  color: #0F1E36;
  font-weight: 500;
  padding-right: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .business-intelligence-barber-heatmap-cell {
  width: 34px;
  height: 34px;
  border-radius: 4px;
  border: 0;
  margin: 3px;
  padding: 0;
  cursor: default;
}

#admin-view .business-intelligence-chair-fee-wrap {
  width: 100%;
  overflow-x: auto;
}

#admin-view .business-intelligence-chair-fee-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

#admin-view .business-intelligence-chair-fee-table th,
#admin-view .business-intelligence-chair-fee-table td {
  overflow: visible;
}

#admin-view .business-intelligence-chair-fee-table th:nth-child(5),
#admin-view .business-intelligence-chair-fee-table td:nth-child(5) {
  width: 90px;
}

#admin-view .business-intelligence-chair-fee-next-due {
  width: 90px;
  min-width: 90px;
  white-space: nowrap;
}

#admin-view .business-intelligence-barber-heatmap-cell-zero {
  background: #F1F5F9;
}

#admin-view .business-intelligence-barber-heatmap-cell-soft {
  background: #DCFCE7;
}

#admin-view .business-intelligence-barber-heatmap-cell-light {
  background: #86EFAC;
}

#admin-view .business-intelligence-barber-heatmap-cell-mid {
  background: #16A34A;
}

#admin-view .business-intelligence-barber-heatmap-cell-dark {
  background: #166534;
}

.business-intelligence-kpi-value,
.business-intelligence-staff-value {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  line-height: 1;
  color: var(--color-gray-900);
}

.business-intelligence-kpi-sub,
.business-intelligence-panel-note,
.business-intelligence-card-subtitle,
.business-intelligence-panel-subtitle {
  font-size: var(--font-size-sm);
  color: var(--color-gray-500);
}

.business-intelligence-panel-head,
.business-intelligence-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
}

.business-intelligence-panel-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
  line-height: var(--line-height-tight);
}

.business-intelligence-divider {
  height: 1px;
  background: var(--color-gray-200);
  margin: var(--space-3) 0;
}

.business-intelligence-staff-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
}

.appointment-card-actions,
.admin-row-actions,
.barber-management-actions {
  display: flex;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.schedule-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-2);
  flex-wrap: nowrap;
  position: relative;
}

.appointment-more-menu {
  position: relative;
}

.appointment-more-menu summary {
  list-style: none;
}

.appointment-more-menu summary::-webkit-details-marker {
  display: none;
}

.appointment-more-dropdown {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  min-width: 176px;
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  padding: 4px 0;
  z-index: 40;
}

.action-overflow-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  background: white;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  min-width: 160px;
  z-index: 100;
  display: none;
}

.appointment-more-menu[open] .action-overflow-dropdown,
.action-overflow-dropdown.open {
  display: block;
}

.appointment-more-item {
  display: block;
  width: 100%;
  padding: 8px 14px;
  font-size: 13px;
  color: #374151;
  text-align: left;
  border: 0;
  background: none;
  cursor: pointer;
  text-decoration: none;
}

.appointment-more-item:hover {
  background: var(--color-gray-50);
}

.schedule-shell {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.schedule-workspace-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 2px 2px 0;
}

.schedule-workspace-head-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  color: #0F1E36;
}

.schedule-workspace-head-copy {
  font-size: 0.92rem;
  line-height: 1.45;
  color: #64748B;
  max-width: 720px;
}

.schedule-workspace-frame {
  border: 1px solid rgba(15, 30, 54, 0.08);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: 0 18px 40px rgba(15, 30, 54, 0.08);
  padding: 10px;
}

.schedule-workspace {
  display: grid;
  grid-template-columns: minmax(176px, 192px) minmax(0, 2.35fr) minmax(228px, 252px);
  gap: 10px;
  align-items: stretch;
}

.schedule-zone {
  min-width: 0;
}

.schedule-zone-left,
.schedule-zone-center,
.schedule-zone-right {
  display: flex;
  flex-direction: column;
  align-self: stretch;
}

.schedule-zone-left,
.schedule-zone-right {
  position: sticky;
  top: calc(var(--admin-shell-topbar-height) + 22px);
}

.schedule-ops-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.schedule-zone-left .schedule-ops-strip {
  grid-template-columns: minmax(0, 1fr);
}

.schedule-zone-center {
  min-width: 0;
  gap: 10px;
}

.schedule-zone-center .schedule-table-card {
  width: 100%;
  flex: 1 1 auto;
}

.schedule-status-rail,
.schedule-context-rail {
  overflow: hidden;
  padding: 0;
  flex: 1 1 auto;
}

.schedule-actions-bar {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-2);
}

.schedule-context-panel {
  overflow: hidden;
}

.schedule-day-summary-panel {
  background: #FFFFFF;
}

#admin-view .schedule-status-rail .admin-table-header,
#admin-view .schedule-context-rail .admin-table-header {
  background: #FFFFFF;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .schedule-status-rail .schedule-ops-strip {
  padding: 14px;
}

.schedule-ops-card {
  padding: 12px;
  box-shadow: none !important;
}

.schedule-today-card {
  margin: 0 !important;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

#admin-view .schedule-today-card .admin-card-header {
  padding: 16px 18px 14px;
}

#admin-view .schedule-today-card .admin-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 460px;
}

#admin-view #atab-schedule .schedule-ops-card {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.92) 0%, rgba(255, 255, 255, 1) 100%);
  box-shadow: 0 10px 24px rgba(15, 30, 54, 0.06);
}

#admin-view #atab-schedule .schedule-ops-strip > .schedule-ops-card:nth-child(1) {
  border-left: 3px solid #16A34A !important;
}

#admin-view #atab-schedule .schedule-ops-strip > .schedule-ops-card:nth-child(2) {
  border-left: 3px solid #2563EB !important;
}

#admin-view #atab-schedule .schedule-ops-strip > .schedule-ops-card:nth-child(3) {
  border-left: 3px solid #D97706 !important;
}

.schedule-ops-value {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
  line-height: var(--line-height-tight);
}

#admin-view .schedule-ops-value-on-time {
  color: #16A34A !important;
}

.schedule-ops-meta,
.today-late-flag {
  font-size: var(--font-size-sm);
}

.schedule-ops-meta {
  color: var(--color-gray-500);
}

#admin-view #schedule-running-late-meta {
  color: #9CA3AF !important;
}

#admin-view .today-schedule-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  background: #FFFFFF;
  padding: 14px;
}

#admin-view .today-schedule-footer-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 14px 13px;
  border: 1px solid #E2E8F0;
  border-right: none;
  font-size: var(--font-size-sm);
  color: var(--color-gray-600);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.92) 0%, rgba(255, 255, 255, 1) 100%);
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(15, 30, 54, 0.06);
}

#admin-view .today-schedule-footer-item:first-child {
  border-top: 1px solid #E2E8F0;
}

#admin-view .today-schedule-footer-item strong {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: #64748B !important;
}

#admin-view .schedule-day-summary-panel .today-schedule-footer-item:nth-child(1) {
  border-left: 3px solid #16A34A;
}

#admin-view .schedule-day-summary-panel .today-schedule-footer-item:nth-child(2) {
  border-left: 3px solid #2563EB;
}

#admin-view .schedule-day-summary-panel .today-schedule-footer-item:nth-child(3) {
  border-left: 3px solid #D97706;
}

#admin-view .schedule-day-summary-panel .today-schedule-footer-item:nth-child(4) {
  border-left: 3px solid #DC2626;
}

#admin-view .today-schedule-footer-item span,
#admin-view .today-schedule-footer-item b,
#admin-view .today-schedule-footer-item .stat-value,
#admin-view .today-schedule-footer-item .schedule-footer-value {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  line-height: 1.2;
  color: #0F1E36;
}

.customer-link {
  color: var(--color-gray-900);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
}

.customer-link:hover {
  color: var(--color-blue);
}

#admin-view .schedule-today-list,
#admin-view .schedule-upcoming-list {
  display: flex;
  flex-direction: column;
}

#admin-view .schedule-today-list {
  flex: 1 1 auto;
  min-height: 0;
}

#admin-view .schedule-timeline-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid #F1F5F9;
}

#admin-view .schedule-timeline-row:hover,
#admin-view .schedule-upcoming-row:hover {
  background: #F8FAFC;
  cursor: pointer;
}

#admin-view .schedule-timeline-row:last-child {
  border-bottom: 0;
}

#admin-view .schedule-timeline-time {
  width: 70px;
  min-width: 70px;
}

#admin-view .schedule-timeline-time-main {
  font-size: 0.875rem;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .schedule-timeline-time-sub {
  margin-top: 2px;
  font-size: 11px;
  color: #9CA3AF;
}

#admin-view .schedule-timeline-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view .schedule-timeline-main {
  min-width: 0;
  flex: 1;
}

#admin-view .schedule-timeline-top {
  display: flex;
  align-items: center;
  gap: 8px;
}

#admin-view .schedule-timeline-client {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .schedule-timeline-sub {
  margin-top: 2px;
  font-size: 0.8125rem;
  font-weight: 400;
  color: #64748B;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

#admin-view .schedule-timeline-late {
  color: #D97706;
  font-weight: 600;
}

#admin-view .schedule-timeline-status {
  flex-shrink: 0;
}

#admin-view .schedule-timeline-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
}

#admin-view .schedule-timeline-action {
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
}

#admin-view .schedule-timeline-action-done {
  background: #0F1E36;
  color: #FFFFFF;
  border: 1px solid #0F1E36;
}

#admin-view .schedule-timeline-action-no-show {
  background: transparent;
  color: #DC2626;
  border: 1px solid #DC2626;
}

#admin-view .schedule-timeline-action-more {
  background: transparent;
  color: #0F1E36;
  border: 1px solid #E2E8F0;
  list-style: none;
}

#admin-view .schedule-timeline-action-more::-webkit-details-marker {
  display: none;
}

#admin-view .schedule-timeline-actions .appointment-more-menu {
  margin: 0;
}

#admin-view .schedule-link-button {
  border-radius: 6px;
  padding: 7px 14px;
  font-size: 13px;
  cursor: pointer;
  width: 100%;
  justify-content: center;
  text-align: center;
}

#admin-view .schedule-link-button-primary {
  border: 1px solid #0F1E36;
  color: #0F1E36;
  background: transparent;
}

#admin-view .schedule-link-button-secondary {
  border: 0;
  background: transparent;
  color: #2563EB;
}

#admin-view .schedule-link-button-secondary:hover {
  text-decoration: underline;
}

#admin-view .schedule-upcoming-card {
  overflow: hidden;
}

#admin-view .schedule-context-panel {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}

#admin-view .schedule-context-panel .schedule-upcoming-list {
  flex: 1 1 auto;
}

#admin-view .schedule-center-upcoming-card {
  overflow: hidden;
}

#admin-view .schedule-center-upcoming-card[hidden] {
  display: none !important;
}

#admin-view .schedule-upcoming-group {
  border-top: 1px solid #E2E8F0;
}

#admin-view .schedule-upcoming-group:first-child {
  border-top: 0;
}

#admin-view .schedule-upcoming-group-head {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0F1E36;
  padding: 12px 0 6px 0;
  border-bottom: 1px solid #F1F5F9;
  margin-bottom: 4px;
  background: transparent;
}

#admin-view .schedule-upcoming-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-top: 1px solid #F1F5F9;
}

#admin-view .schedule-upcoming-time {
  width: 70px;
  min-width: 70px;
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .schedule-upcoming-main {
  min-width: 0;
  flex: 1;
}

#admin-view .schedule-upcoming-client {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .schedule-upcoming-sub {
  margin-top: 2px;
  font-size: 0.8125rem;
  font-weight: 400;
  color: #64748B;
}

#admin-view .schedule-upcoming-status {
  flex-shrink: 0;
}

#admin-view .schedule-status-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

#admin-view .schedule-status-badge-confirmed {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view .schedule-status-badge-pending {
  background: #FFFBEB;
  color: #D97706;
  border: 1px solid #FDE68A;
}

#admin-view .schedule-status-badge-cancelled,
#admin-view .schedule-status-badge-no-show {
  background: #FEF2F2;
  color: #DC2626;
  border: 1px solid #FECACA;
}

#admin-view .schedule-status-badge-completed {
  background: #F1F5F9;
  color: #475569;
  border: 1px solid #CBD5E1;
}

#admin-view .schedule-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 180px;
  padding: 22px 18px;
  border: 1px dashed #CBD5E1;
  border-radius: 14px;
  margin: 12px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
  text-align: center;
  color: #64748B;
}

@media (max-width: 1320px) {
  .schedule-workspace-frame {
    padding: 10px;
  }

  .schedule-workspace {
    grid-template-columns: minmax(170px, 188px) minmax(0, 1.7fr);
  }

  .schedule-zone-right {
    position: static;
    grid-column: 1 / -1;
  }

  .schedule-actions-bar {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }

  .schedule-day-summary-panel .today-schedule-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .schedule-day-summary-panel .today-schedule-footer-item {
    border: 1px solid #E2E8F0;
  }

  .schedule-day-summary-panel .today-schedule-footer-item:nth-child(-n+2) {
    border-top: 1px solid #E2E8F0;
  }

  .schedule-day-summary-panel .today-schedule-footer-item:nth-child(2n) {
    border-right: none;
  }

  #admin-view .schedule-today-card .admin-card-body {
    min-height: 460px;
  }
}

@media (max-width: 980px) {
  .schedule-workspace-frame {
    padding: 12px;
  }

  .schedule-workspace-head {
    gap: 6px;
  }

  .schedule-workspace-head-title {
    font-size: 1.125rem;
  }

  .schedule-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .schedule-zone-left,
  .schedule-zone-right {
    position: static;
  }

  .schedule-zone-center {
    gap: 12px;
  }

  .schedule-ops-strip {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view .schedule-today-card .admin-card-body {
    min-height: 0;
  }

  #admin-view .schedule-empty-state {
    min-height: 220px;
    margin: 14px;
  }

  .schedule-day-summary-panel .today-schedule-footer {
    grid-template-columns: minmax(0, 1fr);
  }

  .schedule-day-summary-panel .today-schedule-footer-item {
    border-right: none;
  }
}

.today-late-flag {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: var(--pill-radius);
  background: var(--color-red-light);
  color: var(--color-red);
  font-weight: var(--font-weight-medium);
}

/* ============================================================
   INTELLIGENCE DASHBOARD
   ============================================================ */

#admin-view .intel-dashboard {
  background: var(--page-bg);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding-bottom: var(--space-6);
  color: var(--color-gray-700);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
}

#admin-view .intel-dashboard .intel-dashboard-row,
#admin-view .intel-dashboard .intel-grid {
  display: grid;
  gap: var(--space-4);
}

#admin-view .intel-dashboard .intel-dashboard-row--split {
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 1fr);
}

#admin-view .intel-dashboard .intel-dashboard-row--asymmetric {
  grid-template-columns: minmax(0, 55%) minmax(0, 44%);
  gap: 16px;
}

#admin-view .intel-dashboard .intel-dashboard-row--triple {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#admin-view .intel-dashboard .intel-dashboard-row--actions .intel-actions-card {
  width: 100%;
}

#admin-view .intel-dashboard .intel-health-bar {
  display: flex;
  gap: 16px;
  margin-bottom: 20px;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
  padding: 0 !important;
  min-height: unset !important;
  background: transparent;
}

#admin-view .intel-dashboard .intel-health-tile {
  flex: 1;
  min-width: 0;
  padding: 16px 20px;
  background: var(--card-bg);
  color: var(--color-gray-900);
  border: var(--card-border);
  border-left: 6px solid var(--color-green);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
}

#admin-view .intel-dashboard .intel-health-tile:last-child {
  border-right: none;
}

#admin-view .intel-dashboard .intel-health-tile:nth-child(1) {
  border-left-color: var(--color-red);
}

#admin-view .intel-dashboard .intel-health-tile:nth-child(2) {
  border-left-color: var(--color-green);
}

#admin-view .intel-dashboard .intel-health-tile:nth-child(3) {
  border-left-color: var(--color-amber);
}

#admin-view .intel-dashboard .intel-health-tile:nth-child(4) {
  border-left-color: var(--color-blue);
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--healthy {
  border-left-color: #16A34A;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--watch {
  border-left-color: #D97706;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--orange {
  border-left-color: #EA580C;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--danger {
  border-left-color: #DC2626;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--neutral {
  border-left-color: var(--color-gray-300);
}

#admin-view .intel-dashboard .intelligence-status-label,
#admin-view .intel-dashboard .intel-health-tile .intelligence-status-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #64748B;
  margin-bottom: 4px;
}

#admin-view .intel-dashboard .intelligence-status-value,
#admin-view .intel-dashboard .intel-health-tile .intelligence-status-value {
  font-size: 28px;
  font-weight: 700;
  color: #0F172A;
  line-height: 1;
  margin-bottom: 4px;
}

#admin-view .intel-dashboard .intelligence-status-sub,
#admin-view .intel-dashboard .intel-health-tile .intelligence-status-sub {
  font-size: 11px;
  font-weight: 500;
  color: #64748B;
  margin-top: 0 !important;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--healthy .intelligence-status-sub {
  color: #16A34A;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--watch .intelligence-status-sub {
  color: #D97706;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--orange .intelligence-status-sub {
  color: #EA580C;
}

#admin-view .intel-dashboard .intel-health-tile.intel-health-tile--danger .intelligence-status-sub {
  color: #DC2626;
}

.intel-stat-row {
  display: flex;
  gap: 16px;
  margin-bottom: 20px;
}

.intel-stat-card {
  flex: 1;
  padding: 16px 20px;
  min-width: 0;
}

.intel-stat-value {
  font-size: 28px;
  font-weight: 700;
  color: #0F172A;
  line-height: 1;
  margin-bottom: 4px;
}

.intel-stat-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #64748B;
  margin-bottom: 4px;
}

.intel-stat-status {
  font-size: 11px;
  font-weight: 500;
}

#admin-view .intel-dashboard .intel-card,
#admin-view .intel-dashboard .intelligence-section-card {
  background: var(--card-bg);
  border: var(--card-border);
  border-left-width: var(--space-1);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
}

#admin-view .intel-dashboard .intel-card--healthy {
  border-left-color: var(--color-green);
}

#admin-view .intel-dashboard .intel-card--watch {
  border-left-color: var(--color-amber);
}

#admin-view .intel-dashboard .intel-card--danger {
  border-left-color: var(--color-red);
}

#admin-view .intel-dashboard .intel-card--orange {
  border-left-color: #EA580C;
}

#admin-view .intel-dashboard .intel-card--neutral {
  border-left-color: var(--color-gray-300);
}

#admin-view .intel-dashboard .intelligence-module-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

#admin-view .intel-dashboard .intelligence-section-title {
  color: var(--color-gray-900);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
}

#admin-view .intel-dashboard .intelligence-module-meta,
#admin-view .intel-dashboard .intel-client-snapshot-foot,
#admin-view .intel-dashboard .intelligence-client-value-stat-subtext,
#admin-view .intel-dashboard .intel-action-sub,
#admin-view .intel-dashboard .intel-demand-kicker,
#admin-view .intel-dashboard .intel-nudge-row-meta {
  color: var(--color-gray-500);
  font-size: var(--font-size-xs);
}

#admin-view .intel-dashboard .intelligence-module-gear,
#admin-view .intel-dashboard .intel-collapsible-toggle {
  width: var(--space-8);
  height: var(--space-8);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--pill-radius);
  background: var(--color-white);
  color: var(--color-gray-400);
  box-shadow: none;
}

#admin-view .intel-dashboard .intel-collapsible-toggle--subtle,
#admin-view .intel-dashboard .intel-inline-link,
#admin-view .intel-dashboard .intelligence-demand-link,
#admin-view .intel-dashboard .intelligence-pro-automations-link,
#admin-view .intel-dashboard .intelligence-client-value-link {
  border: none;
  background: none;
  color: var(--color-intelligence);
  padding: 0;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
}

#admin-view .intel-dashboard .intel-actions-list {
  display: grid;
  gap: var(--space-3);
}

#admin-view .intel-dashboard .intel-action-row {
  padding: var(--space-4);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
  background: var(--color-white);
}

#admin-view .intel-dashboard .intel-automation-legend {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin: -4px 0 12px;
  color: #6B7280;
  font-size: 12px;
}

#admin-view .intel-dashboard .intel-automation-legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #16A34A;
  flex: 0 0 8px;
}

#admin-view .intel-dashboard .intel-action-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
}

#admin-view .intel-dashboard .intel-action-title {
  color: var(--color-gray-900);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
}

#admin-view .intel-dashboard .intel-action-btn {
  min-height: var(--btn-height-sm);
  padding: var(--btn-padding-sm);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--btn-radius);
  background: var(--color-white);
  color: var(--color-gray-700);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
}

#admin-view .blocked-page-head {
  margin-bottom: 20px;
}

#admin-view .blocked-page-head__actions {
  display: none;
  margin-left: auto;
}

#admin-view .blocked-modal-close {
  display: none;
  align-items: center;
  justify-content: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 10px;
  font-size: 1.35rem;
  line-height: 1;
}

#admin-view .blocked-modal-backdrop {
  display: none;
}

#admin-view .blocked-modal-shell {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

#admin-view .blocked-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 20px;
  box-shadow: none;
}

#admin-view .blocked-card .admin-card-header {
  margin-bottom: 12px;
}

#admin-view .blocked-runtime-status[hidden] {
  display: none !important;
}

#admin-view .blocked-section-label {
  font-size: 0.6875rem;
  font-weight: 600;
  color: #64748B;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
  margin-bottom: 12px;
}

#admin-view .blocked-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

#admin-view .blocked-form-row-single {
  grid-template-columns: 1fr;
}

#admin-view .blocked-recurring-panel {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid #DBEAFE;
  border-radius: 10px;
  background: #F8FBFF;
}

#admin-view .blocked-recurring-note {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
  color: #B45309;
}

#admin-view .blocked-recurring-summary {
  font-size: 12px;
  line-height: 1.5;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-form-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#admin-view .blocked-form-label {
  font-size: 10px;
  font-weight: 700;
  color: #94A3B8;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view .blocked-form-field input,
#admin-view .blocked-form-field select,
#admin-view .blocked-form-field textarea {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 8px 10px;
  font-size: 13px;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  background: #FFFFFF;
  outline: none;
  width: 100%;
}

#admin-view .blocked-form-field input:focus,
#admin-view .blocked-form-field select:focus {
  border-color: #2563EB;
}

#admin-view .blocked-add-btn,
#admin-view button[onclick*="addFullDayBlock"],
#admin-view button[onclick*="addTimeBlock"],
#admin-view button[onclick*="BlockedDate"],
#admin-view button[onclick*="blockedDate"],
#admin-view #add-full-day-block-btn,
#admin-view #add-time-block-btn {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 9px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
  width: 100% !important;
  text-transform: none !important;
}

#admin-view .blocked-add-btn:hover,
#admin-view button[onclick*="addFullDayBlock"]:hover,
#admin-view button[onclick*="addTimeBlock"]:hover {
  background: #1a3050 !important;
}

#admin-view .blocked-list-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: #FFFFFF;
  margin-bottom: 8px;
  gap: 12px;
}

#admin-view .blocked-list-card:last-child {
  margin-bottom: 0;
}

#admin-view .blocked-list-card-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
  min-width: 0;
}

#admin-view .blocked-list-date {
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-list-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

#admin-view .blocked-list-scope {
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-list-reason {
  font-size: 12px;
  color: #94A3B8;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-list-reason::before {
  content: '\00B7';
  margin-right: 6px;
}

#admin-view .blocked-local-badge {
  display: inline-flex;
  align-items: center;
  background: #FFFBEB;
  color: #D97706;
  border: 1px solid #FDE68A;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .04em;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-saved-badge {
  display: inline-flex;
  align-items: center;
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .04em;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-recurring-badge {
  display: inline-flex;
  align-items: center;
  background: #EFF6FF;
  color: #1D4ED8;
  border: 1px solid #BFDBFE;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .04em;
  font-family: Inter, sans-serif;
}

#admin-view .blocked-remove-btn {
  flex-shrink: 0;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 5px 12px;
  background: #FFFFFF;
  color: #0F1E36;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  font-family: Inter, sans-serif;
  white-space: nowrap;
  transition: background .15s, color .15s, border-color .15s;
}

#admin-view .blocked-remove-btn:hover {
  background: #FEF2F2;
  color: #DC2626;
  border-color: #FECACA;
}

@keyframes card-highlight-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(22,163,74,0.5);
    border-color: #16A34A;
  }
  40% {
    box-shadow: 0 0 0 8px rgba(22,163,74,0.15);
    border-color: #16A34A;
  }
  100% {
    box-shadow: 0 0 0 0 rgba(22,163,74,0);
    border-color: #16A34A;
  }
}

#admin-view .card-highlighted {
  animation: card-highlight-pulse 1.2s ease forwards;
  animation-iteration-count: 2;
  border-color: #16A34A !important;
}

#admin-view .card-highlighted-strong {
  border-left: 4px solid #16A34A !important;
  background: #DCFCE7 !important;
  transition: background 600ms ease, border-left-color 600ms ease, border-color 600ms ease;
}

#admin-view .card-highlighted-strong.is-fading {
  background: #FFFFFF !important;
  border-left-color: transparent !important;
}

#admin-view .card-here-indicator {
  font-size: 10px;
  color: #16A34A;
  font-weight: 500;
  margin-left: 8px;
  animation: card-indicator-fade-in 0.3s ease;
}

@keyframes card-indicator-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

#admin-view .intel-dashboard .intel-all-clear {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-gray-200);
  border-left: var(--space-1) solid var(--color-green);
  border-radius: var(--card-radius);
}

#admin-view .intel-dashboard .intel-demand-bars {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--space-2);
  align-items: end;
  min-height: calc(var(--space-12) * 3);
  padding: var(--space-3);
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
}

#admin-view .intel-dashboard .intel-demand-bar-track {
  height: 100px;
  background: var(--color-gray-100);
  border-radius: var(--pill-radius);
  display: flex;
  align-items: end;
  overflow: hidden;
}

#admin-view .intel-dashboard .intel-demand-bar-fill {
  width: 100%;
  min-height: 20px;
  border-radius: 12px 12px 0 0;
}

#admin-view .intel-dashboard .intel-demand-bar-fill--strong {
  background: var(--color-blue);
}

#admin-view .intel-dashboard .intel-demand-bar-fill--steady {
  background: var(--color-blue-mid);
}

#admin-view .intel-dashboard .intel-demand-bar-fill--soft {
  background: var(--color-blue-light);
}

#admin-view .intel-dashboard .intel-demand-bar-label,
#admin-view .intel-dashboard .intel-demand-summary-label,
#admin-view .intel-dashboard .intel-client-snapshot-label,
#admin-view .intel-dashboard .intelligence-client-value-stat-label,
#admin-view .intel-dashboard .intelligence-schedule-fit-score-label,
#admin-view .intel-dashboard .intelligence-schedule-fit-component-label {
  color: var(--color-gray-500);
  font-size: var(--font-size-xs);
}

#admin-view .intel-dashboard .intel-demand-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  margin-top: var(--space-3);
}

#admin-view .intel-dashboard .intel-demand-summary-item,
#admin-view .intel-dashboard .intelligence-client-value-stat,
#admin-view .intel-dashboard .intel-client-snapshot-stat {
  padding: var(--space-3);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
  background: var(--color-white);
}

#admin-view .intel-dashboard .intel-primary-name,
#admin-view .intel-dashboard .intelligence-client-value-stat-value,
#admin-view .intel-dashboard .intel-client-snapshot-value,
#admin-view .intel-dashboard .intelligence-schedule-fit-score-number {
  margin-top: var(--space-2);
  color: var(--color-gray-900);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
}

#admin-view .intel-dashboard .intel-primary-meta,
#admin-view .intel-dashboard .intelligence-client-value-stat-subtext {
  margin-top: var(--space-2);
  color: var(--color-gray-500);
  font-size: var(--font-size-sm);
}

#admin-view .intel-dashboard .intelligence-rescue-opener,
#admin-view .intel-dashboard .intelligence-priority-callout,
#admin-view .intel-dashboard .intelligence-noshow-empty-good {
  margin-top: var(--space-3);
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-left: var(--space-1) solid var(--color-green);
  border-radius: var(--card-radius);
}

#admin-view .intel-dashboard .intelligence-rescue-opener,
#admin-view .intel-dashboard .intelligence-priority-callout {
  padding: 12px;
}

#admin-view .intel-dashboard .intelligence-priority-callout {
  background: var(--color-intelligence-light);
  border-left-width: 3px;
}

#admin-view .intel-dashboard .intel-nudge-row-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
}

#admin-view .intel-dashboard .intel-nudge-row-main {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

#admin-view .intel-dashboard .intel-nudge-row-label {
  color: var(--color-gray-900);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
}

#admin-view .intel-dashboard .intelligence-schedule-fit-top {
  display: grid;
  grid-template-columns: minmax(180px, 220px) 1fr;
  gap: var(--space-4);
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-block {
  padding: var(--space-4);
  border: 1px solid var(--color-gray-200);
  border-left: 6px solid var(--color-gray-300);
  border-radius: var(--card-radius);
  background: var(--color-white);
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-green {
  border-left-color: #16A34A;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-amber {
  border-left-color: #D97706;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-orange {
  border-left-color: #EA580C;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-red {
  border-left-color: #DC2626;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-green .intelligence-schedule-fit-score-number {
  color: #16A34A;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-amber .intelligence-schedule-fit-score-number {
  color: #D97706;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-orange .intelligence-schedule-fit-score-number {
  color: #EA580C;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-score-red .intelligence-schedule-fit-score-number {
  color: #DC2626;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: var(--color-gray-100);
  overflow: hidden;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress-fill {
  height: 100%;
  border-radius: 999px;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress-green {
  background: #16A34A;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress-amber {
  background: #D97706;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress-orange {
  background: #EA580C;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-progress-red {
  background: #DC2626;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-component-row.is-warning .intelligence-schedule-fit-component-value {
  color: #EA580C;
}

#admin-view .intel-dashboard .intelligence-schedule-fit-component-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

#admin-view .intel-dashboard .intelligence-schedule-fit-component-value {
  margin-left: auto;
  text-align: right;
}

#admin-view .intel-dashboard .intelligence-pro-automations-table-shell,
#admin-view .intel-dashboard .intelligence-client-value-table-shell {
  border: 1px solid var(--color-gray-200);
  border-radius: var(--card-radius);
  overflow: hidden;
  background: var(--color-white);
}

#admin-view .intel-dashboard .intelligence-panel-icon,
#admin-view .intel-dashboard .intelligence-module-badge-pro {
  color: var(--color-intelligence);
}

#admin-view .intel-dashboard .intelligence-panel-logo {
  height: 20px !important;
  width: auto !important;
  max-height: 20px !important;
  max-width: 40px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  margin-right: 8px !important;
  flex-shrink: 0 !important;
}

#admin-view .intel-dashboard .intelligence-panel-title-group {
  display: inline-flex;
  align-items: flex-start;
}

#atab-intelligence .intelligence-panel-title-group,
#atab-intelligence .intelligence-panel-title-row,
#atab-intelligence .intelligence-panel-header {
  align-items: flex-start;
}

#atab-intelligence .intelligence-panel-header {
  display: flex;
  justify-content: flex-start;
}

#atab-intelligence .intel-page-tabs {
  display: flex;
  align-items: flex-end;
  gap: 0;
  border-bottom: 1px solid #E2E8F0;
  margin: 16px 0 20px;
  padding-bottom: 0;
  width: 100%;
}

#atab-intelligence .intel-page-tab {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: #6B7280;
  cursor: pointer;
  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  margin: 0 24px 0 0;
  padding: 0 0 10px;
}

#atab-intelligence .intel-page-tab:last-child {
  margin-right: 0;
}

#atab-intelligence .intel-page-tab:hover {
  background: transparent;
  border-color: transparent;
  color: #0F1E36;
}

#atab-intelligence .intel-page-tab.active {
  background: transparent;
  border-bottom-color: #0F1E36;
  color: #0F1E36;
  font-weight: 500;
}

#atab-intelligence .intelligence-upsell-panel {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 24px;
  border: 1px solid #DBEAFE;
  border-radius: 20px;
  background:
    radial-gradient(circle at top right, rgba(22, 163, 74, 0.10), transparent 38%),
    linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  box-shadow: 0 20px 45px rgba(15, 30, 54, 0.08);
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] {
  gap: 12px;
  padding: 16px 18px;
  border-radius: 16px;
  border-color: rgba(148, 163, 184, 0.24);
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.98) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

#atab-intelligence .intelligence-active-panel {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-upsell-panel {
  border-color: #BBF7D0;
  background:
    radial-gradient(circle at top right, rgba(34, 197, 94, 0.14), transparent 40%),
    linear-gradient(180deg, #F6FFF8 0%, #FFFFFF 100%);
}

#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-upsell-panel[data-upsell-mode="inline"] {
  border-color: rgba(34, 197, 94, 0.22);
  background:
    linear-gradient(180deg, rgba(246, 255, 248, 0.98) 0%, rgba(255, 255, 255, 0.98) 100%);
}

#atab-intelligence .intelligence-section-card.has-intelligence-gate,
#atab-intelligence .intelligence-preview-card {
  position: relative;
  overflow: hidden;
}

#atab-intelligence .intelligence-gate-overlay,
#atab-intelligence .intelligence-preview-overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 22px;
  border-radius: inherit;
  background: rgba(248, 250, 252, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

#atab-intelligence .intelligence-gate-inner {
  width: min(100%, 360px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 36px rgba(15, 23, 42, 0.12);
}

#atab-intelligence .intelligence-gate-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(241, 245, 249, 0.92);
  color: #475569;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

#atab-intelligence .intelligence-gate-badge[data-tone="green"] {
  background: rgba(220, 252, 231, 0.82);
  border-color: rgba(134, 239, 172, 0.6);
  color: #166534;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-inner,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-inner {
  width: auto;
  max-width: min(100%, 420px);
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    'badge cta'
    'title cta'
    'desc cta';
  align-items: center;
  gap: 6px 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-badge,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-badge,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-lock-copy .intel-pill,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-lock-copy .intel-pill {
  opacity: 0.62;
  filter: saturate(0.55);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-badge,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-badge-pro,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-badge,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-badge-pro,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-auto-badge,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-auto-badge {
  background: rgba(226, 232, 240, 0.9);
  color: #64748B;
  border-color: rgba(148, 163, 184, 0.35);
  opacity: 0.72;
  filter: saturate(0.4);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-dot-live,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-dot-live {
  background: #CBD5E1;
  border-color: #CBD5E1;
}

#atab-intelligence .intelligence-gate-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 18px;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-overlay,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-overlay,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-preview-overlay,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-preview-overlay {
  align-items: flex-end;
  justify-content: flex-start;
  padding: 14px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.08) 0%, rgba(248, 250, 252, 0.28) 100%);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-badge,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-badge {
  grid-area: badge;
  justify-self: flex-start;
  padding: 3px 9px;
  font-size: 10px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-icon,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-icon {
  display: none;
}

#atab-intelligence .intelligence-gate-title {
  color: #0F1E36;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 700;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-title,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-title {
  grid-area: title;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 600;
}

#atab-intelligence .intelligence-gate-desc {
  color: #475569;
  font-size: 13px;
  line-height: 1.65;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-desc,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-desc {
  grid-area: desc;
  font-size: 11px;
  line-height: 1.45;
  color: #64748B;
  max-width: 28ch;
}

#atab-intelligence .intelligence-gate-btn {
  align-self: flex-start;
  min-height: 40px;
  padding: 0 16px;
  border: 0;
  border-radius: 12px;
  background: #0F1E36;
  color: #FFFFFF;
  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(15, 30, 54, 0.18);
}

#atab-intelligence .intelligence-gate-btn:hover {
  background: #162949;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-btn,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-btn {
  grid-area: cta;
  align-self: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 700;
  box-shadow: none;
  background: rgba(240, 253, 244, 0.82);
  color: #166534;
  border: 1px solid rgba(134, 239, 172, 0.52);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-btn:hover,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-btn:hover,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-lock-copy .intelligence-demand-link,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-lock-copy .intelligence-demand-link {
  background: rgba(240, 253, 244, 0.82) !important;
  color: #166534 !important;
  border: 1px solid rgba(134, 239, 172, 0.52) !important;
  box-shadow: none !important;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-preview-card > :not(.intelligence-preview-overlay),
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-section-card.has-intelligence-gate > :not(.intelligence-gate-overlay) {
  filter: blur(3px);
  opacity: 0.38;
  pointer-events: none;
  user-select: none;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-stat-card {
  position: relative;
  filter: saturate(0.72);
}

#atab-intelligence .intel-stat-lock-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  max-width: calc(100% - 24px);
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(241, 245, 249, 0.86);
  border: 1px solid rgba(203, 213, 225, 0.9);
  color: rgba(51, 65, 85, 0.88);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  pointer-events: none;
  user-select: none;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card.has-preview-lock,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-stat-card.has-preview-lock {
  padding-top: 34px;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card .intel-stat-value,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-stat-card .intel-stat-value {
  color: rgba(15, 23, 42, 0.58);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card::after,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-stat-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: rgba(248, 250, 252, 0.28);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  pointer-events: none;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card.has-preview-lock::after {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(248, 250, 252, 0.24) 100%),
    rgba(248, 250, 252, 0.22);
}

#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-overlay {
  background: rgba(248, 250, 252, 0.58);
}

#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-inner {
  border-color: rgba(22, 163, 74, 0.18);
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-gear,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-gear,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-demand-link,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-demand-link,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-inline-link,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-inline-link,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-action-btn,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-action-btn {
  pointer-events: none;
}

#atab-intelligence .is-preview-disabled,
#atab-intelligence .is-preview-disabled:hover,
#atab-intelligence .is-preview-disabled:focus {
  background: rgba(241, 245, 249, 0.92) !important;
  color: #94A3B8 !important;
  border-color: rgba(203, 213, 225, 0.9) !important;
  box-shadow: none !important;
  text-decoration: none !important;
  cursor: default !important;
  opacity: 0.76;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-action-row,
#atab-intelligence[data-intelligence-mode="included-preview"] .intel-action-row {
  background: rgba(255, 255, 255, 0.86);
  border-color: rgba(226, 232, 240, 0.9);
}

@media (max-width: 720px) {
  #atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-overlay,
  #atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-overlay,
  #atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-preview-overlay,
  #atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-preview-overlay {
    padding: 10px;
  }

  #atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-inner,
  #atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-inner {
    max-width: 100%;
    grid-template-columns: 1fr;
    grid-template-areas:
      'badge'
      'title'
      'desc'
      'cta';
    gap: 6px;
    padding: 10px 12px;
  }

  #atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-gate-btn,
  #atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-gate-btn {
    justify-self: flex-start;
  }

  #atab-intelligence .intel-stat-lock-badge {
    top: 10px;
    right: 10px;
    padding: 4px 8px;
    font-size: 9px;
  }

  #atab-intelligence[data-intelligence-mode="upsell-preview"] .intel-stat-card.has-preview-lock,
  #atab-intelligence[data-intelligence-mode="included-preview"] .intel-stat-card.has-preview-lock {
    padding-top: 32px;
  }
}

#atab-intelligence .intelligence-upsell-kicker {
  display: inline-flex;
  align-self: flex-start;
  padding: 6px 10px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] .intelligence-upsell-kicker {
  padding: 5px 9px;
}

#atab-intelligence .intelligence-upsell-headline {
  max-width: 720px;
  color: #0F1E36;
  font-size: 28px;
  line-height: 1.15;
  font-weight: 700;
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] .intelligence-upsell-headline {
  max-width: none;
  font-size: 18px;
  line-height: 1.35;
}

#atab-intelligence .intelligence-upsell-sub {
  max-width: 760px;
  color: #475569;
  font-size: 15px;
  line-height: 1.7;
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] .intelligence-upsell-sub {
  max-width: none;
  font-size: 13px;
  line-height: 1.65;
}

#atab-intelligence .intelligence-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

#atab-intelligence .intelligence-feature-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid #E2E8F0;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.75);
}

#atab-dashboard .intelligence-preview-card {
  position: relative;
  overflow: hidden;
}

#atab-dashboard .intelligence-preview-card > :not(.intelligence-preview-overlay) {
  filter: blur(3px);
  opacity: 0.38;
  pointer-events: none;
  user-select: none;
}

#atab-dashboard .intelligence-preview-overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 14px;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.08) 0%, rgba(248, 250, 252, 0.28) 100%);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

#atab-dashboard .intelligence-gate-inner {
  width: min(100%, 100%);
  max-width: none;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    'badge cta'
    'title cta'
    'desc cta';
  align-items: center;
  gap: 6px 12px;
  padding: 12px 14px;
  border-top: 0;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

#atab-dashboard .intelligence-gate-badge {
  grid-area: badge;
  justify-self: flex-start;
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(241, 245, 249, 0.92);
  color: #475569;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.62;
  filter: saturate(0.55);
}

#atab-dashboard .intelligence-gate-title {
  grid-area: title;
  color: #0F1E36;
  font-size: 13px;
  line-height: 1.3;
  font-weight: 600;
}

#atab-dashboard .intelligence-gate-desc {
  grid-area: desc;
  max-width: 28ch;
  color: #64748B;
  font-size: 11px;
  line-height: 1.45;
}

#atab-dashboard .intelligence-gate-btn {
  grid-area: cta;
  align-self: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid rgba(134, 239, 172, 0.52);
  background: rgba(240, 253, 244, 0.82);
  color: #166534;
  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 700;
  box-shadow: none;
  cursor: pointer;
  transition: border-color 140ms ease, background-color 140ms ease, color 140ms ease, opacity 140ms ease;
  opacity: 1;
}

#atab-dashboard .business-intelligence-opportunity-card.intelligence-preview-card .intelligence-preview-overlay,
#atab-dashboard .business-intelligence-ai-panel.intelligence-preview-card .intelligence-preview-overlay,
#atab-dashboard .business-intelligence-card.intelligence-preview-card .intelligence-preview-overlay {
  padding: 14px;
}

#atab-dashboard .business-intelligence-opportunity-card.intelligence-preview-card .intelligence-gate-inner,
#atab-dashboard .business-intelligence-ai-panel.intelligence-preview-card .intelligence-gate-inner,
#atab-dashboard .business-intelligence-card.intelligence-preview-card .intelligence-gate-inner {
  width: min(100%, 100%);
  max-width: 100%;
  grid-template-columns: 1fr;
  grid-template-areas:
    'badge'
    'title'
    'desc'
    'cta';
  align-items: start;
  gap: 7px;
  padding: 12px 14px;
}

#atab-dashboard .business-intelligence-opportunity-card.intelligence-preview-card .intelligence-gate-desc,
#atab-dashboard .business-intelligence-ai-panel.intelligence-preview-card .intelligence-gate-desc,
#atab-dashboard .business-intelligence-card.intelligence-preview-card .intelligence-gate-desc {
  max-width: 100%;
}

#atab-dashboard .business-intelligence-opportunity-card.intelligence-preview-card .intelligence-gate-btn,
#atab-dashboard .business-intelligence-ai-panel.intelligence-preview-card .intelligence-gate-btn,
#atab-dashboard .business-intelligence-card.intelligence-preview-card .intelligence-gate-btn {
  justify-self: flex-start;
  margin-top: 0;
}

#atab-dashboard .intelligence-gate-btn:hover {
  background: rgba(240, 253, 244, 0.82);
  color: #166534;
  border-color: rgba(134, 239, 172, 0.52);
  box-shadow: none;
}

#atab-dashboard .business-intelligence-kpi-card.intelligence-preview-card .intelligence-preview-overlay,
#atab-dashboard .stat-card.intelligence-preview-card .intelligence-preview-overlay {
  padding: 10px;
}

#atab-dashboard .business-intelligence-kpi-card.intelligence-preview-card .intelligence-gate-inner,
#atab-dashboard .stat-card.intelligence-preview-card .intelligence-gate-inner {
  max-width: 100%;
  grid-template-columns: 1fr;
  grid-template-areas:
    'badge'
    'desc';
  gap: 6px;
  padding: 10px 12px;
}

#atab-dashboard .business-intelligence-kpi-card.intelligence-preview-card .intelligence-gate-title,
#atab-dashboard .stat-card.intelligence-preview-card .intelligence-gate-title,
#atab-dashboard .business-intelligence-kpi-card.intelligence-preview-card .intelligence-gate-btn,
#atab-dashboard .stat-card.intelligence-preview-card .intelligence-gate-btn {
  display: none;
}

#biw-client-activity-risk-card.intelligence-preview-card .intelligence-preview-overlay,
#biw-client-activity-vip-card.intelligence-preview-card .intelligence-preview-overlay,
#biw-client-activity-upgrade-card.intelligence-preview-card .intelligence-preview-overlay {
  padding: 12px;
}

#biw-client-activity-risk-card.intelligence-preview-card .intelligence-gate-inner,
#biw-client-activity-vip-card.intelligence-preview-card .intelligence-gate-inner,
#biw-client-activity-upgrade-card.intelligence-preview-card .intelligence-gate-inner {
  grid-template-areas:
    'badge'
    'title'
    'desc'
    'cta';
  gap: 7px;
  padding: 12px 13px;
}

#biw-client-activity-risk-card.intelligence-preview-card .intelligence-gate-title,
#biw-client-activity-vip-card.intelligence-preview-card .intelligence-gate-title,
#biw-client-activity-upgrade-card.intelligence-preview-card .intelligence-gate-title,
#biw-client-activity-risk-card.intelligence-preview-card .intelligence-gate-btn,
#biw-client-activity-vip-card.intelligence-preview-card .intelligence-gate-btn,
#biw-client-activity-upgrade-card.intelligence-preview-card .intelligence-gate-btn {
  display: inline-flex;
}

#biw-client-activity-risk-card.intelligence-preview-card .intelligence-gate-title,
#biw-client-activity-vip-card.intelligence-preview-card .intelligence-gate-title,
#biw-client-activity-upgrade-card.intelligence-preview-card .intelligence-gate-title {
  line-height: 1.2;
}

@media (max-width: 720px) {
  #atab-dashboard .intelligence-preview-overlay {
    padding: 10px;
  }

  #atab-dashboard .intelligence-gate-inner {
    max-width: 100%;
    grid-template-columns: 1fr;
    grid-template-areas:
      'badge'
      'title'
      'desc'
      'cta';
    gap: 6px;
    padding: 10px 12px;
  }

  #atab-dashboard .intelligence-gate-btn {
    justify-self: flex-start;
  }
}

@media (max-width: 1180px) {
  #admin-view .business-intelligence-opportunity-board {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #admin-view .business-intelligence-opportunity-column-operations {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  #admin-view .business-intelligence-opportunity-board {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view .business-intelligence-opportunity-column-operations {
    grid-column: auto;
  }
}

#atab-intelligence .intelligence-feature-name {
  color: #0F1E36;
  font-size: 15px;
  font-weight: 700;
}

#atab-intelligence .intelligence-feature-desc {
  color: #475569;
  font-size: 14px;
  line-height: 1.6;
}

#atab-intelligence .intelligence-module-lock-copy {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
}

#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-badge,
#atab-intelligence[data-intelligence-mode="upsell-preview"] .intelligence-module-badge-pro,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-badge,
#atab-intelligence[data-intelligence-mode="included-preview"] .intelligence-module-badge-pro {
  opacity: 0.48;
  filter: saturate(0.5);
}

#atab-intelligence .intelligence-module-lock-title {
  color: #0F172A;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

#atab-intelligence .intelligence-module-lock-desc {
  color: #475569;
  font-size: 14px;
  line-height: 1.6;
  max-width: 46ch;
}

#atab-intelligence .intelligence-upsell-cta {
  align-self: flex-start;
  min-height: 48px;
  padding: 0 20px;
  border: 0;
  border-radius: 14px;
  background: #0F1E36;
  color: #FFFFFF;
  font-family: var(--font-family);
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 16px 28px rgba(15, 30, 54, 0.18);
  cursor: pointer;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] .intelligence-upsell-cta {
  min-height: 40px;
  padding: 0 16px;
  border-radius: 12px;
  font-size: 14px;
  box-shadow: 0 10px 20px rgba(15, 30, 54, 0.12);
}

#atab-intelligence .intelligence-upsell-cta:hover {
  transform: translateY(-1px);
  background: #162949;
  box-shadow: 0 18px 32px rgba(15, 30, 54, 0.22);
}

#atab-intelligence .intelligence-upsell-note {
  max-width: 720px;
  color: #64748B;
  font-size: 13px;
  line-height: 1.6;
}

#atab-intelligence .intelligence-upsell-panel[data-upsell-mode="inline"] .intelligence-upsell-note {
  max-width: none;
  font-size: 12px;
  line-height: 1.55;
}

#atab-intelligence .intel-tab-panel {
  display: none;
  flex-direction: column;
  gap: 16px;
}

#atab-intelligence .intel-tab-panel.active {
  display: flex;
}

.intelligence-pro-automation-modal {
  position: fixed;
  inset: 0;
  z-index: 1400;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.5);
  backdrop-filter: blur(4px);
}

.intelligence-pro-automation-card {
  width: min(560px, calc(100vw - 32px));
  max-height: min(88vh, 720px);
  overflow: auto;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.24);
  padding: 28px;
}

.intelligence-pro-automation-kicker {
  color: #0F766E;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.intelligence-pro-automation-title {
  color: #0F172A;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 12px;
}

.intelligence-pro-automation-copy {
  color: #475569;
  font-size: 14px;
  line-height: 1.7;
}

.intelligence-pro-automation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.intelligence-pro-automation-primary,
.intelligence-pro-automation-secondary {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.intelligence-pro-automation-primary {
  border: 1px solid #0F766E;
  background: #0F766E;
  color: #FFFFFF;
}

.intelligence-pro-automation-secondary {
  border: 1px solid #CBD5E1;
  background: #FFFFFF;
  color: #0F172A;
}

.intelligence-pro-automation-primary:disabled,
.intelligence-pro-automation-secondary:disabled {
  opacity: 0.65;
  cursor: default;
}

#atab-intelligence .intel-tab-panel .intel-dashboard-row {
  margin-bottom: 0;
}

#atab-intelligence .intel-retention-link-card {
  background: var(--card-bg);
  border: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
}

#atab-intelligence .intel-retention-link-title {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
  margin-bottom: 6px;
}

#atab-intelligence .intel-retention-link-copy {
  font-size: var(--font-size-base);
  color: var(--color-gray-600);
  margin-bottom: 12px;
}

#atab-intelligence .intel-retention-link-btn {
  align-self: flex-start;
}

#atab-intelligence .intel-retention-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 16px;
}

#atab-intelligence .intel-retention-preview-stat {
  background: var(--color-gray-50);
  border: 1px solid var(--color-gray-200);
  border-radius: 8px;
  padding: 12px;
  min-width: 0;
}

#atab-intelligence .intel-retention-preview-value {
  color: var(--color-gray-900);
  font-size: 18px;
  font-weight: var(--font-weight-bold);
  line-height: 1.1;
  margin-bottom: 4px;
}

#atab-intelligence .intel-retention-preview-label {
  color: var(--color-gray-500);
  font-size: 11px;
  font-weight: var(--font-weight-semibold);
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

#atab-intelligence .intelligence-panel-title-group,
#atab-intelligence .intelligence-panel-title-row {
  display: flex !important;
  gap: 0;
}

@media (max-width: 900px) {
  #atab-intelligence .intelligence-feature-grid {
    grid-template-columns: 1fr;
  }

  #atab-intelligence .intelligence-upsell-panel {
    padding: 18px;
    border-radius: 16px;
  }

  #atab-intelligence .intelligence-upsell-headline {
    font-size: 24px;
  }

  #atab-intelligence .intelligence-upsell-cta {
    width: 100%;
    justify-content: center;
  }
}

#atab-intelligence .intelligence-panel-title-row {
  flex-direction: row;
  align-items: flex-start !important;
}

#atab-intelligence .intelligence-panel-title-group {
  align-items: flex-start !important;
}

#atab-intelligence .intelligence-panel-title-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

#atab-intelligence .intelligence-panel-title {
  font-size: 22px;
  font-weight: 700;
  color: #0F1E36;
}

#atab-intelligence .intelligence-panel-desc {
  color: #6B7280;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 4px;
}

#atab-intelligence .intelligence-panel-sub {
  color: #6B7280;
  font-size: 13px;
  margin-top: 6px;
}

#atab-intelligence .intelligence-panel-sub.intelligence-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  border-radius: 12px;
  background: #DCFCE7;
  color: #16A34A;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
}

#atab-intelligence .intelligence-panel-sub.intelligence-status-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16A34A;
  flex: 0 0 6px;
}


#atab-intelligence .intelligence-panel-title-group img,
#atab-intelligence .intelligence-panel-title-group svg,
#atab-intelligence .intelligence-panel-header img.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-header svg.intelligence-panel-logo,
#intelligence-panel img.intelligence-panel-logo,
#intelligence-panel svg.intelligence-panel-logo {
  height: 36px !important;
  width: 36px !important;
  max-height: 36px !important;
  max-width: 36px !important;
  display: block !important;
  vertical-align: middle !important;
  margin-right: 0 !important;
  flex-shrink: 0 !important;
  object-fit: contain !important;
}

#admin-view .intelligence-module-header,
#admin-view .card-header,
#admin-view .intel-card-header,
#admin-view [class*="card-header"] {
  position: relative;
}

#admin-view .card-gear-dropdown,
#admin-view .intel-gear-panel,
#admin-view .intelligence-gear-panel,
#admin-view .intel-settings-panel,
#admin-view [class*="gear-panel"],
#admin-view [class*="settings-dropdown"],
#admin-view .intelligence-inline-settings,
.intel-gear-panel {
  position: fixed !important;
  z-index: 1000 !important;
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.10) !important;
  min-width: 280px !important;
  max-width: 360px !important;
  padding: 16px !important;
}

#admin-view .intel-gear-panel-title,
#admin-view .gear-panel-title,
#admin-view .settings-panel-title {
  color: #0F1E36;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 12px;
}

#admin-view .intel-gear-panel-divider,
#admin-view .gear-panel-divider {
  height: 1px;
  background: #E2E8F0;
  margin-bottom: 12px;
}

#admin-view .intel-gear-panel-body,
#admin-view .gear-panel-body,
#admin-view .settings-panel-body {
  font-size: 13px;
  color: #374151;
  line-height: 1.5;
  margin-top: 12px;
}

#admin-view .intel-gear-panel .intelligence-settings-row,
#admin-view .settings-dropdown .intelligence-settings-row {
  margin-bottom: 8px;
}

#admin-view .intel-gear-panel select,
#admin-view .intel-gear-panel input,
#admin-view .intel-gear-panel textarea,
#admin-view .settings-dropdown select,
#admin-view .settings-dropdown input,
#admin-view .settings-dropdown textarea {
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 6px 8px !important;
  font-size: 13px !important;
  width: 100%;
}

#admin-view .intel-gear-panel-close,
#admin-view .gear-panel-close {
  position: absolute;
  top: 10px;
  right: 12px;
  color: #9CA3AF;
  font-size: 16px;
  background: transparent;
  border: 0;
  cursor: pointer;
  line-height: 1;
}

#admin-view .intel-dashboard .intelligence-section-card {
  position: relative;
}

#admin-view .intelligence-report-narrative {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #E2E8F0;
  color: #374151;
  font-size: 14px;
  line-height: 1.6;
}

#admin-view .intelligence-report-narrative p {
  margin-bottom: 12px;
}

#admin-view .intelligence-rescue-footer,
#admin-view .intelligence-demand-footer,
#admin-view .intelligence-schedule-fit-footer,
#admin-view .intelligence-noshow-footer,
#admin-view .intelligence-pro-automations-footer,
#admin-view .intel-card-footer,
#admin-view .intelligence-card-footer,
#admin-view .schedule-fit-footer,
#admin-view .intelligence-score-footer,
#admin-view [class*="score-footer"],
#admin-view [class*="generated-footer"] {
  margin-top: 16px !important;
  padding-top: 12px !important;
  border-top: 1px solid #E2E8F0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
}

#admin-view .intelligence-rescue-footer-meta,
#admin-view .intelligence-demand-footer-meta,
#admin-view .intelligence-schedule-fit-footer-meta,
#admin-view .intelligence-noshow-footer-meta,
#admin-view .intelligence-pro-automations-footer-meta,
#admin-view .intel-card-footer-meta,
#admin-view .intelligence-card-footer-meta,
#admin-view .schedule-fit-footer-meta,
#admin-view [class*="footer-meta"] {
  color: #9CA3AF !important;
  font-size: 12px !important;
}

#admin-view #intelligence-report-card .intelligence-module-header .intelligence-module-badge,
#admin-view .intel-nudge-card .intelligence-module-actions .intelligence-module-badge {
  margin-left: auto;
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
}

#admin-view .intel-nudge-card .intelligence-module-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

#admin-view .intel-nudge-row-label {
  display: none;
}

#admin-view .intelligence-demand-footer,
#admin-view .demand-radar-footer,
#admin-view [class*="radar-footer"],
#admin-view [class*="radar-generated"] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

#admin-view .intelligence-demand-footer-meta,
#admin-view .demand-radar-footer,
#admin-view [class*="radar-footer"],
#admin-view [class*="radar-generated"] {
  font-size: 10px !important;
  color: #94A3B8 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 70%;
  display: inline-block;
}

#admin-view .intelligence-demand-link,
#admin-view .regenerate-forecast-btn,
#admin-view [data-action="regenerate-forecast"],
#admin-view a[class*="regenerate"] {
  display: inline-flex !important;
  align-items: center !important;
  padding: 3px 10px !important;
  background: #F0FDF4 !important;
  color: #16A34A !important;
  border: 1px solid #BBF7D0 !important;
  border-radius: 4px !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

#admin-view .intel-dashboard .intel-noshow-entry {
  margin-bottom: 12px;
}

#admin-view .intel-dashboard .intel-noshow-entry:last-child {
  margin-bottom: 0;
}

#admin-view .intel-dashboard .intel-noshow-entry-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

#admin-view .intel-dashboard .intel-noshow-entry-name {
  color: #0F1E36;
  font-weight: 600;
}

#admin-view .intel-dashboard .intel-noshow-entry-datetime {
  color: #6B7280;
  font-size: 12px;
  text-align: right;
  white-space: nowrap;
}

#admin-view .intel-dashboard .intel-noshow-entry-signals {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

#admin-view .intel-dashboard .intel-noshow-summary-divider {
  height: 1px;
  background: #E2E8F0;
  margin: 12px 0;
}

#admin-view .intel-dashboard .intel-noshow-summary {
  color: #6B7280;
  font-size: 13px;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-row {
  display: flex;
  align-items: stretch;
  gap: 0;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-stat {
  flex: 1;
  min-width: 0;
  padding: 0 12px;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-stat:first-child {
  padding-left: 0;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-stat:last-child {
  padding-right: 0;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-divider,
#admin-view .intel-dashboard .intel-client-snapshot-divider {
  background: #E2E8F0;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-divider {
  width: 1px;
  flex: 0 0 1px;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-row .intel-client-snapshot-label {
  color: #6B7280;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-row .intel-client-snapshot-value {
  color: #0F1E36;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  margin-top: 6px;
}

#admin-view .intel-dashboard .intel-client-snapshot-top-stat.has-risk .intel-client-snapshot-label,
#admin-view .intel-dashboard .intel-client-snapshot-top-stat.has-risk .intel-client-snapshot-value {
  color: #D97706;
}

#admin-view .intel-dashboard .intel-client-snapshot-divider {
  height: 1px;
  margin: 16px 0;
}

#admin-view .intel-dashboard .intel-client-snapshot-total-label {
  color: #6B7280;
  font-size: 12px;
}

#admin-view .intel-dashboard .intel-client-snapshot-total-value {
  color: #0F1E36;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
  margin-top: 6px;
}

#admin-view .intel-dashboard .intel-client-snapshot-foot {
  color: #6B7280;
  font-size: 12px;
  margin-top: 4px;
}

#admin-view .intelligence-rescue-footer,
#admin-view .intelligence-demand-footer,
#admin-view .intelligence-schedule-fit-footer,
#admin-view .intelligence-noshow-footer,
#admin-view .intelligence-pro-automations-footer,
#admin-view .intelligence-client-value-snapshot-footer,
#admin-view .intel-card-footer,
#admin-view .intelligence-card-footer,
#admin-view .intelligence-module-footer,
#admin-view .schedule-fit-footer,
#admin-view .intelligence-score-footer,
#admin-view .demand-radar-footer,
#admin-view .revenue-rescue-footer,
#admin-view .client-value-footer,
#admin-view [class*="score-footer"],
#admin-view [class*="generated-footer"] {
  margin-top: 16px !important;
  padding-top: 12px !important;
  border-top: 1px solid #E2E8F0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
}

#admin-view .intelligence-rescue-footer-meta,
#admin-view .intelligence-demand-footer-meta,
#admin-view .intelligence-schedule-fit-footer-meta,
#admin-view .intelligence-noshow-footer-meta,
#admin-view .intelligence-pro-automations-footer-meta,
#admin-view .intelligence-client-value-snapshot-footer-meta,
#admin-view .intel-card-footer-meta,
#admin-view .intelligence-card-footer-meta,
#admin-view .intelligence-module-footer-meta,
#admin-view .schedule-fit-footer-meta,
#admin-view .demand-radar-footer-meta,
#admin-view .revenue-rescue-footer-meta,
#admin-view .client-value-footer-meta,
#admin-view [class*="footer-meta"] {
  color: #9CA3AF !important;
  font-size: 12px !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .admin-topbar-search input,
#admin-view .topbar-search input,
#admin-view .search-input {
  padding-left: 36px !important;
}

.admin-shared-tooltip {
  position: fixed;
  z-index: 1100;
  background: #0F1E36;
  color: #FFFFFF;
  font-size: 12px;
  line-height: 1.4;
  border-radius: 6px;
  padding: 8px 10px;
  max-width: 220px;
  pointer-events: none;
}

#admin-view .intel-dashboard .intelligence-section-title {
  display: inline-flex;
  align-items: center;
}

#admin-view .intel-dashboard .intelligence-help-icon {
  color: #9CA3AF;
  font-size: 11px;
  font-weight: 600;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 1px solid #9CA3AF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 6px;
  cursor: default;
  flex: 0 0 15px;
}

#admin-view .intel-dashboard .intelligence-help-icon:hover {
  color: #6B7280;
  border-color: #6B7280;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--snapshot-gap {
  margin-top: 16px;
}

#admin-view .intel-dashboard .intel-overview-feature-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

#admin-view .intel-dashboard .intel-overview-left-stack,
#admin-view .intel-dashboard .intel-overview-right-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

#admin-view .intel-dashboard .intel-overview-left-stack > .intelligence-section-card,
#admin-view .intel-dashboard .intel-overview-right-stack > .intelligence-section-card {
  width: 100%;
  min-width: 0;
}

#admin-view .intel-dashboard .intel-overview-left-stack > #intelligence-noshow-card {
  margin-top: 0 !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-noshow-card {
  min-width: 0;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-demand-card {
  min-width: 0;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content {
  display: flex;
  flex: 1;
  height: 100%;
  flex-direction: column;
  min-height: 0;
  gap: 12px;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-demand-card > .intel-card-flex-content {
  height: 100%;
  display: flex;
  flex-direction: column;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-noshow-body,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-week,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-confidence,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-narrative,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intel-demand-bars,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intel-demand-summary,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-priority-callout {
  flex: 1 0 auto;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-week,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-confidence,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-demand-narrative,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intel-demand-bars,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intel-demand-summary,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-priority-callout,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-noshow-body,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card > .intel-card-flex-content > .intelligence-noshow-empty-good {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card .intelligence-noshow-footer,
#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intelligence-section-card .intelligence-demand-footer {
  margin-top: auto !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-noshow-card.intel-noshow-empty > .intel-card-flex-content {
  flex: 0 0 auto !important;
  min-height: 0 !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-noshow-card.intel-noshow-empty > .intel-card-flex-content > .intelligence-noshow-body {
  flex: 0 0 auto !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair > .intel-overview-noshow-card.intel-noshow-empty .intelligence-noshow-footer {
  margin-top: 16px !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty {
  align-items: start !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty > .intel-overview-noshow-card {
  height: auto !important;
  align-self: start !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty > .intel-overview-demand-card {
  height: auto !important;
  align-self: start !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty > .intel-overview-noshow-card .intel-card-flex-content {
  flex: 0 0 auto !important;
  min-height: 0 !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty > .intel-overview-noshow-card .intelligence-noshow-body {
  flex: 0 0 auto !important;
  min-height: 0 !important;
}

#admin-view .intel-dashboard .intel-dashboard-row--overview-pair.intel-overview-pair-noshow-empty > .intel-overview-noshow-card .intelligence-noshow-footer {
  margin-top: 16px !important;
}

#admin-view #intelligence-noshow-card.intel-noshow-empty {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
}

#admin-view #intelligence-noshow-card.intel-noshow-empty > .intel-card-flex-content {
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
}

#admin-view #intelligence-noshow-card.intel-noshow-empty #intelligence-noshow-body {
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
}

#admin-view #intelligence-noshow-card.intel-noshow-empty #intelligence-noshow-footer {
  margin-top: 16px !important;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-top {
  display: flex;
  align-items: stretch;
  gap: 0;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-stat {
  flex: 1;
  min-width: 0;
  padding: 0 12px;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-stat:first-child {
  padding-left: 0;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-stat:last-child {
  padding-right: 0;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-divider {
  width: 1px;
  flex: 0 0 1px;
  background: #E2E8F0;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-label {
  color: #6B7280;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-value {
  color: #0F1E36;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  margin-top: 6px;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-stat.has-risk .intelligence-client-value-scorecard-label,
#admin-view .intel-dashboard .intelligence-client-value-scorecard-stat.has-risk .intelligence-client-value-scorecard-value {
  color: #D97706;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-rule {
  height: 1px;
  background: #E2E8F0;
  margin: 16px 0;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-total-label {
  color: #6B7280;
  font-size: 12px;
}

#admin-view .intel-dashboard .intelligence-client-value-scorecard-total-value {
  color: #0F1E36;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
  margin-top: 6px;
}

#admin-view .intel-dashboard .intelligence-client-value-link-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
}

#admin-view .theme-toggle-btn,
#admin-view #theme-toggle,
#admin-view [data-action="toggle-theme"],
#admin-view button[aria-label*="theme"],
#admin-view button[aria-label*="mode"],
#admin-view .admin-theme-toggle,
#admin-view .admin-topbar-icon-btn.admin-theme-toggle {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  border: 1px solid #E2E8F0 !important;
  background: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}

#admin-view .theme-toggle-btn:hover,
#admin-view #theme-toggle:hover,
#admin-view .admin-theme-toggle:hover,
#admin-view .admin-topbar-icon-btn.admin-theme-toggle:hover {
  background: #F8FAFC !important;
  border-color: #CBD5E1 !important;
}

#admin-view .theme-toggle-btn svg,
#admin-view #theme-toggle svg,
#admin-view .admin-theme-toggle svg,
#admin-view .admin-theme-toggle-icon svg {
  width: 14px !important;
  height: 14px !important;
  color: #64748B !important;
}

.client-value-full-list,
.all-clients-container,
[data-section="all-clients"] {
  display: none;
}

.client-value-elite-list,
.elite-clients-container,
[data-section="elite-clients"] {
  display: none;
}

.business-intelligence-ai-card-badge.pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
}

#biw-bladezy-insights-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.business-intelligence-ai-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  background: var(--card-bg);
  border: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
}

.business-intelligence-ai-card-top {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}

.business-intelligence-ai-card-icon {
  display: none;
}

.business-intelligence-ai-card-meta {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.business-intelligence-ai-card-title {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
}

.business-intelligence-ai-card-copy {
  font-size: var(--font-size-base);
  color: var(--color-gray-700);
  line-height: var(--line-height-base);
}

.business-intelligence-ai-card-footer {
  margin-top: auto;
}

.business-intelligence-ai-card-action {
  padding: 0;
  background: none;
  border: none;
  color: var(--color-blue);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
}

.business-intelligence-ai-card-action:hover {
  text-decoration: underline;
}

.support-shell {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.support-card-grid {
  align-items: stretch;
}

.support-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.support-card-icon {
  width: 24px;
  height: 24px;
  color: var(--color-intelligence);
}

.support-card-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-width: 1.75;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.support-card-title {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-900);
}

.support-card-copy,
.support-contact-copy {
  color: var(--color-gray-700);
  font-size: var(--font-size-base);
}

.support-card-link {
  border: none;
  background: none;
  color: var(--color-intelligence);
  padding: 0;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  text-align: left;
  cursor: pointer;
}

.support-contact-list {
  display: grid;
  gap: var(--space-3);
}

.support-contact-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-gray-200);
}

.support-contact-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-gray-500);
}

.support-contact-value {
  font-size: var(--font-size-base);
  color: var(--color-gray-900);
  font-weight: var(--font-weight-medium);
}

.support-ticket-workspace {
  margin-top: 24px;
  display: grid;
  gap: 16px;
}

.support-ticket-workspace-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.support-ticket-workspace-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--admin-heading, #122033);
}

.support-ticket-workspace-copy {
  margin-top: 4px;
  font-size: 13px;
  color: var(--admin-text-soft, #5f6f84);
}

.support-ticket-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.support-ticket-card {
  min-height: 100%;
}

.support-ticket-form {
  display: grid;
  gap: 14px;
}

.support-ticket-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.support-ticket-field {
  display: grid;
  gap: 7px;
}

.support-ticket-label,
.support-ticket-message-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--admin-text-soft, #5f6f84);
}

.support-ticket-input,
.support-ticket-select,
.support-ticket-textarea {
  width: 100%;
  border: 1px solid rgba(18, 32, 51, 0.12);
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.95);
  color: var(--admin-heading, #122033);
  font: inherit;
  box-sizing: border-box;
}

.support-ticket-input,
.support-ticket-select {
  min-height: 44px;
  padding: 0 14px;
}

.support-ticket-textarea {
  min-height: 118px;
  padding: 12px 14px;
  resize: vertical;
}

.support-ticket-input:focus,
.support-ticket-select:focus,
.support-ticket-textarea:focus {
  outline: none;
  border-color: rgba(59, 130, 246, 0.55);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

.support-ticket-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.support-ticket-feedback {
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.5;
  border: 1px solid transparent;
}

.support-ticket-feedback-success {
  background: rgba(16, 185, 129, 0.12);
  border-color: rgba(16, 185, 129, 0.22);
  color: #0f766e;
}

.support-ticket-feedback-error {
  background: rgba(239, 68, 68, 0.10);
  border-color: rgba(239, 68, 68, 0.18);
  color: #b91c1c;
}

.support-ticket-feedback-info {
  background: rgba(59, 130, 246, 0.10);
  border-color: rgba(59, 130, 246, 0.18);
  color: #1d4ed8;
}

.support-ticket-empty {
  padding: 18px 0 4px;
  color: var(--admin-text-soft, #5f6f84);
  font-size: 13px;
}

.support-ticket-list {
  display: grid;
  gap: 10px;
}

.support-ticket-list-item {
  width: 100%;
  text-align: left;
  border: 1px solid rgba(18, 32, 51, 0.12);
  border-radius: 16px;
  background: rgba(248, 250, 252, 0.95);
  padding: 14px;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}

.support-ticket-list-item:hover {
  border-color: rgba(59, 130, 246, 0.30);
  box-shadow: 0 12px 24px rgba(15, 23, 35, 0.08);
  transform: translateY(-1px);
}

.support-ticket-list-item.is-active {
  border-color: rgba(59, 130, 246, 0.40);
  box-shadow: 0 14px 28px rgba(37, 99, 235, 0.10);
}

.support-ticket-list-head,
.support-ticket-detail-head,
.support-ticket-update-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.support-ticket-list-subject,
.support-ticket-detail-subject {
  font-size: 15px;
  font-weight: 700;
  color: var(--admin-heading, #122033);
}

.support-ticket-list-meta,
.support-ticket-detail-meta {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  font-size: 12px;
  color: var(--admin-text-soft, #5f6f84);
}

.support-ticket-pill {
  flex: 0 0 auto;
}

.support-ticket-detail-card {
  margin-top: 2px;
}

.support-ticket-message-card,
.support-ticket-update-section {
  margin-top: 14px;
}

.support-ticket-message-body {
  margin-top: 8px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.95);
  border: 1px solid rgba(18, 32, 51, 0.10);
  color: var(--admin-heading, #122033);
  white-space: pre-wrap;
}

.support-ticket-update-list {
  margin-top: 10px;
  display: grid;
  gap: 10px;
}

.support-ticket-update-item {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.95);
  border: 1px solid rgba(18, 32, 51, 0.10);
}

.support-ticket-update-author {
  font-size: 12px;
  font-weight: 700;
  color: var(--admin-heading, #122033);
}

.support-ticket-update-time {
  font-size: 12px;
  color: var(--admin-text-soft, #5f6f84);
}

.support-ticket-update-body,
.support-ticket-detail-note {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--admin-text, #334155);
}

/* ============================================================
   COMPREHENSIVE ALIGNMENT OVERRIDES
   ============================================================ */

.admin-sidebar-toggle {
  width: 100%;
  min-height: 40px;
  padding: 0 var(--space-4);
  border: none;
  border-bottom: 1px solid var(--color-navy-700);
  background: transparent;
  color: var(--color-gray-400);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  transition: background var(--transition-fast), color var(--transition-fast);
}

.admin-sidebar-toggle:hover {
  background: rgba(255,255,255,0.06);
  color: var(--color-white);
}

.admin-sidebar-toggle-label {
  font-size: var(--font-size-xs);
  color: rgba(255,255,255,0.35);
}

.admin-sidebar-toggle-icon {
  font-size: 18px;
  line-height: 1;
}

.admin-logo,
.sidebar-brand {
  padding: var(--space-4) var(--space-4) var(--space-4);
}

.admin-logo-brand {
  margin-right: 8px;
}

.admin-logo-img {
  width: 28px;
  min-width: 28px;
  height: 28px;
  image-rendering: crisp-edges;
  image-rendering: -webkit-optimize-contrast;
}

.admin-logo-role,
.sidebar-brand-role {
  min-height: 14px;
}

.admin-logo-close {
  display: none;
}

.admin-sidebar.collapsed .admin-sidebar-toggle {
  padding-left: 0;
  padding-right: 0;
  justify-content: center;
}

.admin-sidebar.collapsed .admin-sidebar-toggle-label,
.admin-sidebar.collapsed .admin-logo-close,
.admin-sidebar.collapsed .admin-exit-btn {
  display: none !important;
}

.admin-sidebar.collapsed .admin-logo {
  align-items: center;
}

.admin-sidebar.collapsed .admin-logo-brand-row {
  width: 100%;
  justify-content: center;
}

.admin-exit-btn {
  display: none !important;
}

.admin-topbar {
  min-height: 44px;
  gap: var(--space-3);
}

.admin-topbar-search,
.topbar-search {
  max-width: 320px;
}

.admin-topbar-meta {
  gap: 8px;
}

.admin-topbar-title,
.admin-hamburger,
.admin-theme-toggle-label,
.admin-theme-toggle-dot,
.admin-topbar-chip-copy,
.admin-utility-icon,
#admin-page-title {
  display: none !important;
}

.admin-topbar-icon-btn {
  position: relative;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid var(--color-gray-200);
  border-radius: 50%;
  background: var(--color-white);
  color: var(--color-gray-500);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);
}

.admin-topbar-icon-btn:hover {
  color: var(--color-gray-600);
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

.admin-sms-status-dot-btn {
  border-color: var(--color-gray-200);
  background: var(--color-white);
}

.admin-sms-status-dot-btn:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

.admin-topbar-icon-btn[data-tooltip]:hover::after,
.admin-owner-avatar[data-tooltip]:hover::after {
  content: attr(data-tooltip);
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--color-gray-800);
  color: var(--color-white);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  padding: 4px 10px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 1000;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

#admin-view .topbar-sms-status,
#admin-view .sms-mode-indicator,
#admin-view [data-role="sms-status"] {
  width: 28px !important;
  height: 28px !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}

#admin-view .topbar-sms-icon {
  width: 14px !important;
  height: 14px !important;
  display: block !important;
  color: #94A3B8;
}

#admin-view .topbar-sms-status.is-enabled .topbar-sms-icon,
#admin-view .sms-mode-indicator.is-enabled .topbar-sms-icon,
#admin-view [data-sms-enabled="true"] .topbar-sms-icon {
  color: #16A34A !important;
}

#admin-view .topbar-sms-status.is-disabled .topbar-sms-icon,
#admin-view .sms-mode-indicator.is-disabled .topbar-sms-icon,
#admin-view [data-sms-enabled="false"] .topbar-sms-icon {
  color: #94A3B8 !important;
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner {
  border-color: rgba(248, 113, 113, 0.25);
  background: rgba(220, 38, 38, 0.14);
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner-pill {
  border-color: rgba(248, 113, 113, 0.22);
  background: rgba(248, 113, 113, 0.12);
  color: #fecaca;
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner-divider {
  color: rgba(245, 245, 247, 0.45);
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner-body {
  color: #f5f5f7;
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner-cta {
  color: #fca5a5;
}

#admin-view[data-admin-theme="dark"] .admin-sms-setup-banner-cta:hover {
  color: #fecaca;
}

.admin-theme-toggle-icon {
  width: 15px;
  height: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.admin-theme-toggle-icon svg {
  width: 15px;
  height: 15px;
  stroke: currentColor;
  stroke-width: 1.75;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.admin-owner-menu {
  position: relative;
}

.admin-owner-avatar {
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 50%;
  background:
    radial-gradient(circle at 30% 25%, rgba(255,255,255,0.28), transparent 36%),
    linear-gradient(145deg, #1D4ED8 0%, #0F1E36 100%);
  color: var(--color-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 20px rgba(15,30,54,0.18);
  font-size: 11px;
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.admin-owner-avatar:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(15,30,54,0.28);
  filter: saturate(1.03);
}

.admin-owner-dropdown {
  position: fixed;
  top: 0;
  left: 0;
  min-width: 282px;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  box-shadow: 0 24px 52px rgba(15,30,54,0.16), 0 8px 20px rgba(15,23,42,0.08);
  padding: 0;
  z-index: 1100;
  overflow: hidden;
}

.admin-owner-dropdown[hidden] {
  display: none !important;
}

.admin-owner-dropdown-head {
  background:
    linear-gradient(180deg, #F8FBFF 0%, #F4F7FB 100%);
  padding: 18px 18px 16px;
  border-bottom: 1px solid #E2E8F0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.admin-owner-dropdown-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  flex: 0 0 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 30% 25%, rgba(255,255,255,0.26), transparent 36%),
    linear-gradient(145deg, #2563EB 0%, #0F1E36 100%);
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.18), 0 12px 24px rgba(15,30,54,0.16);
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.admin-owner-dropdown-head-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1 1 auto;
}

.admin-owner-dropdown-name {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #0F1E36;
}

.admin-owner-dropdown-context {
  font-size: 12px;
  line-height: 1.45;
  color: #6B7280;
}

.admin-owner-dropdown-badge {
  flex: 0 0 auto;
  align-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #BFDBFE;
  background: #EFF6FF;
  color: #1E40AF;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
}

.admin-owner-dropdown-item {
  width: 100%;
  border: none;
  background: transparent;
  color: #0F1E36;
  font-size: 13px;
  text-align: left;
  padding: 13px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  border-left: 3px solid transparent;
  border-bottom: 1px solid rgba(226,232,240,0.72);
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.admin-owner-dropdown-item:hover {
  background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
  border-left-color: #2563EB;
}

.admin-owner-dropdown-item-icon {
  width: 18px;
  height: 18px;
  color: #64748B;
  flex: 0 0 18px;
  transition: color 0.15s ease, transform 0.15s ease;
}

.admin-owner-dropdown-item-icon svg {
  width: 18px;
  height: 18px;
  display: block;
}

.admin-owner-dropdown-item-label {
  flex: 1 1 auto;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  color: #0F1E36;
}

.admin-owner-dropdown-item:hover .admin-owner-dropdown-item-icon,
.admin-owner-dropdown-item:hover .admin-owner-dropdown-caret {
  color: #2563EB;
  transform: translateX(1px);
}

.admin-owner-dropdown-caret {
  color: #6B7280;
  font-size: 13px;
  line-height: 1;
  transform: rotate(0deg);
  transition: transform 180ms ease;
}

.admin-owner-dropdown-item-accordion[aria-expanded="true"] .admin-owner-dropdown-caret {
  transform: rotate(90deg);
}

.admin-owner-dropdown-submenu[hidden] {
  display: block !important;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease;
}

.admin-owner-dropdown-submenu.open {
  max-height: 96px;
}

.admin-owner-dropdown-subitem {
  width: 100%;
  border: none;
  background: transparent;
  color: #6B7280;
  font-size: 12px;
  font-weight: 400;
  text-align: left;
  padding: 10px 18px 10px 50px;
  cursor: pointer;
  border-bottom: 1px solid rgba(226,232,240,0.58);
}

.admin-owner-dropdown-subitem:hover:not(:disabled) {
  background: #F8FAFC;
  color: #0F1E36;
}

.admin-owner-dropdown-subitem:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.admin-owner-dropdown-item-signout {
  border-top: 1px solid #E2E8F0;
  border-bottom: none;
  margin: 0;
  background: linear-gradient(180deg, rgba(254,242,242,0.52) 0%, rgba(255,255,255,0) 100%);
}

.admin-owner-dropdown-item-signout,
.admin-owner-dropdown-item-signout .admin-owner-dropdown-item-label,
.admin-owner-dropdown-item-signout .admin-owner-dropdown-item-icon {
  color: #DC2626;
}

.admin-owner-dropdown-item-signout:hover {
  background: #FEF2F2;
  border-left-color: #DC2626;
}

.admin-owner-dropdown-item-signout:hover .admin-owner-dropdown-item-icon {
  color: #DC2626;
}

#admin-view #admin-owner-dropdown,
#admin-owner-dropdown {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 18px !important;
  box-shadow: 0 24px 52px rgba(15,30,54,0.16), 0 8px 20px rgba(15,23,42,0.08) !important;
  position: fixed !important;
  top: 56px !important;
  right: 16px !important;
  left: auto !important;
  transform: none !important;
  max-width: calc(100vw - 32px) !important;
  min-width: 284px !important;
  width: 288px !important;
  max-width: 288px !important;
  overflow: hidden !important;
  padding: 0 !important;
  z-index: 1100 !important;
}

#admin-view #admin-owner-dropdown.open,
#admin-view #admin-owner-dropdown.admin-owner-dropdown-open,
#admin-owner-dropdown.open,
#admin-owner-dropdown.admin-owner-dropdown-open {
  position: fixed !important;
  top: 56px !important;
  right: 16px !important;
  left: auto !important;
  transform: none !important;
  max-width: calc(100vw - 32px) !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-head {
  background: linear-gradient(180deg, #F8FBFF 0%, #F4F7FB 100%) !important;
  padding: 18px 18px 16px !important;
  border-bottom: 1px solid #E2E8F0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-avatar {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  flex: 0 0 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: radial-gradient(circle at 30% 25%, rgba(255,255,255,0.26), transparent 36%), linear-gradient(145deg, #2563EB 0%, #0F1E36 100%) !important;
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.18), 0 12px 24px rgba(15,30,54,0.16) !important;
  color: #FFFFFF !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-head-main {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  flex: 1 1 auto !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-name {
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  color: #0F1E36 !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-context {
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: #6B7280 !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-badge {
  flex: 0 0 auto !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  border: 1px solid #BFDBFE !important;
  background: #EFF6FF !important;
  color: #1E40AF !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.7) !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item {
  padding: 13px 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 13px !important;
  color: #0F1E36 !important;
  border-left: 3px solid transparent !important;
  border-bottom: 1px solid rgba(226,232,240,0.72) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item:hover {
  background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%) !important;
  border-left-color: #2563EB !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-icon,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-icon svg {
  width: 18px !important;
  height: 18px !important;
  color: #64748B !important;
  transition: color 0.15s ease, transform 0.15s ease !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item:hover .admin-owner-dropdown-item-icon,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item:hover .admin-owner-dropdown-item-icon svg,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item:hover .admin-owner-dropdown-caret {
  color: #2563EB !important;
  transform: translateX(1px) !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-subitem {
  padding: 10px 18px 10px 50px !important;
  font-size: 12px !important;
  color: #6B7280 !important;
  font-weight: 400 !important;
  border-bottom: 1px solid rgba(226,232,240,0.58) !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-subitem:hover:not(:disabled) {
  background: #F8FAFC !important;
  color: #0F1E36 !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout {
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: none !important;
  margin: 0 !important;
  background: linear-gradient(180deg, rgba(254,242,242,0.52) 0%, rgba(255,255,255,0) 100%) !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout .admin-owner-dropdown-item-label,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout .admin-owner-dropdown-item-icon,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout .admin-owner-dropdown-item-icon svg {
  color: #DC2626 !important;
}

#admin-view #admin-owner-dropdown .admin-owner-dropdown-item-signout:hover {
  background: #FEF2F2 !important;
  border-left-color: #DC2626 !important;
}

.admin-nav-item-client-intelligence {
  min-height: var(--btn-height-sm);
}

.admin-nav-item-client-intelligence .admin-nav-label {
  font-size: inherit;
  line-height: inherit;
  white-space: nowrap;
}

.appointments-summary-card .appointment-summary-top {
  display: none;
}

#admin-view #atab-appointments .page-eyebrow {
  font-size: 0.6875rem;
  font-weight: 600;
  color: #64748B;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#admin-view #appointments-summary-strip,
#admin-view .appointments-summary-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  overflow-x: visible;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #E2E8F0;
  min-height: 48px;
}

#admin-view #appointments-summary-strip .appointments-summary-chips,
#admin-view .appointments-summary-chips {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
  min-width: 0;
}

#admin-view #appointments-summary-strip .appointments-summary-card,
#admin-view .appointments-summary-card {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #E2E8F0;
  color: #64748B;
  background: #FFFFFF;
  border-radius: 8px;
  padding: 10px 16px;
  font-family: Inter, sans-serif;
  cursor: pointer;
  white-space: nowrap;
  flex: 0 0 auto;
  text-transform: none;
  transition: border-color 0.15s, background 0.15s;
}

#admin-view #appointments-summary-strip .appointments-summary-card.active,
#admin-view .appointments-summary-card.active {
  border: 2px solid #0F1E36;
  color: #0F1E36;
  background: #F8FAFC;
}

#admin-view #appointments-summary-strip .appointments-summary-card:hover:not(.active) {
  background: #F8FAFC;
}

#admin-view #appointments-summary-strip .appointments-summary-count,
#admin-view .appointments-summary-count {
  font-family: Inter, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: #0F1E36;
  line-height: 1;
}

#admin-view #appointments-summary-strip .appointments-summary-text,
#admin-view .appointments-summary-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

#admin-view #appointments-summary-strip .appointments-summary-label,
#admin-view .appointments-summary-label {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #0F1E36;
  line-height: 1.2;
}

#admin-view #appointments-summary-strip .appointments-summary-sub,
#admin-view .appointments-summary-sub {
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  font-weight: 400;
  color: #64748B;
  line-height: 1.2;
}

#admin-view #appointments-summary-strip .appointments-range-controls,
#admin-view .appointments-range-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  margin-left: auto;
  flex-wrap: nowrap;
}

#admin-view #appointments-summary-strip .appointments-range-button,
#admin-view .appointments-range-button {
  background: #FFFFFF;
  color: #64748B;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 6px 14px;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  text-transform: none;
  white-space: nowrap;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}

#admin-view #appointments-summary-strip .appointments-range-button.active,
#admin-view .appointments-range-button.active {
  background: #0F1E36;
  color: #FFFFFF;
  border: 1px solid #0F1E36;
}

#admin-view #appointments-summary-strip .appointments-range-button:hover:not(.active) {
  background: #F8FAFC;
}

#admin-view #appointments-summary-strip .appointments-custom-date-wrap,
#admin-view .appointments-custom-date-wrap {
  display: inline-flex;
  align-items: center;
}

#admin-view .appointments-custom-date-wrap[hidden] {
  display: none !important;
}

#admin-view #appointments-summary-strip .appointments-custom-date-wrap input[type="date"],
#admin-view .appointments-custom-date-wrap input[type="date"] {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 5px 10px;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  color: #0F1E36;
  background: #FFFFFF;
}

#admin-view #atab-appointments .appointments-head-actions .btn-sm-ghost,
#admin-view #atab-appointments .appointments-toolbar-filters .btn-sm-ghost,
#admin-view button[onclick*="refreshAdminAppointments"],
#admin-view button[onclick*="clearAptFilters"],
#admin-view button[onclick*="clearAppointmentBarberFilter_"] {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 6px 14px;
  background: #FFFFFF;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

#admin-view #atab-appointments .appointments-head-actions .btn-sm-ghost:hover,
#admin-view #atab-appointments .appointments-toolbar-filters .btn-sm-ghost:hover,
#admin-view button[onclick*="refreshAdminAppointments"]:hover,
#admin-view button[onclick*="clearAptFilters"]:hover,
#admin-view button[onclick*="clearAppointmentBarberFilter_"]:hover {
  background: #F8FAFC;
}

.appointment-card {
  position: relative;
  border-left: 3px solid var(--color-gray-400);
  border-radius: 8px;
  margin-bottom: 16px;
  padding: 16px;
  background: var(--color-white);
}

.appointment-card[data-status="completed"] {
  border-left-color: var(--color-green);
}

.appointment-card[data-status="confirmed"] {
  border-left-color: var(--color-blue);
}

.appointment-card[data-status="no-show"],
.appointment-card[data-status="noshow"] {
  border-left-color: var(--color-red);
}

.appointment-card[data-status="cancelled"],
.appointment-card[data-status="canceled"] {
  border-left-color: var(--color-gray-400);
}

.appointment-card[data-status="pending"] {
  border-left-color: var(--color-amber);
}

.appointment-card[data-payment="unpaid"]:not([data-status="completed"]):not([data-status="cancelled"]):not([data-status="canceled"]):not([data-status="no-show"]):not([data-status="noshow"]) {
  border-left-color: var(--color-amber);
}

.appointment-card-accent {
  display: none;
}

.appointment-card-time {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-900);
}

.appointment-card-client {
  font-size: var(--font-size-md);
  font-weight: 700;
  color: var(--color-gray-900);
}

#admin-view .appointment-card-subline {
  color: #64748B;
  font-size: 0.8125rem;
}

#admin-view #atab-appointments .appointments-toolbar-copy {
  color: #9CA3AF;
  font-size: 0.8125rem;
  font-family: Inter, sans-serif;
  font-weight: 400;
  margin-top: 2px;
}

#admin-view .admin-card.appointments-toolbar-card {
  margin-bottom: 16px;
}

#admin-view .appointments-workspace-frame {
  margin-top: -2px;
}

#admin-view .appointments-workspace {
  display: block;
}

#admin-view .appointments-zone {
  min-width: 0;
}

#admin-view .appointments-calendar-main {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

#admin-view .appointments-calendar-rail,
#admin-view .appointments-filter-rail,
#admin-view .appointments-context-rail {
  margin-bottom: 0;
  border-radius: 18px;
  border: 1px solid rgba(15, 30, 54, 0.08);
  box-shadow: 0 16px 36px rgba(15, 30, 54, 0.08);
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(248,250,252,0.98) 100%);
}

#admin-view .appointments-calendar-rail .admin-card-body,
#admin-view .appointments-filter-rail .admin-card-body,
#admin-view .appointments-context-rail .admin-card-body {
  padding: 11px 12px 10px;
}

#admin-view .appointments-context-drawer-overlay {
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  z-index: 240;
  display: flex;
  justify-content: flex-end;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

#admin-view .appointments-context-drawer-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#admin-view .appointments-context-drawer {
  width: min(440px, calc(100vw - 28px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height));
  padding: 14px 12px 14px 0;
  transform: translateX(28px);
  transition: transform 0.2s ease;
}

#admin-view .appointments-context-drawer.is-open {
  transform: translateX(0);
}

#admin-view .appointments-context-drawer-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 22px 0 0 22px;
  border: 1px solid rgba(15, 30, 54, 0.08);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(248,250,252,0.98) 100%);
  overflow: hidden;
}

#admin-view .appointments-context-drawer-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 16px 18px 12px;
  border-bottom: 1px solid #E5EDF5;
}

#admin-view .appointments-context-drawer-close {
  position: relative;
  z-index: 2;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
  font-size: 1.15rem;
  line-height: 1;
  flex: 0 0 auto;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#admin-view .appointments-context-drawer-close:hover {
  background: #EEF4FF;
  color: #0F1E36;
}

#admin-view #appointment-modal.calendar-drawer-hosted {
  position: static;
  inset: auto;
  z-index: auto;
  display: flex !important;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 0;
  background: transparent;
}

#admin-view #appointment-modal.calendar-drawer-hosted .owner-appointment-modal {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: none;
  max-height: 100%;
  height: auto;
  min-height: 100%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

#admin-view #appointment-modal.calendar-drawer-hosted .owner-appointment-modal-head {
  display: none;
}

#admin-view #appointment-modal.calendar-drawer-hosted .owner-appointment-modal-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  height: auto;
  padding: 16px 18px 20px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

#admin-view #appointment-modal.calendar-drawer-hosted .owner-appointment-actions {
  margin-top: auto;
  position: sticky;
  bottom: 0;
  z-index: 1;
  padding-top: 12px;
  padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 2px);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0) 0%, rgba(248, 250, 252, 0.96) 24%, rgba(248, 250, 252, 0.99) 100%);
}

#admin-view .appointments-context-drawer[data-mode="block-time"] {
  width: min(760px, calc(100vw - 28px));
}

#admin-view .blocked-modal-shell.calendar-drawer-hosted {
  position: static;
  z-index: auto;
  width: 100%;
  max-height: none;
  height: 100%;
  padding: 16px 18px 20px;
  overflow: auto;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

#admin-view .blocked-modal-shell.calendar-drawer-hosted .blocked-page-head {
  display: none;
}

#admin-view #atab-blocked.is-calendar-blocked-modal-open {
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  z-index: 242;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 18px;
  overflow: hidden;
  background: transparent;
}

#admin-view #atab-blocked.is-calendar-blocked-modal-open .blocked-modal-backdrop {
  display: block;
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  border: 0;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  cursor: pointer;
}

#admin-view #atab-blocked.is-calendar-blocked-modal-open .blocked-modal-shell {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100vw - 36px));
  max-height: calc(100vh - var(--admin-shell-topbar-height) - 28px);
  padding: 20px;
  overflow: auto;
  border: 1px solid rgba(15, 30, 54, 0.08);
  border-radius: 24px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(248,250,252,0.98) 100%);
}

#admin-view #atab-blocked.is-calendar-blocked-modal-open .blocked-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view #atab-blocked.is-calendar-blocked-modal-open .blocked-page-head__actions,
#admin-view #atab-blocked.is-calendar-blocked-modal-open .blocked-modal-close {
  display: inline-flex;
}

#admin-view #atab-appointments .appointments-page-head--compact {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

#admin-view .appointments-shell .appointments-page-head--compact {
  padding: 0 !important;
  margin: 0 0 0 !important;
  min-height: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

#admin-view #atab-appointments .appointments-page-head-compact-title {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 0 1px;
}

#admin-view #atab-appointments .appointments-page-head--compact .admin-page-head__title {
  font-size: 1.34rem;
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: 800;
  color: #0B1220;
}

#admin-view #atab-appointments .appointments-page-head--compact .admin-page-head__brand,
#admin-view #atab-appointments .appointments-page-head--compact .admin-page-head__eyebrow,
#admin-view #atab-appointments .appointments-page-head--compact .admin-page-head__subtitle,
#admin-view #atab-appointments .appointments-page-head--compact .admin-page-head__icon {
  display: none !important;
}

#admin-view #atab-appointments .appointments-head-actions {
  margin-left: auto;
}

#admin-view #atab-appointments .appointments-head-refresh {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#admin-view #atab-appointments .appointments-head-refresh-status {
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  color: #64748B;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

#admin-view #atab-appointments .appointments-head-refresh-status[data-state="loading"] {
  color: #0F766E;
}

#admin-view #atab-appointments .appointments-head-refresh-status[data-state="error"] {
  color: #B45309;
}

#admin-view #atab-appointments .appointments-head-refresh-btn {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(203, 213, 225, 0.9);
  border-radius: 999px;
  background: rgba(255,255,255,0.92);
  color: #475569;
  font-size: 0.82rem;
  line-height: 1;
  padding: 0;
}

#admin-view #atab-appointments .appointments-head-refresh-btn:hover {
  background: rgba(248,250,252,0.98);
  border-color: rgba(148, 163, 184, 0.9);
}

#admin-view .appointments-calendar-toolbar-card {
  border-radius: 0;
  border: none;
  box-shadow: none;
  background: transparent;
}

#admin-view .appointments-calendar-toolbar-card .admin-card-body {
  padding: 0;
}

#admin-view .appointments-filter-rail-head,
#admin-view .appointments-context-rail-head,
#admin-view .appointments-list-head {
  display: flex;
  flex-direction: column;
  gap: 1px;
  margin-bottom: 2px;
}

#admin-view .appointments-filter-rail-title,
#admin-view .appointments-list-head-title {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.985rem;
  font-weight: 800;
  color: #0F1E36;
  letter-spacing: -0.02em;
}

#admin-view .appointments-filter-rail-copy,
#admin-view .appointments-list-head-copy {
  font-family: Inter, sans-serif;
  font-size: 0.74rem;
  line-height: 1.3;
  color: #64748B;
}

#admin-view .appointments-list-head-copy:empty {
  display: none;
}

#admin-view .appointments-calendar-toolbar {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

#admin-view .appointments-calendar-toolbar-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2px 10px;
  flex-wrap: nowrap;
}

#admin-view .appointments-calendar-command-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  width: 100%;
  flex-wrap: wrap;
}

#admin-view .appointments-calendar-toolbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  margin-left: auto;
}

#admin-view .appointments-calendar-toolbar-actions .btn-sm,
#admin-view .appointments-calendar-toolbar-actions .btn-sm-ghost {
  min-height: 32px;
}

#admin-view .appointments-calendar-toolbar-actions .appointments-head-refresh {
  padding-left: 8px;
  margin-left: 2px;
  border-left: 1px solid rgba(203, 213, 225, 0.86);
}

#admin-view .appointments-calendar-day-btn,
#admin-view .appointments-calendar-today-btn {
  min-width: 0;
  min-height: 30px;
}

#admin-view .appointments-calendar-day-btn {
  min-width: 32px;
  padding: 0;
  border-radius: 8px;
  font-size: 0.82rem;
  line-height: 1;
}

#admin-view .appointments-calendar-today-btn {
  padding-inline: 11px;
  border-radius: 999px;
}

#admin-view .appointments-day-head {
  display: none;
}

#admin-view .appointments-calendar-toolbar-bottom {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1px 8px;
  flex-wrap: nowrap;
}

#admin-view .appointments-calendar-toolbar-date-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px 10px;
  min-width: 0;
}

#admin-view .appointments-calendar-date-control {
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
  max-width: min(620px, 100%);
  flex: 1 1 auto;
}

#admin-view .appointments-view-switcher {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border: 1px solid rgba(203, 213, 225, 0.96);
  border-radius: 999px;
  background: rgba(255,255,255,0.98);
  box-shadow: 0 4px 14px rgba(15, 30, 54, 0.05);
  flex: 0 1 auto;
}

#admin-view .appointments-grid-display-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 4px 10px 4px 12px;
  border: 1px solid rgba(203, 213, 225, 0.96);
  border-radius: 999px;
  background: rgba(255,255,255,0.98);
  box-shadow: 0 4px 14px rgba(15, 30, 54, 0.05);
  flex: 0 0 auto;
}

#admin-view .appointments-grid-display-label {
  font-family: Inter, sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  color: #64748B;
  white-space: nowrap;
}

#admin-view .appointments-grid-display-select {
  min-height: 26px;
  padding: 4px 24px 4px 8px;
  border: 1px solid rgba(203, 213, 225, 0.92);
  border-radius: 999px;
  background-color: rgba(248,250,252,0.96);
  background-image:
    linear-gradient(45deg, transparent 50%, #475569 50%),
    linear-gradient(135deg, #475569 50%, transparent 50%);
  background-position:
    calc(100% - 14px) calc(50% - 2px),
    calc(100% - 10px) calc(50% - 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  color: #0F172A;
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.1;
  appearance: none;
  cursor: pointer;
}

#admin-view .appointments-grid-display-select:disabled {
  color: #94A3B8;
  background-color: rgba(248,250,252,0.72);
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(148,163,184,0.9) 50%),
    linear-gradient(135deg, rgba(148,163,184,0.9) 50%, transparent 50%);
  cursor: default;
  opacity: 0.86;
}

#admin-view .appointments-view-switcher-btn {
  min-height: 30px;
  padding: 4px 10px;
  border: none;
  border-radius: 999px;
  background: transparent;
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  color: #475569;
  cursor: pointer;
  white-space: nowrap;
}

#admin-view .appointments-view-switcher-btn.is-active {
  background: #0F1E36;
  color: #FFFFFF;
  box-shadow: 0 4px 10px rgba(15, 30, 54, 0.16);
}

#admin-view .appointments-view-switcher-btn[disabled] {
  opacity: 0.58;
  cursor: default;
}

#admin-view .appointments-date-picker {
  position: relative;
  align-self: auto;
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
}

#admin-view .appointments-date-picker summary {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  list-style: none;
  cursor: pointer;
  width: 100%;
  min-width: min(320px, 100%);
  padding: 7px 16px 7px 14px;
  border: 1px solid rgba(191, 201, 214, 0.94);
  border-left: none;
  border-right: none;
  border-radius: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.995) 0%, rgba(248,250,252,0.985) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.92),
    0 8px 18px rgba(15, 30, 54, 0.055);
  font-family: Inter, sans-serif;
  color: #0F172A;
}

#admin-view .appointments-date-picker summary::-webkit-details-marker {
  display: none;
}

#admin-view .appointments-date-picker-body {
  position: absolute;
  inset-inline-start: 0;
  top: calc(100% + 6px);
  z-index: 14;
  width: min(284px, calc(100vw - 56px));
  margin-top: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  background: rgba(255,255,255,0.985);
  box-shadow: 0 12px 24px rgba(15, 30, 54, 0.09);
}

#admin-view .appointments-date-picker-summary {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  flex: 1 1 auto;
}

#admin-view .appointments-date-picker-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: #334155;
  flex: 0 0 auto;
}

#admin-view .appointments-date-picker-icon svg {
  width: 19px;
  height: 19px;
  stroke: currentColor;
  stroke-width: 1.8;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#admin-view .appointments-calendar-selected {
  font-family: Manrope, Inter, sans-serif;
  font-size: 1.03rem;
  font-weight: 800;
  line-height: 1.08;
  color: #0F172A;
  letter-spacing: -0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-calendar-day-btn {
  min-height: 42px;
  min-width: 42px;
  padding: 0 12px;
  border: 1px solid rgba(191, 201, 214, 0.94);
  background: linear-gradient(180deg, rgba(255,255,255,0.995) 0%, rgba(248,250,252,0.985) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.92),
    0 8px 18px rgba(15, 30, 54, 0.055);
  color: #0F172A;
  font-size: 1rem;
  font-weight: 700;
}

#admin-view .appointments-calendar-day-btn-prev {
  border-radius: 15px 0 0 15px;
}

#admin-view .appointments-calendar-day-btn-next {
  border-radius: 0 15px 15px 0;
}

#admin-view .appointments-calendar-today-btn {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 999px;
  border-color: rgba(203, 213, 225, 0.84);
  background: rgba(255,255,255,0.76);
  color: #475569;
  font-size: 0.72rem;
  font-weight: 700;
  white-space: nowrap;
}

#admin-view .appointments-calendar-today-btn[hidden] {
  display: none !important;
}

#admin-view .appointments-zone-left .appointments-toolbar.toolbar {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}

#admin-view .appointments-zone-left .appointments-toolbar-search input,
#admin-view .appointments-zone-left #apt-status-filter {
  width: 100%;
}

#admin-view .appointments-zone-left .appointments-toolbar-filters {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .appointments-zone-left .appointments-toolbar-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 14px;
}

#admin-view .appointments-zone-left #appointments-summary-strip,
#admin-view .appointments-zone-left .appointments-summary-strip {
  align-items: stretch;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid #E5EDF5;
}

#admin-view .appointments-zone-left #appointments-summary-strip .appointments-summary-chips,
#admin-view .appointments-zone-left .appointments-summary-chips {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
}

#admin-view .appointments-zone-left #appointments-summary-strip .appointments-summary-card,
#admin-view .appointments-zone-left .appointments-summary-card {
  width: 100%;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 12px;
}

#admin-view .appointments-zone-left #appointments-summary-strip .appointments-range-controls,
#admin-view .appointments-zone-left .appointments-range-controls {
  width: 100%;
  margin-left: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#admin-view .appointments-zone-left .appointments-range-button {
  width: 100%;
  justify-content: center;
}

#admin-view .appointments-zone-left .appointments-custom-date-wrap {
  grid-column: 1 / -1;
}

#admin-view .appointments-zone-left .appointments-custom-date-wrap input[type="date"] {
  width: 100%;
}

#admin-view .appointments-zone-center {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

#admin-view .appointments-day-head {
  margin-bottom: 0;
}

#admin-view .appointments-calendar-nav {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 4px;
  margin-bottom: 0;
}

#admin-view .appointments-calendar-month-label {
  display: none;
}

#admin-view .appointments-date-picker .appointments-calendar-month-label {
  text-align: left;
}

#admin-view .appointments-calendar-nav-current {
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 0.65rem;
  font-weight: 600;
  color: #64748B;
}

#admin-view .appointments-calendar-nav-btn,
#admin-view .appointments-calendar-today-btn {
  min-width: 0;
}

#admin-view .appointments-calendar-nav-btn {
  min-width: 28px;
  min-height: 24px;
  padding: 0;
  border-radius: 8px;
  font-size: 0.82rem;
  line-height: 1;
}

#admin-view .appointments-calendar-today-btn {
  width: auto;
  min-height: 26px;
  padding-inline: 7px;
}

#admin-view .appointments-mini-calendar {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .appointments-mini-calendar-weekdays,
#admin-view .appointments-mini-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

#admin-view .appointments-mini-calendar-weekdays span {
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #94A3B8;
}

#admin-view .appointments-mini-calendar-day {
  position: relative;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  align-items: center;
  justify-items: center;
  gap: 2px;
  aspect-ratio: 1 / 1;
  min-height: 34px;
  border: 1px solid #D7E0EA;
  border-radius: 8px;
  background: #FFFFFF;
  padding: 6px 2px 4px;
  color: #0F1E36;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
}

#admin-view .appointments-mini-calendar-day:hover {
  background: #F8FAFC;
  border-color: #B8C7D9;
}

#admin-view .appointments-mini-calendar-day.is-selected {
  border-color: #1D4ED8;
  background: #EAF2FF;
  box-shadow: inset 0 0 0 1px #1D4ED8;
}

#admin-view .appointments-mini-calendar-day.is-today:not(.is-selected) {
  border-color: #93C5FD;
  box-shadow: inset 0 0 0 1px #93C5FD;
}

#admin-view .appointments-mini-calendar-day.is-outside-month {
  background: #F8FAFC;
  color: #94A3B8;
  opacity: 0.72;
}

#admin-view .appointments-mini-calendar-day-number {
  font-family: Manrope, Inter, sans-serif;
  align-self: center;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1;
}

#admin-view .appointments-mini-calendar-day-count {
  min-width: 6px;
  min-height: 6px;
  border-radius: 999px;
  background: #1D4ED8;
  font-family: Inter, sans-serif;
  font-size: 0;
  font-weight: 700;
  line-height: 1;
}

#admin-view .appointments-mini-calendar-day:not(.has-appointments) .appointments-mini-calendar-day-count {
  background: transparent;
  color: transparent;
}

#admin-view .appointments-mini-calendar-day.has-appointments.is-selected .appointments-mini-calendar-day-count {
  background: #1D4ED8;
}

#admin-view .appointments-mini-calendar-day.is-outside-month .appointments-mini-calendar-day-count {
  background: #94A3B8;
}

#admin-view .appointments-support-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 4px 8px;
  padding: 0;
  min-width: 0;
  flex: 1 1 100%;
}

#admin-view .appointments-support-toolbar .appointments-toolbar.toolbar {
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search input {
  width: 100%;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search {
  position: relative;
  flex: 1 1 240px;
  min-width: 0;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
  opacity: 0.48;
  pointer-events: none;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search input,
#admin-view .appointments-support-toolbar .appointments-toolbar-filters select,
#admin-view .appointments-support-toolbar .appointments-toolbar-filters .btn-sm-ghost,
#admin-view .appointments-support-toolbar .appointments-advanced-filters summary {
  min-height: 30px;
  border-radius: 9px;
  font-size: 0.72rem;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search input {
  min-height: 30px;
  height: 30px;
  padding: 0 11px 0 34px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.14);
  background: #ffffff;
  color: #0f172a;
  font-size: 11px;
  font-weight: 600;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
}

#admin-view #apt-search-filter {
  padding-left: 34px !important;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search input::placeholder {
  color: rgba(15, 23, 42, 0.42);
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search input:focus {
  outline: none;
  border-color: rgba(19, 86, 189, 0.4);
  box-shadow: 0 0 0 4px rgba(19, 86, 189, 0.08);
}

#admin-view .appointments-support-toolbar .appointments-toolbar-search.is-open input {
  border-bottom-left-radius: 14px;
  border-bottom-right-radius: 14px;
}

#admin-view .appointments-toolbar-search-suggestions-region[hidden] {
  display: none !important;
}

#admin-view .appointments-toolbar-search-suggestions-region {
  position: absolute;
  inset: calc(100% + 6px) 0 auto 0;
  z-index: 20;
}

#admin-view .appointments-toolbar-search-dropdown {
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.12);
  overflow: hidden;
}

#admin-view .appointments-toolbar-search-list {
  display: flex;
  flex-direction: column;
  padding: 6px;
}

#admin-view .appointments-toolbar-search-row {
  width: 100%;
  text-align: left;
}

#admin-view .appointments-toolbar-search-status {
  padding: 12px 14px;
  color: #475569;
  font-size: 12px;
  font-weight: 600;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-filters {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 0 1 auto;
  flex-wrap: nowrap;
  min-width: 0;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-filters select {
  min-width: 110px;
  max-width: 126px;
  flex: 0 1 auto;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-filters .btn-sm-ghost,
#admin-view .appointments-support-toolbar button[onclick*="clearAptFilters"] {
  flex: 0 0 auto;
  white-space: nowrap;
  padding-inline: 7px;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-meta {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

#admin-view .appointments-support-toolbar .appointments-toolbar-meta:empty,
#admin-view .appointments-toolbar-count:empty {
  display: none;
}

#admin-view .appointments-summary-strip {
  flex: 0 0 auto;
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
  min-height: 0;
  align-self: center;
  padding-top: 0;
}

#admin-view .appointments-summary-strip .appointments-advanced-filters > summary {
  padding: 6px 10px;
  border: 1px solid rgba(215, 226, 238, 0.96);
  border-radius: 10px;
  background: rgba(248,250,252,0.96);
  color: #475569;
}

#admin-view .appointments-summary-quiet {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
}

#admin-view .appointments-summary-strip:empty {
  display: none;
}

#admin-view .appointments-summary-quiet-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-family: Inter, sans-serif;
  font-size: 0.72rem;
  line-height: 1.35;
  color: #64748B;
}

#admin-view .appointments-advanced-filters-meta {
  margin-bottom: 5px;
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  line-height: 1.35;
  color: #64748B;
}

#admin-view .appointments-advanced-filters {
  margin-top: 0;
  border-top: none;
  padding-top: 0;
}

#admin-view .appointments-advanced-filters summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  list-style: none;
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: #475569;
  padding: 0;
}

#admin-view .appointments-advanced-filters summary::-webkit-details-marker {
  display: none;
}

#admin-view .appointments-advanced-filters summary::after {
  content: '+';
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  border: 1px solid #CBD5E1;
  color: #64748B;
  font-size: 0.8rem;
  line-height: 1;
}

#admin-view .appointments-advanced-filters[open] summary {
  margin-bottom: 8px;
}

#admin-view .appointments-advanced-filters[open] summary::after {
  content: '\2212';
}

#admin-view .appointments-advanced-filters .appointments-range-controls {
  justify-content: flex-start;
  gap: 8px;
  margin-left: 0;
}

#admin-view .appointments-advanced-filters .appointments-range-button {
  padding: 5px 12px;
  font-size: 0.8rem;
}

#admin-view .appointments-group-list {
  min-width: 0;
  margin-top: -1px;
}

#admin-view .appointments-day-grid-card {
  border-radius: 18px;
  border: 1px solid rgba(15, 30, 54, 0.07);
  box-shadow: 0 10px 26px rgba(15, 30, 54, 0.045);
}

#admin-view .appointments-day-grid-card .admin-card-body {
  padding: 3px 6px 4px;
}

#admin-view .appointments-day-grid-shell {
  overflow-x: hidden;
  overflow-y: visible;
}

#admin-view .appointments-day-grid-scroll,
#admin-view .appointments-team-day-scroll {
  max-height: calc(100vh - 154px);
  min-height: 420px;
  scrollbar-gutter: stable;
}

#admin-view .appointments-day-grid-scroll {
  overflow-y: auto;
  overflow-x: hidden;
  padding-inline-end: 2px;
}

#admin-view .appointments-team-day-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .appointments-calendar-horizontal-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: min(100%, 540px);
  margin-left: auto;
  padding: 10px 14px;
  position: sticky;
  top: 8px;
  z-index: 18;
  border: 1px solid rgba(191, 219, 254, 0.95);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 32px rgba(15, 30, 54, 0.1), 0 2px 10px rgba(59, 130, 246, 0.1);
  backdrop-filter: blur(12px);
}

#admin-view .appointments-calendar-horizontal-nav[hidden] {
  display: none !important;
}

#admin-view .appointments-calendar-horizontal-nav-copy {
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.35;
  color: #1E3A8A;
  letter-spacing: 0.01em;
  max-width: 240px;
}

#admin-view .appointments-calendar-horizontal-nav-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}

#admin-view .appointments-calendar-horizontal-nav-btn {
  min-width: 116px;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 0.77rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  color: #0F172A;
  background: rgba(239, 246, 255, 0.92);
  border: 1px solid rgba(147, 197, 253, 0.95);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.72);
}

#admin-view .appointments-calendar-horizontal-nav-btn[disabled] {
  opacity: 0.42;
  cursor: default;
}

#admin-view .appointments-calendar-horizontal-nav-quiet {
  justify-content: flex-end;
  width: auto;
  max-width: 100%;
  gap: 8px;
  padding: 4px 0 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

#admin-view .appointments-calendar-horizontal-nav-quiet .appointments-calendar-horizontal-nav-actions {
  margin-left: auto;
  gap: 8px;
}

#admin-view .appointments-calendar-horizontal-nav-quiet .appointments-calendar-horizontal-nav-btn {
  min-width: 38px;
  min-height: 34px;
  padding: 0;
  border-radius: 999px;
  font-size: 0.86rem;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(203, 213, 225, 0.96);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.76);
}

#admin-view .appointments-calendar-horizontal-nav-btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

#admin-view .appointments-team-day-scroll {
  overflow-x: auto;
  overflow-y: auto;
  padding-bottom: 2px;
  background: linear-gradient(180deg, rgba(247,250,252,0.94) 0%, rgba(241,245,249,0.7) 100%);
  border-radius: 16px;
  scroll-behavior: smooth;
}

#admin-view .appointments-team-day-board {
  --appointments-team-column-width: 168px;
  position: relative;
  display: grid;
  grid-template-columns: 54px repeat(var(--appointments-team-day-columns), minmax(var(--appointments-team-column-width), 1fr));
  grid-template-rows: auto minmax(var(--appointments-day-grid-height), auto);
  min-width: calc(54px + (var(--appointments-team-day-columns) * var(--appointments-team-column-width)));
  gap: 4px;
}

#admin-view .appointments-team-day-corner {
  position: sticky;
  top: 0;
  z-index: 6;
  background: linear-gradient(180deg, rgba(244,247,251,0.98) 0%, rgba(248,250,252,0.98) 100%);
  border-bottom: 1px solid rgba(203, 213, 225, 0.92);
  box-shadow: 0 1px 0 rgba(226, 232, 240, 0.88);
}

#admin-view .appointments-team-day-header-cell {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  padding: 11px 12px 10px;
  border-top: 3px solid var(--barber-accent-border, rgba(148, 163, 184, 0.38));
  border-bottom: 1px solid rgba(203, 213, 225, 0.82);
  background: linear-gradient(180deg, var(--barber-accent-tint, rgba(100, 116, 139, 0.08)) 0%, rgba(252,253,255,0.995) 24%, rgba(244,247,251,0.985) 100%);
  box-shadow: 0 1px 0 rgba(226, 232, 240, 0.9), 0 12px 24px rgba(15, 30, 54, 0.07);
}

#admin-view .appointments-team-day-header-name {
  font-family: Manrope, Inter, sans-serif;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.87rem;
  font-weight: 800;
  color: #0B1220;
  letter-spacing: -0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-team-day-header-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  flex: 0 0 auto;
  background: var(--barber-accent, #64748B);
  box-shadow: 0 0 0 1px rgba(255,255,255,0.72), 0 0 0 1px var(--barber-accent-border, rgba(148, 163, 184, 0.38));
}

#admin-view .appointments-team-day-header-meta {
  font-family: Inter, sans-serif;
  font-size: 0.67rem;
  font-weight: 700;
  color: #475569;
  letter-spacing: 0.01em;
  text-transform: none;
}

#admin-view .appointments-team-day-hours {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  padding-top: 1px;
  background: linear-gradient(180deg, rgba(244,247,251,0.95) 0%, rgba(248,250,252,0.88) 100%);
  border-radius: 14px;
}

#admin-view .appointments-team-day-hours .appointments-day-grid-hour-label {
  left: 0;
  transform: translateY(calc(-50% + 16px));
}

#admin-view .appointments-team-day-column {
  min-width: 0;
  padding-bottom: 1px;
}

#admin-view .appointments-team-day-canvas {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  border: 1px solid rgba(203, 213, 225, 0.82);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(252,253,255,0.98) 0%, rgba(255,255,255,0.995) 100%);
  overflow: hidden;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.78),
    inset 1px 0 0 rgba(255,255,255,0.5),
    0 8px 20px rgba(15, 30, 54, 0.035);
}

#admin-view .appointments-team-day-canvas .appointments-day-grid-hour {
  position: static;
}

#admin-view .appointments-team-day-canvas .appointments-day-grid-hour-line {
  left: 0;
  right: 0;
}

#admin-view .appointments-team-day-card.is-empty .appointments-team-day-canvas {
  background:
    linear-gradient(180deg, rgba(248,250,252,0.94) 0%, rgba(255,255,255,0.98) 100%);
}

#admin-view .appointments-team-day-empty-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px 2px;
}

#admin-view .appointments-team-day-empty-state {
  min-height: 260px;
}

#admin-view .appointments-week-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .appointments-week-scroll {
  overflow-x: auto;
  overflow-y: auto;
  padding-bottom: 2px;
  background: linear-gradient(180deg, rgba(247,250,252,0.94) 0%, rgba(241,245,249,0.7) 100%);
  border-radius: 16px;
  scroll-behavior: smooth;
}

#admin-view .appointments-week-board {
  --appointments-week-column-width: 188px;
  --appointments-week-header-offset: 50px;
  position: relative;
  display: grid;
  grid-template-columns: 54px repeat(var(--appointments-week-columns), minmax(var(--appointments-week-column-width), 1fr));
  grid-template-rows: auto minmax(var(--appointments-day-grid-height), auto);
  min-width: calc(54px + (var(--appointments-week-columns) * var(--appointments-week-column-width)));
  gap: 4px;
}

#admin-view .appointments-week-board.is-fit-week {
  --appointments-week-header-offset: 46px;
  width: 100%;
  min-width: 0;
  grid-template-columns: 48px repeat(var(--appointments-week-columns), minmax(0, 1fr));
  gap: 2px;
}

#admin-view .appointments-week-corner,
#admin-view .appointments-week-column-spacer {
  position: sticky;
  top: 0;
  z-index: 6;
  min-height: 0;
  border-bottom: 1px solid rgba(203, 213, 225, 0.92);
  background: linear-gradient(180deg, rgba(244,247,251,0.98) 0%, rgba(248,250,252,0.98) 100%);
  box-shadow: 0 1px 0 rgba(226, 232, 240, 0.88);
}

#admin-view .appointments-week-column-spacer {
  padding: 0;
  color: transparent;
  user-select: none;
}

#admin-view .appointments-week-hours {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  background: linear-gradient(180deg, rgba(244,247,251,0.95) 0%, rgba(248,250,252,0.88) 100%);
  border-radius: 14px;
}

#admin-view .appointments-week-hours .appointments-day-grid-hour-label {
  left: 0;
  transform: translateY(calc(var(--appointments-week-header-offset) - 50%));
}

#admin-view .appointments-week-hours .appointments-day-grid-half-hour-label {
  transform: translateY(calc(var(--appointments-week-header-offset) - 50%));
}

#admin-view .appointments-week-hours .appointments-day-grid-hour-line,
#admin-view .appointments-week-hours .appointments-day-grid-half-hour-line,
#admin-view .appointments-week-hours .appointments-day-grid-quarter-hour-line {
  transform: translateY(var(--appointments-week-header-offset));
}

#admin-view .appointments-week-day-column {
  min-width: 0;
  padding-bottom: 1px;
}

#admin-view .appointments-week-day-header {
  position: sticky;
  top: 0;
  z-index: 10;
  border-bottom: 1px solid rgba(203, 213, 225, 0.82);
  background: linear-gradient(180deg, rgba(252,253,255,0.995) 0%, rgba(244,247,251,0.985) 100%);
  box-shadow: 0 1px 0 rgba(226, 232, 240, 0.9), 0 12px 24px rgba(15, 30, 54, 0.07);
}

#admin-view .appointments-week-day-header-button {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  min-width: 0;
  padding: 11px 12px 10px;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

#admin-view .appointments-week-board.is-fit-week .appointments-week-day-header-button {
  gap: 2px;
  padding: 8px 8px 7px;
}

#admin-view .appointments-week-day-label {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.87rem;
  font-weight: 800;
  color: #0B1220;
  letter-spacing: -0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-week-board.is-fit-week .appointments-week-day-label {
  font-size: 0.76rem;
}

#admin-view .appointments-week-day-meta {
  font-family: Inter, sans-serif;
  font-size: 0.67rem;
  font-weight: 700;
  color: #475569;
  letter-spacing: 0.01em;
}

#admin-view .appointments-week-board.is-fit-week .appointments-week-day-meta {
  font-size: 0.58rem;
}

#admin-view .appointments-week-day-column.is-selected-day .appointments-week-day-header {
  box-shadow: 0 0 0 1px rgba(15, 30, 54, 0.12), 0 12px 24px rgba(15, 30, 54, 0.07);
}

#admin-view .appointments-week-day-column.is-selected-day .appointments-week-day-header-button {
  background: linear-gradient(180deg, rgba(239,246,255,0.96) 0%, rgba(244,247,251,0.985) 100%);
}

#admin-view .appointments-week-day-column.is-today .appointments-week-day-label {
  color: #1D4ED8;
}

#admin-view .appointments-week-day-canvas {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  border: 1px solid rgba(203, 213, 225, 0.82);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(252,253,255,0.98) 0%, rgba(255,255,255,0.995) 100%);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), inset 1px 0 0 rgba(255,255,255,0.5), 0 8px 20px rgba(15, 30, 54, 0.035);
}

#admin-view .appointments-week-board.is-fit-week .appointments-week-hours,
#admin-view .appointments-week-board.is-fit-week .appointments-week-day-canvas {
  border-radius: 12px;
}

#admin-view .appointments-week-board.is-fit-week .appointments-day-grid-hour-label {
  font-size: 0.61rem;
  padding-inline-end: 4px;
}

#admin-view .appointments-week-board.is-fit-week .appointments-day-grid-half-hour-label {
  display: none;
}

#admin-view .appointments-week-day-canvas .appointments-day-grid-hour {
  position: static;
}

#admin-view .appointments-week-day-canvas .appointments-day-grid-hour-line {
  left: 0;
  right: 0;
}

#admin-view .appointments-week-day-empty-note,
#admin-view .appointments-week-empty-note {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 12px;
  font-family: Inter, sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  color: #64748B;
  text-align: center;
}

#admin-view .appointments-week-empty-note {
  padding: 10px 12px 2px;
  flex-direction: column;
  gap: 4px;
}

#admin-view .appointments-week-shell.is-fit-week .appointments-calendar-horizontal-nav {
  justify-content: flex-end;
  padding: 4px 0 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

#admin-view .appointments-week-shell.is-fit-week .appointments-calendar-horizontal-nav-actions {
  margin-left: auto;
}

#admin-view .appointments-week-shell.is-fit-week .appointments-calendar-horizontal-nav-btn {
  min-width: 84px;
  min-height: 34px;
  padding-inline: 10px;
}

#admin-view .appointments-week-scroll:focus-visible,
#admin-view .appointments-team-day-scroll:focus-visible,
#admin-view .appointments-calendar-horizontal-nav-btn:focus-visible {
  outline: 2px solid rgba(29, 78, 216, 0.82);
  outline-offset: 2px;
}

#admin-view .appointments-week-scroll:focus-visible,
#admin-view .appointments-team-day-scroll:focus-visible {
  box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.14);
}

#admin-view .appointments-month-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .appointments-month-grid-head,
#admin-view .appointments-month-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

#admin-view .appointments-month-grid-weekday {
  padding: 0 4px 2px;
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #94A3B8;
}

#admin-view .appointments-month-cell {
  min-height: 118px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 10px 9px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,0.995) 0%, rgba(248,250,252,0.98) 100%);
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

#admin-view .appointments-month-cell:hover {
  border-color: rgba(148, 163, 184, 0.78);
  box-shadow: 0 8px 20px rgba(15, 30, 54, 0.05);
}

#admin-view .appointments-month-cell.is-selected {
  border-color: #1D4ED8;
  box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.72), 0 6px 16px rgba(29, 78, 216, 0.08);
  background: linear-gradient(180deg, rgba(239,246,255,0.98) 0%, rgba(248,250,252,0.98) 100%);
}

#admin-view .appointments-month-cell.is-today:not(.is-selected) {
  border-color: #93C5FD;
  box-shadow: inset 0 0 0 1px #93C5FD;
}

#admin-view .appointments-month-cell.is-outside-month {
  background: linear-gradient(180deg, rgba(248,250,252,0.95) 0%, rgba(241,245,249,0.88) 100%);
  color: #94A3B8;
}

#admin-view .appointments-month-cell-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

#admin-view .appointments-month-cell-day {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1;
  color: #0F172A;
}

#admin-view .appointments-month-cell.is-outside-month .appointments-month-cell-day {
  color: #94A3B8;
}

#admin-view .appointments-month-cell.is-today .appointments-month-cell-day {
  color: #1D4ED8;
}

#admin-view .appointments-month-cell-count {
  min-width: 22px;
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 7px;
  border-radius: 999px;
  background: rgba(226, 232, 240, 0.92);
  color: #334155;
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
  line-height: 1;
}

#admin-view .appointments-month-cell.has-appointments.is-selected .appointments-month-cell-count {
  background: rgba(29, 78, 216, 0.12);
  color: #1D4ED8;
}

#admin-view .appointments-month-cell-body {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  flex-direction: column;
  gap: 6px;
}

#admin-view .appointments-month-preview {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "time label"
    "time service";
  gap: 1px 8px;
  padding: 6px 7px;
  border-radius: 10px;
  border-left: 3px solid var(--apt-service-color, #CBD5E1);
  background: linear-gradient(180deg, var(--apt-service-tint, rgba(241,245,249,0.92)) 0%, rgba(255,255,255,0.98) 100%);
  min-width: 0;
}

#admin-view .appointments-month-preview-time {
  grid-area: time;
  align-self: start;
  font-family: Inter, sans-serif;
  font-size: 0.64rem;
  font-weight: 800;
  color: #334155;
  white-space: nowrap;
}

#admin-view .appointments-month-preview-label {
  grid-area: label;
  min-width: 0;
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.74rem;
  font-weight: 800;
  color: #0F172A;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-month-preview-service {
  grid-area: service;
  min-width: 0;
  font-family: Inter, sans-serif;
  font-size: 0.66rem;
  font-weight: 700;
  color: #64748B;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-day-grid {
  position: relative;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 7px;
  min-width: 0;
}

#admin-view .appointments-day-grid-hours {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  padding-top: 1px;
  background: linear-gradient(180deg, rgba(244,247,251,0.95) 0%, rgba(248,250,252,0.88) 100%);
  border-radius: 14px;
}

#admin-view .appointments-day-grid-hour {
  position: static;
}

#admin-view .appointments-day-grid-hour-label {
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: none;
  color: #1E293B;
  z-index: 2;
  white-space: nowrap;
  padding-inline-end: 8px;
  background: rgba(248,250,252,0.96);
}

#admin-view .appointments-day-grid-half-hour-label {
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  font-family: Inter, sans-serif;
  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #64748B;
  z-index: 2;
  white-space: nowrap;
  padding-inline-end: 8px;
  background: rgba(248,250,252,0.92);
}

#admin-view .appointments-day-grid-sub-hour-label {
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  font-family: Inter, sans-serif;
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #94A3B8;
  z-index: 2;
  white-space: nowrap;
  padding-inline-end: 8px;
  background: rgba(248,250,252,0.92);
}

#admin-view .appointments-day-grid-canvas {
  position: relative;
  min-height: var(--appointments-day-grid-height);
  border: 1px solid rgba(203, 213, 225, 0.82);
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(252,253,255,0.98) 0%, rgba(255,255,255,0.995) 100%);
  overflow: hidden;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.78),
    inset 1px 0 0 rgba(255,255,255,0.5),
    0 8px 20px rgba(15, 30, 54, 0.035);
}

#admin-view .appointments-day-grid-canvas-slots {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0) 9%, rgba(255,255,255,0) 100%);
}

#admin-view .appointments-day-grid-card.is-empty .appointments-day-grid-canvas {
  background:
    linear-gradient(180deg, rgba(248,250,252,0.94) 0%, rgba(255,255,255,0.98) 100%);
}

#admin-view .appointments-calendar-slot-action {
  position: absolute;
  z-index: 5;
  display: none;
  flex-direction: column;
  gap: 6px;
  min-width: 156px;
  padding: 8px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  background: rgba(255,255,255,0.96);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(8px);
}

#admin-view .appointments-calendar-slot-action.is-open {
  display: flex;
}

#admin-view .appointments-calendar-slot-action-btn {
  appearance: none;
  border: 0;
  border-radius: 10px;
  padding: 8px 10px;
  text-align: left;
  font-family: Inter, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  color: #0F172A;
  background: rgba(226, 232, 240, 0.56);
  cursor: pointer;
  transition: background 0.14s ease, color 0.14s ease, transform 0.14s ease;
}

#admin-view .appointments-calendar-slot-action-btn:hover,
#admin-view .appointments-calendar-slot-action-btn:focus-visible {
  background: rgba(191, 219, 254, 0.72);
  color: #1D4ED8;
  transform: translateY(-1px);
}

#admin-view .appointments-calendar-slot-action-btn.is-secondary {
  background: rgba(248, 250, 252, 0.92);
  color: #334155;
}

#admin-view #am-client-section.is-edit-mode .owner-appointment-client-lookup > label,
#admin-view #am-client-section.is-edit-mode #am-client-search,
#admin-view #am-client-section.is-edit-mode #am-client-status,
#admin-view #am-client-section.is-edit-mode #am-client-results,
#admin-view #am-client-section.is-edit-mode #am-client-identity-fields {
  display: none;
}

#admin-view #am-client-section.is-edit-mode .owner-appointment-selected-client {
  display: flex;
  margin-top: 0;
}

#admin-view #am-client-section.is-edit-mode .owner-appointment-section-copy {
  color: #475569;
}

#admin-view #am-client-section.is-edit-mode .owner-appointment-selected-client-clear {
  display: none;
}

#admin-view .appointments-day-grid-hour-line {
  position: absolute;
  height: 1px;
  background: rgba(226, 232, 240, 0.82);
  z-index: 2;
}

#admin-view .appointments-day-grid-hour-line-full {
  left: 0;
  right: 0;
}

#admin-view .appointments-day-grid-hour-line-tick {
  left: 26px;
  right: 0;
  background: linear-gradient(90deg, rgba(191, 219, 254, 0.42) 0%, rgba(226, 232, 240, 0.9) 16%, rgba(226, 232, 240, 0.82) 100%);
}

#admin-view .appointments-day-grid-half-hour-line {
  position: absolute;
  height: 1px;
  opacity: 0.95;
  z-index: 2;
}

#admin-view .appointments-day-grid-half-hour-line-full {
  left: 0;
  right: 0;
  background: linear-gradient(90deg, rgba(226, 232, 240, 0.34) 0%, rgba(226, 232, 240, 0.52) 100%);
}

#admin-view .appointments-day-grid-half-hour-line-tick {
  left: 26px;
  right: 0;
  background: linear-gradient(90deg, rgba(219, 234, 254, 0.18) 0%, rgba(203, 213, 225, 0.58) 16%, rgba(226, 232, 240, 0.44) 100%);
}

#admin-view .appointments-day-grid-quarter-hour-line {
  position: absolute;
  height: 1px;
  opacity: 1;
  z-index: 2;
}

#admin-view .appointments-day-grid-quarter-hour-line-full {
  left: 0;
  right: 0;
  background: linear-gradient(90deg, rgba(100, 116, 139, 0.18) 0%, rgba(100, 116, 139, 0.26) 100%);
}

#admin-view .appointments-day-grid-quarter-hour-line-tick {
  left: 26px;
  right: 0;
  background: linear-gradient(90deg, rgba(100, 116, 139, 0.12) 0%, rgba(100, 116, 139, 0.24) 16%, rgba(100, 116, 139, 0.18) 100%);
}

#admin-view .appointments-day-grid-sub-hour-line {
  position: absolute;
  height: 1px;
  opacity: 1;
  z-index: 2;
}

#admin-view .appointments-day-grid-sub-hour-line-full {
  left: 0;
  right: 0;
  background: linear-gradient(90deg, rgba(148, 163, 184, 0.24) 0%, rgba(148, 163, 184, 0.42) 100%);
}

#admin-view .appointments-day-grid-sub-hour-line-tick {
  left: 26px;
  right: 0;
  background: linear-gradient(90deg, rgba(148, 163, 184, 0.14) 0%, rgba(148, 163, 184, 0.28) 16%, rgba(148, 163, 184, 0.22) 100%);
}

#admin-view .appointments-grid-offhours {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(203, 213, 225, 0.48) 0%, rgba(226, 232, 240, 0.68) 100%);
}

#admin-view .appointments-grid-offhours-full {
  inset: 0;
  background:
    repeating-linear-gradient(
      -45deg,
      rgba(203, 213, 225, 0.54) 0 12px,
      rgba(226, 232, 240, 0.82) 12px 24px
    );
}

#admin-view .appointments-grid-blocked-overlay {
  position: absolute;
  left: 8px;
  right: 8px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  padding: 6px 9px 6px 11px;
  border-radius: 12px;
  border: 1px dashed rgba(148, 163, 184, 0.72);
  border-left: 4px solid rgba(120, 53, 15, 0.58);
  background:
    linear-gradient(180deg, rgba(255, 251, 235, 0.88) 0%, rgba(255, 247, 237, 0.92) 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
  pointer-events: none;
  overflow: hidden;
}

#admin-view .appointments-grid-blocked-overlay-full {
  inset: 8px;
  height: auto !important;
  justify-content: flex-start;
  padding-top: 12px;
}

#admin-view .appointments-grid-blocked-overlay-title {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.12;
  color: #78350F;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-blocked-overlay-badge {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 3px;
  padding: 1px 6px;
  border-radius: 999px;
  background: rgba(219, 234, 254, 0.92);
  color: #1D4ED8;
  font-family: Inter, sans-serif;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#admin-view .appointments-grid-blocked-overlay-meta {
  font-family: Inter, sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  line-height: 1.15;
  color: #92400E;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-block {
  --apt-service-color: #2563EB;
  --apt-service-tint: rgba(37, 99, 235, 0.26);
  --apt-service-tint-strong: rgba(37, 99, 235, 0.46);
  --apt-service-border: rgba(37, 99, 235, 0.5);
  position: absolute;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 8px 10px 8px 11px;
  border-radius: 16px;
  border: 1px solid var(--apt-service-border);
  border-left-width: 4px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.32) 0%, rgba(255,255,255,0.56) 100%),
    linear-gradient(135deg, var(--apt-service-tint-strong) 0%, var(--apt-service-tint-strong) 52%, var(--apt-service-tint) 88%, rgba(255,255,255,0.12) 100%);
  box-shadow:
    0 10px 24px rgba(15, 30, 54, 0.1),
    0 1px 0 rgba(255,255,255,0.66) inset;
  min-width: 0;
  overflow: hidden;
  cursor: pointer;
  transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s, background 0.15s;
}

#admin-view .appointments-grid-block:hover {
  transform: translateY(-1px);
  box-shadow:
    0 16px 30px rgba(15, 30, 54, 0.12),
    0 1px 0 rgba(255,255,255,0.66) inset;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0.5) 100%),
    linear-gradient(135deg, var(--apt-service-tint-strong) 0%, var(--apt-service-tint-strong) 58%, var(--apt-service-tint) 92%, rgba(255,255,255,0.1) 100%);
}

#admin-view .appointments-grid-block.is-selected {
  box-shadow:
    0 18px 34px rgba(37, 99, 235, 0.16),
    0 1px 0 rgba(255,255,255,0.66) inset;
  outline: 2px solid rgba(37, 99, 235, 0.22);
  outline-offset: -1px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.26) 0%, rgba(255,255,255,0.48) 100%),
    linear-gradient(135deg, var(--apt-service-tint-strong) 0%, var(--apt-service-tint-strong) 58%, var(--apt-service-tint) 92%, rgba(255,255,255,0.1) 100%);
}

#admin-view .appointments-grid-block-time {
  font-family: Inter, sans-serif;
  font-size: 0.72rem;
  font-weight: 800;
  color: #0F172A;
  white-space: nowrap;
}

#admin-view .appointments-grid-block-time-primary {
  display: block;
  min-width: 0;
}

#admin-view .appointments-grid-block-time-secondary {
  display: block;
  min-width: 0;
  font-size: 0.7rem;
  font-weight: 700;
  color: #334155;
}

#admin-view .appointments-grid-block-time-meta {
  letter-spacing: 0.005em;
  text-transform: none;
}

#admin-view .appointments-grid-block-client {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.94rem;
  font-weight: 800;
  line-height: 1.12;
  color: #0B1324;
  letter-spacing: -0.02em;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

#admin-view .appointments-grid-block-client-compact {
  -webkit-line-clamp: 1;
}

#admin-view .appointments-grid-block-summary {
  display: flex;
  align-items: baseline;
  flex: 0 0 auto;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.84rem;
  line-height: 1.12;
  color: #0B1324;
}

#admin-view .appointments-grid-block-summary-client {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 800;
  color: #0B1324;
}

#admin-view .appointments-grid-block-summary-separator {
  flex: 0 0 auto;
  color: rgba(30, 41, 59, 0.72);
  font-weight: 700;
}

#admin-view .appointments-grid-block-summary-service {
  flex: 0 1 auto;
  max-width: 48%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
  color: #334155;
}

#admin-view .appointments-grid-block-service {
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  flex: 0 0 auto;
  line-height: 1.2;
  color: #243041;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

#admin-view .appointments-grid-block-inline-meta {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  font-family: Inter, sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.15;
  color: #334155;
}

#admin-view .appointments-grid-block-inline-time,
#admin-view .appointments-grid-block-inline-service {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#admin-view .appointments-grid-block-inline-time {
  color: #0F172A;
  font-weight: 800;
  flex: 0 1 auto;
}

#admin-view .appointments-grid-block-inline-service {
  color: #475569;
  flex: 1 1 auto;
}

#admin-view .appointments-grid-block-inline-separator {
  color: rgba(51, 65, 85, 0.7);
  flex: 0 0 auto;
}

#admin-view .appointments-grid-block-meta {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 auto;
  gap: 4px;
  flex-wrap: nowrap;
  margin-top: auto;
  min-width: 0;
}

#admin-view .appointments-grid-block-time {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-block-barber {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-family: Inter, sans-serif;
  font-size: 0.72rem;
  color: #64748B;
}

#admin-view .appointments-grid-block-barber-row {
  display: flex;
  align-items: center;
  min-width: 0;
}

#admin-view .appointments-grid-block-barber span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-block-status {
  flex: 0 0 auto;
}

#admin-view .appointments-grid-block-status .appointment-status-pill {
  padding: 2px 5px;
  border-radius: 999px;
  font-size: 0.53rem;
  letter-spacing: 0.02em;
  box-shadow: none;
  background: rgba(255,255,255,0.58);
  border-color: rgba(148, 163, 184, 0.18);
}

#admin-view .appointments-grid-block-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1px;
}

#admin-view .appointments-grid-block-actions .apt-row-details {
  background: rgba(255,255,255,0.78);
  border-color: rgba(203, 213, 225, 0.82);
  color: #334155;
}

#admin-view .appointments-grid-block.is-busy {
  gap: 4px;
  padding-inline: 11px 10px;
}

#admin-view .appointments-grid-block.is-dense {
  gap: 1px;
  padding: 7px 9px 7px 10px;
}

#admin-view .appointments-grid-block.is-dense .appointments-grid-block-client {
  font-size: 0.86rem;
}

#admin-view .appointments-grid-block.is-dense .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-dense .appointments-grid-block-barber {
  font-size: 0.72rem;
}

#admin-view .appointments-grid-block.is-dense .appointments-grid-block-inline-meta {
  font-size: 0.66rem;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-client {
  -webkit-line-clamp: 1;
  font-size: 0.9rem;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-inline-meta {
  font-size: 0.67rem;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-barber-row {
  display: none;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-actions {
  display: none;
}

#admin-view .appointments-grid-block.is-compact .appointments-grid-block-status {
  display: none;
}

#admin-view .appointments-grid-block.is-duration-45 {
  gap: 2px;
  padding-block: 6px;
}

#admin-view .appointments-grid-block.is-duration-45 .appointments-grid-block-client {
  -webkit-line-clamp: 1;
  font-size: 0.88rem;
}

#admin-view .appointments-grid-block.is-duration-45 .appointments-grid-block-inline-meta {
  font-size: 0.67rem;
}

#admin-view .appointments-grid-block.is-short {
  gap: 2px;
  padding: 5px 8px 5px 9px;
  justify-content: flex-start;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-short .appointments-grid-block-actions {
  display: none;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-client {
  -webkit-line-clamp: 1;
  font-size: 0.82rem;
  line-height: 1.08;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-inline-meta {
  font-size: 0.64rem;
  gap: 3px;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-meta {
  display: none;
}

#admin-view .appointments-grid-block.is-short .appointments-grid-block-status {
  display: none;
}

#admin-view .appointments-grid-block.is-content-time-primary,
#admin-view .appointments-grid-block.is-content-time-client {
  justify-content: flex-start;
}

#admin-view .appointments-grid-block.is-content-time-primary .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-time-client .appointments-grid-block-meta {
  display: none;
}

#admin-view .appointments-grid-block.is-content-time-primary .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-time-client .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-grid-block-blocked {
  border-color: rgba(146, 64, 14, 0.28);
  border-left-color: rgba(120, 53, 15, 0.7);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.34) 0%, rgba(255,255,255,0.58) 100%),
    linear-gradient(135deg, rgba(251, 191, 36, 0.22) 0%, rgba(251, 191, 36, 0.22) 48%, rgba(251, 146, 60, 0.16) 100%);
  box-shadow:
    0 8px 20px rgba(120, 53, 15, 0.1),
    0 1px 0 rgba(255,255,255,0.66) inset;
}

#admin-view .appointments-grid-block-blocked .appointments-grid-block-client {
  color: #78350F;
}

#admin-view .appointments-grid-block-blocked .appointments-grid-block-service,
#admin-view .appointments-grid-block-blocked .appointments-grid-block-time-secondary,
#admin-view .appointments-grid-block-blocked .appointments-grid-block-barber {
  color: #92400E;
}

#admin-view .appointments-grid-block:focus-visible {
  outline: 2px solid rgba(15, 30, 54, 0.28);
  outline-offset: -1px;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block {
  border-left-width: 4px;
  padding-inline-end: 8px;
  border-radius: 15px;
  gap: 2px;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block-client {
  font-size: 0.89rem;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block-service {
  -webkit-line-clamp: 1;
  font-size: 0.72rem;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block-meta {
  gap: 2px;
  font-size: 0.66rem;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-compact {
  gap: 2px;
  padding: 5px 7px 5px 8px;
  justify-content: flex-start;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-compact .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-compact .appointments-grid-block-meta {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-compact .appointments-grid-block-status {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-short .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-short .appointments-grid-block-client {
  font-size: 0.8rem;
  line-height: 1.08;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-short .appointments-grid-block-time-primary {
  font-size: 0.67rem;
  font-weight: 800;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-short .appointments-grid-block-status {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-duration-45 {
  justify-content: flex-start;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-duration-45 .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-duration-45 .appointments-grid-block-meta {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-time-primary .appointments-grid-block-client,
#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-time-client .appointments-grid-block-client {
  font-size: 0.8rem;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-time-primary .appointments-grid-block-time-primary,
#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-time-client .appointments-grid-block-time-primary {
  font-size: 0.67rem;
}

#admin-view .appointments-grid-block.is-content-day-summary,
#admin-view .appointments-grid-block.is-content-day-summary-time,
#admin-view .appointments-grid-block.is-content-team-summary,
#admin-view .appointments-grid-block.is-content-team-stack {
  justify-content: flex-start;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-meta {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-actions,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-actions,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-actions,
#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-actions {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-summary,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-summary,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-summary {
  display: flex;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-client {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-time,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-time,
#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-time {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-time {
  display: block;
}

#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-service {
  display: -webkit-box;
}

#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-service {
  -webkit-line-clamp: 1;
}

#admin-view .appointments-grid-block.is-content-team-stack .appointments-grid-block-client {
  -webkit-line-clamp: 1;
}

#admin-view .appointments-grid-block.is-content-day-summary .appointments-grid-block-summary,
#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-summary,
#admin-view .appointments-grid-block.is-content-team-summary .appointments-grid-block-summary {
  font-size: 0.82rem;
}

#admin-view .appointments-grid-block.is-short.is-content-team-summary {
  padding-block: 5px;
}

#admin-view .appointments-grid-block.is-short.is-content-team-summary .appointments-grid-block-summary,
#admin-view .appointments-grid-block.is-short.is-content-day-summary .appointments-grid-block-summary {
  font-size: 0.75rem;
}

#admin-view .appointments-grid-block.is-short.is-content-team-summary .appointments-grid-block-summary-service,
#admin-view .appointments-grid-block.is-short.is-content-day-summary .appointments-grid-block-summary-service {
  display: inline;
}

#admin-view .appointments-grid-block.is-short.is-content-team-summary .appointments-grid-block-summary-separator,
#admin-view .appointments-grid-block.is-short.is-content-day-summary .appointments-grid-block-summary-separator {
  display: inline;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-summary .appointments-grid-block-summary,
#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack .appointments-grid-block-client,
#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack .appointments-grid-block-service {
  max-width: 100%;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-summary .appointments-grid-block-summary {
  font-size: 0.76rem;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack {
  padding-block: 5px;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack .appointments-grid-block-client {
  font-size: 0.85rem;
  line-height: 1.08;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack .appointments-grid-block-service {
  font-size: 0.7rem;
  line-height: 1.08;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack.is-short .appointments-grid-block-service {
  display: none;
}

#admin-view .appointments-team-day-canvas .appointments-grid-block.is-content-team-stack.is-short .appointments-grid-block-client {
  font-size: 0.8rem;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-time-secondary {
  margin-top: 1px;
  color: #243041;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-meta {
  display: flex;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-service {
  display: -webkit-box;
  color: #243041;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-status {
  display: inline-flex;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-client {
  color: #0B1324;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-time-secondary {
  flex: 0 0 auto;
}

#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-content-day-full .appointments-grid-block-actions {
  display: none;
}

#admin-view .appointments-grid-block.is-content-day-full {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0.42) 100%),
    linear-gradient(135deg, var(--apt-service-tint-strong) 0%, var(--apt-service-tint-strong) 62%, var(--apt-service-tint) 96%, rgba(255,255,255,0.08) 100%);
}

#admin-view .appointments-grid-block.is-content-day-summary-time .appointments-grid-block-time-secondary {
  font-size: 0.68rem;
}

#admin-view .appointments-grid-block.is-content-week-fit,
#admin-view .appointments-grid-block.is-content-week-fit-short {
  padding: 4px 5px 4px;
  gap: 0;
  justify-content: flex-start;
  background: linear-gradient(180deg, color-mix(in srgb, var(--apt-service-tint, #dbeafe) 12%, #ffffff 88%) 0%, color-mix(in srgb, var(--apt-service-tint, #dbeafe) 20%, #ffffff 80%) 100%);
  border: 1px solid color-mix(in srgb, var(--apt-service-color, #60a5fa) 20%, #dbe7f5 80%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.035);
}

#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-meta,
#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-barber-row,
#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-actions,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-actions,
#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-client,
#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-service,
#admin-view .appointments-grid-block.is-content-week-fit .appointments-grid-block-time,
#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-time {
  display: none;
}

#admin-view .appointments-grid-block-week-fit {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1px;
  min-width: 0;
  width: 100%;
}

#admin-view .appointments-grid-block-week-fit-client {
  max-width: 100%;
  font-family: Inter, sans-serif;
  font-size: 0.65rem;
  font-weight: 550;
  line-height: 1.1;
  color: #0B1324;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-block-week-fit-time {
  max-width: 100%;
  font-family: Inter, sans-serif;
  font-size: 0.57rem;
  font-weight: 450;
  line-height: 1.05;
  color: #475569;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .appointments-grid-block-week-fit-service {
  max-width: 100%;
  font-family: Inter, sans-serif;
  font-size: 0.51rem;
  font-weight: 400;
  line-height: 1.02;
  color: #94A3B8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0.96;
}

#admin-view .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-week-fit-service {
  display: none;
}

#admin-view .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit,
#admin-view .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit-short {
  border-radius: 5px;
}

#admin-view .appointments-context-panel.is-empty {
  min-height: 108px;
}

#admin-view .appointments-context-empty {
  min-height: 108px;
  border-color: rgba(203, 213, 225, 0.68);
  background: linear-gradient(180deg, rgba(252, 253, 255, 0.5) 0%, rgba(246, 248, 252, 0.74) 100%);
  opacity: 0.88;
}

#admin-view .appointments-day-grid-empty {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px 24px;
  pointer-events: none;
}

#admin-view .appointments-day-grid-empty-card {
  max-width: 320px;
  border: 1px dashed rgba(148, 163, 184, 0.75);
  border-radius: 18px;
  background: rgba(255,255,255,0.9);
  box-shadow: 0 10px 24px rgba(15, 30, 54, 0.06);
  padding: 18px 18px 16px;
  text-align: center;
  pointer-events: auto;
}

#admin-view .appointments-day-grid-empty-title {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.98rem;
  font-weight: 800;
  color: #0F1E36;
  margin-bottom: 6px;
}

#admin-view .appointments-day-grid-empty-copy {
  font-family: Inter, sans-serif;
  font-size: 0.84rem;
  line-height: 1.55;
  color: #64748B;
}

#admin-view .appointments-day-grid-empty-action {
  margin-top: 14px;
}

#admin-view .appointments-day-schedule {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view .appointments-day-entry {
  display: grid;
  grid-template-columns: minmax(98px, 110px) minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  padding: 0;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #E2E8F0;
  box-shadow: 0 16px 34px rgba(15, 30, 54, 0.06);
  cursor: pointer;
  transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
}

#admin-view .appointments-day-entry:hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 36px rgba(15, 30, 54, 0.1);
}

#admin-view .appointments-day-entry.is-selected {
  border-color: rgba(37, 99, 235, 0.35);
  box-shadow: 0 20px 38px rgba(37, 99, 235, 0.12);
}

#admin-view .appointments-day-entry-time {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  padding: 16px 14px;
  background: linear-gradient(180deg, #F8FAFC 0%, #EEF4FF 100%);
  border-right: 1px solid #E2E8F0;
}

#admin-view .appointments-day-entry-start {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.95rem;
  font-weight: 800;
  color: #0F1E36;
}

#admin-view .appointments-day-entry-end {
  font-family: Inter, sans-serif;
  font-size: 0.76rem;
  color: #64748B;
}

#admin-view .appointments-day-entry-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 18px;
  min-width: 0;
}

#admin-view .appointments-day-entry-head,
#admin-view .appointments-day-entry-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .appointments-day-entry-client {
  font-family: Manrope, Inter, sans-serif;
  font-size: 1rem;
  font-weight: 800;
  color: #0F1E36;
  letter-spacing: -0.02em;
  min-width: 0;
}

#admin-view .appointments-day-entry-status {
  flex-shrink: 0;
}

#admin-view .appointments-day-entry-service {
  font-family: Inter, sans-serif;
  font-size: 0.87rem;
  line-height: 1.5;
  color: #475569;
}

#admin-view .appointments-day-entry-service span {
  color: #64748B;
  margin-left: 6px;
}

#admin-view .appointments-day-entry-barber {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, sans-serif;
  font-size: 0.82rem;
  color: #64748B;
}

#admin-view .appointments-day-empty-card {
  border-radius: 18px;
}

#admin-view .appointments-day-empty-card .admin-card-body {
  padding: 26px 24px;
}

#admin-view .appointments-day-empty-title {
  font-family: Manrope, Inter, sans-serif;
  font-size: 1rem;
  font-weight: 800;
  color: #0F1E36;
  margin-bottom: 6px;
}

#admin-view .appointments-day-empty-copy {
  font-family: Inter, sans-serif;
  font-size: 0.88rem;
  line-height: 1.6;
  color: #64748B;
}

#admin-view .appointments-day-empty-action {
  margin-top: 14px;
}

#admin-view .appointments-context-panel {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 14px 18px 18px;
}

#admin-view .appointments-context-panel.is-empty {
  min-height: 120px;
}

#admin-view .appointments-context-empty {
  min-height: 120px;
  border: 1px dashed rgba(203, 213, 225, 0.82);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(250,252,255,0.66) 0%, rgba(244,247,250,0.82) 100%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 5px;
  padding: 12px 12px;
}

#admin-view .appointments-context-empty-title,
#admin-view .appointments-context-date {
  font-family: Manrope, Inter, sans-serif;
  font-size: 0.95rem;
  font-weight: 800;
  color: #0F1E36;
}

#admin-view .appointments-context-empty-copy {
  font-family: Inter, sans-serif;
  font-size: 0.79rem;
  line-height: 1.5;
  color: #64748B;
}

#admin-view[data-active-admin-tab="appointments"] .admin-sms-setup-banner {
  display: none !important;
}

#admin-view .appointments-context-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .appointments-context-rail-head {
  padding-bottom: 9px;
  border-bottom: 1px solid #E5EDF5;
}

#admin-view .appointments-context-client {
  font-family: Manrope, Inter, sans-serif;
  font-size: 1.2rem;
  font-weight: 800;
  color: #0F1E36;
  letter-spacing: -0.02em;
}

#admin-view .appointments-context-service {
  font-family: Inter, sans-serif;
  font-size: 0.9rem;
  color: #334155;
}

#admin-view .appointments-context-service span {
  color: #64748B;
  margin-left: 6px;
}

#admin-view .appointments-context-status {
  display: flex;
}

#admin-view .appointments-context-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

#admin-view .appointments-context-cell {
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  padding: 12px 14px;
}

#admin-view .appointments-context-cell-wide {
  grid-column: 1 / -1;
}

#admin-view .appointments-context-label {
  font-family: Inter, sans-serif;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748B;
  margin-bottom: 6px;
}

#admin-view .appointments-context-value {
  font-family: Inter, sans-serif;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #0F1E36;
}

#admin-view .appointments-context-barber {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#admin-view .appointments-context-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 4px;
  border-top: 1px solid #E5EDF5;
}

#admin-view .appointments-context-state-copy {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #FEF2F2;
  border: 1px solid #FECACA;
  color: #B91C1C;
  font-size: 0.81rem;
  font-weight: 600;
  line-height: 1.45;
}

#admin-view .appointments-context-actions .apt-modal-action {
  flex: 1 1 calc(50% - 8px);
  justify-content: center;
}

#admin-view .appointments-context-actions .apt-modal-action {
  margin: 0;
}

#admin-view .appointments-context-actions .apt-modal-action-secondary {
  background: #F8FAFC;
}

#admin-view .appointments-group-list > * + * {
  margin-top: 12px;
}

#admin-view .appointments-toolbar-count {
  font-family: Inter, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .apt-row {
  display: grid;
  grid-template-columns: 72px 8px minmax(128px, 0.9fr) minmax(200px, 1.3fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid #F1F5F9;
  background: #FFFFFF;
  transition: background 0.15s;
  cursor: pointer;
  border-left: none !important;
  list-style: none;
}

#admin-view .apt-row:hover {
  background: #F8FAFC;
}

#admin-view .apt-row:focus-visible {
  outline: 2px solid rgba(15, 30, 54, 0.2);
  outline-offset: -2px;
}

#admin-view .apt-row:last-child {
  border-bottom: none;
}

#admin-view .apt-row::-webkit-details-marker {
  display: none;
}

#admin-view .apt-row::marker {
  content: "";
}

#admin-view .apt-row-time {
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0F1E36;
  min-width: 72px;
  flex-shrink: 0;
}

#admin-view .apt-row-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view .apt-row-client {
  font-family: Inter, sans-serif;
  font-size: 0.9375rem;
  font-weight: 700;
  color: #0F1E36;
  min-width: 0;
}

#admin-view .apt-row-service {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #64748B;
  min-width: 0;
  line-height: 1.4;
}

#admin-view .apt-row-status {
  justify-self: end;
  min-width: max-content;
}

#admin-view .apt-row-details {
  justify-self: end;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 4px 12px;
  background: #FFFFFF;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
}

#admin-view .apt-row-details:hover {
  background: #F8FAFC;
}

#admin-view .apt-date-group {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 16px;
  padding: 0 !important;
}

#admin-view .apt-date-group-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
  margin: 0;
}

#admin-view .apt-date-group-header-date {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .apt-date-group-header-count {
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  color: #64748B;
}

#admin-view .apt-row-item {
  border-left: none !important;
  border-radius: 0;
  margin-bottom: 0;
  padding: 0;
  background: #FFFFFF;
}

@media (max-width: 1180px) {
  #admin-view .appointments-workspace {
    display: block;
  }

  #admin-view .appointments-context-drawer {
    width: min(420px, calc(100vw - 18px));
    padding-right: 0;
  }

  #admin-view .appointments-calendar-toolbar-top,
  #admin-view .appointments-calendar-toolbar-bottom {
    grid-template-columns: minmax(0, 1fr);
    display: grid;
  }

  #admin-view .appointments-calendar-toolbar-actions {
    justify-content: flex-start;
  }

  #admin-view .appointments-calendar-command-tools,
  #admin-view .appointments-calendar-toolbar-date-row {
    width: 100%;
  }

  #admin-view .appointments-calendar-date-control {
    max-width: 100%;
  }

  #admin-view .appointments-view-switcher {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-radius: 16px;
  }

  #admin-view .appointments-grid-display-control {
    width: 100%;
    justify-content: space-between;
  }

  #admin-view .appointments-team-day-board {
    --appointments-team-column-width: 170px;
  }

  #admin-view .appointments-month-cell {
    min-height: 108px;
    padding: 9px 8px 8px;
  }

  #admin-view .appointments-support-toolbar .appointments-toolbar.toolbar {
    align-items: stretch;
    flex-wrap: wrap;
  }

  #admin-view .appointments-support-toolbar .appointments-toolbar-filters {
    flex-wrap: wrap;
  }

  #admin-view .appointments-support-toolbar .appointments-toolbar-meta {
    align-items: flex-start;
    flex-direction: column;
  }

  #admin-view .appointments-context-empty,
  #admin-view .appointments-context-panel {
    min-height: 176px;
  }
}

@media (max-width: 820px) {
  #admin-view .appointments-workspace {
    display: block;
  }

  #admin-view .appointments-calendar-command-tools,
  #admin-view .appointments-calendar-toolbar-actions,
  #admin-view .appointments-calendar-toolbar-date-row {
    width: 100%;
  }

  #admin-view .appointments-calendar-toolbar-top,
  #admin-view .appointments-calendar-toolbar-bottom,
  #admin-view .appointments-support-toolbar,
  #admin-view .appointments-calendar-toolbar-date-row {
    flex-wrap: wrap;
  }

  #admin-view .appointments-calendar-toolbar-actions {
    margin-left: 0;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  #admin-view .appointments-calendar-toolbar-actions .appointments-head-refresh {
    padding-left: 0;
    margin-left: 0;
    border-left: none;
  }

  #admin-view .appointments-view-switcher {
    width: 100%;
    gap: 4px;
  }

  #admin-view .appointments-grid-display-control {
    width: 100%;
    justify-content: space-between;
  }

  #admin-view .appointments-view-switcher-btn {
    flex: 1 1 auto;
    text-align: center;
  }

  #admin-view .appointments-date-picker summary {
    width: 100%;
    min-width: 0;
  }

  #admin-view .appointments-date-picker-summary {
    gap: 8px;
  }

  #admin-view .appointments-calendar-date-control {
    width: 100%;
  }

  #admin-view .appointments-calendar-day-btn {
    min-width: 40px;
    padding: 0 10px;
  }

  #admin-view .appointments-date-picker-body {
    position: static;
    width: 100%;
    margin-top: 10px;
  }

  #admin-view .appointments-context-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view .appointments-context-drawer-overlay {
    align-items: stretch;
    justify-content: stretch;
  }

  #admin-view .appointments-context-drawer {
    width: 100%;
    padding: 0;
    height: calc(100vh - var(--admin-shell-topbar-height));
  }

  #admin-view .appointments-context-drawer-card {
    border-radius: 0;
  }

  #admin-view .appointments-context-actions .apt-modal-action {
    flex-basis: 100%;
  }

  #admin-view .appointments-mini-calendar-day {
    min-height: 40px;
  }

  #admin-view .appointments-month-grid-head,
  #admin-view .appointments-month-grid {
    gap: 4px;
  }

  #admin-view .appointments-month-cell {
    min-height: 94px;
    padding: 8px 7px 7px;
    border-radius: 12px;
  }

  #admin-view .appointments-month-preview {
    padding: 5px 6px;
    gap: 1px 6px;
  }

  #admin-view .appointments-month-preview-time {
    font-size: 0.6rem;
  }

  #admin-view .appointments-month-preview-label {
    font-size: 0.7rem;
  }

  #admin-view .appointments-month-preview-service {
    font-size: 0.62rem;
  }

  #admin-view .appointments-day-grid {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 10px;
  }

  #admin-view .appointments-team-day-board {
    grid-template-columns: 52px repeat(var(--appointments-team-day-columns), minmax(164px, 1fr));
    min-width: calc(52px + (var(--appointments-team-day-columns) * 164px));
  }

  #admin-view .appointments-week-board {
    grid-template-columns: 52px repeat(var(--appointments-week-columns), minmax(164px, 1fr));
    min-width: calc(52px + (var(--appointments-week-columns) * 164px));
  }

  #admin-view .appointments-week-board.is-fit-week {
    grid-template-columns: 46px repeat(var(--appointments-week-columns), minmax(0, 1fr));
    min-width: 0;
  }

  #admin-view .appointments-grid-block {
    padding: 9px 10px 9px 12px;
  }

  #admin-view .appointments-day-grid-scroll,
  #admin-view .appointments-team-day-scroll,
  #admin-view .appointments-week-scroll {
    max-height: calc(100vh - 164px);
    min-height: 360px;
  }

  #admin-view .appointments-team-day-empty-note {
    align-items: flex-start;
    flex-direction: column;
  }

  #admin-view .appointments-calendar-horizontal-nav {
    width: 100%;
    padding: 8px 10px;
    top: 6px;
  }

  #admin-view .appointments-calendar-horizontal-nav-copy {
    font-size: 0.68rem;
    max-width: 180px;
  }

  #admin-view .appointments-calendar-horizontal-nav-btn {
    min-width: 96px;
    min-height: 38px;
    padding: 0 12px;
    font-size: 0.71rem;
  }

  #admin-view .appointments-calendar-horizontal-nav-quiet {
    width: auto;
    padding: 2px 0 0;
  }

  #admin-view .appointments-calendar-horizontal-nav-quiet .appointments-calendar-horizontal-nav-btn {
    min-width: 34px;
    min-height: 32px;
    padding: 0;
    font-size: 0.8rem;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-week-day-header-button {
    padding: 7px 6px 6px;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-week-day-label {
    font-size: 0.72rem;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-week-day-meta {
    font-size: 0.55rem;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit,
  #admin-view .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit-short {
    padding: 4px 5px;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-grid-block-week-fit-client {
    font-size: 0.64rem;
  }

  #admin-view .appointments-week-board.is-fit-week .appointments-grid-block-week-fit-service {
    display: none;
  }

  #admin-view .appointments-grid-block-actions {
    display: none;
  }

  #admin-view .appointments-support-toolbar .appointments-summary-chips,
  #admin-view .appointments-support-toolbar .appointments-range-controls {
    width: 100%;
  }

  #admin-view .appointments-summary-quiet-meta {
    flex-direction: column;
    gap: 4px;
  }

  #admin-view .appointments-day-entry {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  #admin-view .appointments-day-entry-time {
    border-right: none;
    border-bottom: 1px solid #E2E8F0;
  }

  #admin-view .appointments-day-entry-head,
  #admin-view .appointments-day-entry-meta {
    align-items: flex-start;
    flex-direction: column;
  }
}

#apt-detail-modal-overlay,
.apt-detail-modal-overlay {
  position: fixed;
  inset: var(--admin-shell-topbar-height, 58px) 0 0 0;
  background: rgba(15, 23, 42, 0.16) !important;
  z-index: 9999;
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  padding: 0;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

#apt-detail-modal-overlay[hidden],
.apt-detail-modal-overlay[hidden] {
  display: none !important;
}

#apt-detail-modal-overlay:not([hidden]) {
  display: flex !important;
}

.apt-detail-modal {
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(248,250,252,0.98) 100%);
  border-radius: 22px 0 0 22px;
  border: 1px solid rgba(15, 30, 54, 0.08);
  width: min(520px, calc(100vw - 24px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height, 58px));
  max-height: none;
  margin-left: auto;
  overflow: hidden;
  font-family: Inter, sans-serif;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  display: flex;
  flex-direction: column;
}

.apt-detail-modal-header {
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(244,247,252,0.98) 100%);
  padding: 18px 20px 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid #E5EDF5;
}

.apt-modal-date {
  font-size: 11px;
  font-weight: 500;
  color: #64748B;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.apt-modal-client {
  font-size: 20px;
  font-weight: 600;
  color: #0F1E36;
  margin-bottom: 2px;
}

.apt-modal-service {
  font-size: 13px;
  color: #64748B;
}

.apt-modal-header-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}

.apt-modal-close-btn {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1;
  color: #475569;
  background: #F8FBFF;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 999px;
  cursor: pointer;
  padding: 0;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.apt-modal-close-btn:hover,
.apt-modal-close-btn:focus-visible {
  background: #EEF4FF;
  border-color: rgba(148, 163, 184, 0.24);
  color: #0F1E36;
  transform: translateY(-1px);
}

.apt-modal-close-btn:focus-visible {
  outline: 2px solid rgba(37, 99, 235, 0.24);
  outline-offset: 2px;
}

.apt-modal-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-bottom: 1px solid #E2E8F0;
}

.apt-modal-info-cell {
  padding: 14px 20px;
  border-bottom: 1px solid #E2E8F0;
}

.apt-modal-info-cell:nth-child(odd) {
  border-right: 1px solid #E2E8F0;
}

.apt-modal-info-cell:nth-last-child(-n+2) {
  border-bottom: none;
}

.apt-modal-info-label {
  font-size: 11px;
  color: #64748B;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 4px;
}

.apt-modal-info-value {
  font-size: 15px;
  font-weight: 500;
  color: #0F1E36;
}

.apt-modal-contact-value {
  font-size: 13px;
  line-height: 1.6;
}

.apt-modal-barber-value {
  display: flex;
  align-items: center;
  gap: 8px;
}

.apt-modal-payment-row {
  padding: 14px 20px;
  border-bottom: 1px solid #E2E8F0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.apt-modal-actions {
  margin-top: auto;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  border-top: 1px solid #E5EDF5;
  background: rgba(255,255,255,0.92);
}

.apt-modal-state-copy {
  margin: 0 20px 4px;
  padding: 11px 13px;
  border-radius: 10px;
  background: #FEF2F2;
  border: 1px solid #FECACA;
  color: #B91C1C;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
  font-family: Inter, sans-serif;
}

.apt-modal-action {
  background: #FFFFFF;
  color: #0F1E36;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 7px 14px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

.apt-modal-action-primary {
  background: #0F1E36;
  color: #FFFFFF;
  border-color: #0F1E36;
}

.apt-modal-action-danger {
  color: #DC2626;
  border-color: #FECACA;
}

.apt-modal-action-muted {
  color: #64748B;
  font-weight: 400;
}

.apt-modal-action-danger-muted {
  color: #DC2626;
  border-color: #FECACA;
  font-weight: 400;
}

.apt-modal-action-break {
  flex-basis: 100%;
}

.apt-modal-action-spacer {
  flex: 1 1 auto;
  min-width: 0;
}

.apt-detail-modal .appointment-status-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
  font-family: Inter, sans-serif;
}

.apt-detail-modal .appointment-status-pill-confirmed {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

.apt-detail-modal .appointment-status-pill-pending,
.apt-detail-modal .appointment-status-pill-unpaid {
  background: #FFFBEB;
  color: #D97706;
  border: 1px solid #FDE68A;
}

.apt-detail-modal .appointment-status-pill-no-show,
.apt-detail-modal .appointment-status-pill-cancelled {
  background: #FEF2F2;
  color: #DC2626;
  border: 1px solid #FECACA;
}

.apt-detail-modal .appointment-status-pill-completed {
  background: #F1F5F9;
  color: #475569;
  border: 1px solid #CBD5E1;
}

.apt-modal-payment-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

.apt-modal-payment-pill-unpaid {
  background: #FFFBEB;
  color: #D97706;
  border: 1px solid #FDE68A;
}

.apt-modal-payment-pill-paid {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view #waitlist-stats-grid,
#admin-view .waitlist-stats,
#admin-view .waitlist-summary-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 24px;
}

#admin-view #waitlist-stats-grid .stat-card,
#admin-view .waitlist-stat-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 16px 20px;
  box-shadow: none;
}

#admin-view #waitlist-stats-grid .stat-card-label,
#admin-view .waitlist-stat-label {
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #64748B;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

#admin-view #waitlist-stats-grid .stat-card-value,
#admin-view .waitlist-stat-value {
  font-family: Inter, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #0F1E36;
  line-height: 1;
  margin-bottom: 4px;
}

#admin-view #waitlist-stats-grid .stat-card-sub,
#admin-view .waitlist-stat-sub {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 400;
  color: #64748B;
}

#admin-view #waitlist-test-match-btn,
#admin-view #waitlist-refresh-btn,
#admin-view button[onclick*="testWaitlist"],
#admin-view button[onclick*="testMatch"],
#admin-view button[onclick*="refreshWaitlist"],
#admin-view .waitlist-head-actions button {
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 6px 14px !important;
  background: #FFFFFF !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  text-transform: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

#admin-view .waitlist-head-actions button:hover,
#admin-view #waitlist-test-match-btn:hover,
#admin-view #waitlist-refresh-btn:hover {
  background: #F8FAFC !important;
}

#admin-view .waitlist-status-note,
#admin-view .waitlist-info-banner,
#admin-view .waitlist-phase-notice {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 12px 16px;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #64748B;
  margin-bottom: 24px;
  box-shadow: none;
}

#admin-view .waitlist-table-wrap .admin-table-header,
#admin-view .waitlist-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
  border-radius: 8px 8px 0 0;
}

#admin-view .waitlist-table-wrap .admin-table-title,
#admin-view .waitlist-section-label {
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #64748B;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#admin-view .waitlist-table-wrap .page-subtitle,
#admin-view .waitlist-section-helper {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 400;
  color: #9CA3AF;
}

#admin-view .waitlist-admin-table th,
#admin-view .waitlist-table th,
#admin-view .waitlist-active-table th,
#admin-view .waitlist-activity-table th {
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #64748B !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 10px 12px;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
}

#admin-view .waitlist-admin-table tr:hover td,
#admin-view .waitlist-table tr:hover td,
#admin-view .waitlist-active-table tr:hover td,
#admin-view .waitlist-activity-table tr:hover td {
  background: #F8FAFC;
}

#admin-view .waitlist-admin-table .action-btn.danger,
#admin-view .waitlist-remove-btn,
#admin-view button[onclick*="removeWaitlist"],
#admin-view button[onclick*="removeFromWaitlist"] {
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 4px 12px !important;
  background: #FFFFFF !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  text-transform: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

#admin-view .waitlist-admin-table .action-btn.danger:hover,
#admin-view .waitlist-remove-btn:hover,
#admin-view button[onclick*="removeWaitlist"]:hover,
#admin-view button[onclick*="removeFromWaitlist"]:hover {
  background: #FEF2F2 !important;
  color: #DC2626 !important;
  border-color: #FECACA !important;
}

#admin-view .waitlist-admin-table .waitlist-status-pill.is-muted,
#admin-view .waitlist-status-passed,
#admin-view .wl-status-passed {
  background: #F1F5F9;
  color: #475569;
  border: 1px solid #CBD5E1;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
}

#admin-view .waitlist-empty-state {
  text-align: center;
  padding: 24px 16px;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #9CA3AF;
}

#admin-view .svc-hero {
  background: #0F1E36;
  padding: 20px 28px 0;
  margin: -24px -24px 0;
}

#admin-view .svc-hero-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

#admin-view .svc-hero-left {
  display: flex;
  flex-direction: column;
}

#admin-view .svc-hero-eyebrow {
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,.35);
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

#admin-view .svc-hero-title {
  font-size: 28px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.5px;
}

#admin-view .svc-hero-sub {
  font-size: 13px;
  color: rgba(255,255,255,.4);
  margin-top: 2px;
}

#admin-view .svc-hero-actions {
  display: flex;
  gap: 8px;
  margin-top: 16px;
  margin-bottom: 24px;
}

#admin-view .svc-btn-white {
  background: #FFFFFF;
  color: #0F1E36;
  border: none;
  border-radius: 7px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view .svc-btn-outline-white {
  background: transparent;
  color: #FFFFFF;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 7px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view .svc-stat-strip {
  display: flex;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}

#admin-view .svc-stat-item {
  flex: 1;
  padding: 12px 18px;
  border-right: 1px solid rgba(255,255,255,.08);
}

#admin-view .svc-stat-item:last-child {
  border-right: none;
}

#admin-view .svc-stat-val {
  font-size: 22px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.5px;
}

#admin-view .svc-stat-label {
  font-size: 11px;
  color: rgba(255,255,255,.35);
  margin-top: 2px;
  font-weight: 500;
}

#admin-view .svc-buffer-bar {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 12px 18px;
  margin: 20px 0;
  display: flex;
  align-items: center;
  gap: 16px;
}

#admin-view .svc-buf-toggle-wrap {
  display: flex;
  align-items: center;
}

#admin-view .svc-buf-toggle-label {
  display: inline-flex;
  align-items: center;
}

#admin-view .svc-buf-toggle.toggle,
#admin-view .svc-buf-toggle {
  width: 36px;
  min-width: 36px;
  height: 20px;
  background: #CBD5E1;
  border-radius: 999px;
  position: relative;
  flex-shrink: 0;
  cursor: pointer;
  border: none;
}

#admin-view .svc-buf-toggle.on,
#admin-view .svc-buf-toggle.is-on {
  background: #2563EB;
}

#admin-view .svc-buf-toggle-dot {
  width: 16px;
  height: 16px;
  background: #FFFFFF;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: left .15s ease;
}

#admin-view .svc-buf-toggle.on .svc-buf-toggle-dot,
#admin-view .svc-buf-toggle.is-on .svc-buf-toggle-dot {
  left: 18px;
}

#admin-view .svc-buf-text {
  flex: 1;
}

#admin-view .svc-buf-title {
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .svc-buf-sub {
  font-size: 11px;
  color: #94A3B8;
  margin-top: 1px;
}

#admin-view .svc-buf-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

#admin-view .svc-buf-input {
  width: 72px !important;
  min-width: 72px !important;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 5px 24px 5px 8px !important;
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  text-align: center;
  box-sizing: border-box !important;
  font-family: Inter, sans-serif;
}

#admin-view #buffer-default-min {
  width: 72px !important;
  min-width: 72px !important;
  box-sizing: border-box !important;
  padding-right: 24px !important;
}

#admin-view .svc-buf-input::-webkit-outer-spin-button,
#admin-view .svc-buf-input::-webkit-inner-spin-button,
#admin-view #buffer-default-min::-webkit-outer-spin-button,
#admin-view #buffer-default-min::-webkit-inner-spin-button {
  margin: 0;
}

#admin-view .svc-buf-unit {
  font-size: 12px;
  color: #94A3B8;
}

#admin-view .svc-buf-save {
  background: #F1F5F9;
  color: #0F1E36;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view .services-menu-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  overflow: hidden;
}

#admin-view .services-menu-card .admin-card-body {
  padding: 0;
}

#admin-view .svc-body-cols {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 16px;
  align-items: start;
}

#admin-view .svc-left-col,
#admin-view .svc-right-col {
  min-width: 0;
}

#admin-view .svc-right-col {
  position: sticky;
  top: 20px;
}

#admin-view .svc-empty-state-panel {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 28px 24px;
  text-align: center;
}

#admin-view .svc-empty-state-title {
  font-size: 18px;
  font-weight: 700;
  color: #0F1E36;
  margin-bottom: 6px;
  font-family: Inter, sans-serif;
}

#admin-view .svc-empty-state-copy {
  font-size: 13px;
  color: #64748B;
  line-height: 1.5;
  margin-bottom: 18px;
  font-family: Inter, sans-serif;
}

#admin-view .svc-empty-state-actions {
  display: flex;
  justify-content: center;
  gap: 8px;
}

#admin-view .svc-editor-form-panel[hidden],
#admin-view .svc-empty-state-panel[hidden] {
  display: none !important;
}

#admin-view #atab-services .svc-editor-form-panel {
  display: none;
}

#admin-view #atab-services .services-drawer-overlay {
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  z-index: 239;
  border: 0;
  margin: 0;
  padding: 0;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

#admin-view #atab-services .services-drawer-overlay.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#admin-view #atab-services .svc-editor-form-panel.active {
  display: flex;
  flex-direction: column;
}

#admin-view #atab-services .svc-editor-form-panel.is-modal.active {
  position: fixed;
  top: var(--admin-shell-topbar-height);
  right: 0;
  width: min(760px, calc(100vw - 24px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height));
  overflow: hidden;
  z-index: 240;
  border-radius: 22px 0 0 22px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  margin: 0 !important;
  box-sizing: border-box !important;
}

#admin-view #atab-services .svc-editor-form-panel.is-modal.active .svc-panel-tabs,
#admin-view #atab-services .svc-editor-form-panel.is-modal.active .svc-panel-ctx {
  flex: 0 0 auto;
}

#admin-view #atab-services .svc-editor-form-panel.is-modal.active .svc-panel-tab-content {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

#admin-view #atab-services .svc-editor-form-panel.is-modal.active .svc-form-title-row {
  display: none;
}

#admin-view #atab-services .svc-drawer-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px 14px;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
}

#admin-view #atab-services .svc-drawer-copy {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-services .svc-drawer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
  font-size: 1.15rem;
  line-height: 1;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#admin-view #atab-services .svc-drawer-close:hover {
  background: #EEF4FF;
  color: #0F1E36;
}

#admin-view #atab-services .svc-drawer-close:focus-visible {
  background: #EEF4FF;
  color: #0F1E36;
  outline: 2px solid rgba(37, 99, 235, 0.28);
  outline-offset: 2px;
}

#admin-view .svc-panel {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

#admin-view .svc-panel-tabs {
  display: flex;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .svc-panel-tab {
  flex: 1;
  padding: 12px;
  font-size: 12px;
  font-weight: 600;
  color: #94A3B8;
  text-align: center;
  cursor: pointer;
  border: none;
  background: transparent;
  border-bottom: 2px solid transparent;
  font-family: Inter, sans-serif;
}

#admin-view .svc-panel-tab.active {
  color: #0F1E36;
  border-bottom-color: #0F1E36;
}

#admin-view .svc-panel-ctx {
  background: #0F1E36;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
}

#admin-view .svc-panel-ctx[hidden] {
  display: none !important;
}

#admin-view .svc-ctx-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  flex-shrink: 0;
  background: #94A3B8;
}

#admin-view .svc-ctx-name {
  font-size: 15px;
  font-weight: 700;
  color: #FFFFFF;
}

#admin-view .svc-ctx-meta {
  font-size: 12px;
  color: rgba(255,255,255,.45);
  margin-top: 1px;
}

#admin-view .svc-panel-tab-content {
  padding: 18px;
}

#admin-view .svc-panel-tab-content[hidden] {
  display: none !important;
}

#admin-view .svc-form-title-row {
  margin-bottom: 14px;
}

#admin-view .svc-panel-actions {
  display: flex;
  gap: 10px;
  margin-top: 8px;
  flex-wrap: wrap;
}

#admin-view .svc-panel-delete {
  margin-left: auto;
}

@media (max-width: 900px) {
  #admin-view #atab-services .svc-editor-form-panel.is-modal.active {
    width: min(100vw, 100%);
    border-radius: 0;
  }
}

#admin-view .svc-pricing-preview {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 12px 14px;
  margin-bottom: 14px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
}

#admin-view #svc-tab-edit .svc-pricing-preview {
  margin-bottom: 18px;
}

#admin-view .svc-pp-item {
  text-align: center;
}

#admin-view .svc-pp-val {
  font-size: 16px;
  font-weight: 800;
  color: #0F1E36;
}

#admin-view .svc-pp-label {
  font-size: 10px;
  color: #94A3B8;
  margin-top: 1px;
  font-weight: 500;
}

#admin-view .svc-panel-muted {
  color: #64748B;
  font-size: 13px;
  margin: 0;
}

#admin-view .svc-photo-panel-field {
  margin-bottom: 0;
}

#admin-view .barber-photo-panel-field {
  margin-bottom: 0;
}

#admin-view .barber-photo-panel-meta {
  margin-bottom: 8px;
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted);
}

#admin-view .barber-photo-panel-caption {
  margin-bottom: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

#admin-view .barber-photo-panel-preview {
  width: 88px;
  height: 88px;
  border-radius: 18px;
  border: 1px solid rgba(203, 213, 225, 0.92);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.96));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 10px;
  position: relative;
}

#admin-view .barber-photo-panel-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#admin-view .barber-photo-panel-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-cond);
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--gold-dim);
  text-transform: uppercase;
}

#admin-view #svc-list {
  display: block;
}

#admin-view .service-category-accordion {
  position: relative;
  border-bottom: 1px solid #F1F5F9;
}

#admin-view .service-category-accordion:last-child {
  border-bottom: none;
}

#admin-view .service-category-summary {
  list-style: none;
  background: #FAFBFC;
  border-bottom: 1px solid #F1F5F9;
  padding: 10px 112px 10px 16px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

#admin-view .service-category-summary::-webkit-details-marker {
  display: none;
}

#admin-view .service-category-main {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

#admin-view .service-category-title {
  font-size: 12px;
  font-weight: 700;
  color: #0F1E36;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-family: Inter, sans-serif;
}

#admin-view .service-category-count {
  background: #F1F5F9;
  color: #64748B;
  border-radius: 999px;
  padding: 1px 7px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, sans-serif;
}

#admin-view .service-category-add-btn {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #2563EB !important;
  background: #EFF6FF !important;
  border: none !important;
  border-radius: 5px !important;
  padding: 3px 9px !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
  text-transform: none !important;
  letter-spacing: 0.08em;
  white-space: nowrap;
  position: absolute;
  top: 8px;
  right: 16px;
  z-index: 1;
}

#admin-view .svc-advanced-section {
  margin-top: 10px;
  border-top: 1px solid #E2E8F0;
  padding-top: 10px;
}

#admin-view .svc-advanced-toggle {
  list-style: none;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .svc-advanced-toggle::-webkit-details-marker {
  display: none;
}

#admin-view .svc-advanced-body {
  padding-top: 10px;
}

#admin-view .service-color-preview,
#admin-view .svc-selected-color-label,
#admin-view .service-color-selected-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #64748B;
  font-size: 11px;
  font-weight: 400;
  margin-top: 6px;
  font-family: Inter, sans-serif;
}

#admin-view .svc-selected-color-dot,
#admin-view .service-color-selected-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view .service-category-list {
  display: block;
}

#admin-view .service-menu-row {
  display: grid;
  grid-template-columns: auto 1fr auto auto auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 11px 16px 11px 28px;
  border: none;
  border-bottom: 1px solid #F8FAFC;
  background: #FFFFFF;
  text-align: left;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
}

#admin-view .service-menu-row:last-child {
  border-bottom: none;
}

#admin-view .service-menu-row:hover {
  background: #F8FAFC;
}

#admin-view .service-menu-row:focus-visible {
  outline: 2px solid #93C5FD;
  outline-offset: -2px;
}

#admin-view .service-menu-row.is-selected {
  background: #EFF6FF;
  box-shadow: inset 3px 0 0 #2563EB;
  padding-left: 25px;
}

#admin-view .service-menu-row-dot {
  width: 11px;
  height: 11px;
  min-width: 11px;
  border-radius: 50%;
  background: var(--service-color, #94A3B8);
}

#admin-view .service-menu-row-main {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

#admin-view .service-menu-row-title {
  font-size: 14px;
  font-weight: 600;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .service-menu-row-meta {
  font-size: 11px;
  color: #94A3B8;
  font-family: Inter, sans-serif;
}

#admin-view .service-menu-row-price {
  font-size: 15px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view .service-menu-row-duration {
  background: #F1F5F9;
  color: #64748B;
  border-radius: 999px;
  padding: 3px 9px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view .service-menu-row-edit {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 4px 10px;
  background: #FFFFFF;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s ease, background .15s ease;
}

#admin-view .service-menu-row:hover .service-menu-row-edit,
#admin-view .service-menu-row.is-selected .service-menu-row-edit,
#admin-view .service-menu-row:focus-within .service-menu-row-edit {
  opacity: 1;
  pointer-events: auto;
}

#admin-view .service-menu-row-edit:hover {
  background: #F8FAFC;
}

#admin-view .services-empty-category {
  font-size: 12px;
  color: #CBD5E1;
  font-style: italic;
  padding: 10px 28px 12px;
}

#admin-view .hours-compact-shell {
  display: flex;
  justify-content: center;
  padding: 20px 0 16px;
}

#admin-view .hours-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.08);
  width: min(100%, 820px);
}

#admin-view .hours-card__intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 22px 16px;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
}

#admin-view .hours-card__title {
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #0F172A;
}

#admin-view .hours-card__subtitle {
  margin-top: 4px;
  max-width: 420px;
  font-family: Inter, sans-serif;
  font-size: 12px;
  line-height: 1.45;
  color: #64748B;
}

#admin-view .hours-card .admin-card-body {
  padding: 0 14px 8px;
}

#admin-view .hours-card__footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 14px 16px 18px;
  background: #F8FAFC;
  border-top: 1px solid #E2E8F0;
}

#admin-view .hours-blocktime-btn {
  flex-shrink: 0;
}

#admin-view .hours-cancel-btn,
#admin-view .hours-save-btn-foot {
  min-width: 116px;
  border-radius: 10px;
  padding: 10px 16px;
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

#admin-view .hours-cancel-btn {
  border: 1px solid #CBD5E1;
  background: #FFFFFF;
  color: #334155;
}

#admin-view .hours-cancel-btn:hover {
  background: #F8FAFC;
  border-color: #94A3B8;
}

#admin-view .hours-save-btn-foot {
  border: 1px solid #2563EB;
  background: #2563EB;
  color: #FFFFFF;
}

#admin-view .hours-save-btn-foot:hover {
  background: #1D4ED8;
  border-color: #1D4ED8;
}

#admin-view .hours-editor-shell {
  display: grid;
  gap: 0;
}

#admin-view .hours-editor-head {
  display: grid;
  grid-template-columns: minmax(126px, 1fr) minmax(108px, 132px) minmax(108px, 132px) minmax(122px, 0.8fr);
  gap: 10px;
  padding: 12px 8px 10px;
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #64748B;
}

#admin-view .hours-editor-rows {
  display: grid;
  gap: 10px;
}

#admin-view .hours-day-row {
  display: grid;
  grid-template-columns: minmax(126px, 1fr) minmax(108px, 132px) minmax(108px, 132px) minmax(122px, 0.8fr);
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

#admin-view .hours-day-row:hover {
  border-color: #CBD5E1;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

#admin-view .hours-day-row.is-closed {
  background: #F8FAFC;
  border-color: #E2E8F0;
  box-shadow: none;
}

#admin-view .hours-day-cell {
  min-width: 0;
}

#admin-view .hours-day-cell--toggle {
  padding-left: 6px;
}

#admin-view .hours-day-checkbox {
  display: none;
}

#admin-view .hours-toggle-label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

#admin-view .hours-toggle-ui {
  width: 36px;
  height: 20px;
  background: #E2E8F0;
  border-radius: 999px;
  position: relative;
  cursor: pointer;
  transition: background 0.2s;
}

#admin-view .hours-toggle-ui.active {
  background: #2563EB;
}

#admin-view .hours-toggle-dot {
  width: 16px;
  height: 16px;
  background: #FFFFFF;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: left 0.2s;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

#admin-view .hours-toggle-ui.active .hours-toggle-dot {
  left: 18px;
}

#admin-view .hours-day-name {
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #0F172A;
  text-transform: uppercase;
}

#admin-view .hours-day-toggle-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
}

#admin-view .hours-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  min-width: 58px;
  border-radius: 999px;
  padding: 3px 9px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-family: Inter, sans-serif;
}

#admin-view .hours-status-open {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view .hours-status-closed {
  background: #F1F5F9;
  color: #94A3B8;
  border: 1px solid #E2E8F0;
}

#admin-view .hours-time-field {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 132px;
  min-height: 44px;
}

#admin-view .hours-time-field.admin-field-short {
  min-width: 0;
  max-width: 132px;
}

#admin-view .hours-time-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 44px;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 0 11px 0 12px;
  background: #FFFFFF;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
}

#admin-view .hours-time-value {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: #0F172A;
  font-family: Inter, sans-serif;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .hours-time-select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: transparent;
  opacity: 0;
  outline: none;
  cursor: pointer;
}

#admin-view .hours-time-caret {
  flex: 0 0 auto;
  width: 11px;
  height: 8px;
  background: center / 11px 8px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='8' viewBox='0 0 11 8' fill='none'%3E%3Cpath d='M1.25 1.5L5.5 5.75L9.75 1.5' stroke='%23475569' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#admin-view .hours-time-field:focus-within .hours-time-shell {
  border-color: #2563EB;
  box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}

#admin-view .hours-day-row.is-closed .hours-time-shell {
  background: #F8FAFC;
  border-color: #E2E8F0;
}

#admin-view .hours-day-row.is-closed .hours-time-value {
  color: #94A3B8;
}

#admin-view .hours-day-row.is-closed .hours-time-select {
  cursor: default;
}

#admin-view .hours-day-row.is-closed .hours-time-caret {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='8' viewBox='0 0 11 8' fill='none'%3E%3Cpath d='M1.25 1.5L5.5 5.75L9.75 1.5' stroke='%2394A3B8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#admin-view .hours-toggle-copy {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 1100px) {
  #admin-view .svc-body-cols {
    grid-template-columns: 1fr;
  }

  #admin-view .svc-right-col {
    position: static;
  }

  #admin-view .hours-card__intro,
  #admin-view .hours-card .admin-card-body,
  #admin-view .hours-card__footer {
    padding-left: 16px;
    padding-right: 16px;
  }

  #admin-view .hours-card__intro {
    flex-direction: column;
    align-items: stretch;
  }

  #admin-view .hours-card__footer {
    flex-direction: column-reverse;
  }

  #admin-view .hours-cancel-btn,
  #admin-view .hours-save-btn-foot {
    width: 100%;
  }

  #admin-view .hours-editor-head {
    display: none;
  }

  #admin-view .hours-day-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
  }

  #admin-view .hours-day-cell--day,
  #admin-view .hours-day-cell--toggle {
    grid-column: 1 / -1;
  }

  #admin-view .hours-day-cell--time {
    grid-column: span 1;
  }

  #admin-view .hours-time-field {
    max-width: none;
  }

  #admin-view .hours-day-toggle-wrap {
    justify-content: space-between;
    width: 100%;
  }
}

@media (max-width: 720px) {
  #admin-view .hours-day-row {
    grid-template-columns: 1fr;
  }

  #admin-view .hours-day-cell--day,
  #admin-view .hours-day-cell--status,
  #admin-view .hours-day-cell--time,
  #admin-view .hours-day-cell--toggle {
    grid-column: 1 / -1;
  }
}

#admin-view .appointment-card-chevron {
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  padding: 4px 12px;
  background: #FFFFFF;
  color: #0F1E36;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  display: inline-block;
}

#admin-view .appointment-card-summary:hover .appointment-card-chevron {
  background: #F8FAFC;
}

#admin-view .appointments-date-group {
  margin-bottom: 16px;
}

#admin-view .appointments-date-head,
#admin-view .apt-date-group-header,
#admin-view .appointment-group-header {
  margin-bottom: 8px;
  padding: 4px 0;
}

#admin-view .appointments-date-label {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .appointments-date-count {
  color: #64748B;
  margin-left: 6px;
}

#admin-view .appointments-card-grid {
  padding-bottom: 16px;
}

#admin-view .apt-status-pill,
#admin-view .appointment-status-badge,
#admin-view .appointment-status-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  white-space: nowrap;
  font-family: Inter, sans-serif;
}

#admin-view .apt-status-confirmed,
#admin-view .appointment-status-pill-confirmed {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view .apt-status-pending,
#admin-view .apt-status-unpaid,
#admin-view .appointment-status-pill-pending,
#admin-view .appointment-status-pill-unpaid {
  background: #FFFBEB;
  color: #D97706;
  border: 1px solid #FDE68A;
}

#admin-view .apt-status-no-show,
#admin-view .apt-status-cancelled,
#admin-view .appointment-status-pill-no-show,
#admin-view .appointment-status-pill-cancelled {
  background: #FEF2F2;
  color: #DC2626;
  border: 1px solid #FECACA;
}

#admin-view .apt-status-completed,
#admin-view .appointment-status-pill-completed {
  background: #F1F5F9;
  color: #475569;
  border: 1px solid #CBD5E1;
}

.badge.b-completed {
  background: var(--color-green-light);
  color: var(--color-green);
}

.badge.b-confirmed {
  background: var(--color-blue-light);
  color: var(--color-blue);
}

.badge.b-cancelled,
.badge.b-new {
  background: var(--color-gray-100);
  color: var(--color-gray-600);
}

.badge.b-overdue,
.badge.b-risk,
.badge.b-unpaid {
  background: var(--color-red-light);
  color: var(--color-red);
}

.badge.b-growth,
.badge.b-due,
.badge.b-vip {
  background: var(--color-amber-light);
  color: var(--color-amber);
}

.badge.b-loyal,
.badge.b-loyal-green {
  background: var(--color-green-light);
  color: var(--color-green);
}

.clients-page-shell {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view .clients-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 12px;
  margin: 24px 0 14px;
}

#admin-view .clients-toolbar-actions {
  flex: 0 0 auto;
  display: flex;
  justify-content: flex-end;
}

#admin-view .clients-drawer-overlay {
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  z-index: 239;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

#admin-view .clients-drawer-overlay.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#edit-client-modal.clients-drawer-open,
#add-client-modal.clients-drawer-open {
  position: fixed;
  top: var(--admin-shell-topbar-height, 58px);
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9998;
  display: flex !important;
  align-items: stretch;
  justify-content: flex-end;
  padding: 0 !important;
  background: transparent !important;
}

#edit-client-modal.clients-drawer-open .edit-client-modal-card,
#add-client-modal.clients-drawer-open .add-client-modal-card {
  width: min(680px, calc(100vw - 24px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height, 58px));
  max-height: none;
  margin: 0 0 0 auto;
  border-radius: 22px 0 0 22px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}

#edit-client-modal.clients-drawer-open .edit-client-modal-head,
#add-client-modal.clients-drawer-open .add-client-modal-head {
  padding: 16px 18px 14px;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
}

#edit-client-modal.clients-drawer-open .edit-client-modal-body,
#add-client-modal.clients-drawer-open .add-client-modal-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 16px 18px 20px;
}

#edit-client-modal.clients-drawer-open .clients-drawer-close,
#add-client-modal.clients-drawer-open .clients-drawer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
  font-size: 1.15rem;
  line-height: 1;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#edit-client-modal.clients-drawer-open .clients-drawer-close:hover,
#add-client-modal.clients-drawer-open .clients-drawer-close:hover {
  background: #EEF4FF;
  color: #0F1E36;
}

#edit-client-modal.clients-drawer-open .clients-drawer-close:focus-visible,
#add-client-modal.clients-drawer-open .clients-drawer-close:focus-visible {
  background: #EEF4FF;
  color: #0F1E36;
  outline: 2px solid rgba(37, 99, 235, 0.28);
  outline-offset: 2px;
}

#edit-client-modal .edit-client-modal-field,
#edit-client-modal .edit-client-modal-notes,
#edit-client-modal .edit-client-modal-status,
#edit-client-modal .edit-client-modal-actions {
  margin-top: 0;
}

#edit-client-modal .edit-client-booking-block-card {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FBFDFF;
  padding: 14px;
  display: grid;
  gap: 10px;
}

#edit-client-modal .edit-client-booking-block-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#edit-client-modal .edit-client-booking-block-title {
  font-size: 13px;
  font-weight: 800;
  color: #0F1E36;
}

#edit-client-modal .edit-client-booking-block-copy,
#edit-client-modal .edit-client-booking-block-details {
  font-size: 12px;
  line-height: 1.5;
  color: #64748B;
}

#edit-client-modal .edit-client-booking-block-details strong {
  color: #0F1E36;
}

#edit-client-modal .edit-client-booking-block-actions {
  display: flex;
  justify-content: flex-start;
}

#edit-client-modal .edit-client-booking-block-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

#edit-client-modal .edit-client-booking-block-badge[data-tone="neutral"] {
  background: rgba(148, 163, 184, 0.18);
  color: #475569;
}

#edit-client-modal .edit-client-booking-block-badge[data-tone="danger"] {
  background: rgba(239, 68, 68, 0.14);
  color: #B91C1C;
}

#edit-client-modal .edit-client-booking-block-badge[data-tone="loading"] {
  background: rgba(37, 99, 235, 0.12);
  color: #1D4ED8;
}

#edit-client-modal .edit-client-booking-block-badge[data-tone="error"] {
  background: rgba(245, 158, 11, 0.16);
  color: #B45309;
}

#admin-view .clients-toolbar-search {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  max-width: none;
}

#admin-view .client-workspace-search {
  width: 100%;
  min-width: 0;
  max-width: none;
}

#admin-view .client-workspace-search {
  position: relative;
}

#admin-view .client-workspace-search input,
#admin-view #client-search {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  padding-right: 34px;
}

#admin-view .client-workspace-search-clear {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #64748B;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}

#admin-view .client-workspace-search-clear:hover,
#admin-view .client-workspace-search-clear:focus-visible {
  background: rgba(148, 163, 184, 0.14);
  color: #0F172A;
  outline: none;
}

#admin-view .client-workspace-search-clear[hidden] {
  display: none !important;
}

#admin-view .client-workspace-empty-reset {
  align-self: center;
  margin-top: 8px;
}

#admin-view #client-status-filter,
#admin-view #client-sort {
  flex: 0 0 220px;
  width: 220px;
  max-width: 260px;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 9px 12px;
  font-size: 13px;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  background: #FFFFFF;
  outline: none;
  cursor: pointer;
}

@media (max-width: 900px) {
  #admin-view .clients-toolbar {
    flex-wrap: wrap;
  }

  #admin-view .clients-toolbar-search {
    flex: 1 1 100%;
    min-width: 0;
  }

  #admin-view .clients-toolbar-actions {
    flex: 1 1 100%;
    justify-content: stretch;
  }

  #admin-view .clients-toolbar-actions .btn-sm {
    width: 100%;
  }

  #admin-view #client-status-filter,
  #admin-view #client-sort {
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
    min-width: 0;
  }
}

:is(#admin-view, #customer-history-modal) .cp-panel {
  display: flex;
  flex-direction: column;
  max-height: 90vh;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  background: #FFFFFF;
  overflow: hidden;
}

#customer-history-modal {
  position: fixed;
  inset: var(--admin-shell-topbar-height, 58px) 0 0 0;
  z-index: 9998;
  align-items: stretch;
  justify-content: flex-end;
  padding: 0;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

#customer-history-modal .modal-card.client-profile-modal-card {
  width: min(1040px, calc(100vw - 24px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height, 58px));
  max-height: none;
  margin: 0 0 0 auto;
  padding: 0;
  border-radius: 22px 0 0 22px;
  border: 1px solid rgba(15, 30, 54, 0.08);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(248,250,252,0.98) 100%);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

:is(#admin-view, #customer-history-modal) .cp-header {
  background: #0F1E36;
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-header-top {
  padding: 20px 22px 16px;
}

:is(#admin-view, #customer-history-modal) .cp-header-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

:is(#admin-view, #customer-history-modal) .cp-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

:is(#admin-view, #customer-history-modal) .cp-header-left {
  display: flex;
  align-items: center;
  gap: 14px;
}

#customer-history-modal .client-history-modal-head,
#customer-history-modal #customer-history-stats {
  display: none !important;
}

#customer-history-modal .modal-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 0;
}

#customer-history-modal #customer-profile-card {
  height: 100%;
  min-height: 0;
  padding: 0;
}

#customer-history-modal .cp-panel {
  height: 100%;
  max-height: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

#customer-history-modal .cp-header {
  background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(244,247,252,0.98) 100%);
  color: #0F1E36;
  border-bottom: 1px solid #E5EDF5;
}

#customer-history-modal .cp-contact {
  color: #64748B;
}

#customer-history-modal .cp-avatar {
  background: #EEF4FF;
  color: #1D4ED8;
}

#customer-history-modal .cp-badge {
  background: #EFF6FF;
  color: #1E3A8A;
}

#customer-history-modal .cp-header-actions .btn-sm-ghost {
  border-color: rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
}

#customer-history-modal .cp-header-actions .btn-sm-ghost:hover {
  background: #EEF4FF;
  color: #0F1E36;
}

#customer-history-modal .cp-close-btn {
  border-color: rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#customer-history-modal .cp-close-btn:hover {
  background: #EEF4FF;
  color: #0F1E36;
  border-color: rgba(148, 163, 184, 0.24);
}

#customer-history-modal .cp-stats-strip {
  border-top: 1px solid #E5EDF5;
  background: rgba(255,255,255,0.88);
}

#customer-history-modal .cp-stat {
  border-right: 1px solid #E5EDF5;
}

#customer-history-modal .cp-stat strong {
  color: #0F1E36;
}

#customer-history-modal .cp-stat span {
  color: #64748B;
}

#customer-history-modal .cp-tabs {
  background: rgba(255,255,255,0.94);
  border-bottom-color: #E5EDF5;
}

#customer-history-modal .cp-tab.active {
  color: #0F1E36;
  border-bottom-color: #2563EB;
}

#customer-history-modal .cp-body {
  background: #F8FAFC;
}

#customer-history-modal .cp-footer {
  background: rgba(255,255,255,0.94);
  border-top: 1px solid #E5EDF5;
}

:is(#admin-view, #customer-history-modal) .cp-avatar {
  width: 56px;
  height: 56px;
  border-radius: 999px;
  background: rgba(255,255,255,0.14);
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 800;
  flex-shrink: 0;
}

:is(#admin-view, #customer-history-modal) .cp-name {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
}

:is(#admin-view, #customer-history-modal) .cp-contact {
  margin-top: 4px;
  font-size: 13px;
  color: rgba(255,255,255,0.72);
}

:is(#admin-view, #customer-history-modal) .cp-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

:is(#admin-view, #customer-history-modal) .cp-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.14);
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 600;
}

:is(#admin-view, #customer-history-modal) .cp-close-btn {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: rgba(255,255,255,0.48);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  font-family: Inter, sans-serif;
  transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

:is(#admin-view, #customer-history-modal) .cp-header-actions .btn-sm-ghost {
  border-color: rgba(255,255,255,0.22);
  background: rgba(255,255,255,0.08);
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-header-actions .btn-sm-ghost:hover {
  background: rgba(255,255,255,0.14);
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-close-btn:hover {
  color: rgba(255,255,255,0.9);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.1);
}

:is(#admin-view, #customer-history-modal) .cp-stats-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255,255,255,0.08);
}

:is(#admin-view, #customer-history-modal) .cp-stat {
  padding: 14px 18px;
  border-right: 1px solid rgba(255,255,255,0.08);
  text-align: center;
}

:is(#admin-view, #customer-history-modal) .cp-stat:last-child {
  border-right: none;
}

:is(#admin-view, #customer-history-modal) .cp-stat strong {
  display: block;
  font-size: 20px;
  font-weight: 800;
  color: #FFFFFF;
  line-height: 1.1;
}

:is(#admin-view, #customer-history-modal) .cp-stat span {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  text-align: center;
}

:is(#admin-view, #customer-history-modal) .cp-tabs {
  display: flex;
  gap: 6px;
  padding: 10px 16px 0;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
  overflow-x: auto;
  flex-shrink: 0;
}

:is(#admin-view, #customer-history-modal) .cp-tab {
  border: none;
  background: transparent;
  border-bottom: 2px solid transparent;
  color: #64748B;
  font-size: 12px;
  font-weight: 700;
  padding: 8px 10px 10px;
  cursor: pointer;
  white-space: nowrap;
  font-family: Inter, sans-serif;
  line-height: 1;
}

:is(#admin-view, #customer-history-modal) .cp-tab.active {
  color: #0F1E36;
  border-bottom-color: #2563EB;
}

:is(#admin-view, #customer-history-modal) .cp-body {
  flex: 1 1 auto;
  overflow-y: auto;
  min-height: 0;
  padding: 18px;
  background: #F8FAFC;
}

:is(#admin-view, #customer-history-modal) .cp-tab-content {
  display: block;
}

:is(#admin-view, #customer-history-modal) .cp-section + .cp-section {
  margin-top: 18px;
}

:is(#admin-view, #customer-history-modal) .cp-overview-grid {
  display: grid;
  gap: 10px;
}

:is(#admin-view, #customer-history-modal) .cp-grid4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

:is(#admin-view, #customer-history-modal) .cp-info-card {
  background: #FBFDFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px;
}

:is(#admin-view, #customer-history-modal) .cp-info-card-compact {
  padding: 10px 12px;
}

:is(#admin-view, #customer-history-modal) .cp-info-card span {
  display: block;
  font-size: 11px;
  font-weight: 700;
  color: #94A3B8;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

:is(#admin-view, #customer-history-modal) .cp-info-card-compact span {
  font-size: 10px;
  margin-bottom: 4px;
}

:is(#admin-view, #customer-history-modal) .cp-info-card strong {
  display: block;
  margin-top: 6px;
  color: #0F1E36;
  font-size: 14px;
}

:is(#admin-view, #customer-history-modal) .cp-info-card-compact strong {
  margin-top: 0;
  font-size: 13px;
  line-height: 1.35;
}

:is(#admin-view, #customer-history-modal) .cp-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

:is(#admin-view, #customer-history-modal) .cp-action-row button {
  border-radius: 8px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: normal;
  box-shadow: none;
  background: #0F1E36;
  border: 1px solid #0F1E36;
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-action-row button:hover:not(:disabled) {
  background: #162743;
  border-color: #162743;
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-action-row button:disabled {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #94A3B8;
  cursor: not-allowed;
}

:is(#admin-view, #customer-history-modal) .cp-summary-copy {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}

:is(#admin-view, #customer-history-modal) .client-visit-section + .client-visit-section {
  margin-top: 18px;
}

:is(#admin-view, #customer-history-modal) .client-visit-section-stack {
  display: grid;
  gap: 12px;
}

:is(#admin-view, #customer-history-modal) .client-visit-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 14px;
}

:is(#admin-view, #customer-history-modal) .client-visit-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

:is(#admin-view, #customer-history-modal) .client-visit-title {
  color: #0F172A;
  font-size: 14px;
  font-weight: 700;
}

:is(#admin-view, #customer-history-modal) .client-visit-sub {
  margin-top: 4px;
  color: #64748B;
  font-size: 12px;
  line-height: 1.5;
}

:is(#admin-view, #customer-history-modal) .client-visit-value {
  text-align: right;
}

:is(#admin-view, #customer-history-modal) .client-visit-price {
  color: #0F1E36;
  font-size: 16px;
  font-weight: 800;
}

:is(#admin-view, #customer-history-modal) .client-visit-recorded {
  margin-top: 4px;
  color: #64748B;
  font-size: 11px;
}

:is(#admin-view, #customer-history-modal) .client-visit-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

:is(#admin-view, #customer-history-modal) .client-visit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

:is(#admin-view, #customer-history-modal) .client-visit-notes {
  margin-top: 12px;
  color: #334155;
  font-size: 12px;
  line-height: 1.6;
}

:is(#admin-view, #customer-history-modal) .client-visit-more {
  color: #64748B;
  font-size: 12px;
  line-height: 1.5;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 14px;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-title {
  font-size: 13px;
  font-weight: 800;
  color: #0F1E36;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-copy {
  margin-top: 4px;
  font-size: 12px;
  color: #64748B;
  line-height: 1.5;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-meta {
  margin-top: 10px;
  display: grid;
  gap: 6px;
  font-size: 12px;
  color: #475569;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-meta strong {
  color: #0F1E36;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-action {
  margin-top: 12px;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-pill[data-tone="neutral"] {
  background: rgba(148, 163, 184, 0.18);
  color: #475569;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-pill[data-tone="danger"] {
  background: rgba(239, 68, 68, 0.14);
  color: #B91C1C;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-pill[data-tone="loading"] {
  background: rgba(37, 99, 235, 0.12);
  color: #1D4ED8;
}

:is(#admin-view, #customer-history-modal) .cp-booking-block-pill[data-tone="error"] {
  background: rgba(245, 158, 11, 0.16);
  color: #B45309;
}

:is(#admin-view, #customer-history-modal) .cp-intel-card,
:is(#admin-view, #customer-history-modal) .cp-ai-rec-card,
:is(#admin-view, #customer-history-modal) .cp-sms-rows {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 14px;
}

:is(#admin-view, #customer-history-modal) .cp-intel-row,
:is(#admin-view, #customer-history-modal) .cp-sms-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
}

:is(#admin-view, #customer-history-modal) .cp-intel-row.is-last {
  padding-bottom: 0;
}

:is(#admin-view, #customer-history-modal) .cp-intel-row + .cp-intel-row,
:is(#admin-view, #customer-history-modal) .cp-sms-row + .cp-sms-row,
:is(#admin-view, #customer-history-modal) .cp-sms-note + .cp-sms-row,
:is(#admin-view, #customer-history-modal) .cp-sms-row + .cp-sms-note {
  border-top: 1px solid #F1F5F9;
}

.client-booking-block-modal-shell .owner-appointment-modal {
  width: min(560px, calc(100vw - 32px));
}

.client-booking-block-modal-body {
  display: grid;
  gap: 12px;
}

.client-booking-block-summary {
  font-size: 13px;
  line-height: 1.6;
  color: #334155;
}

.client-booking-block-reason-field textarea {
  min-height: 108px;
}

:is(#admin-view, #customer-history-modal) .cp-intel-key,
:is(#admin-view, #customer-history-modal) .cp-sms-key {
  color: #0F172A;
  font-size: 13px;
  font-weight: 600;
  flex: 1 1 auto;
}

:is(#admin-view, #customer-history-modal) .cp-intel-badge,
:is(#admin-view, #customer-history-modal) .cp-sms-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 12px;
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}

:is(#admin-view, #customer-history-modal) .cp-sms-val {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: #334155;
  font-size: 13px;
  font-weight: 500;
  text-align: right;
}

:is(#admin-view, #customer-history-modal) .cp-ai-rec-card .client-profile-ai-eyebrow {
  color: #64748B;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

:is(#admin-view, #customer-history-modal) .cp-ai-rec-card .client-profile-ai-title {
  margin-top: 8px;
  color: #0F172A;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
}

:is(#admin-view, #customer-history-modal) .cp-ai-rec-card .client-profile-ai-copy {
  margin-top: 8px;
  color: #475569;
  font-size: 13px;
  line-height: 1.55;
}

:is(#admin-view, #customer-history-modal) .cp-sms-val .client-sms-status-pill {
  margin: 0;
}

:is(#admin-view, #customer-history-modal) .cp-sms-stack {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

:is(#admin-view, #customer-history-modal) .cp-sms-val-toggle {
  flex-wrap: wrap;
}

:is(#admin-view, #customer-history-modal) .cp-policy-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

:is(#admin-view, #customer-history-modal) .cp-policy-title {
  color: #64748B;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

:is(#admin-view, #customer-history-modal) .cp-sms-note {
  padding: 12px 0 0;
  color: #64748B;
  font-size: 12px;
  line-height: 1.5;
}

:is(#admin-view, #customer-history-modal) .cp-sms-row-action {
  align-items: center;
}

:is(#admin-view, #customer-history-modal) .cp-grid2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

:is(#admin-view, #customer-history-modal) .cp-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-top: 1px solid #E2E8F0;
  background: #FFFFFF;
  flex-shrink: 0;
}

:is(#admin-view, #customer-history-modal) .cp-save-btn,
:is(#admin-view, #customer-history-modal) .cp-del-btn {
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  cursor: pointer;
}

:is(#admin-view, #customer-history-modal) .cp-save-btn {
  border: none;
  background: #0F1E36;
  color: #FFFFFF;
}

:is(#admin-view, #customer-history-modal) .cp-del-btn {
  border: 1px solid #FCA5A5;
  background: #FFFFFF;
  color: #B91C1C;
}

:is(#admin-view, #customer-history-modal) .cp-del-btn:disabled {
  cursor: not-allowed;
  opacity: 0.7;
}

:is(#admin-view, #customer-history-modal) .cp-del-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

:is(#admin-view, #customer-history-modal) .cp-del-note {
  max-width: 240px;
  color: #94A3B8;
  font-size: 11px;
  line-height: 1.4;
  text-align: right;
}

@media (max-width: 980px) {
  :is(#admin-view, #customer-history-modal) .cp-stats-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  :is(#admin-view, #customer-history-modal) .cp-stat:nth-child(2) {
    border-right: none;
  }

  :is(#admin-view, #customer-history-modal) .cp-stat:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }

  :is(#admin-view, #customer-history-modal) .cp-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  :is(#admin-view, #customer-history-modal) .cp-grid2 {
    grid-template-columns: 1fr;
  }

  :is(#admin-view, #customer-history-modal) .cp-intel-row,
  :is(#admin-view, #customer-history-modal) .cp-sms-row {
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  :is(#admin-view, #customer-history-modal) .cp-header-top {
    padding: 18px 16px 14px;
  }

  :is(#admin-view, #customer-history-modal) .cp-header-left {
    align-items: flex-start;
  }

  :is(#admin-view, #customer-history-modal) .cp-header-row {
    align-items: flex-start;
  }

  :is(#admin-view, #customer-history-modal) .cp-avatar {
    width: 48px;
    height: 48px;
    font-size: 18px;
  }

  :is(#admin-view, #customer-history-modal) .cp-name {
    font-size: 18px;
  }

  :is(#admin-view, #customer-history-modal) .cp-overview-grid {
    grid-template-columns: 1fr;
  }

  :is(#admin-view, #customer-history-modal) .cp-stats-strip {
    grid-template-columns: 1fr 1fr;
  }

  :is(#admin-view, #customer-history-modal) .cp-body {
    padding: 14px;
  }

  :is(#admin-view, #customer-history-modal) .cp-footer {
    flex-direction: column;
  }

  :is(#admin-view, #customer-history-modal) .cp-save-btn,
  :is(#admin-view, #customer-history-modal) .cp-del-btn {
    width: 100%;
  }

  :is(#admin-view, #customer-history-modal) .cp-del-wrap {
    align-items: stretch;
  }

  :is(#admin-view, #customer-history-modal) .cp-del-note {
    max-width: none;
    text-align: left;
  }
}

.clients-list-shell {
  background: var(--card-bg);
  border: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  overflow: hidden;
}

.clients-list-header {
  padding: var(--space-4);
  border-bottom: 1px solid var(--color-gray-200);
}

#admin-view #clients-list-count {
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view #clients-results-count {
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .clients-sort-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
}

#admin-view .clients-sort-btn {
  border: 1px solid #E2E8F0;
  border-radius: 999px;
  padding: 5px 10px;
  background: #FFFFFF;
  color: #64748B;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view .clients-sort-btn.active {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #2563EB;
}

.clients-table {
  width: 100%;
}

#admin-view .clients-workspace {
  display: grid;
  grid-template-columns: minmax(0, 286px) minmax(0, 1fr) 264px;
  gap: 10px;
  align-items: start;
}

#admin-view .client-workspace-card {
  min-height: 100%;
  min-width: 0;
}

#admin-view .client-workspace-list-card {
  overflow-x: clip;
}

#admin-view .client-workspace-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .client-workspace-card-copy,
#admin-view .client-workspace-detail-copy,
#admin-view .client-workspace-empty-copy {
  margin-top: 4px;
  font-size: 13px;
  color: var(--admin-text-soft, #5f6f84);
  line-height: 1.5;
}

#admin-view .client-workspace-list-toolbar {
  display: grid;
  gap: 12px;
  width: 100%;
  min-width: 0;
}

#admin-view .client-workspace-list-shell {
  margin-top: 12px;
  display: grid;
  gap: 10px;
  min-width: 0;
}

#admin-view .hq-reference-account-list {
  display: grid;
  gap: 4px;
  max-height: calc(100vh - 268px);
  overflow-y: auto;
  padding-right: 2px;
  width: 100%;
  min-width: 0;
}

#admin-view .hq-reference-account-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  width: 100%;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #ffffff;
  border-radius: 10px;
  padding: 8px 9px;
  text-align: left;
  cursor: pointer;
  font: inherit;
  align-items: start;
}

#admin-view .hq-reference-account-card:hover,
#admin-view .hq-reference-account-card:focus-visible {
  border-color: rgba(37, 99, 235, 0.24);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.08);
  outline: none;
}

#admin-view .hq-reference-account-card.is-selected {
  border-color: #0f172a;
  box-shadow: inset 0 0 0 1px #0f172a;
}

#admin-view .hq-reference-account-avatar {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);
  color: #0f172a;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.68rem;
  font-weight: 800;
}

#admin-view .hq-reference-account-dot {
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 2px solid #ffffff;
}

#admin-view .hq-reference-account-dot.is-red { background: #dc2626; }
#admin-view .hq-reference-account-dot.is-amber { background: #d97706; }
#admin-view .hq-reference-account-dot.is-green { background: #16a34a; }
#admin-view .hq-reference-account-dot.is-blue { background: #2563eb; }
#admin-view .hq-reference-account-dot.is-muted { background: #94a3b8; }

#admin-view .hq-reference-account-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

#admin-view .hq-reference-account-name-row {
  min-width: 0;
  display: inline-grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 7px;
}

#admin-view .hq-reference-account-name-row .hq-reference-account-dot {
  position: static;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.92);
  flex-shrink: 0;
}

#admin-view .hq-reference-account-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 6px;
}

#admin-view .hq-reference-account-name {
  font-size: 0.88rem;
  font-weight: 700;
  color: #111827;
  line-height: 1.08;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#admin-view .hq-reference-account-detail,
#admin-view .hq-reference-account-time,
#admin-view .hq-reference-account-meta {
  font-size: 0.68rem;
  color: #6b7280;
}

#admin-view .hq-reference-account-detail {
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view .hq-reference-account-time {
  white-space: nowrap;
  text-align: right;
  line-height: 1.05;
  padding-top: 0;
}

#admin-view .hq-reference-account-meta {
  font-weight: 600;
  color: #475569;
  line-height: 1.05;
}

#admin-view .clients-table-empty {
  padding: 24px 18px;
  color: var(--color-gray-500);
}

.clients-list-contact-sub {
  font-size: var(--font-size-sm);
  color: var(--color-gray-500);
  margin-top: 2px;
}

#admin-view .client-workspace-empty {
  padding: 20px 8px;
}

#admin-view .client-workspace-empty-title {
  color: #0F1E36;
  font-size: 15px;
  font-weight: 700;
}

#admin-view .client-workspace-detail-shell,
#admin-view .client-workspace-rail-shell {
  display: grid;
  gap: 10px;
}

#admin-view .client-workspace-detail-head,
#admin-view .client-workspace-rail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .client-workspace-detail-kicker {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--admin-text-soft, #5f6f84);
}

#admin-view .client-workspace-detail-title,
#admin-view .client-workspace-summary-title {
  font-size: 17px;
  font-weight: 700;
  color: var(--admin-heading, #122033);
  line-height: 1.3;
}

#admin-view .client-workspace-detail-meta,
#admin-view .client-workspace-summary-contact {
  margin-top: 4px;
  font-size: 12px;
  color: #64748B;
}

#admin-view .client-workspace-detail-body,
#admin-view .client-workspace-panel {
  display: grid;
  gap: 12px;
}

#admin-view #atab-notifications .client-workspace-list-toolbar {
  padding-bottom: 6px;
}

#admin-view #atab-notifications .notifications-preview-left-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view #atab-notifications .notifications-preview-left-label {
  padding: 0;
}

#admin-view #atab-notifications .hq-reference-account-card {
  text-align: left;
}

#admin-view #atab-notifications .hq-reference-account-copy,
#admin-view #atab-notifications .hq-reference-account-name,
#admin-view #atab-notifications .hq-reference-account-detail {
  text-align: left;
}

#admin-view #atab-notifications .client-workspace-detail-shell,
#admin-view #atab-notifications .client-workspace-rail-shell {
  gap: 8px;
}

#admin-view #atab-notifications .notifications-preview-shell {
  display: grid;
  gap: 14px;
  width: 100%;
}

#admin-view .admin-content.notifications-preview-content {
  max-width: 1480px;
  margin: 0 auto 0 0;
}

#admin-view #atab-notifications.notifications-preview-active {
  width: 100%;
}

#admin-view #atab-notifications.notifications-preview-active .notifications-preview-shell {
  width: min(100%, 1480px);
  max-width: 1480px;
  margin: 0 auto 0 0;
  box-sizing: border-box;
}

#admin-view #atab-notifications.notifications-preview-active .notifications-preview-workspace {
  display: grid;
  grid-template-columns: minmax(292px, 312px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
}

#admin-view #atab-notifications .notifications-preview-status-strip {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid #dbe5f0;
  border-radius: 12px;
  background: #f8fbff;
}

#admin-view #atab-notifications .notifications-preview-main {
  display: grid;
  gap: 10px;
  min-width: 0;
}

#admin-view #atab-notifications .notifications-preview-content-grid {
  display: grid;
  grid-template-columns: minmax(520px, 1fr) minmax(248px, 288px);
  gap: 12px;
  align-items: start;
  min-width: 0;
}

#admin-view #atab-notifications .notifications-preview-status-copy {
  color: #1e293b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  white-space: normal;
}

#admin-view #atab-notifications .client-workspace-detail-body,
#admin-view #atab-notifications .client-workspace-panel {
  gap: 10px;
}

#admin-view #atab-notifications .notifications-preview-detail-section {
  gap: 8px;
}

#admin-view #atab-notifications .notifications-preview-detail-section .support-ticket-message-label,
#admin-view #atab-notifications .notifications-preview-group-label {
  color: var(--color-blue);
}

#admin-view #atab-notifications .notifications-preview-detail-section .client-workspace-summary-rows {
  padding: 0 12px;
  border-radius: 10px;
}

#admin-view #atab-notifications .notifications-preview-detail-section .client-workspace-summary-row {
  padding: 8px 0;
}

#admin-view #atab-notifications .notifications-preview-variant-wrap {
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

#admin-view #atab-notifications .notifications-preview-variant-head {
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-notifications .notifications-preview-variant-helper {
  margin-top: 0;
}

#admin-view #atab-notifications .notifications-preview-variant-current {
  color: #334155;
  font-size: 12px;
  font-weight: 700;
}

#admin-view #atab-notifications .notifications-preview-group-label {
  font-size: 11px;
}

#admin-view #atab-notifications .notifications-preview-variant-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

#admin-view #atab-notifications .notifications-preview-variant-chip {
  border: 1px solid #cddbeb;
  border-radius: 999px;
  background: #fff;
  color: #475569;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 8px 12px;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}

#admin-view #atab-notifications .notifications-preview-variant-chip:hover,
#admin-view #atab-notifications .notifications-preview-variant-chip:focus-visible {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
  outline: none;
}

#admin-view #atab-notifications .notifications-preview-variant-chip.is-active {
  border-color: #93c5fd;
  background: #dbeafe;
  color: #1d4ed8;
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.08);
}

#admin-view #atab-notifications .notifications-preview-message-stack {
  display: grid;
  gap: 10px;
}

#admin-view #atab-notifications .notifications-preview-message-card {
  border-radius: 10px;
  box-shadow: none;
}

#admin-view #atab-notifications .notifications-preview-message-card .preview-topbar {
  padding: 9px 12px;
}

#admin-view #atab-notifications .notifications-preview-phone,
#admin-view #atab-notifications .notifications-preview-message-body {
  padding: 12px;
}

#admin-view #atab-notifications .notifications-preview-phone {
  width: auto;
  height: auto;
  min-height: 0;
  margin: 0;
  border-radius: 0;
  background: transparent;
  display: block;
}

#admin-view #atab-notifications .notifications-preview-bubble,
#admin-view #atab-notifications .notifications-preview-message-body {
  border-radius: 10px;
  padding: 12px;
  box-shadow: none;
}

#admin-view #atab-notifications .notifications-preview-action-row {
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 10px;
  background: #ffffff;
  padding: 10px 11px;
}

#admin-view #atab-notifications .notifications-preview-action-row.is-disabled {
  opacity: 0.78;
}

#admin-view #atab-notifications .notifications-preview-action-copy {
  display: grid;
  gap: 6px;
}

#admin-view #atab-notifications .notifications-preview-action-title {
  color: #111827;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.15;
}

#admin-view #atab-notifications .notifications-preview-action-detail {
  color: #64748b;
  font-size: 11px;
  line-height: 1.35;
}

#admin-view .client-workspace-summary-rows {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  padding: 2px 14px;
}

#admin-view .client-workspace-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 0;
}

#admin-view .client-workspace-summary-row + .client-workspace-summary-row {
  border-top: 1px solid #F1F5F9;
}

#admin-view .client-workspace-summary-row span {
  color: #64748B;
  font-size: 12px;
}

#admin-view .client-workspace-summary-row strong {
  color: var(--admin-heading, #122033);
  font-size: 12px;
  font-weight: 700;
  text-align: right;
  max-width: 55%;
}

#admin-view .client-workspace-note-copy {
  padding: 12px;
  line-height: 1.5;
}

#admin-view .client-workspace-panel-actions {
  display: flex;
  justify-content: flex-end;
}

#admin-view .client-workspace-rail-section {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid #E2E8F0;
}

#admin-view .client-workspace-rail-section:first-of-type {
  padding-top: 0;
  border-top: none;
}

#admin-view .client-workspace-action-stack {
  display: grid;
  gap: 6px;
}

#admin-view .client-workspace-action-stack .btn,
#admin-view .client-workspace-action-stack .btn-sm,
#admin-view .client-workspace-action-stack .btn-sm-ghost {
  width: 100%;
  justify-content: flex-start;
}

#admin-view .client-workspace-action-stack-secondary {
  margin-top: 2px;
}

#admin-view .client-workspace-rail-status {
  display: grid;
  gap: 6px;
}

#admin-view .client-workspace-inline-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#admin-view .client-workspace-inline-status-label,
#admin-view .client-workspace-inline-copy {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
}

#admin-view .client-workspace-inline-status-label {
  font-weight: 600;
}

#admin-view .client-workspace-inline-action .btn-sm-ghost,
#admin-view .client-workspace-inline-action .btn-sm {
  justify-content: flex-start;
}

#admin-view #atab-notifications .client-workspace-detail-card {
  min-width: 0;
}

#admin-view #atab-notifications .client-workspace-detail-card .client-workspace-detail-title {
  overflow-wrap: anywhere;
}

#admin-view #atab-notifications .client-workspace-summary-row strong {
  max-width: 64%;
}

@media (max-width: 1360px) {
  #admin-view .admin-content.notifications-preview-content {
    max-width: 100%;
  }

  #admin-view #atab-notifications.notifications-preview-active .notifications-preview-shell {
    width: 100%;
    max-width: 100%;
  }

  #admin-view #atab-notifications.notifications-preview-active .notifications-preview-workspace {
    grid-template-columns: minmax(280px, 300px) minmax(0, 1fr);
    gap: 10px;
  }

  #admin-view #atab-notifications .notifications-preview-content-grid {
    grid-template-columns: minmax(460px, 1fr) minmax(236px, 272px);
    gap: 10px;
  }
}

@media (max-width: 1260px) {
  #admin-view #atab-notifications .notifications-preview-status-strip {
    align-items: flex-start;
    flex-direction: column;
  }

  #admin-view #atab-notifications.notifications-preview-active .notifications-preview-workspace {
    grid-template-columns: minmax(264px, 284px) minmax(0, 1fr);
  }

  #admin-view #atab-notifications .notifications-preview-content-grid {
    grid-template-columns: minmax(420px, 1fr) minmax(224px, 252px);
    gap: 10px;
  }
}

@media (max-width: 1140px) {
  #admin-view #atab-notifications .notifications-preview-status-strip {
    align-items: flex-start;
    flex-direction: column;
  }

  #admin-view #atab-notifications.notifications-preview-active .notifications-preview-workspace {
    grid-template-columns: minmax(252px, 272px) minmax(0, 1fr);
  }

  #admin-view #atab-notifications .notifications-preview-content-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
}

@media (max-width: 720px) {
  #admin-view #atab-notifications .notifications-preview-status-inline {
    gap: 8px 10px;
  }
}

@media (max-width: 900px) {
  #admin-view .clients-workspace,
  #admin-view #atab-notifications.notifications-preview-active .notifications-preview-workspace,
  #admin-view #atab-notifications .notifications-preview-content-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view .admin-content.notifications-preview-content {
    max-width: 100%;
    margin: 0 auto;
  }

  #admin-view .client-workspace-list-card,
  #admin-view .client-workspace-detail-card,
  #admin-view .client-workspace-rail-card {
    grid-column: auto;
  }

  #admin-view .hq-reference-account-list {
    max-height: none;
  }

  #admin-view .hq-reference-account-head {
    grid-template-columns: minmax(0, 1fr);
  }

  :is(#admin-view, #customer-history-modal) .cp-grid4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.business-intelligence-ai-card-action {
  color: var(--color-intelligence);
}

.business-intelligence-ai-card-action:hover {
  color: var(--color-intelligence);
}

.intel-demand-bar-fill--strong {
  background: var(--color-blue);
}

.intel-demand-bar-fill--steady {
  background: #93C5FD;
}

.intel-demand-bar-fill--soft {
  background: var(--color-blue-mid);
}

.intelligence-rescue-opener {
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: 6px;
  padding: 12px;
}

#admin-view .intelligence-rescue-opener-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.intelligence-rescue-copy-btn {
  min-height: var(--btn-height-sm);
  padding: var(--btn-padding-sm);
  font-size: var(--font-size-xs);
  background: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--btn-radius);
  color: var(--color-gray-600);
  cursor: pointer;
}

.intelligence-rescue-copy-btn:hover {
  background: var(--color-gray-50);
  border-color: var(--color-gray-300);
}

#admin-view .intel-inline-link-wrap {
  margin-top: 12px;
}

/* ============================================================
   UTILITIES
   ============================================================ */

.divider {
  height: 1px;
  background: var(--color-gray-200);
  margin: var(--space-5) 0;
}

.section-gap {
  margin-bottom: var(--space-6);
}

.grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}

.grid-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--space-4);
}

.grid-4 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: var(--space-4);
}

::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--color-gray-300);
  border-radius: var(--pill-radius);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-gray-400);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1180px) {
  #biw-bladezy-insights-list,
  .grid-4,
  .grid-3,
  .grid-2,
  #admin-view .intel-dashboard .intel-dashboard-row--split,
  #admin-view .intel-dashboard .intel-dashboard-row--triple,
  #admin-view .intel-dashboard .intel-health-bar,
  #admin-view .intel-dashboard .intel-demand-summary {
    grid-template-columns: 1fr;
  }

  #admin-view .intel-dashboard .intel-nudge-row-shell,
  #admin-view .intel-dashboard .intel-all-clear,
  #admin-view .intel-dashboard .intelligence-schedule-fit-top {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 980px) {
  #admin-view .admin-main {
    margin-left: 0;
    width: 100%;
  }

  .admin-main {
    padding: 0 20px;
  }

  .admin-sidebar-toggle {
    display: none;
  }

  .admin-logo-close {
    display: block;
  }

  .admin-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 220;
    transform: translateX(-100%);
    transition: transform var(--transition-base);
  }

  .admin-sidebar.open {
    transform: translateX(0);
  }

  .admin-overlay {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.36);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-fast);
    z-index: 210;
  }

  .admin-overlay.visible {
    opacity: 1;
    pointer-events: auto;
  }
}

#admin-view #atab-photos {
  padding: 24px;
}

#admin-view .photos-page-shell {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

#admin-view .photos-hero {
  background: #0F1E36;
  border-radius: 18px;
  overflow: hidden;
  padding-bottom: 0;
}

#admin-view .photos-hero-top {
  padding: 28px 32px 18px;
}

#admin-view .photos-hero-eyebrow {
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,.38);
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

#admin-view .photos-hero-title {
  font-size: 28px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.04em;
}

#admin-view .photos-hero-sub {
  margin-top: 6px;
  font-size: 13px;
  color: rgba(255,255,255,.52);
}

#admin-view .photos-hero-strip {
  display: flex;
  border-top: 1px solid rgba(255,255,255,.08);
  margin-top: 16px;
  background: transparent;
}

#admin-view .photos-hero-stat {
  flex: 1;
  padding: 14px 20px;
  border-right: 1px solid rgba(255,255,255,.08);
}

#admin-view .photos-hero-stat:last-child {
  border-right: none;
}

#admin-view .photos-hero-stat-val {
  font-size: 20px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.4px;
}

#admin-view .photos-hero-stat-label {
  margin-top: 2px;
  font-size: 11px;
  font-weight: 500;
  color: rgba(255,255,255,.42);
}

#admin-view .photos-runtime-intro,
#admin-view .photos-runtime-note {
  font-size: 13px;
  color: #64748B;
  line-height: 1.6;
  display: none;
}

#admin-view .photos-storage-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .photos-body {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

#admin-view .photos-sidebar {
  position: sticky;
  top: 24px;
}

#admin-view .photos-sidebar-section {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .photos-sidebar-label {
  font-size: 10px;
  font-weight: 700;
  color: #94A3B8;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 2px 4px 8px;
}

#admin-view .photos-sidebar-item {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #FFFFFF;
  color: #0F1E36;
  padding: 11px 12px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  text-align: left;
  transition: border-color .15s, background .15s, color .15s;
}

#admin-view .photos-sidebar-item:hover {
  background: #F8FAFC;
  border-color: #E2E8F0;
}

#admin-view .photos-sidebar-item.active {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

#admin-view .photos-sidebar-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 54px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #F8FAFC;
  color: #64748B;
  border: 1px solid #E2E8F0;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

#admin-view .photos-sidebar-item.active .photos-sidebar-badge {
  background: #DBEAFE;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

#admin-view .photos-content {
  min-width: 0;
}

#admin-view .photos-content-panel {
  display: none;
}

#admin-view .photos-content-panel.active {
  display: block;
}

#admin-view .photos-warn-banner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #FDE68A;
  border-radius: 12px;
  background: #FFFBEB;
}

#admin-view .photos-warn-banner.is-loading {
  border-color: #CBD5F5;
  background: #F8FAFC;
}

#admin-view .photos-warn-banner.is-readonly {
  border-color: #E9D5FF;
  background: #FAF5FF;
}

#admin-view .photos-warn-banner.is-ready {
  border-color: #BFDBFE;
  background: #EFF6FF;
}

#admin-view .photos-warn-icon {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #F59E0B;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  flex-shrink: 0;
}

#admin-view .photos-warn-banner.is-loading .photos-warn-icon {
  background: #64748B;
}

#admin-view .photos-warn-banner.is-readonly .photos-warn-icon {
  background: #7C3AED;
}

#admin-view .photos-warn-banner.is-ready .photos-warn-icon {
  background: #2563EB;
}

#admin-view .photos-warn-copy {
  flex: 1 1 auto;
  min-width: 0;
}

#admin-view .photos-warn-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .photos-warn-sub {
  margin-top: 3px;
  font-size: 12px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view .photos-warn-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
}

#admin-view .photos-section {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 20px;
}

#admin-view .photos-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

#admin-view .photos-section-label {
  font-size: 11px;
  font-weight: 700;
  color: #64748B;
  letter-spacing: .12em;
  text-transform: none;
}

#admin-view .photos-section-sub {
  margin-top: 5px;
  font-size: 13px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view .photos-section-count {
  flex-shrink: 0;
}

#admin-view .photos-manager-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view .photos-manager-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

#admin-view .photos-manager-copy {
  min-width: 0;
}

#admin-view .photos-manager-title {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #0F172A;
}

#admin-view .photos-manager-subtitle {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.6;
  color: #64748B;
}

#admin-view .photos-manager-upload-btn {
  flex-shrink: 0;
}

#admin-view .photos-manager-status.photos-warn-banner {
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
}

#admin-view .photos-manager-status .photos-warn-title {
  font-size: 12px;
  font-weight: 700;
}

#admin-view .photos-manager-status .photos-warn-sub {
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.5;
}

#admin-view .photos-manager-status .photos-warn-icon {
  width: 22px;
  height: 22px;
  font-size: 10px;
}

#admin-view .photos-manager-note {
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
}

#admin-view .photos-manager-note-secondary {
  margin-top: -10px;
}

#admin-view .photos-manager-filters {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 4px 0;
}

#admin-view .photos-manager-filter {
  border: 1px solid #E2E8F0;
  border-radius: 999px;
  background: #FFFFFF;
  color: #475569;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

#admin-view .photos-manager-filter:hover {
  border-color: #CBD5E1;
  background: #F8FAFC;
  color: #0F172A;
}

#admin-view .photos-manager-filter.active {
  border-color: #BFDBFE;
  background: #EFF6FF;
  color: #1D4ED8;
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.08);
}

#admin-view .photos-manager-filter:focus-visible {
  outline: none;
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

#admin-view .photos-manager-filter-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

#admin-view .photos-manager-filter-title {
  font-size: 18px;
  font-weight: 700;
  color: #0F172A;
}

#admin-view .photos-manager-filter-subtitle {
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.55;
  color: #64748B;
}

#admin-view .photos-manager-filter-count {
  flex-shrink: 0;
  align-self: center;
}

#admin-view .photos-manager-grid-wrap {
  min-width: 0;
}

#admin-view .photos-manager-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
}

#admin-view .photos-manager-grid-gallery {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#admin-view .photos-manager-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  overflow: hidden;
  background: #FFFFFF;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.05);
}

#admin-view .photos-manager-card-preview {
  position: relative;
  aspect-ratio: 1 / 1;
  background: #F1F5F9;
  overflow: hidden;
}

#admin-view .photos-manager-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#admin-view .photos-manager-card-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 18px;
  text-align: center;
  color: #94A3B8;
}

#admin-view .photos-manager-card-placeholder-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  border: 1px solid #D7E3F4;
  background: rgba(255,255,255,.72);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

#admin-view .photos-manager-card-placeholder-icon svg {
  width: 24px;
  height: 24px;
  fill: #9AAECC;
  display: block;
}

#admin-view .photos-manager-card-placeholder-copy {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: #7B8DA8;
}

#admin-view .photos-manager-card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px 16px;
}

#admin-view .photos-manager-card-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#admin-view .photos-manager-card-section {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748B;
}

#admin-view .photos-manager-card-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  color: #64748B;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

#admin-view .photos-manager-card-status.is-filled {
  background: #ECFDF5;
  border-color: #A7F3D0;
  color: #047857;
}

#admin-view .photos-manager-card-status.is-empty {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #64748B;
}

#admin-view .photos-manager-card-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  color: #0F172A;
}

#admin-view .photos-manager-card-detail,
#admin-view .photos-manager-card-support {
  font-size: 13px;
  line-height: 1.55;
  color: #64748B;
}

#admin-view .photos-manager-card-support {
  margin-top: -4px;
}

#admin-view .photos-manager-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

#admin-view .photos-manager-card-actions .btn,
#admin-view .photos-manager-card-actions .btn-sm,
#admin-view .photos-manager-card-actions .btn-sm-ghost {
  min-width: 0;
}

#admin-view .photos-manager-empty,
#admin-view .photos-manager-loading {
  padding: 28px 24px;
  border: 1px dashed #CBD5E1;
  border-radius: 18px;
  background: #FFFFFF;
  color: #64748B;
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
}

@media (max-width: 1200px) {
  #admin-view .photos-manager-grid-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  #admin-view #atab-photos {
    padding: 18px;
  }

  #admin-view .photos-manager-header,
  #admin-view .photos-manager-filter-head {
    flex-direction: column;
    align-items: stretch;
  }

  #admin-view .photos-manager-upload-btn {
    width: 100%;
  }

  #admin-view .photos-manager-grid,
  #admin-view .photos-manager-grid-gallery {
    grid-template-columns: 1fr;
  }
}

#admin-view .photos-main-card {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .9fr);
  gap: 16px;
}

#admin-view .photos-library-note {
  margin-bottom: 16px;
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #F8FAFC;
  color: #64748B;
  font-size: 13px;
  line-height: 1.55;
}

#admin-view .photos-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
}

#admin-view .photos-library-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
}

#admin-view .photos-library-thumb {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 14px;
  overflow: hidden;
  background: #F1F5F9;
  border: 1px solid #E2E8F0;
  display: flex;
  align-items: center;
  justify-content: center;
}

#admin-view .photos-library-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#admin-view .photos-library-thumb-empty {
  color: #94A3B8;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view .photos-library-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#admin-view .photos-library-title {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .photos-library-sub {
  font-size: 12px;
  color: #64748B;
  line-height: 1.5;
}

#admin-view .photos-library-usage-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .photos-library-usage-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
}

#admin-view .photos-library-usage-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 6px 10px;
  border-radius: 999px;
  background: #EFF6FF;
  border: 1px solid #BFDBFE;
  color: #1D4ED8;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

#admin-view .photos-library-usage-badge.is-unused {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #64748B;
}

#admin-view .photos-library-usage-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#admin-view .photos-library-remove {
  flex-shrink: 0;
}

#admin-view .photos-library-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

#admin-view .photos-library-delete-note {
  font-size: 12px;
  color: #64748B;
  line-height: 1.5;
}

#admin-view .photos-library-empty {
  grid-column: 1 / -1;
  padding: 24px;
  border: 1px dashed #CBD5E1;
  border-radius: 16px;
  background: #FFFFFF;
  color: #64748B;
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
}

#admin-view .photos-assign-backdrop {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.48);
  z-index: 11050;
}

#admin-view .photos-assign-backdrop.is-open {
  display: flex;
}

#admin-view .photos-assign-shell {
  width: min(560px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  border-radius: 20px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  box-shadow: 0 24px 72px rgba(15, 23, 42, 0.22);
}

#admin-view .photos-assign-head,
#admin-view .photos-assign-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
}

#admin-view .photos-assign-head {
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .photos-assign-title {
  font-size: 17px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .photos-assign-sub {
  margin-top: 4px;
  font-size: 13px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view .photos-assign-close {
  border: 1px solid #E2E8F0;
  border-radius: 999px;
  background: #FFFFFF;
  color: #475569;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

#admin-view .photos-assign-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
}

#admin-view .photos-assign-preview {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 16px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #94A3B8;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view .photos-assign-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#admin-view .photos-assign-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

#admin-view .photos-assign-label {
  font-size: 11px;
  font-weight: 700;
  color: #64748B;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view .photos-assign-field select {
  width: 100%;
  min-height: 44px;
  border: 1px solid #CBD5E1;
  border-radius: 12px;
  background: #FFFFFF;
  color: #0F1E36;
  padding: 10px 12px;
  font-size: 14px;
}

#admin-view .photos-assign-note {
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  color: #64748B;
  font-size: 13px;
  line-height: 1.55;
}

#admin-view .photos-assign-note.is-warning {
  border-color: #FDE68A;
  background: #FFFBEB;
  color: #92400E;
}

#admin-view .photos-assign-actions {
  border-top: 1px solid #E2E8F0;
}

#admin-view .photos-content h1,
#admin-view .photos-content h2,
#admin-view .photos-content h3,
#admin-view .photos-content h4,
#admin-view .photos-content .photo-card-title,
#admin-view .photos-content [class*="photo-title"],
#admin-view .photos-content [class*="gallery-title"] {
  text-transform: none;
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  letter-spacing: normal;
}

#admin-view .reviews-page-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view .reviews-hero {
  background: #0F1E36;
  border-radius: 18px;
  padding: 28px 30px;
}

#admin-view .reviews-hero-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.38);
  margin-bottom: 6px;
}

#admin-view .reviews-hero-title {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -.04em;
  color: #FFFFFF;
}

#admin-view .reviews-hero-sub {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255,255,255,.66);
  max-width: 620px;
}

#admin-view .reviews-body {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view .reviews-why-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

#admin-view .reviews-why-item {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  padding: 16px 18px;
}

#admin-view .reviews-why-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  margin-bottom: 6px;
}

#admin-view .reviews-why-copy {
  font-size: 12px;
  line-height: 1.6;
  color: #64748B;
}

#admin-view .reviews-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

#admin-view .reviews-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

#admin-view .reviews-card-head {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

#admin-view .reviews-card-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: #EFF6FF;
  color: #0F1E36;
  border: 1px solid #DBEAFE;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}

#admin-view .reviews-card-title {
  font-size: 16px;
  font-weight: 700;
  color: #0F1E36;
  line-height: 1.3;
}

#admin-view .reviews-card-sub {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
}

#admin-view .reviews-card-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#admin-view .reviews-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view .reviews-field-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #334155;
}

#admin-view .reviews-input {
  width: 100%;
  border: 1px solid #CBD5E1;
  border-radius: 10px;
  background: #FFFFFF;
  color: #0F172A;
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.45;
}

#admin-view .reviews-input:focus {
  outline: none;
  border-color: #2563EB;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14);
}

#admin-view .reviews-link-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

#admin-view .reviews-link-box {
  flex: 1 1 320px;
  min-width: 0;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  background: #F8FAFC;
  color: #475569;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.5;
}

#admin-view .reviews-btn-primary,
#admin-view .reviews-btn-secondary,
#admin-view .reviews-copy-btn {
  border-radius: 8px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  letter-spacing: normal;
  text-transform: none;
  cursor: pointer;
}

#admin-view .reviews-btn-primary {
  background: #0F1E36;
  color: #FFFFFF;
  border: none;
}

#admin-view .reviews-btn-secondary,
#admin-view .reviews-copy-btn {
  background: #FFFFFF;
  color: #475569;
  border: 1px solid #E2E8F0;
}

#admin-view .reviews-helper {
  font-size: 12px;
  line-height: 1.6;
  color: #64748B;
}

#admin-view .reviews-error {
  border-radius: 10px;
  background: #FEF2F2;
  border: 1px solid #FECACA;
  color: #B91C1C;
  padding: 11px 12px;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view .reviews-qr-zone {
  min-height: 144px;
  border-radius: 14px;
  border: 1px dashed #CBD5E1;
  background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 18px;
  font-size: 13px;
  line-height: 1.6;
  color: #64748B;
}

#admin-view .reviews-qr-canvas {
  width: min(100%, 232px);
  height: auto;
  border-radius: 12px;
  background: #FFFFFF;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

#admin-view .reviews-qr-empty {
  max-width: 280px;
}

#admin-view .reviews-tips-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .reviews-tip-item {
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  background: #F8FAFC;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.55;
  color: #334155;
}

@media (max-width: 980px) {
  #admin-view .reviews-why-strip,
  #admin-view .reviews-grid {
    grid-template-columns: 1fr;
  }
}

#admin-view .barbers-page-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view .barbers-hero {
  background: #0F1E36;
  border-radius: 18px;
  padding: 28px 30px 0;
  overflow: hidden;
}

#admin-view .barbers-hero-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 20px;
}

#admin-view .barbers-hero-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.36);
  margin-bottom: 6px;
}

#admin-view .barbers-hero-title {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -.04em;
  color: #FFFFFF;
}

#admin-view .barbers-hero-sub {
  margin-top: 6px;
  max-width: 640px;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255,255,255,.66);
}

#admin-view .barbers-hero-btn {
  flex-shrink: 0;
}

#admin-view .barbers-hero-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255,255,255,.08);
}

#admin-view .barbers-hero-stat {
  padding: 16px 20px;
  border-right: 1px solid rgba(255,255,255,.08);
}

#admin-view .barbers-hero-stat:last-child {
  border-right: none;
}

#admin-view .barbers-hero-stat-val {
  font-size: 22px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.04em;
}

#admin-view .barbers-hero-stat-label {
  margin-top: 3px;
  font-size: 11px;
  color: rgba(255,255,255,.38);
}

#admin-view #atab-barbers .barber-management-grid.barber-management-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

#admin-view #atab-barbers .barber-management-grid.barber-management-layout.form-active {
  grid-template-columns: minmax(0, 1fr);
}

#admin-view #atab-barbers .barber-management-side,
#admin-view #atab-barbers .barber-management-grid.barber-management-layout > .admin-card {
  min-width: 0;
}

#admin-view #atab-barbers .barber-management-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

#admin-view #atab-barbers .barber-roster-shell,
#admin-view #atab-barbers .barber-finance-status-panel,
#admin-view #atab-barbers .barber-management-grid.barber-management-layout > .admin-card,
#admin-view #atab-barbers #barber-workspace-form {
  min-width: 0;
}

#admin-view #atab-barbers .barber-roster-shell,
#admin-view #atab-barbers .barber-management-side,
#admin-view #atab-barbers .admin-card.barber-finance-status-panel {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

#admin-view #atab-barbers .barber-roster-shell {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  overflow: hidden;
}

#admin-view #atab-barbers .barber-roster-header,
#admin-view #atab-barbers .barber-workspace-actions {
  gap: 12px;
}

#admin-view .barber-roster-body {
  display: block;
  overflow-x: auto;
  overflow-y: hidden;
  align-items: start;
  width: 100%;
  max-width: none;
  padding: 4px 0 6px;
}

#admin-view .barber-roster-table-head,
#admin-view .barber-roster-row {
  display: grid;
  grid-template-columns: minmax(280px, 2.4fr) minmax(110px, 1fr) minmax(110px, .95fr) minmax(90px, .8fr) minmax(140px, 1fr) minmax(110px, .75fr) minmax(130px, .95fr) 84px;
  gap: 14px;
  min-width: 1080px;
  align-items: center;
  padding: 14px 18px;
}

#admin-view .barber-roster-table-head {
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
  position: sticky;
  top: 0;
  z-index: 1;
}

#admin-view .barber-roster-col {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #94A3B8;
}

#admin-view .barber-roster-col-action {
  text-align: right;
}

#admin-view .barber-roster-row {
  cursor: pointer;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
  transition: background .15s ease, box-shadow .15s ease, border-color .15s ease;
}

#admin-view .barber-roster-row:last-child {
  border-bottom: none;
}

#admin-view .barber-roster-row:hover,
#admin-view .barber-roster-row:focus-visible,
#admin-view .barber-roster-row.is-selected {
  background: #F8FAFC;
  box-shadow: inset 3px 0 0 #0F1E36;
  outline: none;
}

#admin-view .barber-roster-cell {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

#admin-view .barber-roster-cell-main {
  gap: 12px;
}

#admin-view .barber-roster-main-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#admin-view .barber-roster-name {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  line-height: 1.3;
}

#admin-view .barber-roster-sub,
#admin-view .barber-roster-muted {
  font-size: 12px;
  color: #64748B;
}

#admin-view .barber-roster-sub {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#admin-view .barber-roster-value {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: #0F1E36;
}

#admin-view .barber-roster-inline-label {
  display: none;
}

#admin-view .barber-roster-cell-action {
  justify-content: flex-end;
}

#admin-view .barbers-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  cursor: pointer;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  min-width: 0;
  min-height: 100%;
}

#admin-view .barbers-card:hover,
#admin-view .barbers-card:focus-visible,
#admin-view .barbers-card.is-selected {
  border-color: #CBD5E1;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .08);
  transform: translateY(-1px);
  outline: none;
}

#admin-view .barbers-card-header {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

#admin-view .barbers-avatar {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #E2E8F0;
  color: #0F1E36;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  flex-shrink: 0;
}

#admin-view .barbers-card-head-copy {
  flex: 1;
  min-width: 0;
}

#admin-view .barbers-card-name {
  font-size: 16px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .barbers-card-role {
  margin-top: 4px;
  font-size: 12px;
  color: #64748B;
}

#admin-view .barbers-card-badges {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  flex-shrink: 0;
  min-width: 116px;
}

#admin-view .barbers-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .04em;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  color: #475569;
  white-space: nowrap;
}

#admin-view .barbers-chip.is-on {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

#admin-view .barbers-chip.is-off {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #64748B;
}

#admin-view .barbers-card-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

#admin-view .barbers-stat-box {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
  padding: 10px 12px;
  min-width: 0;
}

#admin-view .barbers-stat-k {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #94A3B8;
  margin-bottom: 4px;
}

#admin-view .barbers-stat-v {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .barbers-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 8px;
  border-top: 1px solid #F1F5F9;
}

#admin-view .barbers-info-key {
  font-size: 12px;
  color: #64748B;
  white-space: nowrap;
}

#admin-view .barbers-info-val {
  font-size: 12px;
  font-weight: 600;
  color: #0F1E36;
  text-align: right;
  word-break: normal;
  overflow-wrap: anywhere;
}

#admin-view .barbers-card-footer {
  display: flex;
  gap: 10px;
  margin-top: 4px;
  flex-wrap: wrap;
}

#admin-view .barbers-card-footer .btn-sm-ghost {
  flex: 1 1 132px;
  min-width: 0;
}

#admin-view .barbers-fee-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#admin-view .barbers-fee-tracker-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .barbers-fee-track-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
  padding: 12px 14px;
}

#admin-view .barbers-fee-track-main,
#admin-view .barbers-fee-track-side {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#admin-view .barbers-fee-track-name,
#admin-view .barbers-fee-selected-head {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .barbers-fee-track-meta,
#admin-view .barbers-fee-track-dates,
#admin-view .barbers-fee-empty {
  font-size: 12px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view .barbers-fee-track-side {
  align-items: flex-end;
  text-align: right;
}

#admin-view .barbers-fee-card-divider {
  border-top: 1px solid #E2E8F0;
}

#admin-view .barbers-fee-card-selected {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media (max-width: 1180px) {
  #admin-view #atab-barbers .barber-management-grid.barber-management-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  #admin-view .barbers-hero-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #admin-view .barbers-hero-stat:nth-child(2) {
    border-right: none;
  }

}

@media (max-width: 640px) {
  #admin-view .barbers-hero {
    padding: 22px 20px 0;
  }

  #admin-view .barbers-hero-strip,
  #admin-view .barbers-card-stats {
    grid-template-columns: 1fr;
  }

  #admin-view .barbers-hero-stat {
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  #admin-view .barbers-hero-stat:last-child {
    border-bottom: none;
  }

  #admin-view .barbers-fee-track-row,
  #admin-view .barbers-card-footer {
    flex-direction: column;
  }

  #admin-view .barbers-card-badges,
  #admin-view .barbers-fee-track-side {
    align-items: flex-start;
    text-align: left;
  }

  #admin-view .barber-roster-table-head,
  #admin-view .barber-roster-row {
    min-width: 960px;
    padding-inline: 14px;
  }
}

#admin-view #atab-barbers .btn-sm,
#admin-view #atab-barbers .btn-sm-ghost,
#admin-view #atab-barbers button.btn-sm {
  border-radius: 7px !important;
  text-transform: none !important;
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 6px 14px !important;
  cursor: pointer !important;
}

#admin-view #barber-add-btn,
#admin-view .barbers-hero-btn {
  background: var(--color-navy) !important;
  color: var(--color-white) !important;
  border: 1px solid var(--color-navy) !important;
  border-radius: 7px !important;
  padding: 7px 16px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: var(--admin-typography-family) !important;
}

#admin-view #barber-add-btn:hover,
#admin-view .barbers-hero-btn:hover {
  background: var(--color-navy-800) !important;
  border-color: var(--color-navy-800) !important;
}

#admin-view #atab-barbers .barber-management-actions .btn-sm,
#admin-view #barber-workspace-save-btn {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

#admin-view #atab-barbers .barber-management-actions .btn-sm-ghost,
#admin-view #barber-workspace-cancel-btn {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

#admin-view #atab-barbers .barbers-card-footer .btn-sm-ghost {
  background: #FFFFFF !important;
  color: #0F1E36 !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 5px 12px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 100% !important;
  display: block !important;
  margin-bottom: 4px !important;
}

#admin-view #atab-barbers .barbers-card-footer .btn-sm-ghost:last-child {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
}

#admin-view #atab-barbers .barbers-info-val .barber-status-badge,
#admin-view #atab-barbers .barbers-fee-track-side .barber-status-badge {
  padding: 2px 8px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  border: 1px solid transparent !important;
}

#admin-view #atab-barbers .barber-status-badge.late {
  background: #FEF2F2 !important;
  color: #DC2626 !important;
  border-color: #FECACA !important;
}

#admin-view #atab-barbers .barber-status-badge.due-today,
#admin-view #atab-barbers .barber-status-badge.due-soon {
  background: #FFFBEB !important;
  color: #D97706 !important;
  border-color: #FDE68A !important;
}

#admin-view #atab-barbers .barber-status-badge.paid,
#admin-view #atab-barbers .barber-status-badge.active {
  background: #F0FDF4 !important;
  color: #16A34A !important;
  border-color: #BBF7D0 !important;
}

#admin-view #barber-seat-limit-banner:not([hidden]) {
  background: #FFFBEB !important;
  border: 1px solid #FDE68A !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  font-size: 13px !important;
  color: #92400E !important;
  font-family: Inter, sans-serif !important;
  margin-bottom: 12px !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

#admin-view #atab-barbers .barber-roster-header,
#admin-view #atab-barbers .barber-roster-shell > div:first-child {
  background: #F8FAFC !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 14px 18px !important;
}

#admin-view #atab-barbers .barber-management-copy {
  font-size: 12px !important;
  color: #94A3B8 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #barber-management-count {
  font-size: 12px !important;
  color: #94A3B8 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-barbers .admin-card.barber-finance-status-panel .admin-card-header {
  background: #F8FAFC !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 14px 18px !important;
}

#admin-view #atab-barbers .admin-card.barber-finance-status-panel .admin-card-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #64748B !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-barbers .barbers-form-panel {
  display: none;
}

#admin-view #atab-barbers .barbers-drawer-overlay {
  position: fixed;
  inset: var(--admin-shell-topbar-height) 0 0 0;
  z-index: 239;
  border: 0;
  margin: 0;
  padding: 0;
  background: rgba(15, 23, 42, 0.16);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, visibility 0.18s ease;
}

#admin-view #atab-barbers .barbers-drawer-overlay.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#admin-view #atab-barbers .barbers-form-panel.active {
  display: flex !important;
  flex-direction: column;
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active {
  display: flex !important;
  flex-direction: column;
  position: fixed;
  top: var(--admin-shell-topbar-height);
  right: 0;
  transform: translateX(0);
  width: min(760px, calc(100vw - 24px));
  max-width: 100%;
  height: calc(100vh - var(--admin-shell-topbar-height));
  overflow: hidden;
  z-index: 240;
  border-radius: 22px 0 0 22px;
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
  margin: 0 !important;
  box-sizing: border-box !important;
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-header,
#admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-body {
  background: #FFFFFF;
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-header {
  position: sticky;
  top: 0;
  z-index: 2;
  border-top-left-radius: 22px;
  border-top-right-radius: 0;
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  border-bottom-left-radius: 22px;
  border-bottom-right-radius: 0;
  padding: 16px 18px 18px;
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active .barber-workspace-actions {
  align-items: center;
}

#admin-view #atab-barbers .barber-drawer-close {
  display: none;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: #F8FBFF;
  color: #475569;
  font-size: 1.15rem;
  line-height: 1;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#admin-view #atab-barbers .barbers-form-panel.is-modal.active .barber-drawer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#admin-view #atab-barbers .barber-drawer-close:hover {
  background: #EEF4FF;
  color: #0F1E36;
}

@media (max-width: 900px) {
  #admin-view #atab-barbers .barbers-form-panel.is-modal.active {
    width: min(100vw, 100%);
    border-radius: 0;
  }

  #admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-header,
  #admin-view #atab-barbers .barbers-form-panel.is-modal.active .admin-card-body {
    border-radius: 0;
  }
}

#admin-view #atab-barbers .barbers-upgrade-link {
  color: #D97706 !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

#admin-view #atab-barbers .barbers-workspace.barber-management-grid.barber-management-layout {
  display: grid;
  grid-template-columns: minmax(0, 286px) minmax(0, 1fr) 264px;
  gap: 10px;
  align-items: start;
}

#admin-view #atab-barbers .barbers-workspace .client-workspace-card {
  min-height: 100%;
  min-width: 0;
}

#admin-view #atab-barbers .barber-workspace-list-card,
#admin-view #atab-barbers .barber-workspace-list-card .client-workspace-list-toolbar,
#admin-view #atab-barbers .barber-workspace-list-card .client-workspace-list-shell {
  min-width: 0;
}

#admin-view #atab-barbers .barber-workspace-list-card .client-workspace-list-toolbar {
  gap: 10px;
}

#admin-view #barber-search {
  width: 100%;
}

#admin-view #atab-barbers .barbers-form-panel {
  display: flex !important;
  flex-direction: column;
}

#admin-view #atab-barbers .barbers-form-panel .admin-card-header,
#admin-view #atab-barbers .barbers-form-panel .admin-card-body {
  background: transparent !important;
}

#admin-view #atab-barbers .barbers-form-panel .admin-card-body {
  padding-top: 0;
}

#admin-view #atab-barbers .barber-workspace-form {
  display: grid;
  gap: 12px;
}

#admin-view #atab-barbers .barber-workspace-form .client-workspace-stacked-sections {
  display: grid;
  gap: 12px;
}

#admin-view #atab-barbers .barber-workspace-form .cp-section {
  padding: 14px;
}

#admin-view #atab-barbers .barber-workspace-inline-panel,
#admin-view #atab-barbers .barber-workspace-pay-shell {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

#admin-view #atab-barbers .barber-workspace-inline-panel {
  padding-top: 10px;
  border-top: 1px solid #E2E8F0;
}

#admin-view #atab-barbers .barber-workspace-pay-status,
#admin-view #atab-barbers .barber-workspace-fee-tracker {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
  padding: 12px 14px;
}

#admin-view #atab-barbers .barber-workspace-pay-status .barber-fee-status-label,
#admin-view #atab-barbers .barber-workspace-fee-tracker .barbers-fee-track-dates {
  color: #475569;
}

#admin-view #atab-barbers .barber-workspace-pay-status .barber-fee-status-value {
  color: #1E293B;
}

#admin-view #atab-barbers .barber-workspace-actions {
  width: 100%;
}

#admin-view #atab-barbers .barber-workspace-actions .barber-drawer-close[hidden] {
  display: none !important;
}

#admin-view #atab-barbers .barber-workspace-rail-card .barber-invite-control-actions {
  margin-top: 2px;
}

#admin-view #atab-barbers .barber-workspace-rail-card .client-workspace-rail-status {
  gap: 8px;
}

#admin-view #atab-barbers #barber-workspace-view[hidden],
#admin-view #atab-barbers #barber-workspace-form-shell[hidden] {
  display: none !important;
}

#admin-view #atab-barbers .barber-workspace-view {
  display: block;
}

#admin-view #atab-barbers .barber-workspace-detail-shell .client-workspace-detail-body {
  display: grid;
  gap: 10px;
}

#admin-view #atab-barbers .barber-workspace-summary-row strong {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  text-align: right;
}

#admin-view #atab-barbers .barber-workspace-color-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#admin-view #atab-barbers .barber-workspace-access-copy {
  margin-top: 10px;
  line-height: 1.5;
}

#admin-view #atab-barbers .barber-workspace-pay-shell-view {
  margin-top: 12px;
}

#admin-view #atab-barbers .barber-form-status {
  margin-top: 2px;
}

@media (max-width: 1260px) {
  #admin-view #atab-barbers .barbers-workspace.barber-management-grid.barber-management-layout {
    grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  }

  #admin-view #atab-barbers .barber-workspace-rail-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  #admin-view #atab-barbers .barbers-workspace.barber-management-grid.barber-management-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view #atab-barbers .barber-workspace-list-card,
  #admin-view #atab-barbers .barbers-form-panel,
  #admin-view #atab-barbers .barber-workspace-rail-card {
    grid-column: auto;
  }
}

#admin-view #atab-barbers .barber-mobile-fee-indent .currency-input-wrap,
#admin-view #atab-barbers .barber-field-money .currency-input-wrap {
  display: flex;
  align-items: center;
  border: 1px solid #E2E8F0;
  border-radius: 7px;
  overflow: hidden;
  background: #FFFFFF;
}

#admin-view #atab-barbers .barber-mobile-fee-indent .currency-input-prefix,
#admin-view #atab-barbers .barber-field-money .currency-input-prefix {
  padding: 8px 10px;
  font-size: 13px;
  color: #94A3B8;
  background: #F8FAFC;
  border-right: 1px solid #E2E8F0;
  flex-shrink: 0;
  font-family: Inter, sans-serif;
}

#admin-view #atab-barbers .barber-mobile-fee-indent .currency-input-wrap input,
#admin-view #atab-barbers .barber-field-money .currency-input-wrap input {
  border: none !important;
  border-radius: 0 !important;
  flex: 1;
  padding: 8px 10px !important;
}

#admin-view #atab-barbers .barber-mobile-fee-indent .currency-input-wrap input:focus,
#admin-view #atab-barbers .barber-field-money .currency-input-wrap input:focus {
  outline: none !important;
  box-shadow: none !important;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap {
  display: flex !important;
  align-items: stretch !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
  position: relative !important;
  width: 100% !important;
  box-sizing: border-box !important;
  max-width: none !important;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-prefix {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  min-width: 34px !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: #94A3B8 !important;
  background: #F8FAFC !important;
  border-right: 1px solid #E2E8F0 !important;
  flex-shrink: 0 !important;
  font-family: Inter, sans-serif !important;
  line-height: 1 !important;
  user-select: none !important;
  pointer-events: none !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  letter-spacing: normal !important;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap input {
  border: none !important;
  border-radius: 0 !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 8px 10px !important;
  outline: none !important;
  box-shadow: none !important;
  background: #FFFFFF !important;
  font-size: 13px !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
  resize: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  max-width: none !important;
  padding-left: 10px !important;
}

#admin-view #atab-barbers .barber-workspace-form {
  display: grid;
  gap: 10px;
}

#admin-view #atab-barbers .barber-workspace-form .edit-form-2col {
  gap: 12px;
}

#admin-view #atab-barbers .barber-workspace-form .form-field {
  margin: 0;
}

#admin-view #atab-barbers .barber-workspace-form .barber-management-copy {
  margin-top: 4px;
  line-height: 1.45;
}

#admin-view #atab-barbers .barber-form-group {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid rgba(226, 232, 240, 0.92);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(248,250,252,0.94) 100%);
}

#admin-view #atab-barbers .barber-form-group:first-of-type {
  margin-top: 0;
}

#admin-view #atab-barbers .barber-form-group-copy {
  margin: 2px 0 12px;
}

#admin-view #atab-barbers .barber-form-group-subhead {
  margin: 14px 0 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #334155;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .form-field > .form-label,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .account-toggle-card .form-label,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-account-access-label {
  color: #64748B !important;
  font-weight: 700 !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#admin-view #atab-barbers .barber-workspace-form.is-readonly select,
#admin-view #atab-barbers .barber-workspace-form.is-readonly textarea,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .currency-input-wrap,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .account-toggle-card,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-account-access-panel,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-calendar-color-preview,
#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-management-note {
  background: linear-gradient(180deg, rgba(248,250,252,0.98) 0%, rgba(241,245,249,0.96) 100%) !important;
  border-color: rgba(203, 213, 225, 0.88) !important;
  box-shadow: none !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#admin-view #atab-barbers .barber-workspace-form.is-readonly select,
#admin-view #atab-barbers .barber-workspace-form.is-readonly textarea {
  color: #0F172A !important;
  cursor: default !important;
  caret-color: transparent !important;
  pointer-events: none !important;
  border-color: rgba(203, 213, 225, 0.88) !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#admin-view #atab-barbers .barber-workspace-form.is-readonly select:focus,
#admin-view #atab-barbers .barber-workspace-form.is-readonly textarea:focus {
  outline: none !important;
  box-shadow: none !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly select {
  opacity: 1 !important;
  -webkit-text-fill-color: #0F172A !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly textarea::placeholder,
#admin-view #atab-barbers .barber-workspace-form.is-readonly input::placeholder {
  color: #94A3B8 !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .currency-input-prefix {
  background: transparent !important;
  color: #64748B !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .currency-input-wrap input {
  background: transparent !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-calendar-color-picker {
  display: none !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-calendar-color-preview {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid rgba(203, 213, 225, 0.88);
  border-radius: 12px;
  color: #334155 !important;
  font-size: 12px;
  font-weight: 600;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-calendar-color-preview-dot {
  width: 10px;
  height: 10px;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .account-toggle-card {
  cursor: default !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .account-toggle-card .toggle {
  pointer-events: none !important;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .account-toggle-card .toggle:not(.on) {
  opacity: 0.72;
}

#admin-view #atab-barbers .barber-workspace-form.is-readonly .barber-management-copy {
  color: #64748B !important;
}

#admin-view #atab-barbers .barber-calendar-color-picker {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 2px;
}

#admin-view #atab-barbers .barber-calendar-color-swatch {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid var(--swatch-border, rgba(100, 116, 139, 0.35));
  background: var(--swatch, #64748B);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.5);
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

#admin-view #atab-barbers .barber-calendar-color-swatch:hover {
  transform: translateY(-1px);
}

#admin-view #atab-barbers .barber-calendar-color-swatch.is-active {
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14), inset 0 0 0 2px rgba(255,255,255,0.85);
  border-color: rgba(37, 99, 235, 0.4);
}

#admin-view #atab-barbers .barber-calendar-color-preview {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #64748B;
  font-size: 11px;
  font-weight: 400;
  margin-top: 6px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-barbers .barber-calendar-color-preview-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view #atab-barbers .barber-workspace-form .barber-identity-helper {
  margin-top: -2px;
}

#admin-view #atab-barbers .barber-form-access-row .account-toggle-card {
  padding: 14px 15px;
  min-height: 100%;
}

#admin-view #atab-barbers .barber-form-access-row--single {
  grid-template-columns: minmax(0, 1fr);
}

#admin-view #atab-barbers .barber-form-rules-row {
  align-items: end;
}

#admin-view #atab-barbers .barber-form-rules-row--booking {
  grid-template-columns: minmax(0, 1fr);
}

#admin-view #atab-barbers .barber-management-actions {
  margin-top: 16px;
}

#admin-view #atab-barbers .barber-account-access-panel {
  margin-top: 10px;
}

#admin-view #atab-barbers .barber-account-access-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

#admin-view #atab-barbers .barber-invite-control-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 12px;
}

#admin-view #atab-barbers .barber-invite-control-actions[hidden] {
  display: none !important;
}

#admin-view #atab-barbers .barber-photo-panel-field {
  padding-top: 2px;
}

#admin-view #atab-barbers .barber-photo-panel-preview {
  margin-bottom: 12px;
}

#admin-view #atab-barbers .barber-mobile-fee-indent {
  margin-top: 12px;
}

#admin-view #atab-barbers .barber-management-note {
  display: none;
  margin-top: 2px;
  padding: 8px 10px;
  line-height: 1.5;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap input::placeholder {
  color: #CBD5E1 !important;
  opacity: 1 !important;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap input::-webkit-inner-spin-button,
#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap input::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

#admin-view #atab-barbers .barber-workspace-form .currency-input-wrap input[type=number] {
  -moz-appearance: textfield !important;
}

#admin-view #atab-barbers .barber-workspace-form .barber-field-money,
#admin-view #atab-barbers .barber-workspace-form .barber-mobile-fee-indent {
  max-width: none !important;
  width: 100% !important;
}

#admin-view #atab-barbers .barber-workspace-form .barber-field-money .currency-input-wrap,
#admin-view #atab-barbers .barber-workspace-form .barber-mobile-fee-indent .currency-input-wrap,
#admin-view #atab-barbers .barber-workspace-form .barber-field-money input,
#admin-view #atab-barbers .barber-workspace-form .barber-mobile-fee-indent input {
  max-width: none !important;
  width: 100% !important;
}

#admin-view #atab-notifications {
  padding-top: 4px;
}

#admin-view #atab-notifications .notifications-shell.notifications-exact-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 4px 0 28px;
}

#admin-view #atab-notifications .notifications-page-head,
#admin-view #atab-notifications .pg-hdr {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 28px 32px 20px;
  margin: -24px -24px 0;
  background: #0F1E36;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

#admin-view #atab-notifications .notifications-page-head .page-eyebrow {
  color: rgba(255,255,255,.35);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

#admin-view #atab-notifications .notifications-page-head .page-title {
  color: #FFFFFF;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.5px;
  margin: 0;
}

#admin-view #atab-notifications .notifications-page-head .page-subtitle {
  color: rgba(255,255,255,.4);
  font-size: 13px;
  line-height: 1.6;
  max-width: 760px;
  margin-top: 8px;
}

#admin-view #atab-notifications .notifications-page-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-notifications .notifications-page-actions .btn,
#admin-view #atab-notifications .notifications-page-actions .btn-sm {
  background: #FFFFFF !important;
  color: #0F1E36 !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
  box-shadow: none !important;
}

#admin-view #atab-notifications .notifications-global-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid #D7E3F3;
  background: #F8FBFF;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.02);
}

#admin-view #atab-notifications #notifications-global-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #36527A;
  flex: 0 0 auto;
  box-shadow: 0 0 0 4px rgba(54, 82, 122, 0.12);
}

#admin-view #atab-notifications #notifications-global-dot.is-off {
  background: #D97706;
  box-shadow: 0 0 0 4px rgba(217, 119, 6, 0.12);
}

#admin-view #atab-notifications .notifications-global-copy {
  min-width: 0;
  flex: 1;
}

#admin-view #atab-notifications #notifications-global-title {
  color: #0F1E36;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 2px;
}

#admin-view #atab-notifications #notifications-global-desc {
  color: #476072;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view #atab-notifications #notifications-status-banner {
  margin-top: -4px;
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  color: #475569;
  font-size: 12px;
  line-height: 1.6;
}

#admin-view #atab-notifications #notifications-stage-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 10px;
  overflow: visible;
  padding: 0;
  margin-bottom: 20px;
  border-bottom: none;
  background: transparent;
}

#admin-view #atab-notifications #notifications-stage-tabs [data-notification-stage] {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 54px;
  min-width: 0;
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  color: #64748B;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  font-family: Inter, sans-serif;
  letter-spacing: normal;
  text-transform: none;
  white-space: normal;
  transition: border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#admin-view #atab-notifications #notifications-stage-tabs [data-notification-stage].active {
  border-color: #0F1E36;
  background: #F8FAFC;
  color: #0F1E36;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

#admin-view #atab-notifications .notifications-tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 34px;
  border-radius: 9px;
  background: #F8FAFC;
  color: #1D4ED8;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

#admin-view #atab-notifications .notifications-tab-label {
  min-width: 0;
  flex: 1;
  line-height: 1.25;
  white-space: normal;
}

#admin-view #atab-notifications .notifications-tab-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  padding: 4px 9px;
  border-radius: 999px;
  background: #F8FBFF;
  border: 1px solid #D7E3F3;
  color: #36527A;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
}

#admin-view #atab-notifications #notifications-stage-tabs [data-notification-stage].active .notifications-tab-count {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

#admin-view #atab-notifications .notifications-channel-panel {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#admin-view #atab-notifications [hidden],
#admin-view #atab-notifications .notifications-channel-panel[hidden],
#admin-view #atab-notifications .notifications-panel[hidden],
#admin-view #atab-notifications .notification-stage-panel[hidden] {
  display: none !important;
}

#admin-view #atab-notifications .ch-header {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
}

#admin-view #atab-notifications .ch-header-left,
#admin-view #atab-notifications .ch-header-right {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

#admin-view #atab-notifications .ch-header-right {
  justify-content: flex-end;
}

#admin-view #atab-notifications .notifications-global-state {
  flex: 0 0 auto;
}

#admin-view #atab-notifications .ch-header-title {
  color: #0F1E36;
  font-size: 16px;
  font-weight: 700;
}

#admin-view #atab-notifications .ch-header-desc,
#admin-view #atab-notifications .ch-stat-lbl {
  color: #64748B;
}

#admin-view #atab-notifications .ch-header-icon,
#admin-view #atab-notifications .ch-stat {
  border-radius: 12px;
}

#admin-view #atab-notifications .notifications-card-list {
  display: grid;
  gap: 14px;
}

#admin-view #atab-notifications .nc {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

#admin-view #atab-notifications .nc-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
}

#admin-view #atab-notifications .nc-row.open {
  border-bottom: 1px solid #E2E8F0;
}

#admin-view #atab-notifications .nc-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 14px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#admin-view #atab-notifications .nc-title {
  color: #0F1E36;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 4px;
}

#admin-view #atab-notifications .nc-meta,
#admin-view #atab-notifications .notifications-timing-text,
#admin-view #atab-notifications .preview-note,
#admin-view #atab-notifications .log-meta,
#admin-view #atab-notifications .card-sub,
#admin-view #atab-notifications .delivery-desc {
  color: #64748B;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view #atab-notifications .nc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

#admin-view #atab-notifications .notifications-caret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 28px;
  margin-left: 2px;
  border-radius: 999px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  color: #475569;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
  flex-shrink: 0;
}

#admin-view #atab-notifications .notifications-caret-icon {
  display: block;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transition: transform .18s ease;
}

#admin-view #atab-notifications .notifications-caret.is-open .notifications-caret-icon {
  transform: rotate(225deg) translateY(-1px);
}

#admin-view #atab-notifications .nc-row:hover .notifications-caret,
#admin-view #atab-notifications .nc-row:focus-visible .notifications-caret,
#admin-view #atab-notifications .nc-row.open .notifications-caret {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

#admin-view #atab-notifications .badge,
#admin-view #atab-notifications .stage-pill,
#admin-view #atab-notifications .notifications-ai-pill,
#admin-view #atab-notifications .notification-channel-badge,
#admin-view #atab-notifications .notification-state-badge,
#admin-view #atab-notifications .notification-template-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  border: 1px solid transparent;
}

#admin-view #atab-notifications .badge.b-confirmed {
  background: #F0FDF4;
  color: #15803D;
  border-color: #BBF7D0;
}

#admin-view #atab-notifications .badge.b-cancelled {
  background: #FEF2F2;
  color: #DC2626;
  border-color: #FECACA;
}

#admin-view #atab-notifications .stage-pill {
  background: #F8FAFC;
  color: #475569;
  border-color: #E2E8F0;
  text-transform: capitalize;
}

#admin-view #atab-notifications .stage-pill-email,
#admin-view #atab-notifications .notifications-ai-pill {
  background: #EFF6FF;
  color: #1D4ED8;
  border-color: #BFDBFE;
}

#admin-view #atab-notifications .notification-state-badge {
  background: #F8FAFC;
  color: #475569;
  border-color: #E2E8F0;
}

#admin-view #atab-notifications .notification-state-badge.is-configured {
  background: #EFF6FF;
  color: #1D4ED8;
  border-color: #BFDBFE;
}

#admin-view #atab-notifications .nc-editor {
  display: none;
  padding: 16px 18px 18px;
  background: #FFFFFF;
}

#admin-view #atab-notifications .nc-editor.open {
  display: block;
}

#admin-view #atab-notifications .timing-row,
#admin-view #atab-notifications .notifications-card-actions,
#admin-view #atab-notifications .notification-test-actions,
#admin-view #atab-notifications .btn-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-notifications .timing-label {
  color: #0F1E36;
  font-size: 12px;
  font-weight: 700;
}

#admin-view #atab-notifications .timing-row {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 10px 14px;
  margin-bottom: 14px;
}

#admin-view #atab-notifications .timing-input,
#admin-view #atab-notifications .timing-select,
#admin-view #atab-notifications .qh-time {
  min-height: 38px;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  background: #FFFFFF;
  color: #0F1E36;
  padding: 5px 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  box-shadow: none;
}

#admin-view #atab-notifications .tok-shelf,
#admin-view #atab-notifications .notifications-reference-group {
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
}

#admin-view #atab-notifications .tok-shelf-label,
#admin-view #atab-notifications .notifications-reference-group .tok-shelf-label,
#admin-view #atab-notifications .card-title,
#admin-view #atab-notifications .delivery-title {
  color: #0F1E36;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 10px;
}

#admin-view #atab-notifications .tok-shelf-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#admin-view #atab-notifications .tok,
#admin-view #atab-notifications .notifications-token {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid #DBEAFE;
  background: #FFFFFF;
  color: #1D4ED8;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  box-shadow: none;
}

#admin-view #atab-notifications .notification-token-readonly {
  cursor: default;
  user-select: text;
}

#admin-view #atab-notifications .nc-editor-grid,
#admin-view #atab-notifications .delivery-grid.notifications-delivery-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap: 16px;
  align-items: start;
}

#admin-view #atab-notifications .composer-wrap,
#admin-view #atab-notifications .preview-wrap,
#admin-view #atab-notifications .card.notifications-log-card,
#admin-view #atab-notifications .delivery-card,
#admin-view #atab-notifications .notifications-token-reference-card {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}

#admin-view #atab-notifications .composer-topbar,
#admin-view #atab-notifications .preview-topbar,
#admin-view #atab-notifications .notifications-log-header {
  padding: 12px 14px;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
}

#admin-view #atab-notifications .composer-channel,
#admin-view #atab-notifications .preview-topbar {
  color: #0F1E36;
  font-size: 12px;
  font-weight: 700;
}

#admin-view #atab-notifications .composer-body {
  min-height: 180px;
  padding: 14px;
  background: #FFFFFF;
  color: #0F1E36;
  font-size: 13px;
  line-height: 1.65;
  border: none;
  outline: none;
}

#admin-view #atab-notifications .composer-body[contenteditable="false"] {
  background: #F8FAFC;
  color: #64748B;
}

#admin-view #atab-notifications .composer-footer {
  display: flex;
  justify-content: flex-end;
  padding: 10px 14px 14px;
}

#admin-view #atab-notifications .notification-variant-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view #atab-notifications .notification-variant-btn {
  border: 1px solid #CBD5E1;
  border-radius: 10px;
  background: #FFFFFF;
  color: #0F1E36;
  font-size: 12px;
  font-weight: 700;
  padding: 10px 12px;
  text-align: left;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
}

#admin-view #atab-notifications .notification-variant-btn:hover:not(:disabled),
#admin-view #atab-notifications .notification-variant-btn:focus-visible {
  border-color: #2563EB;
  background: #EFF6FF;
  color: #1D4ED8;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
  outline: none;
}

#admin-view #atab-notifications .notification-variant-btn.is-active {
  border-color: #2563EB;
  background: #DBEAFE;
  color: #1D4ED8;
}

#admin-view #atab-notifications .notification-variant-btn:disabled {
  cursor: not-allowed;
  opacity: 0.7;
}

#admin-view #atab-notifications .notification-compliance-note,
#admin-view #atab-notifications .notification-legacy-warning,
#admin-view #atab-notifications .notification-future-only-copy {
  margin: 0 14px 12px;
  padding: 11px 12px;
  border-radius: 10px;
  font-size: 12px;
  line-height: 1.5;
}

#admin-view #atab-notifications .notification-compliance-note {
  margin-top: 14px;
  background: #EFF6FF;
  border: 1px solid #BFDBFE;
  color: #1E3A8A;
}

#admin-view #atab-notifications .notification-legacy-warning {
  background: #FFF7ED;
  border: 1px solid #FED7AA;
  color: #9A3412;
}

#admin-view #atab-notifications .notification-future-only-copy {
  margin-top: 12px;
  background: #F8FAFC;
  border: 1px dashed #CBD5E1;
  color: #475569;
}

#admin-view #atab-notifications .notification-token-explainer,
#admin-view #atab-notifications .notifications-reference-group-copy {
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
}

#admin-view #atab-notifications .notification-token-explainer {
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view #atab-notifications .notifications-reference-group-copy {
  display: grid;
  gap: 10px;
}

#admin-view #atab-notifications .char-count {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

#admin-view #atab-notifications .char-count.c-ok {
  background: #EFF6FF;
  color: #1D4ED8;
}

#admin-view #atab-notifications .char-count.c-warn {
  background: #FFFBEB;
  color: #D97706;
}

#admin-view #atab-notifications .char-count.c-over {
  background: #FEF2F2;
  color: #DC2626;
}

#admin-view #atab-notifications .ctok {
  display: inline-flex;
  align-items: center;
  padding: 2px 6px;
  border-radius: 999px;
  background: #DBEAFE;
  color: #1D4ED8;
  font-size: 11px;
  font-weight: 600;
  margin: 0 1px;
}

#admin-view #atab-notifications .preview-phone,
#admin-view #atab-notifications .preview-body {
  padding: 14px;
}

#admin-view #atab-notifications .preview-bubble,
#admin-view #atab-notifications .preview-body {
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  color: #0F1E36;
  font-size: 13px;
  line-height: 1.65;
  padding: 14px;
}

#admin-view #atab-notifications .notifications-activity-list,
#admin-view #atab-notifications #notifications-delivery-mode-list,
#admin-view #atab-notifications #notifications-token-list {
  display: grid;
  gap: 12px;
}

#admin-view #atab-notifications .log-item,
#admin-view #atab-notifications .notifications-sms-status-card {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
}

#admin-view #atab-notifications .log-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #2563EB;
  margin-top: 6px;
  flex: 0 0 auto;
}

#admin-view #atab-notifications .log-title,
#admin-view #atab-notifications .notifications-sms-status-title,
#admin-view #atab-notifications .notifications-sms-status-value {
  color: #0F1E36;
  font-size: 13px;
  font-weight: 600;
}

#admin-view #atab-notifications .notifications-sms-status-head,
#admin-view #atab-notifications .notifications-sms-status-meta {
  display: grid;
  gap: 10px;
}

#admin-view #atab-notifications .notifications-sms-status-row,
#admin-view #atab-notifications .notifications-quiet-hours-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

#admin-view #atab-notifications .notifications-sms-status-label,
#admin-view #atab-notifications .notifications-quiet-hours-sep {
  color: #64748B;
  font-size: 12px;
  font-weight: 600;
}

#admin-view #atab-notifications .notifications-compliance-status-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view #atab-notifications .notifications-compliance-status-copy {
  display: grid;
  gap: 4px;
}

#admin-view #atab-notifications .notifications-readonly-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 12px;
  border: 1px solid #D7E3F3;
  border-radius: 999px;
  background: #F8FBFF;
  color: #36527A;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  white-space: nowrap;
}

#admin-view #atab-notifications .notifications-delivery-detail-stack {
  display: grid;
  gap: 10px;
}

#admin-view #atab-notifications .notifications-delivery-detail-card {
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
  display: grid;
  gap: 4px;
}

#admin-view #atab-notifications .notifications-delivery-detail-label {
  color: #64748B;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view #atab-notifications .notifications-delivery-detail-value {
  color: #0F1E36;
  font-size: 14px;
  font-weight: 700;
}

#admin-view #atab-notifications .notifications-delivery-detail-copy {
  color: #475569;
  font-size: 13px;
  line-height: 1.55;
}

#admin-view #atab-notifications .delivery-card,
#admin-view #atab-notifications .notifications-token-reference-card,
#admin-view #atab-notifications .card.notifications-log-card {
  padding: 16px;
}

#admin-view #atab-notifications .delivery-card .btn,
#admin-view #atab-notifications .notifications-card-actions .btn,
#admin-view #atab-notifications .notification-test-actions .btn,
#admin-view #atab-notifications .notifications-page-actions .btn {
  border-radius: 9px;
}

#admin-view #atab-notifications .notifications-card-actions .btn {
  padding: 7px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-notifications .notifications-card-actions .btn:first-child {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
}

#admin-view #atab-notifications .notifications-card-actions .btn:last-child {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  font-weight: 500 !important;
}

#admin-view #atab-notifications .toggle {
  background: #CBD5E1;
}

#admin-view #atab-notifications .toggle.on,
#admin-view #atab-notifications .toggle.on-green,
#admin-view #atab-notifications .toggle[aria-checked="true"] {
  background: #2563EB;
}

#admin-view #atab-notifications #notifications-panel-activity .card.notifications-log-card,
#admin-view #atab-notifications #notifications-panel-delivery .delivery-card,
#admin-view #atab-notifications #notifications-panel-delivery .notifications-token-reference-card {
  overflow: hidden;
}

#admin-view #atab-notifications #notifications-panel-activity .notifications-log-header,
#admin-view #atab-notifications #notifications-panel-delivery .delivery-card > .delivery-title,
#admin-view #atab-notifications #notifications-panel-delivery .notifications-token-reference-card > .card-title {
  margin-bottom: 0;
}

#admin-view #atab-notifications #notifications-panel-activity .divider,
#admin-view #atab-notifications #notifications-panel-delivery .notifications-token-reference-card > .divider {
  display: none;
}

#admin-view #atab-notifications #notifications-activity-list {
  padding: 18px;
  border-top: none;
}

#admin-view #atab-notifications #notifications-activity-list .log-empty {
  display: block;
  text-align: center;
  color: #9CA3AF;
  font-size: 13px;
  line-height: 1.6;
  padding: 24px 16px;
  border: 1px dashed #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
}

#admin-view #atab-notifications #notifications-activity-list .log-item {
  padding: 14px 16px;
}

#admin-view #atab-notifications #notifications-activity-list .log-meta {
  margin-top: 4px;
  color: #94A3B8;
  font-size: 12px;
}

#admin-view #atab-notifications #notifications-panel-delivery .delivery-card {
  padding: 18px;
}

#admin-view #atab-notifications #notifications-panel-delivery .delivery-desc {
  margin-top: 8px;
  margin-bottom: 14px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view #atab-notifications #notifications-delivery-mode-list {
  gap: 0;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-card {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(180px, 0.8fr) auto;
  gap: 18px;
  align-items: center;
  padding: 18px;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-card > * {
  min-width: 0;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-copy,
#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-meta {
  min-width: 0;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-copy,
#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-head,
#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-meta {
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-text,
#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-value {
  color: #0F1E36;
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: normal;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-meta {
  gap: 12px;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-row {
  grid-template-columns: minmax(0, 1fr);
  gap: 4px;
  align-items: start;
  padding: 0;
  border: none;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-label {
  color: #64748B;
  font-size: 12px;
  font-weight: 600;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .btn-row {
  justify-content: flex-end;
  align-self: center;
}

#admin-view #atab-notifications #notifications-delivery-mode-list .btn-row .btn {
  white-space: nowrap;
}

#admin-view #atab-notifications #notifications-panel-delivery .btn-row .btn {
  border-radius: 7px !important;
  padding: 7px 14px !important;
  font-size: 12px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-notifications #notifications-panel-delivery .btn-row .btn.btn-primary {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  font-weight: 600 !important;
}

#admin-view #atab-notifications #notifications-panel-delivery .btn-row .btn:not(.btn-primary) {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  font-weight: 500 !important;
}

#admin-view #atab-notifications #notifications-panel-delivery .toggle-row {
  margin-top: 12px;
}

#admin-view #atab-notifications #notifications-panel-delivery .notifications-delivery-spacer {
  height: 12px;
}

#admin-view #atab-notifications #notifications-panel-delivery .notifications-quiet-hours-grid {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin: 10px 0 12px;
}

#admin-view #atab-notifications #notifications-panel-delivery .notifications-compliance-status-row {
  margin-top: 12px;
}

#admin-view #atab-notifications #notifications-panel-delivery .btn-row {
  margin-top: 10px;
}

@media (max-width: 980px) {
  #admin-view #atab-notifications .notifications-page-head,
  #admin-view #atab-notifications .pg-hdr,
  #admin-view #atab-notifications .ch-header,
  #admin-view #atab-notifications .nc-editor-grid,
  #admin-view #atab-notifications .delivery-grid.notifications-delivery-grid {
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  #admin-view #atab-notifications .notifications-page-head,
  #admin-view #atab-notifications .pg-hdr,
  #admin-view #atab-notifications .ch-header {
    align-items: stretch;
  }

  #admin-view #atab-notifications .notifications-page-head,
  #admin-view #atab-notifications .pg-hdr {
    padding: 24px 18px 18px;
    margin-left: -12px;
    margin-right: -12px;
  }

  #admin-view #atab-notifications .notifications-sms-status-row,
  #admin-view #atab-notifications .notifications-quiet-hours-grid,
  #admin-view #atab-notifications .nc-row {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-notifications .notifications-compliance-status-row {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view #atab-notifications #notifications-delivery-mode-list .notifications-sms-status-card {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

#admin-view #atab-notifications #notifications-delivery-mode-list .btn-row {
    justify-content: flex-start;
  }
}

#admin-view #atab-account .account-settings-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 1180px;
  margin: 0 auto;
  padding-bottom: 28px;
}

#admin-view #atab-account .acct-hero,
#admin-view #atab-account .account-page-head {
  background: #0F1E36;
  padding: 28px 32px 20px;
  margin: -24px -24px 0;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

#admin-view #atab-account .acct-hero-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

#admin-view #atab-account .acct-hero-eyebrow {
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,.35);
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 6px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .acct-hero-title {
  font-size: 28px;
  font-weight: 800;
  color: #FFFFFF;
  letter-spacing: -.5px;
  font-family: Inter, sans-serif;
  line-height: 1.05;
}

#admin-view #atab-account .acct-hero-sub {
  font-size: 13px;
  color: rgba(255,255,255,.4);
  margin-top: 4px;
  font-family: Inter, sans-serif;
  line-height: 1.6;
}

#admin-view #atab-account .acct-hero-shop {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .acct-hero-status {
  margin-top: 6px;
  font-size: 12px;
  color: rgba(255,255,255,.58);
  line-height: 1.55;
  font-family: Inter, sans-serif;
  max-width: 780px;
}

#admin-view #atab-account .acct-hero-guide-btn {
  background: rgba(255,255,255,.12) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}

#admin-view #atab-account #account-settings-tabs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 0 8px;
  margin-top: 20px;
  margin-bottom: 4px;
  border-bottom: 1px solid #E2E8F0;
  background: #FFFFFF;
  overflow: visible;
  scrollbar-width: none;
}

#admin-view #atab-account #account-settings-tabs::-webkit-scrollbar {
  display: none;
}

#admin-view #atab-account #account-settings-tabs .dashboard-section-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 11px 14px;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #64748B !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-family: Inter, sans-serif !important;
  white-space: nowrap;
}

#admin-view #atab-account #account-settings-tabs .dashboard-section-link.active {
  color: #0F1E36 !important;
  border-bottom-color: #0F1E36 !important;
  background: transparent !important;
}

#admin-view #atab-account .account-settings-panel {
  display: none;
}

#admin-view #atab-account .account-settings-panel.active {
  display: block;
}

#admin-view #atab-account .account-brand-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view #atab-account .account-brand-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding: 24px 26px;
  border-radius: 22px;
  background: linear-gradient(135deg, #0F1E36 0%, #183B6B 58%, #2563EB 100%);
  box-shadow: 0 20px 44px rgba(15, 30, 54, 0.16);
}

#admin-view #atab-account .account-brand-hero-copy {
  min-width: 0;
  max-width: 680px;
}

#admin-view #atab-account .account-brand-hero-eyebrow {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(255,255,255,.56);
}

#admin-view #atab-account .account-brand-hero-title {
  margin-top: 8px;
  font-size: clamp(28px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.06;
  letter-spacing: -.04em;
  color: #FFFFFF;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-hero-subtitle {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,.76);
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-hero-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-account .account-brand-hero .btn-sm-ghost {
  background: rgba(255,255,255,.08);
  color: #FFFFFF;
  border: 1px solid rgba(255,255,255,.18);
}

#admin-view #atab-account .account-brand-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.92fr) minmax(0, 1.18fr);
  gap: 18px;
  align-items: start;
}

#admin-view #atab-account .account-brand-side {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}

#admin-view #atab-account .account-brand-launch-card,
#admin-view #atab-account .account-brand-template-card {
  min-width: 0;
}

#admin-view #atab-account .account-brand-launch-card .admin-card-body,
#admin-view #atab-account .account-brand-template-card .admin-card-body {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view #atab-account .account-brand-section-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-reference-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

#admin-view #atab-account .account-brand-link-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view #atab-account .account-brand-link-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
  padding: 14px;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
}

#admin-view #atab-account .account-brand-link-copy {
  min-width: 0;
}

#admin-view #atab-account .account-brand-link-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-account .account-brand-field-help {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-online-note {
  margin-top: -4px;
  font-size: 12px;
  line-height: 1.6;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-copy-btn {
  background: #EFF6FF !important;
  color: #1D4ED8 !important;
  border: 1px solid #BFDBFE !important;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.10);
}

#admin-view #atab-account .account-brand-copy-btn:hover,
#admin-view #atab-account .account-brand-copy-btn:focus-visible {
  background: #DBEAFE !important;
  border-color: #93C5FD !important;
  color: #1D4ED8 !important;
}

#admin-view #atab-account .account-brand-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

#admin-view #atab-account .account-brand-domain-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  gap: 16px;
  align-items: start;
  padding: 18px;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
}

#admin-view #atab-account .account-brand-domain-copy {
  min-width: 0;
}

#admin-view #atab-account .account-brand-domain-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  color: #0F172A;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-domain-body,
#admin-view #atab-account .account-brand-domain-note,
#admin-view #atab-account .account-brand-domain-status {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-domain-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}

#admin-view #atab-account .account-brand-domain-status[data-tone="success"] {
  color: #166534;
}

#admin-view #atab-account .account-brand-domain-status[data-tone="error"] {
  color: #B91C1C;
}

#admin-view #atab-account .account-brand-domain-status[data-tone="info"] {
  color: #1D4ED8;
}

#admin-view .account-brand-domain-modal-shell {
  z-index: 1400;
}

#admin-view .account-brand-domain-modal {
  width: min(760px, calc(100vw - 32px));
  text-align: left;
}

#admin-view .account-brand-domain-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  text-align: left;
}

#admin-view .account-brand-domain-modal-close {
  min-width: 42px;
  width: 42px;
  padding: 0;
  flex: 0 0 auto;
}

#admin-view .account-brand-domain-modal-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#admin-view .account-brand-domain-modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

#admin-view .account-brand-domain-modal-field-span {
  grid-column: 1 / -1;
}

#admin-view .account-brand-domain-modal-form textarea {
  min-height: 112px;
  resize: vertical;
}

#admin-view .account-brand-domain-modal-error {
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(185, 28, 28, 0.16);
  background: rgba(254, 242, 242, 0.95);
  color: #B91C1C;
  font-size: 12px;
  line-height: 1.6;
  font-family: Inter, sans-serif;
}

#admin-view .account-brand-domain-modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

#admin-view #atab-account .account-brand-template-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
  gap: 16px;
  align-items: end;
}

#admin-view #atab-account .account-brand-template-kicker {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #2563EB;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-brand-template-copy {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .launch-template-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

#admin-view #atab-account .launch-template-tile {
  position: relative;
  gap: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid #D9E3EF;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.04);
}

#admin-view #atab-account .launch-template-tile:hover {
  border-color: #93C5FD;
  box-shadow: 0 16px 34px rgba(37, 99, 235, 0.10);
}

#admin-view #atab-account .launch-template-tile.is-selected,
#admin-view #atab-account .launch-template-tile[aria-pressed="true"] {
  border-color: #2563EB;
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  box-shadow: 0 0 0 3px rgba(37,99,235,.12), 0 18px 36px rgba(37, 99, 235, 0.12);
  transform: translateY(-1px);
}

#admin-view #atab-account .launch-template-preview {
  min-height: 188px;
  border-radius: 16px;
  padding: 14px;
  border: 1px solid rgba(15,23,42,.08);
  background: #F8FAFC;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#admin-view #atab-account .launch-template-preview.is-modern-premium {
  background: linear-gradient(180deg, #F8FBFF 0%, #ECF5FF 100%);
}

#admin-view #atab-account .launch-template-preview.is-classic-shop {
  background: linear-gradient(180deg, #FFF8EE 0%, #F8E8D6 100%);
}

#admin-view #atab-account .launch-template-preview.is-team-first {
  background: linear-gradient(180deg, #F6FBF8 0%, #E5F5EC 100%);
}

#admin-view #atab-account .launch-template-preview.is-urban-studio {
  background: linear-gradient(180deg, #111827 0%, #1F2937 100%);
  border-color: rgba(15, 23, 42, 0.4);
}

#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-brand,
#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-pill,
#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-kicker,
#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-title {
  color: #F8FAFC;
}

#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-actions span,
#admin-view #atab-account .launch-template-preview.is-urban-studio .launch-template-preview-cards div {
  background: rgba(248, 250, 252, 0.24);
}

#admin-view #atab-account .launch-template-preview-nav,
#admin-view #atab-account .launch-template-preview-actions,
#admin-view #atab-account .launch-template-preview-cards {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

#admin-view #atab-account .launch-template-preview-brand,
#admin-view #atab-account .launch-template-preview-pill,
#admin-view #atab-account .launch-template-preview-kicker {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

#admin-view #atab-account .launch-template-preview-title {
  margin-top: 8px;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 800;
  color: #0F1E36;
}

#admin-view #atab-account .launch-template-preview-actions span,
#admin-view #atab-account .launch-template-preview-cards div {
  display: block;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.10);
}

#admin-view #atab-account .launch-template-preview-actions span {
  width: 74px;
  height: 8px;
}

#admin-view #atab-account .launch-template-preview-cards div {
  width: calc(33.333% - 6px);
  height: 54px;
  border-radius: 14px;
}

#admin-view #atab-account .launch-template-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#admin-view #atab-account .launch-template-name {
  font-size: 15px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .launch-template-copy {
  font-size: 13px;
  line-height: 1.6;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .launch-template-state-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

#admin-view #atab-account .launch-template-state-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .launch-template-state-badge.is-selected {
  display: none;
  background: #DBEAFE;
  color: #1D4ED8;
}

#admin-view #atab-account .launch-template-state-badge.is-choose {
  background: #F1F5F9;
  color: #475569;
}

#admin-view #atab-account .launch-template-tile.is-selected .launch-template-state-badge.is-selected,
#admin-view #atab-account .launch-template-tile[aria-pressed="true"] .launch-template-state-badge.is-selected {
  display: inline-flex;
}

#admin-view #atab-account .launch-template-tile.is-selected .launch-template-state-badge.is-choose,
#admin-view #atab-account .launch-template-tile[aria-pressed="true"] .launch-template-state-badge.is-choose {
  display: none;
}

#admin-view #atab-account .account-brand-template-actions {
  justify-content: flex-start;
  margin-top: 2px !important;
}

#admin-view #atab-account .account-settings-panel,
#admin-view #atab-account .account-grid,
#admin-view #atab-account .account-brand-left,
#admin-view #atab-account .account-booking-policy-stack {
  gap: 18px;
}

#admin-view #atab-account .admin-card {
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

#admin-view #atab-account .admin-card-header {
  padding: 16px 18px;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
}

#admin-view #atab-account .admin-card-body {
  padding: 18px;
}

#admin-view #atab-account .account-panel-subtitle,
#admin-view #atab-account .account-note,
#admin-view #atab-account .account-toggle-subtitle,
#admin-view #atab-account .section-desc {
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-note {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 12px 14px;
  font-size: 12px;
  line-height: 1.6;
}

#admin-view #atab-account .account-booking-policy-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.72fr);
  gap: 20px;
  align-items: start;
}

#admin-view #atab-account .account-booking-policy-main-card,
#admin-view #atab-account .account-booking-policy-stats-card,
#admin-view #atab-account .account-booking-policy-info-card {
  min-width: 0;
}

#admin-view #atab-account .account-booking-policy-builder,
#admin-view #atab-account .account-booking-policy-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}

#admin-view #atab-account .account-booking-policy-editor-row {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(320px, 1fr);
  gap: 18px;
  min-width: 0;
}

#admin-view #atab-account .account-booking-policy-toggle-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
}

#admin-view #atab-account .account-booking-policy-toggle-copy {
  min-width: 0;
}

#admin-view #atab-account .account-booking-policy-toggle-controls {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

#admin-view #atab-account .account-booking-policy-section-card {
  min-width: 0;
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05);
}

#admin-view #atab-account .account-booking-policy-section-card .admin-card-body {
  padding: 18px;
}

#admin-view #atab-account .account-booking-policy-section-card-toggle {
  border-color: #DBEAFE;
  box-shadow: 0 16px 36px rgba(37, 99, 235, 0.08);
}

#admin-view #atab-account .account-booking-policy-section-card-preview {
  border-color: #DBEAFE;
}

#admin-view #atab-account .account-booking-policy-section-card-lead-time {
  border-color: #D9E3EF;
}

#admin-view #atab-account .account-booking-policy-section-card-actions {
  border-color: #D9E3EF;
}

#admin-view #atab-account .account-booking-policy-section {
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#admin-view #atab-account .account-booking-policy-section-toggle,
#admin-view #atab-account .account-booking-policy-section-preview {
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
}

#admin-view #atab-account .account-booking-policy-section-lead-time {
  background: linear-gradient(180deg, #F9FBFE 0%, #FFFFFF 100%);
}

#admin-view #atab-account .account-booking-policy-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view #atab-account .account-booking-policy-section-kicker {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #2563EB;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-section-title {
  margin-top: 5px;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-section-copy {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-status-badge,
#admin-view #atab-account .account-booking-policy-preview-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
  max-width: 100%;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.35;
  text-align: center;
}

#admin-view #atab-account .account-booking-policy-status-badge {
  background: #DBEAFE;
  color: #1D4ED8;
  border: 1px solid #BFDBFE;
  align-self: flex-start;
}

#admin-view #atab-account .account-booking-policy-toggle-row {
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04);
  min-height: 40px;
}

#admin-view #atab-account .account-booking-policy-toggle-row.active {
  border-color: #93C5FD;
  box-shadow: 0 0 0 3px rgba(37,99,235,.10), 0 14px 30px rgba(37,99,235,.10);
}

#admin-view #atab-account .account-booking-policy-toggle-row .toggle {
  width: 34px;
  height: 19px;
  border-radius: 10px;
  background: #D1D5DB;
  position: relative;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .2s;
}

#admin-view #atab-account .account-booking-policy-toggle-row .toggle::after {
  content: '';
  position: absolute;
  width: 15px;
  height: 15px;
  background: #FFFFFF;
  border-radius: 50%;
  top: 2px;
  left: 2px;
  transition: left .2s;
}

#admin-view #atab-account .account-booking-policy-toggle-row .toggle.on,
#admin-view #atab-account .account-booking-policy-toggle-row .toggle[aria-checked="true"] {
  background: #2563EB;
}

#admin-view #atab-account .account-booking-policy-toggle-row .toggle.on::after,
#admin-view #atab-account .account-booking-policy-toggle-row .toggle[aria-checked="true"]::after {
  left: 17px;
}

#admin-view #atab-account .account-booking-policy-window-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

#admin-view #atab-account .account-booking-policy-window-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 52px;
  border-radius: 14px;
  border: 1px solid #D9E3EF;
  background: #FFFFFF;
  color: #334155;
  font-weight: 700;
  font-family: Inter, sans-serif;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04);
}

#admin-view #atab-account .account-booking-policy-window-option.selected {
  border-color: #2563EB;
  background: #EFF6FF;
  color: #1D4ED8;
  box-shadow: 0 0 0 3px rgba(37,99,235,.10);
}

#admin-view #atab-account .account-booking-policy-window-value {
  font-size: 18px;
  line-height: 1;
  font-weight: 800;
}

#admin-view #atab-account .account-booking-policy-char-count {
  margin-top: 8px;
  text-align: right;
  font-size: 12px;
  font-weight: 700;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-preview {
  border: 1px solid #DBEAFE;
  border-radius: 18px;
  background: #FFFFFF;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 14px 30px rgba(37, 99, 235, 0.05);
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 100%;
}

#admin-view #atab-account .account-booking-policy-preview-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view #atab-account .account-booking-policy-preview-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #2563EB;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-preview-status {
  background: #EFF6FF;
  color: #1D4ED8;
  border: 1px solid #BFDBFE;
  flex: 0 1 240px;
}

#admin-view #atab-account .account-booking-policy-preview-text {
  font-size: 14px;
  line-height: 1.7;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  min-height: 120px;
}

#admin-view #atab-account .account-booking-policy-preview-check {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  font-size: 13px;
  color: #334155;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-preview-gate {
  padding: 11px 12px;
  border-radius: 12px;
  background: #EFF6FF;
  border: 1px solid #DBEAFE;
  color: #1D4ED8;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 700;
  font-family: Inter, sans-serif;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#admin-view #atab-account .account-booking-policy-actions {
  justify-content: flex-start;
  margin-top: 0 !important;
}

#admin-view #atab-account .account-booking-policy-stats-card,
#admin-view #atab-account .account-booking-policy-info-card {
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.04);
}

#admin-view #atab-account .account-booking-policy-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(140px, 1fr));
  gap: 12px;
}

#admin-view #atab-account .account-booking-policy-stat-card {
  min-width: 0;
  border: 1px solid #DDEEE3;
  border-radius: 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F4FBF6 100%);
  padding: 15px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  overflow: hidden;
}

#admin-view #atab-account .account-booking-policy-stat-value {
  font-size: 24px;
  line-height: 1.1;
  font-weight: 800;
  color: #166534;
  font-family: Inter, sans-serif;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
  white-space: normal;
  hyphens: none;
}

#admin-view #atab-account .account-booking-policy-stat-label {
  font-size: 11px;
  line-height: 1.45;
  color: #4B5563;
  font-family: Inter, sans-serif;
  font-weight: 700;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#admin-view #atab-account .account-booking-policy-stat-meta {
  font-size: 11px;
  line-height: 1.45;
  color: #64748B;
  font-family: Inter, sans-serif;
  word-break: break-word;
}

#admin-view #atab-account .account-booking-policy-active-since {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-info-copy {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view #atab-account .account-booking-policy-info-row {
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  color: #334155;
  font-size: 13px;
  line-height: 1.65;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-booking-policy-info-row-amber {
  background: #FFFBEB;
  border-color: #FDE68A;
  color: #92400E;
}

#admin-view #atab-account .account-import-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

#admin-view #atab-account .account-import-page-header {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 18px;
}

#admin-view #atab-account .account-import-page-title {
  font-size: clamp(28px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.03em;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-page-subtitle {
  max-width: 720px;
  font-size: 14px;
  line-height: 1.7;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-indicator {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

#admin-view #atab-account .account-import-step-pill {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 6px 0;
  width: 100%;
  border: none;
  background: transparent;
  flex: 0 1 auto;
  text-align: left;
  font: inherit;
}

#admin-view #atab-account .account-import-step-pill.is-clickable {
  cursor: pointer;
}

#admin-view #atab-account .account-import-step-pill.is-clickable:hover .account-import-step-pill-label,
#admin-view #atab-account .account-import-step-pill.is-clickable:hover .account-import-step-pill-state {
  color: #1D4ED8;
}

#admin-view #atab-account .account-import-step-pill.is-complete {
  background: transparent;
}

#admin-view #atab-account .account-import-step-pill.is-current {
  background: transparent;
}

#admin-view #atab-account .account-import-step-pill.is-review {
  background: transparent;
}

#admin-view #atab-account .account-import-step-pill.is-locked {
  background: transparent;
}

#admin-view #atab-account .account-import-step-pill-circle {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #CBD5E1;
  background: #FFFFFF;
  color: #64748B;
  font-size: 13px;
  font-weight: 800;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
}

#admin-view #atab-account .account-import-step-pill.is-complete .account-import-step-pill-circle {
  background: #2563EB;
  border-color: #2563EB;
  color: #FFFFFF;
}

#admin-view #atab-account .account-import-step-pill.is-current .account-import-step-pill-circle {
  background: #EFF6FF;
  border-color: #2563EB;
  color: #1D4ED8;
}

#admin-view #atab-account .account-import-step-pill.is-review .account-import-step-pill-circle {
  background: #FFFBEB;
  border-color: #F59E0B;
  color: #B45309;
}

#admin-view #atab-account .account-import-step-pill.is-locked .account-import-step-pill-circle {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #94A3B8;
}

#admin-view #atab-account .account-import-step-pill-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

#admin-view #atab-account .account-import-step-pill-label {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  line-height: 1.35;
}

#admin-view #atab-account .account-import-step-pill-state {
  font-size: 11px;
  font-weight: 700;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-pill-summary {
  font-size: 11px;
  line-height: 1.45;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-pill.is-current .account-import-step-pill-state {
  color: #1D4ED8;
}

#admin-view #atab-account .account-import-step-pill.is-review .account-import-step-pill-label,
#admin-view #atab-account .account-import-step-pill.is-review .account-import-step-pill-state,
#admin-view #atab-account .account-import-step-pill.is-review .account-import-step-pill-summary {
  color: #B45309;
}

#admin-view #atab-account .account-import-step-pill.is-locked .account-import-step-pill-label,
#admin-view #atab-account .account-import-step-pill.is-locked .account-import-step-pill-state,
#admin-view #atab-account .account-import-step-pill.is-locked .account-import-step-pill-summary {
  color: #94A3B8;
}

#admin-view #atab-account .account-import-step-connector {
  width: 1px;
  height: 18px;
  background: #CBD5E1;
  margin: 2px 0 2px 15px;
  flex: 0 0 18px;
}

#admin-view #atab-account .account-import-mode-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #EAF2FF;
  color: #1D4ED8;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-main,
#admin-view #atab-account .account-import-side {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-view #atab-account .account-import-wizard-card {
  border: 1px solid #D6E6FF;
  border-radius: 22px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FBFF 100%);
  box-shadow: 0 20px 50px rgba(15, 30, 54, 0.08);
  overflow: hidden;
}

#admin-view #atab-account .account-import-wizard-card > .admin-card-header {
  padding-bottom: 12px;
  border-bottom: 1px solid #E2E8F0;
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.85) 0%, rgba(255, 255, 255, 0) 100%);
}

#admin-view #atab-account .account-import-wizard-card > .admin-card-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#admin-view #atab-account .account-import-wizard-layout {
  display: grid;
  grid-template-columns: minmax(210px, 240px) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

#admin-view #atab-account .account-import-wizard-rail {
  position: sticky;
  top: 18px;
  padding: 16px;
  border: 1px solid #DBEAFE;
  border-radius: 18px;
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

#admin-view #atab-account .account-import-wizard-content {
  min-width: 0;
}

#admin-view #atab-account .account-import-grid-appointments .account-import-mode-chip {
  background: #E7F7F5;
  color: #0F766E;
}

#admin-view #atab-account .account-import-safety-strip {
  margin-top: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid #BFDBFE;
  background: linear-gradient(135deg, #EFF6FF 0%, #F8FBFF 100%);
  color: #334155;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  align-items: center;
  font-size: 13px;
  line-height: 1.6;
  font-family: Inter, sans-serif;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

#admin-view #atab-account .account-import-grid-appointments .account-import-safety-strip {
  border-color: #CBEDE7;
  background: #F5FBFA;
}

#admin-view #atab-account .account-import-safety-pill {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  background: #0F1E36;
  color: #FFFFFF;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view #atab-account .account-import-helper-note-inline {
  margin-top: -4px;
  border-color: #DBEAFE;
  background: #F8FBFF;
}

#admin-view #atab-account .account-import-helper-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: -2px;
}

#admin-view #atab-account .account-import-helper-chip {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #F8FAFC;
  border: 1px solid #DBEAFE;
  color: #475569;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

#admin-view #atab-account .account-import-setup-flow {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 18px;
}

#admin-view #atab-account .account-import-setup-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 0;
  border: none;
  border-top: 1px solid #E2E8F0;
  border-radius: 0;
  background: transparent;
}

#admin-view #atab-account .account-import-setup-section-current {
  padding: 18px 18px 20px;
  margin-inline: -6px;
  border: 1px solid #DBEAFE;
  border-radius: 18px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FBFF 100%);
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.08);
}

#admin-view #atab-account .account-import-setup-section-current .account-import-step-eyebrow {
  color: #1D4ED8;
}

#admin-view #atab-account .account-import-setup-section:first-child {
  padding-top: 0;
  border-top: none;
}

#admin-view #atab-account .account-import-step-eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #2563EB;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-grid-appointments .account-import-step-eyebrow {
  color: #0F766E;
}

#admin-view #atab-account .account-import-step-title {
  font-size: 16px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-copy {
  font-size: 13px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-type-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

#admin-view #atab-account .account-import-type-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
  min-width: 0;
}

#admin-view #atab-account .account-import-type-card:hover {
  border-color: #94A3B8;
  transform: translateY(-1px);
}

#admin-view #atab-account .account-import-type-card.active {
  border-color: #2563EB;
  box-shadow: 0 0 0 3px rgba(37,99,235,.10);
}

#admin-view #atab-account .account-import-type-card.is-disabled {
  background: #F8FAFC;
  color: #94A3B8;
  cursor: not-allowed;
}

#admin-view #atab-account .account-import-type-card.is-disabled:hover {
  border-color: #E2E8F0;
  transform: none;
}

#admin-view #atab-account .account-import-type-card input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

#admin-view #atab-account .account-import-type-main {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

#admin-view #atab-account .account-import-type-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  flex-wrap: nowrap;
}

#admin-view #atab-account .account-import-type-title {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view #atab-account .account-import-type-card.is-disabled .account-import-type-title {
  color: #64748B;
}

#admin-view #atab-account .account-import-type-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
}

#admin-view #atab-account .account-import-type-copy,
#admin-view #atab-account .account-import-guidance-copy,
#admin-view #atab-account .account-import-preview-copy,
#admin-view #atab-account .account-import-file-meta,
#admin-view #atab-account .account-import-empty {
  font-size: 13px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
}

#admin-view #atab-account .account-import-type-copy {
  font-size: 12px;
  line-height: 1.55;
}

#admin-view #atab-account .account-import-disabled-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #E2E8F0;
  color: #475569;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: none;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
  white-space: nowrap;
}

#admin-view #atab-account .account-import-guidance-list,
#admin-view #atab-account .account-import-preview-header-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 12px;
}

#admin-view #atab-account .account-import-preview-header-list-detailed {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}

#admin-view #atab-account .account-import-header-sample-card {
  padding: 10px 12px;
  border: 1px solid #DBEAFE;
  border-radius: 12px;
  background: #F8FBFF;
}

#admin-view #atab-account .account-import-header-sample-title {
  font-size: 12px;
  font-weight: 700;
  color: #1D4ED8;
  font-family: Inter, sans-serif;
  margin-bottom: 4px;
}

#admin-view #atab-account .account-import-header-sample-value {
  font-size: 12px;
  line-height: 1.5;
  color: #475569;
  font-family: Inter, sans-serif;
  word-break: break-word;
}

#admin-view #atab-account .account-import-guidance-list {
  flex-direction: column;
  align-items: flex-start;
}

#admin-view #atab-account .account-import-guidance-item {
  padding-left: 16px;
  position: relative;
  color: #475569;
  font-size: 13px;
  line-height: 1.65;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-guidance-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #2563EB;
}

#admin-view #atab-account .account-import-header-pill {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 12px;
  font-weight: 600;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-preview-table-wrap {
  margin-top: 14px;
  overflow: auto;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
}

#admin-view #atab-account .account-import-preview-table {
  width: 100%;
  border-collapse: collapse;
  font-family: Inter, sans-serif;
  background: #FFFFFF;
}

#admin-view #atab-account .account-import-preview-table th,
#admin-view #atab-account .account-import-preview-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #E2E8F0;
  text-align: left;
  vertical-align: top;
  font-size: 12px;
  line-height: 1.5;
}

#admin-view #atab-account .account-import-preview-table th {
  background: #F8FAFC;
  color: #0F1E36;
  font-weight: 700;
}

#admin-view #atab-account .account-import-preview-table td {
  color: #475569;
}

#admin-view #atab-account .account-import-preview-table tr:last-child td {
  border-bottom: none;
}

#admin-view #atab-account .account-import-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
}

#admin-view #atab-account .account-import-upload-field {
  position: relative;
}

#admin-view #atab-account .account-import-upload-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px;
  border: 1px dashed #93C5FD;
  border-radius: 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FBFF 100%);
  cursor: pointer;
}

#admin-view #atab-account .account-import-upload-card.is-disabled {
  border-color: rgba(148, 163, 184, 0.7);
  background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
  cursor: not-allowed;
  opacity: 0.8;
}

#admin-view #atab-account .account-import-upload-card.is-disabled .account-import-upload-button {
  background: #64748B;
}

#admin-view #atab-account .account-import-upload-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-width: 108px;
  padding: 9px 14px;
  border-radius: 10px;
  background: #0F1E36;
  color: #FFFFFF;
  font-size: 13px;
  font-weight: 700;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-upload-copy {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-upload-subcopy {
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-file-meta {
  margin-top: 10px;
}

#admin-view #atab-account .account-import-calm-empty {
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.65;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-inline-note {
  border: 1px solid #D9E6FB;
  border-radius: 12px;
  background: #F8FBFF;
  padding: 10px 12px;
}

#admin-view #atab-account .account-import-danger-note {
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #FECACA;
  background: #FFF7F7;
  color: #991B1B;
  font-size: 13px;
  line-height: 1.65;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-quality-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  align-items: center;
  margin-bottom: 12px;
}

#admin-view #atab-account .account-import-quality-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-quality-badge.tone-good {
  background: #DCFCE7;
  color: #166534;
}

#admin-view #atab-account .account-import-quality-badge.tone-review {
  background: #FEF3C7;
  color: #92400E;
}

#admin-view #atab-account .account-import-quality-badge.tone-corrupted {
  background: #FEE2E2;
  color: #991B1B;
}

#admin-view #atab-account .account-import-quality-copy {
  font-size: 13px;
  line-height: 1.65;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-warning-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 14px;
}

#admin-view #atab-account .account-import-warning-item {
  padding: 10px 12px;
  border: 1px solid #FDE68A;
  border-radius: 12px;
  background: #FFFBEB;
}

#admin-view #atab-account .account-import-wizard-step {
  position: relative;
  margin-top: 18px;
  padding: 18px 18px 20px;
  border: 1px solid #DBEAFE;
  border-radius: 18px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FBFF 100%);
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.08);
  overflow: hidden;
}

#admin-view #atab-account .account-import-wizard-step::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, #2563EB 0%, #60A5FA 100%);
}

#admin-view #atab-account .account-import-wizard-step-ready {
  border-color: #BBF7D0;
  background: linear-gradient(180deg, #FFFFFF 0%, #F3FFF8 100%);
  box-shadow: 0 14px 30px rgba(22, 163, 74, 0.08);
}

#admin-view #atab-account .account-import-wizard-step-ready::before {
  background: linear-gradient(90deg, #16A34A 0%, #4ADE80 100%);
}

#admin-view #atab-account .account-import-step-header {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
}

#admin-view #atab-account .account-import-step-marker {
  min-width: 76px;
  padding: 7px 10px;
  border-radius: 999px;
  background: #DBEAFE;
  color: #1D4ED8;
  border: 1px solid #93C5FD;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-align: center;
}

#admin-view #atab-account .account-import-wizard-step-ready .account-import-step-marker {
  background: #DCFCE7;
  border-color: #86EFAC;
  color: #166534;
}

#admin-view #atab-account .account-import-step-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#admin-view #atab-account .account-import-review-summary-card {
  padding: 16px;
  border: 1px solid #DBEAFE;
  border-radius: 16px;
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
}

#admin-view #atab-account .account-import-warning-code {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #B45309;
  font-family: Inter, sans-serif;
  margin-bottom: 4px;
}

#admin-view #atab-account .account-import-warning-copy {
  font-size: 12px;
  line-height: 1.55;
  color: #78350F;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-row-code {
  display: inline-flex;
  align-items: center;
  margin: 0 6px 6px 0;
  padding: 4px 8px;
  border-radius: 999px;
  background: #FEF3C7;
  color: #92400E;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-row-ok {
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-mapping-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px 12px;
  margin-top: 14px;
}

#admin-view #atab-account .account-import-mapping-field {
  min-width: 0;
}

#admin-view #atab-account .account-import-mapping-meta {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.5;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(108px, 1fr));
  gap: 12px;
}

#admin-view #atab-account .account-import-review-summary-copy {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.65;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-review-details {
  margin-top: 14px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
  overflow: hidden;
}

#admin-view #atab-account .account-import-review-details summary {
  list-style: none;
  cursor: pointer;
  padding: 12px 14px;
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  background: #F8FAFC;
}

#admin-view #atab-account .account-import-review-details summary::-webkit-details-marker {
  display: none;
}

#admin-view #atab-account .account-import-review-details[open] summary {
  border-bottom: 1px solid #E2E8F0;
}

#admin-view #atab-account .account-import-issue-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}

#admin-view #atab-account .account-import-issue-card {
  border: 1px solid #FDE68A;
  border-left: 4px solid #F59E0B;
  border-radius: 16px;
  background: linear-gradient(180deg, #FFFFFF 0%, #FFFCF5 100%);
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 10px 24px rgba(180, 83, 9, 0.08);
}

#admin-view #atab-account .account-import-issue-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

#admin-view #atab-account .account-import-issue-row {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-issue-name,
#admin-view #atab-account .account-import-next-title {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-issue-meta,
#admin-view #atab-account .account-import-rows-clear {
  font-size: 13px;
  line-height: 1.6;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-rows-clear {
  padding: 12px 14px;
  border: 1px solid #D1FAE5;
  border-radius: 12px;
  background: #F0FDF4;
  color: #166534;
}

#admin-view #atab-account .account-import-issue-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#admin-view #atab-account .account-import-issue-pill {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  background: #FEF3C7;
  color: #92400E;
  font-size: 11px;
  font-weight: 700;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-issue-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

#admin-view #atab-account .account-import-issue-action,
#admin-view #atab-account .account-import-next-card-inline {
  font-size: 12px;
  line-height: 1.6;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-issue-detail {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
  border-radius: 12px;
  background: #FFF9ED;
  border: 1px solid #FDE68A;
}

#admin-view #atab-account .account-import-issue-value {
  font-size: 12px;
  line-height: 1.55;
  color: #92400E;
  word-break: break-word;
}

#admin-view #atab-account .account-import-issue-value span {
  font-weight: 800;
}

#admin-view #atab-account .account-import-issue-problem {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  color: #0F1E36;
}

#admin-view #atab-account .account-import-issue-actions-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #B45309;
}

#admin-view #atab-account .account-import-issue-action {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.6;
  color: #0F1E36;
}

#admin-view #atab-account .account-import-issue-continue {
  font-size: 12px;
  line-height: 1.6;
  color: #92400E;
}

#admin-view #atab-account .account-import-next-card-inline {
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid #C7D2FE;
  border-radius: 12px;
  background: linear-gradient(180deg, #F8FAFF 0%, #FFFFFF 100%);
}

#admin-view #atab-account .account-import-collapsed-step {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #D8E4F3;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: 0 8px 20px rgba(15, 30, 54, 0.04);
}

#admin-view #atab-account .account-import-collapsed-step.is-done {
  border-left: 3px solid #2563EB;
}

#admin-view #atab-account .account-import-collapsed-step.is-review {
  border-color: #FCD34D;
  border-left: 3px solid #F59E0B;
  background: #FFFBEB;
}

#admin-view #atab-account .account-import-collapsed-step.is-locked {
  background: #F8FAFC;
  border-color: #E2E8F0;
}

#admin-view #atab-account .account-import-collapsed-meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

#admin-view #atab-account .account-import-collapsed-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-collapsed-summary {
  font-size: 12px;
  line-height: 1.55;
  color: #64748B;
  font-family: Inter, sans-serif;
  word-break: break-word;
}

#admin-view #atab-account .account-import-collapsed-action {
  border: none;
  background: none;
  color: #1D4ED8;
  font-size: 12px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  cursor: pointer;
  white-space: nowrap;
}

#admin-view #atab-account .account-import-step-subsection {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #E2E8F0;
}

#admin-view #atab-account .account-import-step-subtitle,
#admin-view #atab-account .account-import-mapping-review-title {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-step-subtitle {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  border: 1px solid #BFDBFE;
}

#admin-view #atab-account .account-import-mapping-review-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
  margin-top: 12px;
}

#admin-view #atab-account .account-import-mapping-review-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #FCD34D;
  border-radius: 12px;
  background: #FFFBEB;
}

#admin-view #atab-account .account-import-mapping-review-copy {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.55;
  color: #78350F;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-mapping-review-status,
#admin-view #atab-account .account-import-mapping-status {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view #atab-account .account-import-mapping-review-status.needs-action,
#admin-view #atab-account .account-import-mapping-status.needs-action {
  background: #FEF3C7;
  color: #92400E;
}

#admin-view #atab-account .account-import-mapping-status.matched {
  background: #DCFCE7;
  color: #166534;
}

#admin-view #atab-account .account-import-mapping-status.optional {
  background: #E2E8F0;
  color: #475569;
}

#admin-view #atab-account .account-import-mapping-table-wrap {
  margin-top: 0;
  overflow: auto;
}

#admin-view #atab-account .account-import-mapping-table {
  width: 100%;
  border-collapse: collapse;
  font-family: Inter, sans-serif;
  background: #FFFFFF;
  border-radius: 14px;
  overflow: hidden;
}

#admin-view #atab-account .account-import-mapping-table th,
#admin-view #atab-account .account-import-mapping-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #E2E8F0;
  text-align: left;
  vertical-align: middle;
  font-size: 12px;
  line-height: 1.5;
}

#admin-view #atab-account .account-import-mapping-table th {
  background: #F8FAFC;
  color: #0F1E36;
  font-weight: 700;
}

#admin-view #atab-account .account-import-mapping-table tr:last-child td {
  border-bottom: none;
}

#admin-view #atab-account .account-import-mapping-table select {
  width: 100%;
}

#admin-view #atab-account .account-import-summary-card {
  padding: 12px;
  border: 1px solid #DBEAFE;
  border-radius: 12px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FBFF 100%);
}

#admin-view #atab-account .account-import-summary-value {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-summary-label {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.5;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-outcome-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .02em;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view #atab-account .account-import-outcome-badge.outcome-create-new-client {
  background: #DCFCE7;
  color: #166534;
}

#admin-view #atab-account .account-import-outcome-badge.outcome-possible-duplicate {
  background: #FEF3C7;
  color: #92400E;
}

#admin-view #atab-account .account-import-outcome-badge.outcome-needs-review {
  background: #DBEAFE;
  color: #1D4ED8;
}

#admin-view #atab-account .account-import-outcome-badge.outcome-failed {
  background: #FEE2E2;
  color: #991B1B;
}

#admin-view #atab-account .account-import-outcome-badge.outcome-skipped {
  background: #E2E8F0;
  color: #475569;
}

#admin-view #atab-account .account-import-commit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: flex-start;
  margin-top: 14px;
}

#admin-view #atab-account .account-import-wizard-step-ready .account-import-commit-actions {
  padding: 14px;
  border: 1px solid #BBF7D0;
  border-radius: 14px;
  background: #F3FFF8;
}

#admin-view #atab-account .account-import-commit-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.5;
  color: #475569;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-commit-notice {
  margin-top: 14px;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.6;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-helper-card .admin-card-body,
#admin-view #atab-account .account-import-next-card .admin-card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view #atab-account .account-import-helper-note {
  padding: 10px 12px;
  border-radius: 12px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .account-import-commit-notice.tone-good {
  background: #DCFCE7;
  color: #166534;
  border: 1px solid #86EFAC;
}

#admin-view #atab-account .account-import-commit-notice.tone-review {
  background: #FEF3C7;
  color: #92400E;
  border: 1px solid #FCD34D;
}

#admin-view #atab-account .account-import-commit-notice.tone-error {
  background: #FEE2E2;
  color: #991B1B;
  border: 1px solid #FCA5A5;
}

#admin-view #atab-account .account-import-other-field[hidden] {
  display: none !important;
}

@media (max-width: 980px) {
  #admin-view #atab-account .account-import-grid {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .account-import-wizard-layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  #admin-view #atab-account .account-import-wizard-rail {
    position: static;
    padding: 14px;
  }

  #admin-view #atab-account .account-import-step-grid,
  #admin-view #atab-account .account-import-type-grid {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .account-import-step-header {
    flex-direction: column;
  }

  #admin-view #atab-account .account-import-step-marker {
    min-width: 0;
  }

  #admin-view #atab-notifications #notifications-stage-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  #admin-view #atab-account .account-import-page-title {
    font-size: 26px;
  }

  #admin-view #atab-account .account-import-step-indicator {
    align-items: stretch;
  }

  #admin-view #atab-account .account-import-collapsed-step {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view #atab-notifications #notifications-stage-tabs [data-notification-stage] {
    padding: 12px;
    gap: 8px;
  }

  #admin-view #atab-notifications .notifications-tab-icon {
    min-width: 30px;
    height: 30px;
  }
}

#admin-view #atab-account button[type="submit"],
#admin-view #atab-account .btn-sm,
#admin-view #atab-account .btn-primary {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-account .btn-sm-ghost,
#admin-view #atab-account .btn-secondary,
#admin-view #atab-account button[onclick*="restore"],
#admin-view #atab-account button[onclick*="cancel"] {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-account input[type="text"],
#admin-view #atab-account input[type="email"],
#admin-view #atab-account input[type="password"],
#admin-view #atab-account input[type="tel"],
#admin-view #atab-account textarea,
#admin-view #atab-account select {
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  padding: 8px 11px !important;
  font-size: 13px !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
}

#admin-view #atab-account input:focus,
#admin-view #atab-account textarea:focus,
#admin-view #atab-account select:focus {
  border-color: #2563EB !important;
  outline: none !important;
}

#admin-view #atab-account label,
#admin-view #atab-account .form-label {
  font-size: 10px !important;
  font-weight: 700 !important;
  color: #94A3B8 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-family: Inter, sans-serif !important;
  display: block !important;
  margin-bottom: 4px !important;
}

@media (max-width: 980px) {
  #admin-view #atab-account .acct-hero,
  #admin-view #atab-account .account-page-head {
    padding: 24px 18px 18px;
    margin-left: -12px;
    margin-right: -12px;
  }

  #admin-view #atab-account .acct-hero-top {
    flex-direction: column;
    align-items: stretch;
  }
}

#admin-view #atab-barbers .toggle {
  width: 36px !important;
  height: 20px !important;
  border-radius: 999px !important;
  background: #E2E8F0 !important;
  position: relative !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  flex-shrink: 0 !important;
}

#admin-view #atab-barbers .toggle.on,
#admin-view #atab-barbers .toggle[aria-checked="true"] {
  background: #16A34A !important;
}

#admin-view #atab-barbers .toggle::after {
  content: '' !important;
  position: absolute !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  top: 2px !important;
  left: 2px !important;
  transition: left 0.2s !important;
}

#admin-view #atab-barbers .toggle.on::after,
#admin-view #atab-barbers .toggle[aria-checked="true"]::after {
  left: 18px !important;
}

#admin-view #atab-barbers .barbers-card-stats {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

#admin-view #atab-barbers .barbers-stat-box {
  padding: 10px 12px !important;
  border-right: 1px solid #E2E8F0 !important;
  text-align: center !important;
  border-radius: 0 !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
}

#admin-view #atab-barbers .barbers-stat-box:last-child {
  border-right: none !important;
}

#admin-view #atab-barbers .barbers-stat-k {
  font-size: 9px !important;
  font-weight: 700 !important;
  color: #94A3B8 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-family: Inter, sans-serif !important;
  display: block !important;
  margin-bottom: 3px !important;
}

#admin-view #atab-barbers .barbers-stat-v {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #0F1E36 !important;
  letter-spacing: -.3px !important;
  font-family: Inter, sans-serif !important;
  display: block !important;
}

@media (max-width: 1100px) {
  #admin-view .barber-roster-body {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

#admin-view .photos-main-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#admin-view .photos-main-zone,
#admin-view .photos-gallery-slot,
#admin-view .photos-svc-card,
#admin-view .photos-barber-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  overflow: hidden;
}

#admin-view .photos-main-zone {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

#admin-view .photo-slot.photo-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

#admin-view .photos-upload-zone,
#admin-view .photos-svc-top,
#admin-view .photos-gallery-slot > .photo-slot-img,
#admin-view .photos-gallery-slot > .photo-slot-ph {
  background: linear-gradient(135deg, #F8FAFC, #EEF2FF);
}

#admin-view .photos-upload-zone {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  overflow: hidden;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .photos-upload-zone-hero {
  aspect-ratio: 16 / 9;
}

#admin-view .photos-upload-zone-portrait {
  aspect-ratio: 4 / 5;
}

#admin-view .photo-card .photo-thumb,
#admin-view .photo-card .photo-thumb-empty {
  width: 100%;
  aspect-ratio: 4 / 3;
  min-height: 190px;
  object-fit: cover;
  display: block;
}

#admin-view .photos-main-preview,
#admin-view .photos-gallery-slot .photo-thumb,
#admin-view .photos-svc-top .photo-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#admin-view .photos-main-preview-empty,
#admin-view .photos-upload-zone-sm {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #94A3B8;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-align: center;
  padding: 18px;
  line-height: 1.5;
}

#upload-modal .upload-crop-note {
  margin-top: 12px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.04);
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
}

#upload-modal .upload-crop-wrap {
  margin-bottom: 14px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.9), rgba(241, 245, 249, 0.96));
}

#upload-modal .upload-crop-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

#upload-modal .upload-crop-copy-block {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

#upload-modal .upload-crop-title {
  color: #0f172a;
  font-family: var(--font-cond);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#upload-modal .upload-crop-copy,
#upload-modal .upload-crop-meta {
  color: #64748b;
  font-size: 12px;
  line-height: 1.5;
}

#upload-modal .upload-crop-stage {
  display: flex;
  justify-content: center;
  margin-bottom: 12px;
}

#upload-modal .upload-crop-viewport {
  position: relative;
  width: min(100%, 480px);
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.88), rgba(30, 41, 59, 0.94)),
    repeating-conic-gradient(rgba(255,255,255,0.05) 0% 25%, rgba(255,255,255,0.02) 0% 50%) 50% 50% / 18px 18px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03);
  cursor: grab;
  touch-action: none;
  user-select: none;
}

#upload-modal .upload-crop-viewport.is-dragging {
  cursor: grabbing;
}

#upload-modal .upload-crop-image {
  position: absolute;
  left: 50%;
  top: 50%;
  max-width: none;
  max-height: none;
  transform: translate(-50%, -50%);
  will-change: transform, width, height;
}

#upload-modal .upload-crop-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(to right, rgba(255,255,255,0.22) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,0.22) 1px, transparent 1px);
  background-size: calc(100% / 3) 100%, 100% calc(100% / 3);
}

#upload-modal .upload-crop-grid::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,0.55);
  border-radius: inherit;
  box-shadow: inset 0 0 0 999px rgba(15, 23, 42, 0.08);
}

#upload-modal .upload-crop-controls {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

#upload-modal .upload-crop-zoom-label {
  color: #0f172a;
  font-family: var(--font-cond);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#upload-modal .upload-crop-controls input[type="range"] {
  width: 100%;
}

#upload-modal .upload-crop-stage[data-crop-mode="hero"] .upload-crop-viewport {
  aspect-ratio: 16 / 9;
}

#upload-modal .upload-crop-stage[data-crop-mode="portrait"] .upload-crop-viewport {
  width: min(100%, 360px);
  aspect-ratio: 4 / 5;
}

#upload-modal .upload-crop-stage[data-crop-mode="about"] .upload-crop-viewport,
#upload-modal .upload-crop-stage[data-crop-mode="gallery"] .upload-crop-viewport,
#upload-modal .upload-crop-stage[data-crop-mode="default"] .upload-crop-viewport {
  aspect-ratio: 4 / 3;
}

#appointment-modal .owner-appointment-modal-close:focus-visible,
#upload-modal .upload-modal-close:focus-visible,
#upload-modal .btn-sm:focus-visible,
#upload-modal .btn-sm-ghost:focus-visible,
#upload-modal .drop-zone:focus-visible,
#upload-modal .modal-url-row input:focus-visible,
#upload-modal .upload-crop-controls input[type="range"]:focus-visible,
#recurring-appointment-conflict-modal .btn-sm:focus-visible,
#recurring-appointment-conflict-modal .btn-sm-ghost:focus-visible {
  outline: 2px solid rgba(37, 99, 235, 0.28);
  outline-offset: 2px;
}

#upload-modal .upload-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 34px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 999px;
  background: #F8FBFF;
  color: #475569;
  box-shadow: 0 6px 16px rgba(15, 30, 54, 0.08);
}

#upload-modal .upload-modal-close:hover,
#upload-modal .upload-modal-close:focus-visible {
  background: #EEF4FF;
  color: #0F1E36;
}

#upload-modal .drop-zone:focus-visible {
  border-color: var(--gold);
  background: rgba(166,124,58,0.05);
}

@media (max-width: 720px) {
  #upload-modal .upload-crop-head,
  #upload-modal .upload-crop-controls {
    grid-template-columns: 1fr;
    display: grid;
  }

  #upload-modal .upload-crop-head {
    justify-content: stretch;
  }

  #upload-modal .upload-crop-viewport,
  #upload-modal .upload-crop-stage[data-crop-mode="portrait"] .upload-crop-viewport {
    width: 100%;
  }
}

#admin-view .photos-upload-zone-sm {
  min-height: 150px;
}

#admin-view .photos-main-preview-empty::before,
#admin-view .photo-card .photo-thumb-empty::before,
#admin-view .photos-gallery-slot .photos-upload-zone-sm::before,
#admin-view .photos-svc-top .photos-upload-zone-sm::before {
  content: 'No image yet';
  display: block;
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  color: #64748B;
}

#admin-view .photos-main-info,
#admin-view .photos-svc-body,
#admin-view .photos-barber-body,
#admin-view .photos-gallery-slot .photo-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
}

#admin-view .photos-main-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .photos-main-status,
#admin-view .photos-svc-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 4px 10px;
  background: #F8FAFC;
  color: #475569;
  border: 1px solid #E2E8F0;
  font-size: 11px;
  font-weight: 700;
}

#admin-view .photos-main-status.is-filled,
#admin-view .photos-svc-badge.is-filled {
  background: #ECFDF5;
  border-color: #A7F3D0;
  color: #065F46;
}

#admin-view .photos-main-status.is-empty,
#admin-view .photos-svc-badge.is-empty {
  background: #F8FAFC;
  border-color: #E2E8F0;
  color: #64748B;
}

#admin-view .photos-main-actions,
#admin-view .photos-gallery-slot-actions,
#admin-view .photos-svc-foot,
#admin-view .photos-barber-foot,
#admin-view .photo-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

#admin-view .photos-main-actions .photo-actions,
#admin-view .photos-gallery-slot-actions .photo-actions,
#admin-view .photos-svc-foot .photo-actions,
#admin-view .photos-barber-foot .photo-actions {
  width: 100%;
}

#admin-view .photos-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

#admin-view .photos-gallery-slot .photo-thumb,
#admin-view .photos-gallery-slot .photos-upload-zone-sm {
  width: 100%;
  height: 100%;
  min-height: 0;
}

#admin-view .photos-gallery-media {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: linear-gradient(135deg, #F8FAFC, #EEF2FF);
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .photos-gallery-slot .photo-body {
  gap: 8px;
  padding: 14px;
}

#admin-view .photos-gallery-slot-actions {
  margin-top: auto;
}

#admin-view .photos-gallery-slot-actions .photo-actions-gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  width: 100%;
}

#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn,
#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn-sm,
#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn-sm-ghost {
  width: 100%;
}

#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn[disabled],
#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn-sm[disabled],
#admin-view .photos-gallery-slot-actions .photo-actions-gallery .btn-sm-ghost[disabled] {
  opacity: .78;
}

#admin-view .photos-gallery-slot .photos-upload-zone-sm {
  min-height: 0;
}

#admin-view .photos-svc-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

#admin-view .photos-svc-top .photo-thumb,
#admin-view .photos-svc-top .photos-upload-zone-sm {
  min-height: 150px;
}

#admin-view .photos-svc-name,
#admin-view .photos-barber-name {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .photos-svc-cat,
#admin-view .photos-barber-title {
  font-size: 12px;
  color: #64748B;
  line-height: 1.5;
}

#admin-view .photos-barber-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

#admin-view .photos-barber-top {
  padding: 20px 20px 0;
}

#admin-view .photos-barber-avatar {
  width: 72px;
  height: 72px;
  border-radius: 999px;
  background: linear-gradient(135deg, #DBEAFE, #E2E8F0);
  color: #0F1E36;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 800;
  overflow: hidden;
}

#admin-view .photos-barber-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#admin-view .photo-card .photo-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
}

#admin-view .photo-slot-grid,
#admin-view .photo-grid-template {
  display: grid;
  gap: 16px;
}

#admin-view .photo-grid-template {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#admin-view .ph-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#admin-view .photo-slot-name,
#admin-view .photo-name {
  font-size: 15px;
  font-weight: 700;
  color: #0F1E36;
}

#admin-view .photo-slot-desc,
#admin-view .photo-desc {
  font-size: 12px;
  color: #64748B;
  line-height: 1.55;
}

#admin-view .photos-section .btn-sm,
#admin-view .photos-section .btn-sm-ghost,
#admin-view .photos-section .btn {
  min-height: 36px;
  padding: 8px 12px;
  font-size: 12px;
}

#admin-view .photos-content .btn.btn-primary,
#admin-view .photos-content .btn.btn-primary.btn-sm,
#admin-view .photos-content .btn-primary.btn-sm {
  background: #0F1E36;
  color: #FFFFFF;
  border: none;
  border-radius: 7px;
  padding: 7px 16px;
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
  cursor: pointer;
  font-family: Inter, sans-serif;
  letter-spacing: normal;
}

#admin-view .photos-content .btn.btn-sm-ghost,
#admin-view .photos-content .btn-sm-ghost,
#admin-view .photos-content button[onclick*="reset"],
#admin-view .photos-content button[onclick*="Reset"] {
  background: #FFFFFF;
  color: #64748B;
  border: 1px solid #E2E8F0;
  border-radius: 7px;
  padding: 7px 16px;
  font-size: 13px;
  font-weight: 500;
  text-transform: none;
  cursor: pointer;
  font-family: Inter, sans-serif;
  letter-spacing: normal;
}

#admin-view .photos-content .btn[disabled],
#admin-view .photos-content .btn-sm[disabled],
#admin-view .photos-content .btn-sm-ghost[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}

@media (max-width: 1200px) {
  #admin-view .photos-svc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) {
  #admin-view .photos-hero-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #admin-view .photos-body {
    grid-template-columns: 1fr;
  }

  #admin-view .photos-sidebar {
    position: static;
    top: auto;
  }

  #admin-view .photos-sidebar-section {
    flex-direction: row;
    overflow-x: auto;
    padding: 10px;
  }

  #admin-view .photos-sidebar-label {
    display: none;
  }

  #admin-view .photos-sidebar-item {
    flex: 0 0 auto;
    min-width: 180px;
  }

  #admin-view .photos-main-card,
  #admin-view .photos-main-zone,
  #admin-view .photos-gallery-grid,
  #admin-view .photos-barber-grid,
  #admin-view .photo-grid-template {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  #admin-view .photos-main-card,
  #admin-view .photos-main-zone,
  #admin-view .photos-gallery-grid,
  #admin-view .photos-svc-grid,
  #admin-view .photos-barber-grid,
  #admin-view .ph-grid-2,
  #admin-view .photo-grid-template {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  #admin-view #atab-photos {
    padding: 16px;
  }

  #admin-view .photos-hero-top {
    padding: 22px 20px 16px;
  }

  #admin-view .photos-hero-strip {
    display: grid;
    grid-template-columns: 1fr;
  }

  #admin-view .photos-section-head {
    flex-direction: column;
  }
}

#admin-view [data-account-panel="sms"] {
  padding-top: 24px;
}

#admin-view .acct-sms-outer-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 20px;
  align-items: start;
  padding-top: 24px;
}

#admin-view .acct-sms-progress-sidebar {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  overflow: hidden;
  position: sticky;
  top: 20px;
}

#admin-view .acct-progress-head {
  padding: 14px 16px;
  border-bottom: 1px solid #F1F5F9;
  background: #F8FAFC;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .acct-progress-step {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 14px 16px;
  border-bottom: 1px solid #F8FAFC;
}

#admin-view .acct-progress-step:last-child {
  border-bottom: none;
}

#admin-view .acct-ps-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
}

#admin-view .acct-ps-active {
  background: #0F1E36;
  color: #FFFFFF;
}

#admin-view .acct-ps-done {
  background: #16A34A;
  color: #FFFFFF;
}

#admin-view .acct-ps-todo {
  background: #F1F5F9;
  color: #94A3B8;
  border: 1px solid #E2E8F0;
}

#admin-view .acct-ps-label {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .acct-ps-sub {
  margin-top: 2px;
  font-size: 12px;
  color: #94A3B8;
  font-family: Inter, sans-serif;
}

#admin-view .acct-ps-badge {
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view .acct-ps-badge-active {
  background: #0F1E36;
  color: #FFFFFF;
}

#admin-view .acct-ps-badge-done {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view .acct-ps-badge-todo {
  background: #F8FAFC;
  color: #94A3B8;
  border: 1px solid #E2E8F0;
}

#admin-view .acct-sms-main-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

#admin-view .acct-sms-status-card,
#admin-view .acct-cost-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  overflow: hidden;
}

#admin-view .acct-sms-lock-card {
  background: #F8FAFC !important;
  border: 2px dashed #E2E8F0 !important;
  border-radius: 12px !important;
  padding: 32px 20px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 200px !important;
  margin-bottom: 16px;
}

#admin-view .acct-sms-lock-icon {
  font-size: 28px !important;
  margin-bottom: 12px !important;
  opacity: .5 !important;
  display: block !important;
}

#admin-view .acct-sms-lock-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #94A3B8 !important;
  margin-bottom: 6px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view .acct-sms-lock-sub {
  font-size: 12px !important;
  color: #CBD5E1 !important;
  font-family: Inter, sans-serif !important;
  line-height: 1.6 !important;
  max-width: 280px !important;
}

#admin-view .acct-sms-status-inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 16px 10px;
}

#admin-view .acct-sms-status-card.acct-sms-status-connected {
  background: #F0FDF4;
  border-color: #BBF7D0;
}

#admin-view .acct-sms-status-card.acct-sms-status-disconnected {
  background: #FFFFFF;
  border-color: #E2E8F0;
}

#admin-view .acct-sms-status-card.acct-sms-status-pending {
  background: #FFFBEB;
  border-color: #FDE68A;
}

#admin-view .acct-status-left {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

#admin-view .acct-status-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view .acct-dot-red {
  background: #DC2626;
}

#admin-view .acct-dot-green {
  background: #16A34A;
}

#admin-view .acct-dot-amber {
  background: #D97706;
}

#admin-view .acct-status-title {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .acct-status-desc {
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.5;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cost-card-head {
  padding: 14px 20px;
  border-bottom: 1px solid #F1F5F9;
  background: #F8FAFC;
}

#admin-view .acct-ch-title {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .acct-ch-sub {
  margin-top: 2px;
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cost-card-body {
  padding: 20px;
}

#admin-view .acct-pricing-caveat {
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.5;
  color: #92400E;
  font-family: Inter, sans-serif;
}

#admin-view .acct-pricing-caveat a {
  color: #D97706;
  font-weight: 600;
  text-decoration: underline;
}

#admin-view .acct-cost-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

#admin-view .acct-cost-item {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 12px 14px;
}

#admin-view .acct-cost-val {
  font-size: 18px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cost-label {
  margin-top: 4px;
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cost-breakdown {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px 16px;
}

#admin-view .acct-cb-title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cb-row,
#admin-view .acct-cb-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  font-family: Inter, sans-serif;
}

#admin-view .acct-cb-row {
  border-bottom: 1px solid #F8FAFC;
}

#admin-view .acct-cb-total {
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid #E2E8F0;
  font-weight: 700;
}

#admin-view .acct-cb-label {
  font-size: 12px;
  color: #64748B;
}

#admin-view .acct-cb-val {
  font-size: 12px;
  color: #0F1E36;
  font-weight: 700;
}

#admin-view .acct-cb-note {
  margin-top: 10px;
  font-size: 12px;
  color: #94A3B8;
  line-height: 1.5;
  font-family: Inter, sans-serif;
}

#admin-view .acct-sms-owner-layout {
  display: block;
}

#admin-view .acct-sms-main-col {
  display: grid;
  gap: 16px;
}

#admin-view .acct-sms-wizard-wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#admin-view .acct-progress-step-static {
  align-items: flex-start;
}

#admin-view .acct-sms-info-banner-wrap {
  display: block;
}

#admin-view .account-sms-info-banner {
  background: linear-gradient(135deg, #EFF6FF 0%, #F8FAFC 100%);
  border: 1px solid #BFDBFE;
  border-radius: 14px;
  padding: 14px 16px;
  font-size: 13px;
  color: #1D4ED8;
  font-weight: 600;
  margin-bottom: 16px;
  font-family: Inter, sans-serif;
  box-shadow: 0 10px 30px rgba(37, 99, 235, 0.08);
}

#admin-view .acct-sms-status-kicker {
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #2563EB;
  font-family: var(--font-cond);
}

#admin-view .acct-sms-owner-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 16px;
  align-items: start;
}

#admin-view .acct-sms-stage-card {
  border-radius: 18px;
  border: 1px solid #DBEAFE;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

#admin-view .acct-sms-stage-card[hidden] {
  display: none !important;
}

#admin-view .acct-sms-connect-card {
  border-radius: 18px;
  border: 1px solid #FECACA;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

#admin-view .acct-sms-connect-card .admin-card-header {
  background: linear-gradient(180deg, #FFF7F7 0%, #FFFFFF 100%);
  border-bottom-color: #FEE2E2;
}

#admin-view .acct-sms-connect-card .admin-card-body {
  display: grid;
  gap: 14px;
}

#admin-view .acct-sms-connect-intro {
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}

#admin-view .acct-sms-connect-status-support {
  color: #64748B;
  font-size: 12px;
  line-height: 1.55;
  margin-top: -8px;
}

#admin-view .acct-sms-connect-warning {
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid #FECACA;
  background: #FEF2F2;
  color: #B91C1C;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 700;
}

#admin-view .acct-sms-connect-steps {
  margin: 0;
  padding-left: 20px;
  display: grid;
  gap: 6px;
  color: #334155;
  font-size: 13px;
  line-height: 1.6;
}

#admin-view .acct-sms-connect-status-note {
  padding: 12px 13px;
  border-radius: 14px;
  border: 1px solid #DBEAFE;
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  color: #1E3A8A;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 600;
}

#admin-view .acct-sms-connect-status-panel {
  display: grid;
  gap: 10px;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
}

#admin-view .acct-sms-connect-status-panel[hidden] {
  display: none !important;
}

#admin-view .acct-sms-connect-checklist-panel {
  display: grid;
  gap: 10px;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: linear-gradient(180deg, #FCFDFF 0%, #FFFFFF 100%);
}

#admin-view .acct-sms-connect-status-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #64748B;
  font-family: var(--font-cond);
}

#admin-view .acct-sms-connect-status-rows {
  display: grid;
  gap: 8px;
}

#admin-view .acct-sms-connect-checklist-rows {
  display: grid;
  gap: 10px;
}

#admin-view .acct-sms-connect-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .acct-sms-connect-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

#admin-view .acct-sms-connect-key {
  color: #64748B;
  font-size: 12px;
  font-weight: 700;
}

#admin-view .acct-sms-connect-val {
  color: #0F172A;
  font-size: 12px;
  font-weight: 700;
  text-align: right;
}

#admin-view .acct-sms-connect-checklist-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid #E2E8F0;
}

#admin-view .acct-sms-connect-checklist-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

#admin-view .acct-sms-connect-checklist-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

#admin-view .acct-sms-connect-checklist-label {
  color: #0F172A;
  font-size: 12px;
  font-weight: 700;
}

#admin-view .acct-sms-connect-checklist-detail {
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view .acct-sms-connect-checklist-pill {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #CBD5E1;
  background: #F8FAFC;
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

#admin-view .acct-sms-connect-checklist-pill.is-pass {
  border-color: #BBF7D0;
  background: #F0FDF4;
  color: #166534;
}

#admin-view .acct-sms-connect-checklist-pill.is-pending {
  border-color: #FDE68A;
  background: #FFFBEB;
  color: #92400E;
}

#admin-view .acct-sms-connect-checklist-pill.is-manual-review {
  border-color: #BFDBFE;
  background: #EFF6FF;
  color: #1D4ED8;
}

#admin-view .acct-sms-connect-checklist-pill.is-fail {
  border-color: #FECACA;
  background: #FEF2F2;
  color: #B91C1C;
}

#admin-view .acct-sms-connect-checklist-pill.is-unknown {
  border-color: #CBD5E1;
  background: #F8FAFC;
  color: #475569;
}

#admin-view .acct-sms-connect-checklist-note {
  color: #475569;
  font-size: 12px;
  line-height: 1.6;
}

#admin-view .acct-sms-connect-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

#admin-view .acct-sms-connect-actions [hidden] {
  display: none !important;
}

#admin-view .acct-sms-connect-actions .btn[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}

#admin-view .acct-sms-connect-button-note {
  color: #475569;
  font-size: 12px;
  line-height: 1.6;
}

#admin-view .acct-sms-connect-advanced {
  display: grid;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #E2E8F0;
  background: #FCFDFF;
}

#admin-view .acct-sms-connect-advanced[hidden] {
  display: none !important;
}

#admin-view .acct-sms-connect-advanced summary {
  cursor: pointer;
  color: #334155;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  list-style: none;
}

#admin-view .acct-sms-connect-advanced summary::-webkit-details-marker {
  display: none;
}

#admin-view .acct-sms-connect-advanced-copy {
  color: #64748B;
  font-size: 12px;
  line-height: 1.55;
}

#admin-view .acct-sms-connect-advanced-rows {
  display: grid;
  gap: 8px;
}

#admin-view .acct-sms-review-feedback {
  padding: 12px 13px;
  border-radius: 14px;
  border: 1px solid #CBD5E1;
  background: #F8FAFC;
  color: #334155;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
}

#admin-view .acct-sms-review-feedback.is-success {
  border-color: #BBF7D0;
  background: #F0FDF4;
  color: #166534;
}

#admin-view .acct-sms-review-feedback.is-info {
  border-color: #BFDBFE;
  background: #EFF6FF;
  color: #1D4ED8;
}

#admin-view .acct-sms-review-feedback.is-error {
  border-color: #FECACA;
  background: #FEF2F2;
  color: #B91C1C;
}

#admin-view .acct-sms-connect-error {
  padding: 12px 13px;
  border-radius: 14px;
  border: 1px solid #FECACA;
  background: #FEF2F2;
  color: #B91C1C;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
}

#admin-view .acct-sms-stage-card .admin-card-header {
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  border-bottom-color: #E2E8F0;
}

#admin-view .acct-sms-owner-card {
  height: 100%;
  border-radius: 18px;
  border: 1px solid #DBEAFE;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

#admin-view .acct-sms-owner-card .admin-card-header {
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  border-bottom-color: #E2E8F0;
}

#admin-view .acct-sms-path-card {
  border-color: #BFDBFE;
}

#admin-view .acct-sms-stage-list {
  display: grid;
  gap: 10px;
}

#admin-view .acct-sms-status-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 16px 14px;
  margin-top: 0;
}

#admin-view .acct-sms-stage-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  background: #FFFFFF;
}

#admin-view .acct-sms-stage-marker {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  border: 2px solid #CBD5E1;
  background: #E2E8F0;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,0.8);
}

#admin-view .acct-sms-stage-marker.is-complete,
#admin-view .acct-sms-stage-marker.is-live {
  border-color: #16A34A;
  background: #22C55E;
}

#admin-view .acct-sms-stage-marker.is-pending {
  border-color: #D97706;
  background: #F59E0B;
}

#admin-view .acct-sms-stage-marker.is-disabled {
  border-color: #DC2626;
  background: #F87171;
}

#admin-view .acct-sms-stage-marker.is-inactive {
  border-color: #94A3B8;
  background: #CBD5E1;
}

#admin-view .acct-sms-stage-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

#admin-view .acct-sms-stage-title {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 700;
  color: #0F172A;
}

#admin-view .acct-sms-stage-detail {
  font-size: 12px;
  line-height: 1.5;
  color: #475569;
}

#admin-view .acct-sms-stage-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  color: #475569;
  font-family: var(--font-cond);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

#admin-view .acct-sms-stage-status.is-complete,
#admin-view .acct-sms-stage-status.is-live {
  background: #F0FDF4;
  border-color: #BBF7D0;
  color: #15803D;
}

#admin-view .acct-sms-stage-status.is-pending {
  background: #FFFBEB;
  border-color: #FDE68A;
  color: #B45309;
}

#admin-view .acct-sms-stage-status.is-disabled {
  background: #FEF2F2;
  border-color: #FECACA;
  color: #B91C1C;
}

#admin-view .acct-sms-stage-status.is-inactive {
  background: #F8FAFC;
  border-color: #CBD5E1;
  color: #64748B;
}

#admin-view .acct-sms-stage-note {
  margin-top: 12px;
  padding: 12px 13px;
  border-radius: 14px;
  border: 1px solid #DBEAFE;
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  font-size: 12px;
  line-height: 1.55;
  color: #1E3A8A;
  font-weight: 600;
}

#admin-view .acct-sms-help-card {
  border-radius: 16px;
  border: 1px solid #DBEAFE;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

#admin-view .acct-sms-help-card .admin-card-header {
  background: linear-gradient(180deg, #F8FBFF 0%, #FFFFFF 100%);
  border-bottom-color: #E2E8F0;
}

#admin-view .acct-sms-next-card {
  border-color: #FDE68A;
}

#admin-view .sms-readiness-field-grid-compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#admin-view .acct-sms-next-step-card {
  display: grid;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #FDE68A;
  background: linear-gradient(180deg, #FFFDF5 0%, #FFFFFF 100%);
}

#admin-view .acct-sms-next-step-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #92400E;
  font-family: var(--font-cond);
}

#admin-view .acct-sms-next-step-value {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 700;
  color: #0F172A;
}

#admin-view .acct-sms-next-step-note {
  font-size: 13px;
  line-height: 1.6;
  color: #7C2D12;
}

#admin-view .acct-sms-advanced-details {
  margin-top: 18px;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}

#admin-view .acct-sms-advanced-details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  list-style: none;
  cursor: pointer;
  padding: 16px 18px;
  font-size: 13px;
  font-weight: 700;
  color: #334155;
  background: #F8FAFC;
  font-family: Inter, sans-serif;
}

#admin-view .acct-sms-advanced-details > summary::-webkit-details-marker {
  display: none;
}

#admin-view .acct-sms-advanced-details > summary::after {
  content: '+';
  font-size: 18px;
  color: #64748B;
}

#admin-view .acct-sms-advanced-details[open] > summary::after {
  content: '−';
}

#admin-view .acct-sms-advanced-details .acct-sms-wizard-wrap {
  padding: 18px;
}

#admin-view .account-sms-top-grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
}

#admin-view .account-sms-readiness-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

#admin-view .account-sms-readiness-grid-secondary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#admin-view .sms-readiness-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  color: #475569;
  font-family: var(--font-cond);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

#admin-view .sms-readiness-status-pill.is-disabled {
  background: #FEF2F2;
  border-color: #FECACA;
  color: #B91C1C;
}

#admin-view .sms-readiness-status-pill.is-pending {
  background: #FFFBEB;
  border-color: #FDE68A;
  color: #B45309;
}

#admin-view .sms-readiness-status-pill.is-live {
  background: #F0FDF4;
  border-color: #BBF7D0;
  color: #15803D;
}

#admin-view .sms-readiness-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

#admin-view .sms-readiness-field {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  background: #F8FAFC;
}

#admin-view .sms-readiness-field-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #64748B;
}

#admin-view .sms-readiness-field-value {
  font-size: 13px;
  line-height: 1.5;
  color: #0F172A;
  word-break: break-word;
}

#admin-view .sms-readiness-link-value a {
  color: #2563EB;
  text-decoration: none;
}

#admin-view .sms-readiness-link-value a:hover {
  text-decoration: underline;
}

#admin-view .sms-readiness-verification-note {
  margin-bottom: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid #E2E8F0;
  background: #F8FAFC;
  font-size: 13px;
  line-height: 1.5;
  color: #334155;
}

#admin-view .sms-readiness-bullet-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 13px;
  line-height: 1.6;
  color: #334155;
}

#admin-view .sms-readiness-checklist,
#admin-view .sms-readiness-event-list {
  display: grid;
  gap: 10px;
}

#admin-view .sms-readiness-checklist-item,
#admin-view .sms-readiness-event-item {
  display: grid;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
}

#admin-view .sms-readiness-checklist-item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

#admin-view .sms-readiness-checklist-label,
#admin-view .sms-readiness-event-title {
  font-size: 13px;
  line-height: 1.5;
  color: #0F172A;
  font-weight: 600;
}

#admin-view .sms-readiness-mini-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  background: #FFFFFF;
  color: #475569;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#admin-view .sms-readiness-mini-pill.is-complete {
  background: #F0FDF4;
  border-color: #BBF7D0;
  color: #15803D;
}

#admin-view .sms-readiness-mini-pill.is-missing,
#admin-view .sms-readiness-mini-pill.is-needs-review {
  background: #FEF2F2;
  border-color: #FECACA;
  color: #B91C1C;
}

#admin-view .sms-readiness-mini-pill.is-pending {
  background: #FFFBEB;
  border-color: #FDE68A;
  color: #B45309;
}

#admin-view .sms-readiness-event-head,
#admin-view .sms-readiness-event-meta,
#admin-view .sms-readiness-event-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  align-items: center;
}

#admin-view .sms-readiness-event-head {
  justify-content: space-between;
}

#admin-view .sms-readiness-event-meta {
  font-size: 12px;
  color: #64748B;
}

#admin-view .sms-readiness-event-flags {
  gap: 6px;
}

#admin-view .sms-readiness-flag {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  background: #E2E8F0;
  color: #334155;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

#admin-view .sms-readiness-event-note,
#admin-view .sms-readiness-empty {
  font-size: 13px;
  line-height: 1.6;
  color: #475569;
}

#admin-view .account-action-row-readonly {
  align-items: center;
  flex-wrap: wrap;
}

#admin-view .account-note-readonly {
  margin-top: 0;
  max-width: 440px;
}

#admin-view [data-account-panel="sms"] .account-sms-top-grid {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}

#admin-view #atab-account .acct-sms-wizard-wrap .step-flow {
  display: none !important;
}

@media (max-width: 980px) {
  #admin-view .acct-sms-owner-grid,
  #admin-view .account-sms-readiness-grid,
  #admin-view .account-sms-readiness-grid-secondary,
  #admin-view .sms-readiness-field-grid-compact {
    grid-template-columns: 1fr;
  }

  #admin-view .acct-sms-stage-item {
    grid-template-columns: auto minmax(0, 1fr);
  }

  #admin-view .acct-sms-stage-status {
    grid-column: 2;
    justify-self: start;
  }

  #admin-view .acct-sms-status-grid {
    grid-template-columns: 1fr;
  }

  #admin-view .acct-sms-connect-row {
    align-items: flex-start;
    flex-direction: column;
  }

  #admin-view .acct-sms-connect-val {
    text-align: left;
  }

  #admin-view .acct-sms-connect-checklist-row {
    flex-direction: column;
  }

  #admin-view .acct-sms-connect-checklist-pill {
    min-width: 0;
  }
}

#admin-view [data-account-panel="sms"] .admin-card {
  border-radius: 12px !important;
  border: 1px solid #E2E8F0 !important;
  overflow: hidden;
}

#admin-view [data-account-panel="sms"] .admin-card-header {
  background: #F8FAFC !important;
  border-bottom: 1px solid #F1F5F9 !important;
  padding: 14px 20px !important;
}

#admin-view [data-account-panel="sms"] .admin-card-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] .admin-card-body {
  padding: 20px !important;
}

#admin-view #atab-account .section-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #F1F5F9;
}

#admin-view #atab-account .section-title {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .section-desc {
  font-size: 12px;
  color: #94A3B8;
  margin-top: 2px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .status-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  flex-shrink: 0;
}

#admin-view #atab-account .status-badge.disconnected {
  background: #FEF2F2;
  color: #DC2626;
  border: 1px solid #FECACA;
}

#admin-view #atab-account .status-badge.connected {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view #atab-account .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

#admin-view #atab-account .status-dot.disconnected {
  background: #DC2626;
}

#admin-view #atab-account .status-dot.connected {
  background: #16A34A;
}

#admin-view #atab-account .step-flow {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

#admin-view #atab-account .step-pill {
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  cursor: pointer;
}

#admin-view #atab-account .step-pill.active {
  background: #0F1E36;
  color: #FFFFFF;
}

#admin-view #atab-account .step-pill.pending {
  background: #F1F5F9;
  color: #94A3B8;
  border: 1px solid #E2E8F0;
}

#admin-view #atab-account .step-pill.done {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view #atab-account .step-arrow {
  font-size: 12px;
  color: #CBD5E1;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-card {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 14px;
}

#admin-view #atab-account .signup-card-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid #F1F5F9;
}

#admin-view #atab-account .signup-card-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #0F1E36;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-card-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-card-sub {
  font-size: 12px;
  color: #94A3B8;
  margin-top: 2px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-card-body {
  padding: 14px 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

#admin-view #atab-account .signup-steps-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view #atab-account .signup-step-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: #64748B;
  font-family: Inter, sans-serif;
  line-height: 1.5;
}

#admin-view #atab-account .signup-step-num {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #0F1E36;
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-visual {
  background: #0F1E36;
  border-radius: 8px;
  padding: 12px 14px;
}

#admin-view #atab-account .signup-visual-header {
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,.4);
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-visual-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 5px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

#admin-view #atab-account .signup-visual-row:last-of-type {
  border-bottom: none;
}

#admin-view #atab-account .signup-visual-label {
  font-size: 11px;
  color: rgba(255,255,255,.45);
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .signup-visual-val {
  font-size: 11px;
  font-weight: 600;
  color: rgba(255,255,255,.8);
  font-family: monospace;
}

#admin-view #atab-account .signup-visual-copy {
  font-size: 10px;
  color: rgba(255,255,255,.3);
  margin-top: 8px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .trial-badge {
  background: #FFFBEB;
  border: 1px solid #FDE68A;
  border-radius: 7px;
  padding: 8px 12px;
  font-size: 12px;
  color: #92400E;
  margin-bottom: 14px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .btn-twilio {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #0F1E36;
  color: #FFFFFF;
  border: none;
  border-radius: 7px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  font-family: Inter, sans-serif;
  text-decoration: none;
}

#admin-view #atab-account .btn-twilio:hover {
  background: #1a3050;
}

#admin-view #atab-account .btn-twilio-icon {
  font-size: 14px;
}

#admin-view #atab-account .already-have {
  background: #FFFFFF;
  color: #64748B;
  border: 1px solid #E2E8F0;
  border-radius: 7px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .btn-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  flex-wrap: wrap;
}

#admin-view #atab-account .where-find {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 14px 16px;
  margin-bottom: 16px;
}

#admin-view #atab-account .where-find-title {
  font-size: 12px;
  font-weight: 700;
  color: #0F1E36;
  margin-bottom: 8px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .where-find-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
  color: #64748B;
  margin-bottom: 6px;
  line-height: 1.5;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .where-find-row strong {
  color: #0F1E36;
  font-weight: 600;
}

#admin-view #atab-account .where-find-row code {
  background: #F1F5F9;
  color: #0F1E36;
  border-radius: 4px;
  padding: 1px 5px;
  font-family: monospace;
  font-size: 11px;
}

#admin-view #atab-account .cred-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 4px;
}

#admin-view #atab-account .cred-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#admin-view #atab-account .cred-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 700;
  color: #94A3B8;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .cred-label-badge {
  border-radius: 999px;
  padding: 1px 7px;
  font-size: 9px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
}

#admin-view #atab-account .cred-label-badge.sid {
  background: #EFF6FF;
  color: #2563EB;
  border: 1px solid #BFDBFE;
}

#admin-view #atab-account .cred-label-badge.token {
  background: #FEF2F2;
  color: #DC2626;
  border: 1px solid #FECACA;
}

#admin-view #atab-account .cred-label-badge.phone {
  background: #F0FDF4;
  color: #16A34A;
  border: 1px solid #BBF7D0;
}

#admin-view #atab-account .cred-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}

#admin-view #atab-account .cred-input {
  width: 100%;
  border: 1px solid #E2E8F0;
  border-radius: 7px;
  padding: 8px 36px 8px 11px;
  font-size: 13px;
  color: #0F1E36;
  font-family: monospace;
  background: #FFFFFF;
  outline: none;
}

#admin-view #atab-account .cred-input:focus {
  border-color: #2563EB;
}

#admin-view #atab-account .cred-input-icon {
  position: absolute;
  right: 10px;
  font-size: 12px;
}

#admin-view #atab-account .cred-hint {
  font-size: 11px;
  color: #94A3B8;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .cred-hint-link {
  color: #2563EB;
  cursor: pointer;
  font-weight: 500;
}

#admin-view #atab-account .verify-card {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 14px;
}

#admin-view #atab-account .verify-card-header {
  padding: 10px 14px;
  font-size: 11px;
  font-weight: 700;
  color: #64748B;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-bottom: 1px solid #F1F5F9;
  font-family: Inter, sans-serif;
  background: #F1F5F9;
}

#admin-view #atab-account .verify-card-body {
  padding: 12px 14px;
}

#admin-view #atab-account .verify-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid #F8FAFC;
}

#admin-view #atab-account .verify-row:last-child {
  border-bottom: none;
}

#admin-view #atab-account .verify-row-label {
  font-size: 11px;
  font-weight: 600;
  color: #94A3B8;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .verify-row-val {
  font-size: 12px;
  font-weight: 500;
  color: #0F1E36;
  font-family: monospace;
}

#admin-view #atab-account .verify-result {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 8px;
  margin-bottom: 14px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .verify-result.checking {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
}

#admin-view #atab-account .verify-result.success {
  background: #F0FDF4;
  border: 1px solid #BBF7D0;
}

#admin-view #atab-account .verify-result.error {
  background: #FEF2F2;
  border: 1px solid #FECACA;
}

#admin-view #atab-account .verify-result-icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .verify-result.checking .verify-result-icon {
  background: #E2E8F0;
  color: #64748B;
}

#admin-view #atab-account .verify-result.success .verify-result-icon {
  background: #16A34A;
  color: #FFFFFF;
}

#admin-view #atab-account .verify-result.error .verify-result-icon {
  background: #DC2626;
  color: #FFFFFF;
}

#admin-view #atab-account .verify-result-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  margin-bottom: 2px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .done-card {
  background: #F0FDF4;
  border: 1px solid #BBF7D0;
  border-radius: 10px;
  padding: 24px;
  text-align: center;
  margin-bottom: 14px;
}

#admin-view #atab-account .done-check {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #16A34A;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 12px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .done-title {
  font-size: 16px;
  font-weight: 700;
  color: #0F1E36;
  margin-bottom: 4px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .done-sub {
  font-size: 13px;
  color: #64748B;
  margin-bottom: 16px;
  line-height: 1.5;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .done-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 16px;
}

#admin-view #atab-account .done-detail-item {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 10px 12px;
  text-align: left;
}

#admin-view #atab-account .done-detail-label {
  font-size: 10px;
  font-weight: 700;
  color: #94A3B8;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 4px;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .done-detail-val {
  font-size: 12px;
  font-weight: 600;
  color: #0F1E36;
  font-family: monospace;
  word-break: break-all;
}

#admin-view #atab-account .twilio-done-status {
  color: #16A34A;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .btn-disconnect {
  background: #FFFFFF;
  color: #DC2626;
  border: 1px solid #FECACA;
  border-radius: 7px;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .connected-overview {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: #F0FDF4;
  border: 1px solid #BBF7D0;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 14px;
}

#admin-view #atab-account .connected-info {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

#admin-view #atab-account .connected-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #16A34A;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .connected-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view #atab-account .connected-sub {
  font-size: 12px;
  color: #64748B;
  margin-top: 1px;
  font-family: Inter, sans-serif;
}

#admin-view [data-account-panel="sms"] .btn,
#admin-view [data-account-panel="sms"] .btn-primary {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] .btn-ghost {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] .btn-success {
  background: #16A34A !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-account .account-toggle-card {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  background: #F8FAFC !important;
  border: 1px solid #F1F5F9 !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 8px !important;
  cursor: pointer !important;
}

#admin-view #atab-account .account-toggle-copy {
  min-width: 0;
}

#admin-view #atab-account .account-toggle-title {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-account .account-toggle-subtitle {
  font-size: 12px !important;
  color: #94A3B8 !important;
  font-family: Inter, sans-serif !important;
  display: block !important;
  margin-top: 2px !important;
}

#admin-view [data-account-panel="sms"] span.account-toggle-title,
#admin-view [data-account-panel="sms"] .account-toggle-title,
#admin-view [data-account-panel="sms"] label span.account-toggle-title {
  text-transform: none !important;
  letter-spacing: normal !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] span.account-toggle-subtitle,
#admin-view [data-account-panel="sms"] .account-toggle-subtitle {
  text-transform: none !important;
  letter-spacing: normal !important;
  font-size: 12px !important;
  color: #94A3B8 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] .section-title,
#admin-view [data-account-panel="sms"] .admin-card-title {
  text-transform: none !important;
  letter-spacing: normal !important;
}

#admin-view [data-account-panel="sms"] #account-sms-preferences-card {
  min-width: 320px !important;
}

#admin-view [data-account-panel="sms"] .account-sms-top-grid {
  grid-template-columns: 1fr 340px !important;
}

#admin-view [data-account-panel="sms"] .toggle {
  width: 36px !important;
  height: 20px !important;
  border-radius: 999px !important;
  background: #E2E8F0 !important;
  position: relative !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  flex-shrink: 0 !important;
}

#admin-view [data-account-panel="sms"] .toggle::after {
  content: '' !important;
  position: absolute !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  top: 2px !important;
  left: 2px !important;
  transition: left 0.2s !important;
  box-shadow: 0 1px 3px rgba(15,30,54,0.18) !important;
}

#admin-view [data-account-panel="sms"] .toggle.on,
#admin-view [data-account-panel="sms"] .toggle.active,
#admin-view [data-account-panel="sms"] .toggle[aria-checked="true"] {
  background: #16A34A !important;
}

#admin-view [data-account-panel="sms"] .toggle.on::after,
#admin-view [data-account-panel="sms"] .toggle.active::after,
#admin-view [data-account-panel="sms"] .toggle[aria-checked="true"]::after {
  left: 18px !important;
}

#admin-view #atab-account .account-note {
  font-size: 12px !important;
  color: #94A3B8 !important;
  font-family: Inter, sans-serif !important;
  margin-top: 10px !important;
  line-height: 1.5 !important;
}

#admin-view #atab-account .account-action-row {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  margin-top: 4px !important;
  flex-wrap: wrap !important;
}

#admin-view [data-account-panel="sms"] .btn-sm {
  background: #0F1E36 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view [data-account-panel="sms"] .btn-sm-ghost {
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 7px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-account .account-twilio-wizard-note {
  font-size: 12px;
  color: #94A3B8;
  margin-top: 12px;
  font-family: Inter, sans-serif;
}

#admin-view .step-panel {
  display: none !important;
}

#admin-view .step-panel.active {
  display: block !important;
}

#admin-view .connected-state {
  display: none !important;
}

#admin-view #connectedState.visible {
  display: block !important;
}

#admin-view .disconnected-state {
  display: block;
}

#admin-view .connected-state .step-flow {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

#admin-view .connected-state .step-pill {
  background: #F0FDF4 !important;
  color: #16A34A !important;
  border: 1px solid #BBF7D0 !important;
  border-radius: 999px !important;
  padding: 3px 12px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view .connected-state .step-arrow {
  color: #BBF7D0 !important;
  font-size: 11px !important;
}

@media (max-width: 1100px) {
  #admin-view .acct-sms-outer-layout {
    grid-template-columns: 1fr;
  }

  #admin-view .acct-sms-progress-sidebar {
    position: static;
  }

  #admin-view .account-sms-top-grid {
    grid-template-columns: 1fr;
  }

  #admin-view .account-sms-readiness-grid,
  #admin-view .account-sms-readiness-grid-secondary,
  #admin-view .sms-readiness-field-grid {
    grid-template-columns: 1fr;
  }

  #admin-view .sms-readiness-checklist-item {
    grid-template-columns: 1fr;
  }

  #admin-view .sms-readiness-event-head {
    align-items: flex-start;
  }
}

@media (max-width: 900px) {
  #admin-view .acct-cost-strip {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .signup-card-body,
  #admin-view #atab-account .done-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  #admin-view .acct-sms-status-inner,
  #admin-view .acct-status-left,
  #admin-view #atab-account .section-header,
  #admin-view #atab-account .connected-overview,
  #admin-view #atab-account .account-toggle-card {
    flex-direction: column;
    align-items: flex-start;
  }
}

#admin-view #atab-support .page-header,
#admin-view #atab-howto .page-header,
#admin-view #atab-support > div:first-child,
#admin-view #atab-howto > div:first-child {
  background: #0F1E36 !important;
  padding: 28px 32px 24px !important;
  margin: -24px -24px 24px !important;
  border-radius: 0 !important;
  border: none !important;
}

#admin-view #atab-support .page-header-label,
#admin-view #atab-howto .page-header-label {
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,.35) !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .page-header-title,
#admin-view #atab-howto .page-header-title,
#admin-view #atab-support h1,
#admin-view #atab-howto h1 {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  letter-spacing: -.5px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .page-header-subtitle,
#admin-view #atab-howto .page-header-subtitle,
#admin-view #atab-support > div:first-child > p,
#admin-view #atab-howto > div:first-child > p {
  font-size: 13px !important;
  color: rgba(255,255,255,.4) !important;
  margin-top: 4px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-card-grid,
#admin-view #atab-howto .support-card-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 14px !important;
  margin-bottom: 16px !important;
}

#admin-view #atab-support .support-card,
#admin-view #atab-howto .support-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  padding: 20px !important;
  transition: border-color .15s !important;
}

#admin-view #atab-support .support-card:hover,
#admin-view #atab-howto .support-card:hover {
  border-color: #0F1E36 !important;
}

#admin-view #atab-support .support-card-icon,
#admin-view #atab-howto .support-card-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
  background: #F1F5F9 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 12px !important;
  color: #0F1E36 !important;
  font-size: 16px !important;
}

#admin-view #atab-support .support-card-title,
#admin-view #atab-howto .support-card-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0F1E36 !important;
  margin-bottom: 4px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-card-copy,
#admin-view #atab-howto .support-card-copy,
#admin-view #atab-support .support-card p,
#admin-view #atab-howto .support-card p {
  font-size: 12px !important;
  color: #64748B !important;
  line-height: 1.5 !important;
  margin-bottom: 12px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-card-link,
#admin-view #atab-howto .support-card-link {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #0F1E36 !important;
  text-decoration: none !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-card-link:hover,
#admin-view #atab-howto .support-card-link:hover {
  text-decoration: underline !important;
}

#admin-view #atab-support .support-contact-card,
#admin-view #atab-howto .support-contact-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  padding: 20px !important;
}

#admin-view #atab-support .support-contact-label,
#admin-view #atab-howto .support-contact-label {
  font-size: 10px !important;
  font-weight: 700 !important;
  color: #94A3B8 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-contact-value,
#admin-view #atab-howto .support-contact-value {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-contact-card .card-title,
#admin-view #atab-howto .support-contact-card .card-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #64748B !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-contact-copy,
#admin-view #atab-howto .support-contact-copy {
  font-size: 13px !important;
  color: #64748B !important;
  margin-bottom: 14px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-support .support-contact-item,
#admin-view #atab-howto .support-contact-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #F8FAFC !important;
}

#admin-view #atab-support .support-contact-item:last-child,
#admin-view #atab-howto .support-contact-item:last-child {
  border-bottom: none !important;
}

#admin-view #atab-appointments .apt-date-group,
#admin-view #atab-appointments .appointments-date-group {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  margin-bottom: 12px !important;
}

#admin-view #atab-appointments .apt-date-group-header,
#admin-view #atab-appointments .appointments-date-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 20px !important;
  border-bottom: 1px solid #E2E8F0 !important;
  background: #F8FAFC !important;
}

#admin-view #atab-appointments .apt-date-group-header-date,
#admin-view #atab-appointments .appointments-date-label {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-appointments .apt-date-group-header-count,
#admin-view #atab-appointments .appointments-date-count {
  font-size: 11px !important;
  color: #94A3B8 !important;
  font-weight: 500 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-appointments .appointment-card.apt-row-item {
  background: #FFFFFF !important;
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

#admin-view #atab-appointments .apt-row.appointment-card-summary {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 16px !important;
  border-bottom: 1px solid #F1F5F9 !important;
  background: #FFFFFF !important;
  cursor: pointer !important;
  transition: background .12s ease !important;
}

#admin-view #atab-appointments .appointment-card:last-child .apt-row.appointment-card-summary {
  border-bottom: none !important;
}

#admin-view #atab-appointments .apt-row.appointment-card-summary:hover {
  background: #F8FAFC !important;
}

#admin-view #atab-appointments .apt-date-group-rows,
#admin-view #atab-appointments .appointments-card-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 0 !important;
}

#admin-view #atab-appointments .apt-row-time {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2563EB !important;
  font-family: Inter, sans-serif !important;
  min-width: 72px !important;
  flex-shrink: 0 !important;
}

#admin-view #atab-appointments .apt-row-dot {
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
}

#admin-view #atab-appointments .apt-row-client {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0F1E36 !important;
  font-family: Inter, sans-serif !important;
  min-width: 140px !important;
  flex-shrink: 0 !important;
}

#admin-view #atab-appointments .apt-row-service {
  font-size: 13px !important;
  color: #64748B !important;
  font-family: Inter, sans-serif !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

#admin-view #atab-appointments .apt-row-status {
  justify-self: end !important;
  min-width: max-content !important;
}

#admin-view #atab-appointments .appointment-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  padding: 2px 10px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  font-family: Inter, sans-serif !important;
  white-space: nowrap !important;
  text-transform: capitalize !important;
}

#admin-view #atab-appointments .appointment-status-pill-confirmed {
  background: #F0FDF4 !important;
  color: #16A34A !important;
  border: 1px solid #BBF7D0 !important;
}

#admin-view #atab-appointments .apt-row-details {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .15s ease, background .15s ease, color .15s ease !important;
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
  flex-shrink: 0 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: auto !important;
  min-width: auto !important;
}

#admin-view #atab-appointments .apt-row:hover .apt-row-details,
#admin-view #atab-appointments .appointment-card:hover .apt-row-details {
  opacity: 1 !important;
}

#admin-view #atab-appointments .apt-row-details:hover {
  background: #F8FAFC !important;
  color: #0F1E36 !important;
}

#admin-view #atab-appointments .apt-row .apt-row-dot,
#admin-view #atab-appointments .apt-row-dot,
#admin-view #atab-appointments span.apt-row-dot,
#admin-view #atab-appointments .apt-row-item .apt-row-dot,
#admin-view #atab-appointments .appointment-card .apt-row-dot {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 0 !important;
}

#admin-view #atab-appointments .appointment-card.apt-row-item .apt-row-details,
#admin-view #atab-appointments .apt-row .apt-row-details,
#admin-view #atab-appointments button.apt-row-details {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .15s ease, background .15s ease, color .15s ease !important;
  background: #FFFFFF !important;
  color: #64748B !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  font-family: Inter, sans-serif !important;
  flex-shrink: 0 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: auto !important;
  min-width: auto !important;
}

#admin-view #atab-appointments .appointment-card.apt-row-item:hover .apt-row-details,
#admin-view #atab-appointments .apt-row:hover .apt-row-details {
  opacity: 1 !important;
}

#admin-view #atab-appointments .apt-row-details:hover {
  background: #F8FAFC !important;
  color: #0F1E36 !important;
}

#admin-view #atab-appointments .appointments-page-head {
  background: #0F1E36 !important;
  padding: 28px 32px 24px !important;
  margin: -24px -24px 24px !important;
  border-radius: 0 !important;
  border: none !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

#admin-view #atab-appointments .appointments-page-head .page-eyebrow {
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,.35) !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-appointments .appointments-page-head .page-title {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  letter-spacing: -.5px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-appointments .appointments-page-head .page-subtitle {
  font-size: 13px !important;
  color: rgba(255,255,255,.4) !important;
  margin-top: 4px !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-appointments .appointments-head-actions button {
  background: #FFFFFF !important;
  color: #0F1E36 !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 7px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  opacity: 1 !important;
  font-family: Inter, sans-serif !important;
}

#admin-view #atab-clients .clients-row.support-ticket-list-item {
  min-height: auto !important;
  padding: 14px !important;
}

#admin-view .ir-wrap {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#admin-view .ir-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #F8FAFC;
}

#admin-view .ir-header-title {
  font-size: 18px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  letter-spacing: -.02em;
}

#admin-view .ir-header-sub {
  margin-top: 4px;
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-header-badge,
#admin-view .ir-footer-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 5px 10px;
  background: #F0FDF4 !important;
  color: #16A34A !important;
  border: 1px solid #BBF7D0 !important;
  font-size: 11px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view .ir-section {
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: #FFFFFF;
  overflow: hidden;
}

#admin-view .ir-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid #F1F5F9;
  background: #F8FAFC;
}

#admin-view .ir-section-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .ir-section-meta {
  font-size: 12px;
  font-weight: 600;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-meta-risk {
  color: #DC2626;
}

#admin-view .ir-section-body {
  padding: 16px;
}

#admin-view .ir-snapshot-text,
#admin-view .ir-auto-note,
#admin-view .ir-ahead-text {
  font-size: 13px;
  line-height: 1.65;
  color: #334155;
  font-family: Inter, sans-serif;
  white-space: pre-line;
}

#admin-view .ir-segments-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

#admin-view .ir-seg-card {
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px;
  background: #FFFFFF;
}

#admin-view .ir-seg-card-risk {
  background: #FEF2F2;
  border-color: #FECACA;
}

#admin-view .ir-seg-name {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #94A3B8;
  font-family: Inter, sans-serif;
}

#admin-view .ir-seg-name-risk {
  color: #DC2626;
}

#admin-view .ir-seg-count {
  margin-top: 10px;
  font-size: 28px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  line-height: 1;
}

#admin-view .ir-seg-count-risk {
  color: #B91C1C;
}

#admin-view .ir-seg-status {
  margin-top: 8px;
  font-size: 12px;
  font-weight: 600;
  font-family: Inter, sans-serif;
}

#admin-view .ir-status-strong {
  color: #16A34A;
}

#admin-view .ir-status-act {
  color: #DC2626;
}

#admin-view .ir-risk-client {
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px;
  background: #FFFFFF;
}

#admin-view .ir-risk-client + .ir-risk-client {
  margin-top: 10px;
}

#admin-view .ir-risk-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

#admin-view .ir-risk-name {
  font-size: 14px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .ir-risk-days {
  margin-top: 3px;
  font-size: 12px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-risk-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  white-space: nowrap;
}

#admin-view .ir-badge-high {
  background: #FFF7ED;
  color: #C2410C;
}

#admin-view .ir-badge-critical {
  background: #FEF2F2;
  color: #DC2626;
}

#admin-view .ir-risk-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

#admin-view .ir-risk-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border-radius: 999px;
  padding: 5px 9px;
  background: #F8FAFC;
  color: #475569;
  font-size: 11px;
  font-family: Inter, sans-serif;
}

#admin-view .ir-sms-on {
  color: #16A34A;
  font-weight: 700;
}

#admin-view .ir-sms-off {
  color: #DC2626;
  font-weight: 700;
}

#admin-view .ir-sms-na {
  color: #94A3B8;
  font-weight: 600;
}

#admin-view .ir-auto-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

#admin-view .ir-auto-stat {
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px 12px;
  background: #FFFFFF;
  text-align: center;
}

#admin-view .ir-auto-val {
  font-size: 24px;
  font-weight: 800;
  color: #0F1E36;
  font-family: Inter, sans-serif;
  line-height: 1;
}

#admin-view .ir-auto-label {
  margin-top: 8px;
  font-size: 11px;
  font-weight: 600;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-auto-note {
  margin-top: 14px;
}

#admin-view .ir-recs-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#admin-view .ir-rec-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 14px;
  background: #FFFFFF;
}

#admin-view .ir-rec-num {
  width: 28px;
  min-width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #0F1E36;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  font-family: Inter, sans-serif;
}

#admin-view .ir-rec-title {
  font-size: 13px;
  font-weight: 700;
  color: #0F1E36;
  font-family: Inter, sans-serif;
}

#admin-view .ir-rec-sub {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.6;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px 2px;
}

#admin-view .ir-footer-note {
  font-size: 11px;
  color: #64748B;
  font-family: Inter, sans-serif;
}

#admin-view .ir-empty-state,
#admin-view .ir-report-empty {
  border: 1px dashed #CBD5E1;
  border-radius: 10px;
  padding: 16px;
  background: #F8FAFC;
  font-size: 13px;
  line-height: 1.6;
  color: #64748B;
  font-family: Inter, sans-serif;
}

@media (max-width: 960px) {
  #admin-view .ir-segments-grid {
    grid-template-columns: 1fr;
  }

  #admin-view .ir-auto-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  #admin-view .ir-header,
  #admin-view .ir-section-head,
  #admin-view .ir-footer,
  #admin-view .ir-risk-top {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view .ir-auto-grid {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   ADMIN PAGE HEAD CONSISTENCY
   ============================================================ */

#admin-view .admin-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  background: linear-gradient(180deg, var(--admin-elevated-bg) 0%, var(--admin-subtle-bg-2) 100%);
  border: 1px solid var(--admin-border);
  border-radius: 12px;
  box-shadow: var(--admin-shadow-sm);
  padding: 24px;
  margin: 0 0 20px;
}

#admin-view .admin-page-head__brand {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
  flex: 1 1 420px;
}

#admin-view .admin-page-head__brand > .admin-page-head__icon,
#admin-view .admin-page-head .business-intelligence-header-icon,
#admin-view .admin-page-head .intelligence-panel-logo,
#atab-intelligence .intelligence-panel-header .intelligence-panel-logo,
#atab-intelligence .intelligence-panel-header img.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-header svg.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-group > .intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-group > img.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-group > svg.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-row > .intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-row > img.intelligence-panel-logo,
#atab-intelligence .intelligence-panel-title-row > svg.intelligence-panel-logo {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
}

#admin-view .business-intelligence-title-row,
#admin-view .intelligence-panel-title-group,
#admin-view .intelligence-panel-title-row {
  gap: 0 !important;
}

#admin-view .admin-page-head__eyebrow,
#admin-view .admin-page-head .business-intelligence-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--admin-icon-muted);
  margin-bottom: 6px;
}

#admin-view .admin-page-head__title,
#admin-view .admin-page-head .business-intelligence-title,
#admin-view .admin-page-head .intelligence-panel-title {
  font-size: 28px;
  line-height: 1.12;
  font-weight: 800;
  color: var(--admin-heading);
  letter-spacing: -0.03em;
}

#admin-view .admin-page-head__subtitle,
#admin-view .admin-page-head .business-intelligence-subtitle,
#admin-view .admin-page-head .intelligence-panel-desc,
#admin-view .admin-page-head .intelligence-panel-sub {
  font-size: 13px;
  line-height: 1.6;
  color: var(--admin-text);
  margin-top: 4px;
}

#admin-view .admin-page-head__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-left: auto;
}

#admin-view .admin-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 20px;
}

#admin-view .admin-stat-card,
#admin-view .client-intelligence-summary-grid.admin-stat-grid .stat-card {
  background: var(--admin-elevated-bg);
  border: 1px solid var(--admin-border);
  border-radius: 12px;
  box-shadow: var(--admin-shadow-xs);
}

#admin-view .admin-stat-grid > .admin-stat-card {
  border-right: none !important;
  padding: 16px 18px !important;
}

#admin-view .admin-stat-card .svc-stat-item,
#admin-view .admin-stat-card.svc-stat-item,
#admin-view .admin-stat-card .clients-hero-stat,
#admin-view .admin-stat-card.clients-hero-stat,
#admin-view .admin-stat-card .photos-hero-stat,
#admin-view .admin-stat-card.photos-hero-stat,
#admin-view .admin-stat-card .barbers-hero-stat,
#admin-view .admin-stat-card.barbers-hero-stat {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 78px !important;
}

#admin-view .admin-stat-card .svc-stat-val,
#admin-view .admin-stat-card .clients-hero-stat-val,
#admin-view .admin-stat-card .barbers-hero-stat-val,
#admin-view .admin-stat-card .photos-hero-stat-val,
#admin-view .client-intelligence-summary-grid.admin-stat-grid .stat-card .stat-card-value {
  color: var(--admin-heading) !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  line-height: 1.1 !important;
  text-shadow: none !important;
}

#admin-view .admin-stat-card .svc-stat-label,
#admin-view .admin-stat-card .clients-hero-stat-label,
#admin-view .admin-stat-card .barbers-hero-stat-label,
#admin-view .admin-stat-card .photos-hero-stat-label,
#admin-view .client-intelligence-summary-grid.admin-stat-grid .stat-card .stat-card-sub,
#admin-view .client-intelligence-summary-grid.admin-stat-grid .stat-card .stat-card-label {
  color: var(--admin-text) !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  line-height: 1.45 !important;
}

#admin-view .business-intelligence-head,
#admin-view .clients-page-head,
#admin-view .hours-page-head,
#admin-view #atab-appointments .appointments-page-head,
#admin-view #atab-account .acct-hero,
#admin-view #atab-account .account-page-head,
#admin-view #atab-intelligence .intelligence-panel-header,
#admin-view #atab-howto .support-header-band {
  background: linear-gradient(180deg, var(--admin-elevated-bg) 0%, var(--admin-subtle-bg-2) 100%) !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 12px !important;
  box-shadow: var(--admin-shadow-sm) !important;
  padding: 24px 24px 20px !important;
  margin: 0 0 20px 0 !important;
}

#admin-view #atab-account .acct-hero-eyebrow,
#admin-view #atab-howto .page-header-label,
#admin-view #atab-appointments .appointments-page-head .page-eyebrow {
  color: var(--admin-icon-muted) !important;
}

#admin-view #atab-account .acct-hero-title,
#admin-view #atab-howto .page-header-title,
#admin-view #atab-howto h1,
#admin-view #atab-appointments .appointments-page-head .page-title {
  color: var(--admin-heading) !important;
}

#admin-view #atab-account .acct-hero-sub,
#admin-view #atab-account .acct-hero-status,
#admin-view #atab-howto .page-header-subtitle,
#admin-view #atab-howto > div:first-child > p,
#admin-view #atab-appointments .appointments-page-head .page-subtitle {
  color: var(--admin-text) !important;
}

#admin-view #atab-account .acct-hero-shop {
  color: var(--admin-heading) !important;
}

#admin-view #atab-account .acct-hero-guide-btn,
#admin-view #atab-appointments .appointments-head-actions button {
  background: var(--admin-chip-bg) !important;
  color: var(--admin-heading) !important;
  border: 1px solid var(--admin-border) !important;
}

#admin-view #atab-notifications .notifications-page-head,
#admin-view #atab-notifications .pg-hdr,
#admin-view .photos-hero,
#admin-view .reviews-hero,
#admin-view .svc-hero,
#admin-view .clients-hero,
#admin-view .barbers-hero,
#admin-view #atab-howto .support-header-band,
#admin-view .support-page-header {
  background: linear-gradient(180deg, var(--admin-elevated-bg) 0%, var(--admin-subtle-bg-2) 100%) !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 12px !important;
  box-shadow: var(--admin-shadow-sm) !important;
  margin: 0 0 20px 0 !important;
}

#admin-view #atab-notifications .notifications-page-head,
#admin-view #atab-notifications .pg-hdr {
  padding: 24px !important;
}

#admin-view .photos-hero,
#admin-view .reviews-hero,
#admin-view .svc-hero,
#admin-view .clients-hero,
#admin-view .barbers-hero {
  padding: 0 !important;
  overflow: visible !important;
}

#admin-view .photos-hero-top,
#admin-view .reviews-hero,
#admin-view .svc-hero-top,
#admin-view .clients-hero,
#admin-view .barbers-hero-top {
  padding: 0 !important;
}

#admin-view .photos-hero-eyebrow,
#admin-view .photos-hero-title,
#admin-view .photos-hero-sub,
#admin-view .reviews-hero-eyebrow,
#admin-view .reviews-hero-title,
#admin-view .reviews-hero-sub,
#admin-view .svc-hero-eyebrow,
#admin-view .svc-hero-title,
#admin-view .svc-hero-sub,
#admin-view .clients-hero-eyebrow,
#admin-view .clients-hero-title,
#admin-view .clients-hero-sub,
#admin-view .barbers-hero-eyebrow,
#admin-view .barbers-hero-title,
#admin-view .barbers-hero-sub,
#admin-view #atab-notifications .notifications-page-head .page-eyebrow,
#admin-view #atab-notifications .notifications-page-head .page-title,
#admin-view #atab-notifications .notifications-page-head .page-subtitle {
  color: inherit !important;
}

#admin-view .support-shell,
#admin-view .support-landing-shell,
#admin-view .support-subview-shell,
#admin-view .support-content-area {
  background: transparent !important;
}

#admin-view #atab-support > div:first-child,
#admin-view #atab-howto > div:first-child {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: none !important;
}

#admin-view #atab-support .support-shell,
#admin-view #atab-howto .support-shell,
#admin-view #atab-support .support-landing-shell,
#admin-view #atab-howto .support-landing-shell,
#admin-view #atab-support .support-subview-shell,
#admin-view #atab-howto .support-subview-shell {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 0 28px;
}

#admin-view #atab-support .support-page-header,
#admin-view #atab-howto .support-page-header {
  margin: 0 0 20px !important;
}

#admin-view #atab-support .support-content-area,
#admin-view #atab-howto .support-content-area {
  background: transparent !important;
}

#admin-view .svc-stat-strip.admin-stat-grid,
#admin-view .clients-hero-strip.admin-stat-grid,
#admin-view .barbers-hero-strip.admin-stat-grid,
#admin-view .photos-hero-strip.admin-stat-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: none !important;
  background: transparent !important;
}

#admin-view .admin-stat-card .svc-stat-val,
#admin-view .admin-stat-card .clients-hero-stat-val,
#admin-view .admin-stat-card .barbers-hero-stat-val,
#admin-view .admin-stat-card .photos-hero-stat-val {
  color: var(--admin-heading) !important;
  text-shadow: none !important;
}

#admin-view .admin-stat-card .svc-stat-label,
#admin-view .admin-stat-card .clients-hero-stat-label,
#admin-view .admin-stat-card .barbers-hero-stat-label,
#admin-view .admin-stat-card .photos-hero-stat-label {
  color: var(--admin-text) !important;
  opacity: 1 !important;
}

/* ============================================================
   TRUE DARK MODE SURFACES
   ============================================================ */

#admin-view[data-admin-theme="dark"] {
  --card-bg: #2c2c2e;
  --card-border: 1px solid rgba(255,255,255,.10);
  --card-shadow: 0 18px 38px rgba(0,0,0,.30);
  --color-white: #f5f5f7;
  --color-gray-100: #242426;
  --color-gray-200: rgba(255,255,255,.10);
  --color-gray-300: rgba(255,255,255,.16);
  --color-gray-400: #71717a;
  --color-gray-500: #71717a;
  --color-gray-600: #a1a1aa;
  --color-gray-700: #a1a1aa;
  --color-gray-800: #d4d4d8;
  --color-gray-900: #f5f5f7;
}

#admin-view[data-admin-theme="dark"] .admin-page-head,
#admin-view[data-admin-theme="dark"] .admin-stat-card,
#admin-view[data-admin-theme="dark"] .card,
#admin-view[data-admin-theme="dark"] .admin-table-wrap,
#admin-view[data-admin-theme="dark"] .compact-table-wrap,
#admin-view[data-admin-theme="dark"] .support-card,
#admin-view[data-admin-theme="dark"] .support-contact-card,
#admin-view[data-admin-theme="dark"] .photos-sidebar-section,
#admin-view[data-admin-theme="dark"] .photos-sidebar-item,
#admin-view[data-admin-theme="dark"] .photos-section,
#admin-view[data-admin-theme="dark"] .photos-warn-banner,
#admin-view[data-admin-theme="dark"] .photos-warn-banner.is-ready,
#admin-view[data-admin-theme="dark"] .reviews-why-item,
#admin-view[data-admin-theme="dark"] .reviews-card,
#admin-view[data-admin-theme="dark"] .appointments-summary-card,
#admin-view[data-admin-theme="dark"] .appointments-range-button,
#admin-view[data-admin-theme="dark"] .appointments-custom-date-wrap input[type="date"],
#admin-view[data-admin-theme="dark"] .appointments-list-card,
#admin-view[data-admin-theme="dark"] .appointment-card,
#admin-view[data-admin-theme="dark"] .appointment-more-dropdown,
#admin-view[data-admin-theme="dark"] .apt-detail-modal,
#admin-view[data-admin-theme="dark"] .waitlist-tester-panel,
#admin-view[data-admin-theme="dark"] .waitlist-stat-card,
#admin-view[data-admin-theme="dark"] .blocked-card,
#admin-view[data-admin-theme="dark"] .blocked-list-card,
#admin-view[data-admin-theme="dark"] .notifications-global-bar,
#admin-view[data-admin-theme="dark"] .notifications-master-row,
#admin-view[data-admin-theme="dark"] .notifications-status-banner,
#admin-view[data-admin-theme="dark"] .notification-card,
#admin-view[data-admin-theme="dark"] .notification-template-block,
#admin-view[data-admin-theme="dark"] .notification-preview-block,
#admin-view[data-admin-theme="dark"] .notifications-activity-item,
#admin-view[data-admin-theme="dark"] .notifications-activity-empty,
#admin-view[data-admin-theme="dark"] .deployment-ops-flag,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown,
#admin-view[data-admin-theme="dark"] .modal,
#admin-view[data-admin-theme="dark"] .modal-panel,
#admin-view[data-admin-theme="dark"] .account-import-main,
#admin-view[data-admin-theme="dark"] .account-import-side,
#admin-view[data-admin-theme="dark"] .account-identity-card,
#admin-view[data-admin-theme="dark"] .account-reference-card,
#admin-view[data-admin-theme="dark"] .account-import-hero-note,
#admin-view[data-admin-theme="dark"] .account-import-safety-strip,
#admin-view[data-admin-theme="dark"] .account-import-step-card,
#admin-view[data-admin-theme="dark"] .account-import-type-card,
#admin-view[data-admin-theme="dark"] .account-import-header-sample-card,
#admin-view[data-admin-theme="dark"] .account-import-preview-table-wrap,
#admin-view[data-admin-theme="dark"] .account-import-summary-card,
#admin-view[data-admin-theme="dark"] .account-import-quality-row,
#admin-view[data-admin-theme="dark"] .account-import-danger-note,
#admin-view[data-admin-theme="dark"] .account-import-warning-item,
#admin-view[data-admin-theme="dark"] .account-import-commit-notice {
  background: var(--admin-elevated-bg) !important;
  border-color: var(--admin-border) !important;
  color: var(--admin-text) !important;
  box-shadow: var(--admin-shadow-sm) !important;
}

#admin-view[data-admin-theme="dark"],
#admin-view[data-admin-theme="dark"] .support-shell,
#admin-view[data-admin-theme="dark"] .support-landing-shell,
#admin-view[data-admin-theme="dark"] .support-subview-shell,
#admin-view[data-admin-theme="dark"] .support-content-area,
#admin-view[data-admin-theme="dark"] .photos-page-shell,
#admin-view[data-admin-theme="dark"] .reviews-page-shell,
#admin-view[data-admin-theme="dark"] .waitlist-shell,
#admin-view[data-admin-theme="dark"] .appointments-shell {
  background: #1c1c1e !important;
  color: var(--admin-text) !important;
}

#admin-view[data-admin-theme="dark"] .photos-sidebar-item:hover,
#admin-view[data-admin-theme="dark"] .appointments-range-button:hover:not(.active),
#admin-view[data-admin-theme="dark"] .account-import-type-card:hover,
#admin-view[data-admin-theme="dark"] .notification-card.is-coming-soon,
#admin-view[data-admin-theme="dark"] .notifications-controls-card,
#admin-view[data-admin-theme="dark"] .notification-template-block,
#admin-view[data-admin-theme="dark"] .notification-preview-block,
#admin-view[data-admin-theme="dark"] .deployment-ops-flag,
#admin-view[data-admin-theme="dark"] .account-import-type-card.active,
#admin-view[data-admin-theme="dark"] .account-import-grid-appointments .account-import-safety-strip {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] .topbar-sms-status,
#admin-view[data-admin-theme="dark"] .sms-mode-indicator,
#admin-view[data-admin-theme="dark"] [data-role="sms-status"],
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-head,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-item,
#admin-view[data-admin-theme="dark"] .photos-sidebar-badge,
#admin-view[data-admin-theme="dark"] .appointment-more-item,
#admin-view[data-admin-theme="dark"] .apt-modal-info-cell:nth-child(odd),
#admin-view[data-admin-theme="dark"] .notification-default-template,
#admin-view[data-admin-theme="dark"] .notification-template-state,
#admin-view[data-admin-theme="dark"] .notification-channel-badge.is-off,
#admin-view[data-admin-theme="dark"] .notification-toggle-pill,
#admin-view[data-admin-theme="dark"] .account-import-safety-pill,
#admin-view[data-admin-theme="dark"] .account-import-disabled-badge,
#admin-view[data-admin-theme="dark"] .account-import-header-pill,
#admin-view[data-admin-theme="dark"] .account-import-file-input,
#admin-view[data-admin-theme="dark"] .account-import-quality-badge,
#admin-view[data-admin-theme="dark"] .account-import-outcome-badge,
#admin-view[data-admin-theme="dark"] .account-import-row-code {
  background: #242426 !important;
  border-color: var(--admin-border) !important;
  color: var(--admin-text) !important;
}

#admin-view[data-admin-theme="dark"] .admin-page-head__eyebrow,
#admin-view[data-admin-theme="dark"] .admin-page-head .business-intelligence-kicker,
#admin-view[data-admin-theme="dark"] .support-card-copy,
#admin-view[data-admin-theme="dark"] .support-contact-copy,
#admin-view[data-admin-theme="dark"] .support-contact-label,
#admin-view[data-admin-theme="dark"] .support-ticket-workspace-copy,
#admin-view[data-admin-theme="dark"] .support-ticket-label,
#admin-view[data-admin-theme="dark"] .support-ticket-message-label,
#admin-view[data-admin-theme="dark"] .support-ticket-list-meta,
#admin-view[data-admin-theme="dark"] .support-ticket-detail-meta,
#admin-view[data-admin-theme="dark"] .support-ticket-update-time,
#admin-view[data-admin-theme="dark"] .photos-section-sub,
#admin-view[data-admin-theme="dark"] .photos-sidebar-label,
#admin-view[data-admin-theme="dark"] .photos-runtime-intro,
#admin-view[data-admin-theme="dark"] .photos-runtime-note,
#admin-view[data-admin-theme="dark"] .reviews-card-sub,
#admin-view[data-admin-theme="dark"] .reviews-helper,
#admin-view[data-admin-theme="dark"] .reviews-why-copy,
#admin-view[data-admin-theme="dark"] .appointments-summary-label,
#admin-view[data-admin-theme="dark"] .appointments-summary-sub,
#admin-view[data-admin-theme="dark"] .appointments-summary-text,
#admin-view[data-admin-theme="dark"] .appointment-card-subline,
#admin-view[data-admin-theme="dark"] .waitlist-stat-label,
#admin-view[data-admin-theme="dark"] .waitlist-stat-sub,
#admin-view[data-admin-theme="dark"] .blocked-list-meta,
#admin-view[data-admin-theme="dark"] .blocked-list-scope,
#admin-view[data-admin-theme="dark"] .blocked-list-reason,
#admin-view[data-admin-theme="dark"] .notifications-master-sub,
#admin-view[data-admin-theme="dark"] .notifications-token-copy,
#admin-view[data-admin-theme="dark"] .notification-card-copy,
#admin-view[data-admin-theme="dark"] .notification-channel-note,
#admin-view[data-admin-theme="dark"] .notification-inline-note,
#admin-view[data-admin-theme="dark"] .notifications-activity-time,
#admin-view[data-admin-theme="dark"] .account-import-type-copy,
#admin-view[data-admin-theme="dark"] .account-import-guidance-copy,
#admin-view[data-admin-theme="dark"] .account-import-preview-copy,
#admin-view[data-admin-theme="dark"] .account-import-file-meta,
#admin-view[data-admin-theme="dark"] .account-import-empty,
#admin-view[data-admin-theme="dark"] .account-import-inline-note,
#admin-view[data-admin-theme="dark"] .account-import-warning-copy,
#admin-view[data-admin-theme="dark"] .account-import-commit-meta,
#admin-view[data-admin-theme="dark"] .account-import-step-copy,
#admin-view[data-admin-theme="dark"] .account-import-summary-label {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] .admin-page-head__title,
#admin-view[data-admin-theme="dark"] .admin-page-head__subtitle,
#admin-view[data-admin-theme="dark"] .admin-page-head .business-intelligence-title,
#admin-view[data-admin-theme="dark"] .admin-page-head .intelligence-panel-title,
#admin-view[data-admin-theme="dark"] .support-card-title,
#admin-view[data-admin-theme="dark"] .support-contact-value,
#admin-view[data-admin-theme="dark"] .support-ticket-workspace-title,
#admin-view[data-admin-theme="dark"] .support-ticket-list-subject,
#admin-view[data-admin-theme="dark"] .support-ticket-detail-subject,
#admin-view[data-admin-theme="dark"] .support-ticket-update-author,
#admin-view[data-admin-theme="dark"] .photos-section-label,
#admin-view[data-admin-theme="dark"] .photos-warn-title,
#admin-view[data-admin-theme="dark"] .reviews-why-title,
#admin-view[data-admin-theme="dark"] .reviews-card-title,
#admin-view[data-admin-theme="dark"] .reviews-field-label,
#admin-view[data-admin-theme="dark"] .appointment-card-time,
#admin-view[data-admin-theme="dark"] .appointment-card-client,
#admin-view[data-admin-theme="dark"] .blocked-list-date,
#admin-view[data-admin-theme="dark"] .blocked-form-label,
#admin-view[data-admin-theme="dark"] .notifications-master-title,
#admin-view[data-admin-theme="dark"] .notification-card-title,
#admin-view[data-admin-theme="dark"] .notifications-activity-text,
#admin-view[data-admin-theme="dark"] .account-import-step-title,
#admin-view[data-admin-theme="dark"] .account-import-type-title,
#admin-view[data-admin-theme="dark"] .account-import-header-sample-title,
#admin-view[data-admin-theme="dark"] .account-import-summary-value,
#admin-view[data-admin-theme="dark"] .account-import-warning-code,
#admin-view[data-admin-theme="dark"] .account-import-quality-copy,
#admin-view[data-admin-theme="dark"] .account-import-commit-notice {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .support-ticket-input,
#admin-view[data-admin-theme="dark"] .support-ticket-select,
#admin-view[data-admin-theme="dark"] .support-ticket-textarea,
#admin-view[data-admin-theme="dark"] .support-ticket-list-item,
#admin-view[data-admin-theme="dark"] .support-ticket-message-body,
#admin-view[data-admin-theme="dark"] .support-ticket-update-item {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .support-ticket-empty,
#admin-view[data-admin-theme="dark"] .support-ticket-update-body,
#admin-view[data-admin-theme="dark"] .support-ticket-detail-note {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] .support-ticket-feedback-success {
  background: rgba(16, 185, 129, 0.16) !important;
  border-color: rgba(52, 211, 153, 0.26) !important;
  color: #d1fae5 !important;
}

#admin-view[data-admin-theme="dark"] .support-ticket-feedback-error {
  background: rgba(220, 38, 38, 0.16) !important;
  border-color: rgba(248, 113, 113, 0.24) !important;
  color: #fecaca !important;
}

#admin-view[data-admin-theme="dark"] .support-ticket-feedback-info {
  background: rgba(59, 130, 246, 0.16) !important;
  border-color: rgba(96, 165, 250, 0.24) !important;
  color: #dbeafe !important;
}

#admin-view[data-admin-theme="dark"] .reviews-error {
  background: rgba(127, 29, 29, 0.32) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
  color: #fecaca !important;
}

#admin-view[data-admin-theme="dark"] .support-card-link,
#admin-view[data-admin-theme="dark"] .photos-sidebar-item.active,
#admin-view[data-admin-theme="dark"] .appointments-range-button.active,
#admin-view[data-admin-theme="dark"] .account-import-grid-appointments .account-import-step-eyebrow,
#admin-view[data-admin-theme="dark"] .account-import-grid-appointments .account-import-mode-chip,
#admin-view[data-admin-theme="dark"] .account-import-outcome-badge.outcome-create-new-client,
#admin-view[data-admin-theme="dark"] .account-import-outcome-badge.outcome-possible-duplicate {
  color: #8bb8f2 !important;
  border-color: rgba(79,134,198,.28) !important;
}

#admin-view[data-admin-theme="dark"] #atab-howto .card,
#admin-view[data-admin-theme="dark"] #atab-howto .support-card,
#admin-view[data-admin-theme="dark"] #atab-support .card,
#admin-view[data-admin-theme="dark"] #atab-support .support-card {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .reviews-btn-primary,
#admin-view[data-admin-theme="dark"] .appointments-head-actions .btn-sm,
#admin-view[data-admin-theme="dark"] .appointments-head-actions .btn-next {
  box-shadow: none !important;
}

#admin-view[data-admin-theme="dark"] .photos-sidebar-item.active,
#admin-view[data-admin-theme="dark"] .account-import-type-card.active,
#admin-view[data-admin-theme="dark"] .appointments-summary-card.active {
  background: rgba(79,134,198,.18) !important;
}

#admin-view[data-admin-theme="dark"] .photos-sidebar-item,
#admin-view[data-admin-theme="dark"] .reviews-link-box,
#admin-view[data-admin-theme="dark"] .reviews-qr-zone,
#admin-view[data-admin-theme="dark"] .reviews-tip-item,
#admin-view[data-admin-theme="dark"] #atab-account input,
#admin-view[data-admin-theme="dark"] #atab-account select,
#admin-view[data-admin-theme="dark"] #atab-account textarea,
#admin-view[data-admin-theme="dark"] #atab-howto input,
#admin-view[data-admin-theme="dark"] #atab-howto select,
#admin-view[data-admin-theme="dark"] #atab-howto textarea,
#admin-view[data-admin-theme="dark"] .apt-modal-info-cell,
#admin-view[data-admin-theme="dark"] .blocked-form-field input,
#admin-view[data-admin-theme="dark"] .blocked-form-field select,
#admin-view[data-admin-theme="dark"] .blocked-form-field textarea,
#admin-view[data-admin-theme="dark"] .account-import-preview-table th,
#admin-view[data-admin-theme="dark"] .account-import-preview-table td,
#admin-view[data-admin-theme="dark"] .account-import-mapping-field select,
#admin-view[data-admin-theme="dark"] .account-import-file-input,
#admin-view[data-admin-theme="dark"] .search-input,
#admin-view[data-admin-theme="dark"] .admin-topbar-search input,
#admin-view[data-admin-theme="dark"] input,
#admin-view[data-admin-theme="dark"] select,
#admin-view[data-admin-theme="dark"] textarea {
  background: #242426 !important;
  color: #f5f5f7 !important;
  border-color: rgba(255,255,255,.10) !important;
  box-shadow: none !important;
}

#admin-view[data-admin-theme="dark"] input::placeholder,
#admin-view[data-admin-theme="dark"] textarea::placeholder,
#admin-view[data-admin-theme="dark"] .search-input::placeholder,
#admin-view[data-admin-theme="dark"] .admin-topbar-search input::placeholder {
  color: #71717a !important;
}

#admin-view[data-admin-theme="dark"] .appointment-more-item:hover,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-item:hover,
#admin-view[data-admin-theme="dark"] .photos-sidebar-item:hover,
#admin-view[data-admin-theme="dark"] tr:hover td {
  background: #323235 !important;
}

#admin-view[data-admin-theme="dark"] .account-import-preview-table th,
#admin-view[data-admin-theme="dark"] .account-import-preview-table td,
#admin-view[data-admin-theme="dark"] th,
#admin-view[data-admin-theme="dark"] td,
#admin-view[data-admin-theme="dark"] .apt-modal-info-cell,
#admin-view[data-admin-theme="dark"] .appointment-more-item,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-head,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-item {
  border-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-name,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-item,
#admin-view[data-admin-theme="dark"] .admin-owner-dropdown-item strong,
#admin-view[data-admin-theme="dark"] .photos-sidebar-item,
#admin-view[data-admin-theme="dark"] .photos-sidebar-item.active .photos-sidebar-badge,
#admin-view[data-admin-theme="dark"] .topbar-sms-icon,
#admin-view[data-admin-theme="dark"] .appointment-more-item,
#admin-view[data-admin-theme="dark"] .apt-modal-info-value,
#admin-view[data-admin-theme="dark"] .apt-modal-client,
#admin-view[data-admin-theme="dark"] .apt-modal-service,
#admin-view[data-admin-theme="dark"] .reviews-link-box,
#admin-view[data-admin-theme="dark"] .reviews-qr-zone,
#admin-view[data-admin-theme="dark"] .reviews-tip-item {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .admin-main,
#admin-view[data-admin-theme="dark"] .admin-content,
#admin-view[data-admin-theme="dark"] .admin-tab-panel,
#admin-view[data-admin-theme="dark"] .clients-page-shell,
#admin-view[data-admin-theme="dark"] .barbers-page-shell,
#admin-view[data-admin-theme="dark"] .schedule-shell,
#admin-view[data-admin-theme="dark"] .hours-shell,
#admin-view[data-admin-theme="dark"] .blocked-shell,
#admin-view[data-admin-theme="dark"] .notifications-shell,
#admin-view[data-admin-theme="dark"] .account-shell,
#admin-view[data-admin-theme="dark"] .intelligence-shell,
#admin-view[data-admin-theme="dark"] .client-intel-shell {
  background: transparent !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar,
#admin-view[data-admin-theme="dark"] .admin-topbar-brand,
#admin-view[data-admin-theme="dark"] .admin-topbar-meta .admin-topbar-icon-btn,
#admin-view[data-admin-theme="dark"] .admin-topbar-meta .admin-theme-toggle,
#admin-view[data-admin-theme="dark"] .admin-owner-avatar,
#admin-view[data-admin-theme="dark"] .admin-topbar-menu-toggle {
  background: rgba(28,28,30,.92) !important;
  color: #f5f5f7 !important;
  border-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shell {
  background: linear-gradient(180deg, rgba(28,28,30,0.98) 0%, rgba(36,36,38,0.96) 100%) !important;
  border-bottom-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-logo {
  content: url("/assets/brand/bladezy-logo-header-dark.svg");
  background: transparent !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-name {
  color: #f8fafc;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-context {
  color: rgba(226, 232, 240, 0.78);
}

#admin-view[data-admin-theme="dark"] .admin-topbar-support-badge {
  border-color: rgba(96, 165, 250, 0.28);
  background: rgba(37, 99, 235, 0.18);
  color: #bfdbfe;
}

@media (max-width: 1180px) {
  #admin-view .admin-topbar,
  .admin-topbar {
    grid-template-columns: minmax(280px, 1fr) minmax(260px, 360px) auto;
  }

  #admin-view .admin-topbar-brand,
  .admin-topbar-brand {
    gap: 12px;
  }

  #admin-view .admin-topbar-logo,
  .admin-topbar-logo {
    width: 142px;
    height: 32px;
  }

  .admin-topbar-shop-name {
    font-size: 17px;
  }
}

@media (max-width: 860px) {
  .admin-topbar-shell {
    padding: 10px 16px 12px;
  }

  #admin-view .admin-topbar,
  .admin-topbar {
    grid-template-columns: minmax(220px, 1fr) minmax(0, 1fr) auto;
    column-gap: 12px;
  }

  #admin-view .admin-topbar-brand,
  .admin-topbar-brand {
    gap: 10px;
  }

  #admin-view .admin-topbar-logo,
  .admin-topbar-logo {
    width: 134px;
    height: 30px;
  }

  .admin-topbar-brand-lockup {
    gap: 12px;
  }

  .admin-topbar-shop-context-row {
    display: none;
  }
}

#admin-view[data-admin-theme="dark"] :is(
  .business-intelligence-panel,
  .business-intelligence-card,
  .business-intelligence-kpi-card,
  .business-intelligence-staff-card,
  .business-intelligence-ai-card,
  .business-intelligence-period,
  .business-intelligence-tab,
  .business-intelligence-chair-fee-wrap,
  .business-intelligence-chair-fee-table,
  #biw-booking-heatmap,
  #biw-booking-trend,
  .appointments-list-card,
  .apt-date-group,
  .appointment-card,
  .apt-row,
  .waitlist-shell .stat-card,
  .waitlist-table-wrap .admin-table-header,
  .waitlist-admin-table,
  .waitlist-table,
  .waitlist-active-table,
  .waitlist-activity-table,
  .svc-buffer-bar,
  .service-category-summary,
  .service-menu-row,
  .services-form-card,
  .svc-pricing-preview,
  .svc-empty-state-panel,
  .barber-roster-shell,
  .barbers-card,
  .barbers-stat-box,
  .barber-finance-status-panel,
  .business-intelligence-chair-fee-table tr,
  .business-intelligence-chair-fee-table th,
  .business-intelligence-chair-fee-table td
) {
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] :is(
  .business-intelligence-panel,
  .business-intelligence-card,
  .business-intelligence-kpi-card,
  .business-intelligence-staff-card,
  .business-intelligence-ai-card,
  #biw-booking-heatmap,
  #biw-booking-trend,
  .appointments-list-card,
  .apt-date-group,
  .appointment-card,
  .apt-row,
  .waitlist-shell .stat-card,
  .svc-buffer-bar,
  .service-menu-row,
  .services-form-card,
  .svc-empty-state-panel,
  .barber-roster-shell,
  .barbers-card,
  .barber-finance-status-panel
) {
  background: #2c2c2e !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.30) !important;
}

#admin-view[data-admin-theme="dark"] :is(
  .business-intelligence-period,
  .business-intelligence-tab,
  .waitlist-table-wrap .admin-table-header,
  .waitlist-admin-table th,
  .waitlist-table th,
  .waitlist-active-table th,
  .waitlist-activity-table th,
  .apt-date-group-header,
  .service-category-summary,
  .svc-pricing-preview,
  .barbers-stat-box,
  .barbers-chip,
  .barber-finance-status-panel .admin-card-header,
  .business-intelligence-chair-fee-table th,
  .business-intelligence-chair-fee-table td,
  .business-intelligence-chair-fee-table tr
) {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] :is(
  .service-menu-row:hover,
  .service-menu-row:focus-visible,
  .service-menu-row.is-selected,
  .apt-date-group .appointment-card:hover,
  .apt-date-group .apt-row:hover,
  .waitlist-admin-table tr:hover td,
  .waitlist-table tr:hover td,
  .waitlist-active-table tr:hover td,
  .waitlist-activity-table tr:hover td,
  .business-intelligence-kpi-card:hover,
  .business-intelligence-period:hover,
  .business-intelligence-tab:hover,
  .barbers-card:hover,
  .barbers-card:focus-visible,
  .barbers-card.is-selected
) {
  background: #323235 !important;
}

#admin-view[data-admin-theme="dark"] :is(
  .business-intelligence-kpi-label,
  .business-intelligence-staff-label,
  .business-intelligence-panel-kicker,
  .business-intelligence-card-title,
  .business-intelligence-card-title-small,
  .business-intelligence-panel-note,
  .business-intelligence-panel-subtitle,
  .business-intelligence-ai-card-copy,
  .business-intelligence-ai-card-badge,
  .business-intelligence-panel-title-plain,
  .business-intelligence-service-revenue-name,
  .business-intelligence-service-revenue-meta,
  .waitlist-shell .stat-card-label,
  .waitlist-shell .stat-card-sub,
  .waitlist-table-wrap .page-subtitle,
  .waitlist-admin-table th,
  .waitlist-table th,
  .waitlist-active-table th,
  .waitlist-activity-table th,
  .apt-date-group-header-count,
  .svc-buf-sub,
  .service-category-title,
  .service-category-count,
  .service-menu-row-meta,
  .service-menu-row-duration,
  .barbers-card-role,
  .barbers-stat-k,
  .barber-management-copy,
  .barbers-chip.is-off
) {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] :is(
  .business-intelligence-kpi-value,
  .business-intelligence-staff-value,
  .business-intelligence-panel-title,
  .business-intelligence-panel-title-plain,
  .business-intelligence-ai-card-title,
  .business-intelligence-service-revenue-name,
  .waitlist-shell .stat-card-value,
  .waitlist-table-wrap .admin-table-title,
  .apt-date-group-header-date,
  .appointment-card-time,
  .appointment-card-client,
  .svc-buf-title,
  .service-menu-row-title,
  .service-menu-row-price,
  .barbers-card-name,
  .barbers-stat-v,
  .barber-finance-status-panel .admin-card-title,
  .barber-management-name,
  .business-intelligence-chair-fee-table td,
  .business-intelligence-chair-fee-table th
) {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .business-intelligence-ai-card-action,
#admin-view[data-admin-theme="dark"] .barbers-hero-btn,
#admin-view[data-admin-theme="dark"] .service-category-add-btn {
  background: #242426 !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: #8bb8f2 !important;
  box-shadow: none !important;
}

#admin-view[data-admin-theme="dark"] .service-category-add-btn:hover,
#admin-view[data-admin-theme="dark"] .barbers-hero-btn:hover,
#admin-view[data-admin-theme="dark"] .business-intelligence-ai-card-action:hover {
  background: #323235 !important;
  border-color: rgba(79,134,198,.28) !important;
}

#admin-view[data-admin-theme="dark"] #dashboard-view-menu-trigger,
#admin-view[data-admin-theme="dark"] #waitlist-test-match-btn,
#admin-view[data-admin-theme="dark"] #waitlist-refresh-btn,
#admin-view[data-admin-theme="dark"] #atab-account .btn-sm-ghost {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-appointments .apt-date-group,
#admin-view[data-admin-theme="dark"] #atab-appointments .apt-date-group-header,
#admin-view[data-admin-theme="dark"] #atab-appointments .appointment-card,
#admin-view[data-admin-theme="dark"] #atab-appointments .apt-row,
#admin-view[data-admin-theme="dark"] #atab-appointments .appointment-card-summary {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-appointments .apt-date-group-header {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] #atab-intelligence :is(
  .intelligence-active-panel,
  .intel-dashboard,
  .intel-action-row,
  .intel-action-btn,
  .intel-demand-bars,
  .intel-demand-summary-item
) {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-intelligence :is(
  .intel-panel-sub,
  .intel-action-row-copy,
  .intel-demand-summary-item span,
  .intel-demand-caption,
  .intel-section-sub,
  .intel-action-btn.btn-secondary
) {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] #atab-intelligence :is(
  .intel-panel-title,
  .intel-action-row-title,
  .intel-demand-summary-item strong,
  .intel-dashboard .stat-card-value,
  .intel-dashboard .stat-card-label
) {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-photos :is(
  .photos-main-zone,
  .photos-main-preview-empty,
  .photo-slot-ph
) {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-schedule .schedule-ops-card,
#admin-view[data-admin-theme="dark"] .today-schedule-footer,
#admin-view[data-admin-theme="dark"] .today-schedule-footer-item,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-card,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-group-head,
#admin-view[data-admin-theme="dark"] .schedule-timeline-row,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-row {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .schedule-upcoming-group,
#admin-view[data-admin-theme="dark"] .schedule-timeline-row,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-row {
  border-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] .schedule-timeline-row:hover,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-row:hover {
  background: #323235 !important;
}

#admin-view[data-admin-theme="dark"] .schedule-ops-value,
#admin-view[data-admin-theme="dark"] .schedule-timeline-time-main,
#admin-view[data-admin-theme="dark"] .schedule-timeline-client,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-time,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-client,
#admin-view[data-admin-theme="dark"] .customer-link,
#admin-view[data-admin-theme="dark"] .today-schedule-footer-item {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .schedule-ops-meta,
#admin-view[data-admin-theme="dark"] .schedule-timeline-time-sub,
#admin-view[data-admin-theme="dark"] .schedule-timeline-sub,
#admin-view[data-admin-theme="dark"] .schedule-upcoming-sub,
#admin-view[data-admin-theme="dark"] .today-schedule-footer-item strong,
#admin-view[data-admin-theme="dark"] .schedule-empty-state {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] .schedule-timeline-action-more,
#admin-view[data-admin-theme="dark"] .schedule-link-button-primary,
#admin-view[data-admin-theme="dark"] .schedule-link-button-secondary {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .schedule-workspace-frame {
  background: linear-gradient(180deg, rgba(36,36,38,0.96) 0%, rgba(28,28,30,0.98) 100%) !important;
  border-color: rgba(255,255,255,.10) !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.24) !important;
}

#admin-view[data-admin-theme="dark"] .schedule-workspace-head-title {
  color: #F5F5F7 !important;
}

#admin-view[data-admin-theme="dark"] .schedule-workspace-head-copy {
  color: #A1A1AA !important;
}

#admin-view[data-admin-theme="dark"] .schedule-status-rail,
#admin-view[data-admin-theme="dark"] .schedule-context-rail,
#admin-view[data-admin-theme="dark"] .schedule-context-actions,
#admin-view[data-admin-theme="dark"] .schedule-status-rail .admin-table-header,
#admin-view[data-admin-theme="dark"] .schedule-context-rail .admin-table-header {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .clients-list-shell,
#admin-view[data-admin-theme="dark"] .clients-list-header,
#admin-view[data-admin-theme="dark"] .clients-table-head,
#admin-view[data-admin-theme="dark"] .clients-row,
#admin-view[data-admin-theme="dark"] #clients-rows,
#admin-view[data-admin-theme="dark"] .clients-table,
#admin-view[data-admin-theme="dark"] .clients-sort-btn,
#admin-view[data-admin-theme="dark"] .clients-avatar {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] .clients-row:hover {
  background: #323235 !important;
}

#admin-view[data-admin-theme="dark"] #atab-clients .clients-table-head,
#admin-view[data-admin-theme="dark"] #atab-clients .clients-row,
#admin-view[data-admin-theme="dark"] #atab-clients .clients-row:hover {
  border-color: rgba(255,255,255,.10) !important;
}

#admin-view[data-admin-theme="dark"] #atab-clients .clients-table-head {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] #atab-clients .clients-row {
  background: #2c2c2e !important;
}

#admin-view[data-admin-theme="dark"] #atab-clients .clients-row:hover {
  background: #323235 !important;
}

#admin-view[data-admin-theme="dark"] #clients-list-count,
#admin-view[data-admin-theme="dark"] #clients-results-count,
#admin-view[data-admin-theme="dark"] .clients-list-name,
#admin-view[data-admin-theme="dark"] .clients-list-metric,
#admin-view[data-admin-theme="dark"] .clients-list-date,
#admin-view[data-admin-theme="dark"] .clients-table-empty {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .clients-th,
#admin-view[data-admin-theme="dark"] .clients-list-contact-sub,
#admin-view[data-admin-theme="dark"] .clients-sort-btn {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] .clients-sort-btn.active {
  background: rgba(79,134,198,.18) !important;
  border-color: rgba(79,134,198,.28) !important;
  color: #8bb8f2 !important;
}

#admin-view[data-admin-theme="dark"] :is(.cp-panel, .cp-tabs, .cp-body, .cp-info-card, .cp-summary-copy, .cp-intel-card, .cp-ai-rec-card, .cp-sms-rows, .cp-footer) {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] :is(.cp-tab, .cp-info-card span, .cp-policy-title, .cp-sms-note, .cp-contact, .cp-del-note) {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] :is(.cp-tab.active, .cp-info-card strong, .cp-intel-key, .cp-sms-key, .cp-ai-rec-card .client-profile-ai-title, .cp-summary-copy) {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-shell,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-table-head,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-row,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-card,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-avatar {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-table-head {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-row:hover,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-row:focus-visible,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-row.is-selected,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-card:hover,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-card:focus-visible,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-card.is-selected {
  background: #323235 !important;
  border-color: rgba(255,255,255,.14) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.24) !important;
}

#admin-view[data-admin-theme="dark"] :is(.barbers-card-name, .barber-roster-title, .barber-roster-metric-value, .barber-roster-name, .barber-roster-value) {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] :is(.barbers-card-role, .barber-roster-sub, .barber-roster-metric-label, .barber-roster-col, .barber-roster-muted) {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] #atab-appointments .appointments-page-head,
#admin-view[data-admin-theme="dark"] #atab-account .acct-hero,
#admin-view[data-admin-theme="dark"] #atab-account .account-page-head,
#admin-view[data-admin-theme="dark"] #atab-intelligence .intelligence-panel-header,
#admin-view[data-admin-theme="dark"] #atab-howto .support-page-header,
#admin-view[data-admin-theme="dark"] #atab-support .support-page-header {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-account .admin-card,
#admin-view[data-admin-theme="dark"] #atab-account .admin-card-header,
#admin-view[data-admin-theme="dark"] #atab-account .account-note,
#admin-view[data-admin-theme="dark"] #atab-account .account-reference-card,
#admin-view[data-admin-theme="dark"] #atab-account .account-identity-card,
#admin-view[data-admin-theme="dark"] #atab-account #account-settings-tabs,
#admin-view[data-admin-theme="dark"] #atab-account #account-settings-tabs .dashboard-section-link {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-account .admin-card-header,
#admin-view[data-admin-theme="dark"] #atab-account #account-settings-tabs {
  background: #242426 !important;
}

#admin-view[data-admin-theme="dark"] #atab-account .account-panel-subtitle,
#admin-view[data-admin-theme="dark"] #atab-account .account-toggle-subtitle,
#admin-view[data-admin-theme="dark"] #atab-account .section-desc,
#admin-view[data-admin-theme="dark"] #atab-account .dashboard-section-link {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] #atab-account #account-settings-tabs .dashboard-section-link.active {
  background: rgba(79,134,198,.18) !important;
  border-color: rgba(79,134,198,.28) !important;
  color: #8bb8f2 !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-page-head,
#admin-view[data-admin-theme="dark"] #atab-notifications .pg-hdr,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-global-bar,
#admin-view[data-admin-theme="dark"] #atab-notifications #notifications-status-banner,
#admin-view[data-admin-theme="dark"] #atab-notifications #notifications-stage-tabs,
#admin-view[data-admin-theme="dark"] #atab-notifications .ch-header,
#admin-view[data-admin-theme="dark"] #atab-notifications .nc,
#admin-view[data-admin-theme="dark"] #atab-notifications .nc-row,
#admin-view[data-admin-theme="dark"] #atab-notifications .nc-editor,
#admin-view[data-admin-theme="dark"] #atab-notifications .timing-row,
#admin-view[data-admin-theme="dark"] #atab-notifications .tok-shelf,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-reference-group,
#admin-view[data-admin-theme="dark"] #atab-notifications .composer-wrap,
#admin-view[data-admin-theme="dark"] #atab-notifications .preview-wrap,
#admin-view[data-admin-theme="dark"] #atab-notifications .card.notifications-log-card,
#admin-view[data-admin-theme="dark"] #atab-notifications .delivery-card,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-token-reference-card,
#admin-view[data-admin-theme="dark"] #atab-notifications .composer-topbar,
#admin-view[data-admin-theme="dark"] #atab-notifications .preview-topbar,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-log-header,
#admin-view[data-admin-theme="dark"] #atab-notifications .composer-body {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
  box-shadow: none !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-page-actions .btn,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-page-actions .btn-sm,
#admin-view[data-admin-theme="dark"] #atab-notifications .timing-input,
#admin-view[data-admin-theme="dark"] #atab-notifications .timing-select,
#admin-view[data-admin-theme="dark"] #atab-notifications .qh-time,
#admin-view[data-admin-theme="dark"] #atab-notifications .tok,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-token,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-tab-icon,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-tab-count {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications :is(.page-eyebrow, .nc-meta, .notifications-timing-text, .preview-note, .log-meta, .card-sub, .delivery-desc, .ch-header-desc, .ch-stat-lbl) {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications :is(.page-title, .nc-title, .ch-header-title, .timing-label, .tok-shelf-label, .card-title, .delivery-title, #notifications-global-title) {
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications #notifications-global-desc,
#admin-view[data-admin-theme="dark"] #atab-notifications #notifications-stage-tabs [data-notification-stage],
#admin-view[data-admin-theme="dark"] #atab-notifications .badge,
#admin-view[data-admin-theme="dark"] #atab-notifications .stage-pill,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-ai-pill,
#admin-view[data-admin-theme="dark"] #atab-notifications .notification-channel-badge,
#admin-view[data-admin-theme="dark"] #atab-notifications .notification-state-badge,
#admin-view[data-admin-theme="dark"] #atab-notifications .notification-template-state {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] #atab-notifications #notifications-stage-tabs [data-notification-stage].active,
#admin-view[data-admin-theme="dark"] #atab-notifications .stage-pill-email,
#admin-view[data-admin-theme="dark"] #atab-notifications .notifications-ai-pill,
#admin-view[data-admin-theme="dark"] #atab-notifications .notification-template-state.is-custom {
  background: rgba(79,134,198,.18) !important;
  border-color: rgba(79,134,198,.28) !important;
  color: #8bb8f2 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-header,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-roster-shell > div:first-child,
#admin-view[data-admin-theme="dark"] #atab-barbers .admin-card.barber-finance-status-panel .admin-card-header,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-form-panel.is-modal.active .admin-card-header,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-form-panel.is-modal.active .admin-card-body,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-workspace-form .currency-input-wrap,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-mobile-fee-indent .currency-input-wrap,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-field-money .currency-input-wrap,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-workspace-form .currency-input-prefix,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-mobile-fee-indent .currency-input-prefix,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-field-money .currency-input-prefix,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-workspace-form .currency-input-wrap input,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-mobile-fee-indent .currency-input-wrap input,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-field-money .currency-input-wrap input,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-management-actions .btn-sm-ghost,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-card-footer .btn-sm-ghost {
  background: #242426 !important;
  border-color: rgba(255,255,255,.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .barber-management-copy,
#admin-view[data-admin-theme="dark"] #barber-management-count,
#admin-view[data-admin-theme="dark"] #atab-barbers .admin-card.barber-finance-status-panel .admin-card-title,
#admin-view[data-admin-theme="dark"] #atab-barbers .barber-workspace-form .currency-input-wrap input::placeholder {
  color: #a1a1aa !important;
}

.bladezy-setup-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,0.08);
  background: linear-gradient(135deg, rgba(79,134,198,0.12), rgba(212,175,55,0.12)), var(--admin-elevated-bg, #ffffff);
  box-shadow: 0 18px 40px rgba(15,23,42,0.08);
}

.bladezy-setup-banner-copy {
  min-width: 0;
}

.bladezy-setup-banner-title {
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-family: var(--font-condensed, inherit);
  color: var(--admin-muted, #64748b);
}

.bladezy-setup-banner-body {
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--admin-text, #0f172a);
}

.bladezy-setup-banner-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.bladezy-setup-banner-cta {
  white-space: nowrap;
}

.bladezy-setup-banner[hidden] {
  display: none !important;
}

.bladezy-admin-onboarding-overlay[hidden] {
  display: none !important;
}

.bladezy-admin-onboarding-overlay {
  position: fixed;
  inset: 0;
  z-index: 1700;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
}

.bladezy-admin-onboarding-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15,23,42,0.54);
  backdrop-filter: blur(4px);
}

.bladezy-admin-onboarding-dialog {
  position: relative;
  width: min(920px, calc(100vw - 40px));
  max-height: calc(100vh - 40px);
  overflow: auto;
  border-radius: 28px;
  border: 1px solid rgba(15,23,42,0.08);
  background: var(--admin-elevated-bg, #ffffff);
  box-shadow: 0 36px 80px rgba(15,23,42,0.22);
}

.bladezy-admin-onboarding-content {
  padding: 30px;
}

.bladezy-admin-onboarding-shell {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.bladezy-admin-onboarding-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.bladezy-admin-onboarding-kicker {
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-family: var(--font-condensed, inherit);
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-title {
  margin: 8px 0 0;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--admin-heading, #0f172a);
}

.bladezy-admin-onboarding-subtitle {
  max-width: 64ch;
  margin: 10px 0 0;
  font-size: 15px;
  line-height: 1.65;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-step-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(79,134,198,0.18);
  background: rgba(79,134,198,0.08);
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #4f86c6;
}

.bladezy-admin-onboarding-progress {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.bladezy-admin-onboarding-progress-item {
  padding: 14px 14px 12px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,0.08);
  background: var(--admin-subtle-bg, #f8fafc);
}

.bladezy-admin-onboarding-progress-item.is-active {
  border-color: rgba(79,134,198,0.24);
  background: rgba(79,134,198,0.10);
}

.bladezy-admin-onboarding-progress-item.is-complete {
  border-color: rgba(34,197,94,0.22);
  background: rgba(34,197,94,0.08);
}

.bladezy-admin-onboarding-progress-step {
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-progress-label {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 700;
  color: var(--admin-heading, #0f172a);
}

.bladezy-admin-onboarding-card-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.95fr);
  gap: 18px;
}

.bladezy-admin-onboarding-card,
.bladezy-admin-onboarding-sidecard {
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,0.08);
  background: var(--admin-elevated-bg, #ffffff);
  box-shadow: 0 18px 40px rgba(15,23,42,0.06);
}

.bladezy-admin-onboarding-card {
  padding: 26px;
}

.bladezy-admin-onboarding-sidecard {
  padding: 22px;
}

.bladezy-admin-onboarding-section-label {
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-step-title {
  margin: 10px 0 0;
  font-size: 24px;
  line-height: 1.2;
  color: var(--admin-heading, #0f172a);
}

.bladezy-admin-onboarding-step-copy {
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-note,
.bladezy-admin-onboarding-status {
  margin-top: 18px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(79,134,198,0.16);
  background: rgba(79,134,198,0.08);
  font-size: 14px;
  line-height: 1.55;
  color: var(--admin-text, #0f172a);
}

.bladezy-admin-onboarding-status.is-success {
  border-color: rgba(34,197,94,0.18);
  background: rgba(34,197,94,0.08);
}

.bladezy-admin-onboarding-step-list {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.bladezy-admin-onboarding-step-list li {
  padding-left: 18px;
  position: relative;
  font-size: 14px;
  line-height: 1.6;
  color: var(--admin-text, #0f172a);
}

.bladezy-admin-onboarding-step-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #4f86c6;
  transform: translateY(-50%);
}

.bladezy-admin-onboarding-chip-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.bladezy-admin-onboarding-chip {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,0.08);
  background: var(--admin-subtle-bg, #f8fafc);
  color: var(--admin-text, #0f172a);
  text-align: left;
}

.bladezy-admin-onboarding-chip-title {
  font-size: 14px;
  line-height: 1.3;
  font-weight: 700;
}

.bladezy-admin-onboarding-chip-meta {
  font-size: 12px;
  line-height: 1.45;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-link-box {
  margin-top: 18px;
  padding: 15px 16px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,0.08);
  background: var(--admin-subtle-bg, #f8fafc);
  overflow-wrap: anywhere;
  font-size: 14px;
  line-height: 1.6;
  color: var(--admin-text, #0f172a);
}

.bladezy-admin-onboarding-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.bladezy-admin-onboarding-actions-left,
.bladezy-admin-onboarding-actions-right {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.bladezy-admin-onboarding-sidecard-title {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 700;
  color: var(--admin-heading, #0f172a);
}

.bladezy-admin-onboarding-sidecard-copy {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--admin-muted, #64748b);
}

.bladezy-admin-onboarding-side-list {
  display: grid;
  gap: 10px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.bladezy-admin-onboarding-side-list li {
  font-size: 14px;
  line-height: 1.55;
  color: var(--admin-text, #0f172a);
}

#admin-view[data-admin-theme="dark"] .bladezy-setup-banner,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-dialog,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-card,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-sidecard {
  background: #2c2c2e !important;
  border-color: rgba(255,255,255,0.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-progress-item,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-chip,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-link-box {
  background: #242426 !important;
  border-color: rgba(255,255,255,0.10) !important;
  color: #f5f5f7 !important;
}

#admin-view[data-admin-theme="dark"] .bladezy-setup-banner-title,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-kicker,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-progress-step,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-section-label,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-step-copy,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-sidecard-copy,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-chip-meta {
  color: #a1a1aa !important;
}

#admin-view[data-admin-theme="dark"] .bladezy-setup-banner-body,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-title,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-subtitle,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-progress-label,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-step-title,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-sidecard-title,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-step-list li,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-side-list li,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-note,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-status,
#admin-view[data-admin-theme="dark"] .bladezy-admin-onboarding-chip-title {
  color: #f5f5f7 !important;
}

@media (max-width: 900px) {
  #admin-view .business-intelligence-head,
  #admin-view .clients-page-head,
  #admin-view .hours-page-head,
  #admin-view #atab-appointments .appointments-page-head,
  #admin-view #atab-account .acct-hero,
  #admin-view #atab-account .account-page-head,
  #admin-view #atab-intelligence .intelligence-panel-header,
  #admin-view #atab-howto .support-header-band {
    padding: 20px 18px 18px !important;
  }

  #admin-view .admin-page-head {
    padding: 20px 18px 18px;
  }

  #admin-view .admin-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #admin-view .admin-sms-setup-banner {
    align-items: flex-start;
    flex-direction: column;
    padding: 10px 12px;
  }

  #admin-view .bladezy-setup-banner,
  #admin-view .bladezy-admin-onboarding-head {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view .bladezy-admin-onboarding-progress,
  #admin-view .bladezy-admin-onboarding-card-grid {
    grid-template-columns: 1fr;
  }

  #admin-view .bladezy-admin-onboarding-content {
    padding: 20px;
  }

  #admin-view .admin-sms-setup-banner-cta {
    width: auto;
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  #admin-view,
  #admin-view .admin-content,
  #admin-view .admin-main,
  #admin-view .dashboard-inner,
  #admin-view .dashboard-wrap,
  #admin-view .account-settings-shell,
  #admin-view .notifications-shell.notifications-exact-shell,
  #admin-view .hours-page-shell,
  #admin-view .services-page-shell,
  #admin-view .services-shell,
  #admin-view .edit-service-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  #admin-view .admin-main {
    padding: 0 16px !important;
  }

  #admin-view .admin-shell-status-banners {
    padding-top: 12px;
  }

  #admin-view #atab-account .acct-hero,
  #admin-view #atab-account .account-page-head,
  #admin-view #atab-notifications .notifications-page-head,
  #admin-view #atab-notifications .pg-hdr {
    margin: 0;
    padding: 20px 16px 18px !important;
    border-radius: 18px;
  }

  #admin-view #atab-account .acct-hero-top,
  #admin-view #atab-notifications .notifications-page-head {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view #atab-account #account-settings-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 0 6px;
    margin-inline: 0;
  }

  #admin-view #atab-account #account-settings-tabs .dashboard-section-link {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  #admin-view #atab-account .account-reference-grid,
  #admin-view #atab-account .account-grid,
  #admin-view #atab-notifications .notifications-grid,
  #admin-view #atab-notifications .notifications-channel-grid,
  #admin-view #atab-notifications .notifications-settings-grid,
  #admin-view #atab-hours .hours-grid,
  #admin-view #atab-services .services-grid,
  #admin-view #atab-services .service-editor-grid {
    grid-template-columns: 1fr !important;
  }

  #admin-view #atab-account .admin-card,
  #admin-view #atab-notifications .admin-card,
  #admin-view #atab-hours .admin-card,
  #admin-view #atab-services .admin-card {
    min-width: 0;
  }

  #admin-view #atab-account input,
  #admin-view #atab-account textarea,
  #admin-view #atab-account select,
  #admin-view #atab-notifications input,
  #admin-view #atab-notifications textarea,
  #admin-view #atab-notifications select,
  #admin-view #atab-hours input,
  #admin-view #atab-hours textarea,
  #admin-view #atab-hours select,
  #admin-view #atab-services input,
  #admin-view #atab-services textarea,
  #admin-view #atab-services select {
    min-width: 0;
  }

  #admin-view .admin-page-head__title,
  #admin-view .admin-page-head .business-intelligence-title,
  #admin-view .admin-page-head .intelligence-panel-title {
    font-size: 24px;
  }

  #admin-view .admin-stat-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .support-ticket-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  #admin-view #atab-account .account-booking-policy-grid,
  #admin-view #atab-account .account-brand-grid,
  #admin-view #atab-account .account-brand-template-top,
  #admin-view #atab-account .launch-template-grid,
  #admin-view #atab-account .account-brand-action-grid {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .account-booking-policy-editor-row {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .account-booking-policy-window-grid,
  #admin-view #atab-account .account-booking-policy-stat-grid {
    grid-template-columns: repeat(2, minmax(140px, 1fr));
  }

  #admin-view #atab-account .account-brand-hero {
    padding: 22px 20px;
  }

  #admin-view #atab-account .account-brand-link-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  #admin-view #atab-account .account-brand-domain-card {
    grid-template-columns: 1fr;
  }

  #admin-view .account-brand-domain-modal {
    width: min(100vw - 24px, 680px);
  }

  #admin-view .account-brand-domain-modal-grid {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-account .account-brand-hero-actions {
    width: 100%;
  }

  #admin-view #atab-account .account-brand-hero-actions .btn-sm-ghost,
  #admin-view #atab-account .account-brand-link-row .btn-sm-ghost {
    width: 100%;
    justify-content: center;
  }

  #admin-view #atab-account .account-brand-link-actions {
    justify-content: stretch;
  }

  #admin-view .account-brand-domain-modal-head {
    flex-direction: column;
  }

  #admin-view .account-brand-domain-modal-close {
    align-self: flex-end;
  }
}

@media (max-width: 640px) {
  #admin-view #atab-account .account-booking-policy-section-head,
  #admin-view #atab-account .account-booking-policy-preview-top {
    flex-direction: column;
    align-items: flex-start;
  }

  #admin-view #atab-account .account-booking-policy-window-grid,
  #admin-view #atab-account .account-booking-policy-stat-grid,
  #admin-view #atab-account .account-brand-action-grid,
  #admin-view #atab-account .account-brand-reference-grid {
    grid-template-columns: 1fr;
  }

  .support-ticket-form-grid {
    grid-template-columns: 1fr;
  }

  .support-ticket-list-head,
  .support-ticket-detail-head,
  .support-ticket-update-head {
    flex-direction: column;
  }
}

/* ============================================================
   ADMIN TYPOGRAPHY FOUNDATION
   ============================================================ */

#admin-view,
#admin-login-view,
#admin-shell,
.admin-shell {
  --admin-typography-family: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-family: var(--admin-typography-family);
  --font-body: var(--admin-typography-family);
  --font-display: var(--admin-typography-family);
  --font-cond: var(--admin-typography-family);
}

#admin-view,
#admin-login-view,
#admin-view button,
#admin-login-view button,
#admin-view input,
#admin-login-view input,
#admin-view select,
#admin-login-view select,
#admin-view textarea,
#admin-login-view textarea {
  font-family: var(--admin-typography-family) !important;
}

#admin-view .admin-logo-shop,
#admin-view .sidebar-brand-name,
#admin-view .admin-nav-group-label,
#admin-view .sidebar-section-label,
#admin-view .admin-nav-item,
#admin-view .sidebar-nav-link,
#admin-view .admin-nav-label,
#admin-view .admin-topbar-title,
#admin-view .admin-topbar-search input,
#admin-view .admin-topbar-meta .btn,
#admin-view .admin-topbar-meta button,
#admin-view .admin-topbar-chip,
#admin-view .admin-owner-dropdown-name,
#admin-view .admin-owner-dropdown-context,
#admin-view .admin-owner-dropdown-item,
#admin-view .admin-owner-dropdown-item strong,
#admin-view .admin-page-head__eyebrow,
#admin-view .admin-page-head__title,
#admin-view .admin-page-head__subtitle,
#admin-view .admin-page-head .business-intelligence-title,
#admin-view .admin-page-head .business-intelligence-subtitle,
#admin-view .admin-page-head .intelligence-panel-title,
#admin-view .admin-page-head .intelligence-panel-desc,
#admin-view .admin-page-head .intelligence-panel-sub,
#admin-view .admin-card-title,
#admin-view .section-title,
#admin-view .section-desc,
#admin-view .account-booking-policy-section-title,
#admin-view .form-label,
#admin-view .blocked-form-label,
#admin-view .support-card-title,
#admin-view .support-contact-value,
#admin-view .support-ticket-workspace-title,
#admin-view .support-ticket-list-subject,
#admin-view .support-ticket-detail-subject,
#admin-view .support-ticket-update-author,
#admin-view .notifications-master-title,
#admin-view .notification-card-title,
#admin-view .account-import-step-title,
#admin-view .account-import-type-title,
#admin-view .account-import-header-sample-title,
#admin-view .account-import-summary-value,
#admin-login-view .admin-access-heading,
#admin-login-view .admin-access-email-pill,
#admin-login-view .admin-login-text-btn,
#admin-login-view .form-label {
  font-family: var(--admin-typography-family) !important;
}

#admin-view .admin-logo-shop,
#admin-view .sidebar-brand-name,
#admin-view .admin-owner-dropdown-name,
#admin-view .admin-page-head__title,
#admin-view .admin-page-head .business-intelligence-title,
#admin-view .admin-page-head .intelligence-panel-title,
#admin-login-view .admin-access-heading {
  font-weight: 600 !important;
  letter-spacing: -0.02em;
}

#admin-view .admin-owner-dropdown-name,
#admin-view #admin-owner-dropdown .admin-owner-dropdown-name,
#admin-login-view .admin-access-heading {
  color: #0f172a !important;
}

#admin-view .admin-topbar-search input,
#admin-login-view input,
#admin-login-view select,
#admin-login-view textarea {
  font-weight: 500;
}

#admin-view .admin-nav-group-label,
#admin-view .sidebar-section-label,
#admin-view .form-label,
#admin-view .blocked-form-label,
#admin-login-view .form-label,
#admin-login-view .admin-login-text-btn {
  font-weight: 600 !important;
}

#admin-view .admin-nav-group {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  padding: 10px 10px 3px;
}

#admin-view .admin-nav-group + .admin-nav-group {
  margin-top: 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

#admin-view .admin-nav-group-label {
  padding: 0 5px 3px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 7.25px;
  line-height: 1.15;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(15, 23, 42, 0.48);
  text-align: center;
}

#admin-view .admin-sidebar.collapsed .admin-nav-group {
  align-items: center;
  gap: 8px;
  padding: 10px 8px 4px;
}

#admin-view .admin-sidebar.collapsed .admin-nav-group + .admin-nav-group {
  margin-top: 10px;
  padding-top: 12px;
}

#admin-view .admin-sidebar {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 247, 252, 0.98) 100%);
  border-right: 1px solid rgba(148, 163, 184, 0.16);
  box-shadow:
    inset -1px 0 0 rgba(255, 255, 255, 0.72),
    8px 0 26px rgba(15, 23, 42, 0.05);
}

#admin-view .admin-sidebar-chrome {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 8px 0 14px;
}

#admin-view .admin-sidebar-nav-region {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 2px 0 10px;
}

#admin-view .admin-sidebar-status-region {
  flex: 0 0 auto;
  margin-top: auto;
  padding: 10px 14px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0) 0%, rgba(248, 250, 252, 0.94) 24%);
}

#admin-view .admin-nav-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  min-height: 40px;
  margin: 0;
  padding: 5px 9px;
  border: 1px solid transparent;
  border-radius: 14px;
  gap: 8px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #4d5c70;
  background: rgba(255, 255, 255, 0.56);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

#admin-view .admin-nav-item:hover {
  background: rgba(237, 244, 255, 0.98);
  border-color: rgba(37, 99, 235, 0.12);
  color: #0f172a;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 8px 18px rgba(148, 163, 184, 0.16);
}

#admin-view .admin-nav-item.active {
  background: linear-gradient(180deg, rgba(236, 244, 255, 1) 0%, rgba(228, 238, 255, 0.96) 100%);
  border-color: rgba(19, 86, 189, 0.22);
  color: #0f172a;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 10px 22px rgba(19, 86, 189, 0.14);
}

#admin-view .admin-nav-item.active::before {
  left: 4px;
  top: 7px;
  bottom: 7px;
  width: 3px;
  border-radius: 999px;
  background: #1356bd;
}

#admin-view .admin-nav-item[data-tab="intelligence"].active,
#admin-view .admin-nav-item[data-tab="client-intelligence"].active {
  background: linear-gradient(180deg, rgba(232, 249, 239, 0.98) 0%, rgba(221, 244, 230, 0.94) 100%);
  border-color: rgba(34, 138, 78, 0.2);
}

#admin-view .admin-nav-item[data-tab="intelligence"].active::before,
#admin-view .admin-nav-item[data-tab="client-intelligence"].active::before {
  background: #3aa66a;
}

#admin-view .admin-nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(148, 163, 184, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
  color: currentColor;
  opacity: 0.98;
}

#admin-view .admin-nav-label {
  line-height: 1.1;
}

#admin-view .admin-sidebar.collapsed .admin-nav-item {
  grid-template-columns: 1fr;
  place-items: center;
  width: 42px;
  min-height: 42px;
  padding: 0;
  border-radius: 14px;
}

#admin-view .admin-sidebar.collapsed .admin-nav-item.active::before {
  left: 50%;
  top: auto;
  bottom: 5px;
  width: 18px;
  height: 3px;
  transform: translateX(-50%);
}

#admin-view .admin-sidebar.collapsed .admin-nav-icon {
  width: 28px;
  height: 28px;
  flex-basis: 28px;
}

#admin-view[data-admin-theme="dark"] .admin-sidebar {
  background:
    linear-gradient(180deg, rgba(23, 27, 35, 0.98) 0%, rgba(28, 33, 42, 0.98) 100%);
  border-right-color: rgba(255, 255, 255, 0.08);
  box-shadow:
    inset -1px 0 0 rgba(255, 255, 255, 0.03),
    10px 0 28px rgba(0, 0, 0, 0.2);
}

#admin-view[data-admin-theme="dark"] .admin-nav-group + .admin-nav-group {
  border-top-color: rgba(255, 255, 255, 0.08);
}

#admin-view[data-admin-theme="dark"] .admin-nav-group-label {
  color: rgba(203, 213, 225, 0.58);
}

#admin-view[data-admin-theme="dark"] .admin-nav-item {
  color: #c0c8d4;
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.04);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

#admin-view[data-admin-theme="dark"] .admin-nav-item:hover {
  background: rgba(59, 130, 246, 0.12);
  border-color: rgba(125, 179, 255, 0.16);
  color: #f5f7fb;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.03),
    0 12px 24px rgba(2, 6, 23, 0.22);
}

#admin-view[data-admin-theme="dark"] .admin-nav-item.active {
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.3) 0%, rgba(37, 99, 235, 0.2) 100%);
  color: #f5f7fb;
  border-color: rgba(125, 179, 255, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 12px 28px rgba(2, 6, 23, 0.28);
}

#admin-view[data-admin-theme="dark"] .admin-nav-item.active::before {
  background: #9abbe0;
}

#admin-view[data-admin-theme="dark"] .admin-nav-icon {
  background: rgba(10, 14, 22, 0.36);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

#admin-view #atab-barbers .btn.btn-primary.btn-sm,
#admin-view #atab-barbers #barber-add-btn,
#admin-view #atab-barbers .barbers-hero-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 32px !important;
  background: var(--color-navy) !important;
  color: var(--color-white) !important;
  border: 1px solid var(--color-navy) !important;
  border-radius: 7px !important;
  padding: 7px 16px !important;
  font-family: var(--admin-typography-family) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  box-shadow: none !important;
}

#admin-view #atab-barbers .btn.btn-primary.btn-sm:hover,
#admin-view #atab-barbers #barber-add-btn:hover,
#admin-view #atab-barbers .barbers-hero-btn:hover {
  background: var(--color-navy-800) !important;
  border-color: var(--color-navy-800) !important;
}

#admin-view #atab-barbers .btn.btn-primary.btn-sm[disabled],
#admin-view #atab-barbers #barber-add-btn[disabled],
#admin-view #atab-barbers .barbers-hero-btn[disabled] {
  background: #CBD5E1 !important;
  border-color: #CBD5E1 !important;
  color: #FFFFFF !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
}

#admin-view #atab-barbers .btn.btn-primary.btn-sm[disabled]:hover,
#admin-view #atab-barbers #barber-add-btn[disabled]:hover,
#admin-view #atab-barbers .barbers-hero-btn[disabled]:hover {
  background: #CBD5E1 !important;
  border-color: #CBD5E1 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .btn.btn-primary.btn-sm,
#admin-view[data-admin-theme="dark"] #atab-barbers #barber-add-btn,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-hero-btn {
  background: #3f5f85 !important;
  color: rgba(248,251,255,0.92) !important;
  border: 1px solid #3f5f85 !important;
}

#admin-view[data-admin-theme="dark"] #atab-barbers .btn.btn-primary.btn-sm:hover,
#admin-view[data-admin-theme="dark"] #atab-barbers #barber-add-btn:hover,
#admin-view[data-admin-theme="dark"] #atab-barbers .barbers-hero-btn:hover {
  background: #4b719d !important;
  border-color: #4b719d !important;
}

@media (max-width: 640px) {
  #admin-view .dashboard-shared-head-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

/* ============================================================
   ADMIN HQ PARITY / TOPBAR SLICE 1
   ============================================================ */

#admin-view .admin-topbar-shell {
  position: sticky;
  top: 0;
  z-index: 100;
  padding: 0;
  background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(241, 247, 255, 0.96));
  border-bottom: 0;
  backdrop-filter: blur(10px);
}

#admin-view .admin-topbar {
  position: relative;
  min-height: 44px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 620px) auto;
  align-items: center;
  gap: 8px;
  padding: 6px 18px 8px;
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, rgba(247, 251, 255, 0.96), rgba(241, 247, 255, 0.96));
  box-shadow: none;
}

#admin-view .admin-topbar::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(19, 86, 189, 0.78), rgba(80, 154, 255, 0.24) 52%, rgba(19, 86, 189, 0));
  pointer-events: none;
}

#admin-view .admin-topbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

#admin-view .admin-topbar-menu-toggle {
  width: 32px;
  height: 32px;
  margin-right: 0;
  border-radius: 10px;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  color: rgba(23, 71, 143, 0.95);
}

#admin-view .admin-topbar-menu-toggle:hover {
  border-color: rgba(19, 86, 189, 0.12);
  background: rgba(19, 86, 189, 0.08);
  color: #0c5bd8;
}

#admin-view .admin-topbar-brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
  width: auto;
  flex: 1 1 auto;
}

#admin-view .admin-topbar-brand-divider {
  width: 1px;
  min-height: 28px;
  align-self: stretch;
  flex: 0 0 auto;
  background: linear-gradient(180deg, rgba(24, 77, 162, 0.08), rgba(24, 77, 162, 0.32), rgba(24, 77, 162, 0.08));
}

#admin-view .admin-topbar-logo {
  width: 128px;
  height: auto;
  flex: 0 0 auto;
}

#admin-view .admin-topbar-brand-copy {
  flex: 1 1 auto;
  min-width: 0;
  gap: 1px;
}

#admin-view .admin-topbar-shop-name {
  color: #123d86;
  font-size: 16.5px;
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.15;
}

#admin-view .admin-topbar-shop-context-row {
  gap: 6px;
  flex-wrap: nowrap;
  min-height: 0;
  align-items: center;
}

#admin-view .admin-topbar-shop-context-row::before {
  display: none;
}

#admin-view .admin-topbar-shop-context {
  display: inline-flex;
  align-items: center;
  color: rgba(15, 23, 42, 0.56);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

#admin-view .admin-topbar-shop-selector-wrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

#admin-view .admin-topbar-shop-selector-wrap[hidden] {
  display: none !important;
}

#admin-view .admin-topbar-shop-selector-label {
  color: rgba(15, 23, 42, 0.46);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

#admin-view .admin-topbar-shop-selector {
  min-width: 0;
  max-width: 220px;
  height: 24px;
  padding: 0 26px 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  background: rgba(255, 255, 255, 0.96);
  color: #0f172a;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.88);
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(15, 23, 42, 0.56) 50%),
    linear-gradient(135deg, rgba(15, 23, 42, 0.56) 50%, transparent 50%);
  background-position:
    calc(100% - 12px) 10px,
    calc(100% - 7px) 10px;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

#admin-view .admin-topbar-shop-selector:hover {
  border-color: rgba(19, 86, 189, 0.2);
}

#admin-view .admin-topbar-shop-selector:focus {
  outline: none;
  border-color: rgba(19, 86, 189, 0.42);
  box-shadow: 0 0 0 4px rgba(19, 86, 189, 0.08);
}

#admin-view .admin-topbar-shop-selector:disabled {
  opacity: 0.7;
  cursor: wait;
}

#admin-view .admin-topbar-shop-selector-hint {
  color: rgba(15, 23, 42, 0.48);
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
}

#admin-view .admin-topbar-shop-context-row.has-shop-selector .admin-topbar-shop-context {
  display: inline-flex;
}

#admin-view .admin-topbar-support-badge {
  display: none;
  min-height: 16px;
  padding: 0 7px;
  border-radius: 999px;
  border: 1px solid rgba(32, 94, 199, 0.12);
  background: rgba(18, 87, 199, 0.08);
  color: #1257c7;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#admin-view .admin-topbar-zone-search {
  display: flex;
  align-items: center;
  justify-content: center;
}

#admin-view .admin-topbar-search {
  position: relative;
  width: min(100%, 600px);
  max-width: none;
}

#admin-view .admin-topbar-search::before {
  left: 13px;
  width: 12px;
  height: 12px;
  background-size: 12px 12px;
  opacity: 0.48;
}

#admin-view .admin-topbar-search input {
  min-height: 30px;
  height: 30px;
  padding: 0 11px 0 34px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.14);
  background: #ffffff;
  color: #0f172a;
  font-size: 11px;
  font-weight: 600;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.85);
}

#admin-view .admin-topbar-search input::placeholder {
  color: rgba(15, 23, 42, 0.42);
}

#admin-view .admin-topbar-search input:focus {
  outline: none;
  border-color: rgba(19, 86, 189, 0.4);
  box-shadow: 0 0 0 4px rgba(19, 86, 189, 0.08);
}

#admin-view .admin-topbar-search.is-open input {
  border-bottom-left-radius: 14px;
  border-bottom-right-radius: 14px;
}

#admin-view .admin-topbar-meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  min-width: max-content;
}

#admin-view .admin-topbar-icon-btn,
#admin-view .admin-topbar-meta .admin-theme-toggle,
#admin-view .admin-topbar-notifications-btn,
#admin-view .sms-mode-indicator,
#admin-view [data-role="sms-status"] {
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border-radius: 9px !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(23, 71, 143, 0.95) !important;
}

#admin-view .admin-topbar-icon-btn:hover,
#admin-view .admin-topbar-meta .admin-theme-toggle:hover,
#admin-view .admin-topbar-notifications-btn:hover,
#admin-view .sms-mode-indicator:hover,
#admin-view [data-role="sms-status"]:hover {
  border-color: rgba(19, 86, 189, 0.12) !important;
  background: rgba(19, 86, 189, 0.08) !important;
  color: #0c5bd8 !important;
}

#admin-view .topbar-notification-icon,
#admin-view .admin-theme-toggle-icon {
  width: 14px;
  height: 14px;
}

#admin-view .admin-owner-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}

#admin-view .admin-owner-avatar {
  width: auto;
  min-width: 0;
  height: 26px;
  padding: 0 6px 0 4px;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: none;
  color: #123d86;
  transform: none;
  filter: none;
}

#admin-view .admin-owner-avatar::after {
  content: "Account";
  color: #0f172a;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.1;
}

#admin-view .admin-owner-avatar:hover {
  transform: none;
  box-shadow: none;
  filter: none;
  border-color: rgba(19, 86, 189, 0.12);
  background: rgba(19, 86, 189, 0.08);
}

#admin-view #admin-owner-avatar-initials {
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #1b5fd3 0%, #143d86 100%);
  color: #ffffff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shell {
  background: linear-gradient(180deg, rgba(18, 23, 35, 0.98), rgba(15, 19, 29, 0.96)) !important;
  border-bottom-color: rgba(49, 64, 88, 0.88) !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar {
  background: linear-gradient(180deg, rgba(20, 26, 38, 0.96), rgba(13, 18, 28, 0.96)) !important;
  border-color: rgba(49, 64, 88, 0.88) !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar::before {
  background: linear-gradient(90deg, rgba(122, 162, 233, 0.82), rgba(88, 126, 199, 0.24) 52%, rgba(122, 162, 233, 0));
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-context,
#admin-view[data-admin-theme="dark"] .admin-topbar-shop-selector-label,
#admin-view[data-admin-theme="dark"] .admin-topbar-shop-selector-hint {
  color: rgba(219, 233, 247, 0.72);
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-selector {
  border-color: rgba(122, 162, 233, 0.18);
  background-color: rgba(21, 29, 43, 0.92);
  color: #f8fbff;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(219, 233, 247, 0.62) 50%),
    linear-gradient(135deg, rgba(219, 233, 247, 0.62) 50%, transparent 50%);
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-selector:hover {
  border-color: rgba(122, 162, 233, 0.32);
}

#admin-view[data-admin-theme="dark"] .admin-topbar-menu-toggle,
#admin-view[data-admin-theme="dark"] .admin-topbar-icon-btn,
#admin-view[data-admin-theme="dark"] .admin-topbar-meta .admin-theme-toggle,
#admin-view[data-admin-theme="dark"] .admin-owner-avatar,
#admin-view[data-admin-theme="dark"] .admin-topbar-notifications-btn,
#admin-view[data-admin-theme="dark"] .sms-mode-indicator,
#admin-view[data-admin-theme="dark"] [data-role="sms-status"] {
  background: transparent !important;
  border-color: transparent !important;
  color: #dbe9f7 !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-menu-toggle:hover,
#admin-view[data-admin-theme="dark"] .admin-topbar-icon-btn:hover,
#admin-view[data-admin-theme="dark"] .admin-topbar-meta .admin-theme-toggle:hover,
#admin-view[data-admin-theme="dark"] .admin-owner-avatar:hover,
#admin-view[data-admin-theme="dark"] .admin-topbar-notifications-btn:hover,
#admin-view[data-admin-theme="dark"] .sms-mode-indicator:hover,
#admin-view[data-admin-theme="dark"] [data-role="sms-status"]:hover {
  border-color: rgba(122, 162, 233, 0.18) !important;
  background: rgba(122, 162, 233, 0.08) !important;
  color: #f5f9ff !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-name {
  color: #eef5ff;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-brand-divider {
  background: linear-gradient(180deg, rgba(186, 210, 255, 0.06), rgba(186, 210, 255, 0.24), rgba(186, 210, 255, 0.06));
}

#admin-view[data-admin-theme="dark"] .admin-topbar-shop-context {
  color: rgba(219, 233, 247, 0.8);
}

#admin-view[data-admin-theme="dark"] .admin-topbar-support-badge {
  border-color: rgba(122, 162, 233, 0.2);
  background: rgba(59, 130, 246, 0.18);
  color: #dbe9ff;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-search input {
  background: rgba(13, 18, 28, 0.92) !important;
  border-color: rgba(122, 162, 233, 0.18) !important;
  color: #eef5ff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03) !important;
}

#admin-view[data-admin-theme="dark"] .admin-topbar-search input::placeholder {
  color: rgba(219, 233, 247, 0.42) !important;
}

#admin-view[data-admin-theme="dark"] .admin-owner-avatar::after {
  color: #eef5ff;
}

@media (max-width: 1180px) {
  #admin-view .admin-topbar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 440px) auto;
  }

  #admin-view .admin-topbar-shop-name {
    font-size: 14px;
  }
}

@media (max-width: 860px) {
  #admin-view .admin-topbar-shell {
    padding: 0;
  }

  #admin-view .admin-topbar {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  }

  #admin-view .admin-topbar-logo {
    width: 114px;
  }

  #admin-view .admin-owner-avatar::after {
    display: none;
  }

  #admin-view .admin-topbar-shop-context-row {
    flex-wrap: wrap;
    gap: 4px 6px;
  }

  #admin-view .admin-topbar-shop-selector {
    max-width: min(220px, 62vw);
  }
}

@media (max-width: 640px) {
  #admin-view .admin-topbar {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  #admin-view .admin-topbar-zone-search {
    display: none;
  }

  #admin-view .admin-topbar-logo {
    width: 102px;
  }

  #admin-view .admin-topbar-brand-divider {
    min-height: 24px;
  }

  #admin-view .admin-owner-avatar {
    padding-right: 4px;
  }
}

/* ============================================================
   ADMIN HQ PARITY / SHELL GEOMETRY FOUNDATION
   ============================================================ */

#admin-view {
  --admin-shell-topbar-height: 58px;
  --admin-shell-rail-width: 192px;
  --admin-shell-rail-width-collapsed: 68px;
  display: block;
  min-height: 100vh;
  overflow: hidden;
}

#admin-view .admin-shell-frame {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: var(--page-bg);
}

#admin-view .admin-shell-body {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: stretch;
  flex: 1 1 auto;
  min-height: 0;
  margin-top: -1px;
  padding-top: 1px;
  border-top: 1px solid rgba(24, 77, 162, 0.16);
}

#admin-view .admin-topbar-shell {
  flex: 0 0 auto;
  min-height: var(--admin-shell-topbar-height);
  padding: 0;
  z-index: 230;
}

#admin-view .admin-sidebar {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: var(--admin-shell-rail-width);
  min-width: var(--admin-shell-rail-width);
  height: calc(100vh - var(--admin-shell-topbar-height));
  min-height: 0;
  padding: 0;
  overflow-y: auto;
  overflow-x: hidden;
  z-index: 40;
  background:
    linear-gradient(180deg, rgba(252, 253, 255, 0.99) 0%, rgba(244, 247, 252, 0.99) 100%);
  border-right: 1px solid rgba(148, 163, 184, 0.18);
  box-shadow:
    inset -1px 0 0 rgba(255, 255, 255, 0.78),
    8px 0 24px rgba(15, 23, 42, 0.05);
}

#admin-view .admin-sidebar-chrome {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 100%;
  padding: 8px 0 12px;
}

#admin-view .admin-sidebar-nav-region {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 0 8px;
}

#admin-view .admin-sidebar-status-region {
  flex: 0 0 auto;
  margin-top: auto;
  padding: 10px 14px 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  background: linear-gradient(180deg, rgba(252, 253, 255, 0.08) 0%, rgba(244, 247, 252, 0.96) 24%);
}

#admin-view .admin-nav-list {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
}

#admin-view .admin-nav-group {
  align-items: stretch;
  gap: 4px;
  width: 100%;
  padding: 8px 9px 3px;
}

#admin-view .admin-nav-group + .admin-nav-group {
  margin-top: 7px;
  padding-top: 9px;
  border-top: 1px solid rgba(203, 213, 225, 0.74);
}

#admin-view .admin-nav-group-label {
  width: 100%;
  max-width: none;
  padding: 0 5px 1px;
  font-size: 8px;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: #64748b;
  font-weight: 700;
  text-align: left;
  text-transform: uppercase;
}

#admin-view .admin-nav-item {
  grid-template-columns: 18px minmax(0, 1fr);
  justify-items: stretch;
  align-content: center;
  width: auto;
  min-height: 34px;
  padding: 0 10px;
  gap: 9px;
  border-radius: 9px;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
  color: #334155;
  text-shadow: none;
  filter: none;
  opacity: 1;
}

#admin-view .admin-nav-item.active::before {
  display: none;
}

#admin-view .admin-nav-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: currentColor;
  opacity: 1;
}

#admin-view .admin-nav-label {
  display: block;
  max-width: none;
  font-size: 11.5px;
  line-height: 1.15;
  letter-spacing: 0;
  text-align: left;
  white-space: nowrap;
  color: currentColor;
  font-weight: 600;
  text-shadow: none;
  filter: none;
  opacity: 1;
}

#admin-view .admin-nav-item-client-intelligence .admin-nav-label {
  font-size: 11.5px;
}

#admin-view .admin-nav-item:hover {
  background: rgba(241, 245, 249, 0.92);
  border-color: rgba(203, 213, 225, 0.42);
  color: #111827;
  box-shadow: none;
}

#admin-view .admin-nav-item.active {
  background: rgba(236, 244, 255, 0.92);
  border-color: rgba(19, 86, 189, 0.14);
  color: #0f172a;
  box-shadow: inset 3px 0 0 #1356bd;
}

#admin-view .admin-nav-item[data-tab="intelligence"].active,
#admin-view .admin-nav-item[data-tab="client-intelligence"].active {
  background: rgba(235, 249, 241, 0.96);
  border-color: rgba(58, 166, 106, 0.18);
  color: #134e2b;
  box-shadow: inset 3px 0 0 #3aa66a;
}

#admin-view .admin-nav-item[data-tab="intelligence"].active::before,
#admin-view .admin-nav-item[data-tab="client-intelligence"].active::before {
  display: none;
}

#admin-view .admin-sidebar.collapsed {
  width: var(--admin-shell-rail-width-collapsed) !important;
  min-width: var(--admin-shell-rail-width-collapsed) !important;
}

#admin-view .admin-sidebar.collapsed .admin-nav-group {
  padding-left: 4px;
  padding-right: 4px;
}

#admin-view .admin-sidebar.collapsed .admin-nav-item {
  width: 48px;
  min-height: 36px;
  gap: 0;
}

#admin-view .admin-sidebar.collapsed .admin-nav-item.active::before {
  display: none;
}

#admin-view .admin-sidebar.collapsed .admin-nav-icon {
  width: 16px;
  height: 16px;
  flex-basis: 16px;
}

#admin-view .admin-main {
  margin: 0 !important;
  width: auto !important;
  min-width: 0;
  min-height: 0;
  padding: 12px 20px 0 !important;
  overflow-y: auto;
  overflow-x: hidden;
}

#admin-view .admin-main-shell {
  min-height: 100%;
}

#admin-view .admin-shell-status-banners {
  margin-bottom: 2px;
}

#admin-view[data-admin-theme="dark"] .admin-nav-group-label {
  color: rgba(231, 240, 255, 0.68);
}

@media (max-width: 980px) {
  #admin-view {
    --admin-shell-topbar-height: 54px;
  }

  #admin-view .admin-shell-body {
    display: block;
  }

  #admin-view .admin-topbar-shell {
    padding: 8px 12px 10px;
  }

  #admin-view .admin-sidebar {
    position: fixed !important;
    top: var(--admin-shell-topbar-height) !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 214px;
    min-width: 214px;
    height: calc(100vh - var(--admin-shell-topbar-height));
    transform: translateX(-100%);
    transition: transform var(--transition-base);
    z-index: 220;
  }

  #admin-view .admin-sidebar.open {
    transform: translateX(0);
  }

  #admin-view .admin-sidebar.collapsed {
    width: 214px !important;
    min-width: 214px !important;
  }

  #admin-view .admin-sidebar-chrome {
    padding: 10px 0 16px;
  }

  #admin-view .admin-nav-list {
    align-items: stretch;
    gap: 0;
  }

  #admin-view .admin-nav-group {
    align-items: stretch;
    gap: 4px;
    padding: 8px 10px 3px;
  }

  #admin-view .admin-nav-group + .admin-nav-group {
    margin-top: 7px;
    padding-top: 9px;
  }

  #admin-view .admin-nav-group-label {
    max-width: none;
    padding: 0 5px 1px;
    font-size: 8px;
    color: #64748b;
    font-weight: 700;
    text-align: left;
  }

  #admin-view .admin-nav-item {
    grid-template-columns: 18px minmax(0, 1fr);
    justify-items: stretch;
    align-content: center;
    width: auto;
    min-height: 34px;
    padding: 0 10px;
    gap: 9px;
  }

  #admin-view .admin-nav-item.active::before {
    display: none;
  }

  #admin-view .admin-nav-icon {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
  }

  #admin-view .admin-nav-label {
    max-width: none;
    font-size: 11.5px;
    line-height: 1.15;
    text-align: left;
    white-space: nowrap;
  }

  #admin-view .admin-nav-item-client-intelligence .admin-nav-label {
    font-size: 11.5px;
  }

  #admin-view .admin-main {
    padding: 12px 12px 0 !important;
  }

  #admin-view .admin-overlay {
    position: fixed;
    inset: var(--admin-shell-topbar-height) 0 0 0;
    background: rgba(15, 23, 42, 0.36);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-fast);
    z-index: 210;
  }

  #admin-view .admin-overlay.visible {
    opacity: 1;
    pointer-events: auto;
  }
}

#admin-view #atab-appointments .appointments-page-head.appointments-page-head--compact,
#admin-view .appointments-shell .appointments-page-head--compact,
#admin-view .appointments-shell .appointments-page-head--compact.admin-page-head {
  align-items: center !important;
  gap: 10px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 1px !important;
}

#admin-view[data-active-admin-tab="appointments"] .admin-content {
  max-width: 1540px;
  margin: 0 auto 0 0;
}

#admin-view #atab-appointments .appointments-workspace-frame {
  margin-top: -8px;
}

#admin-view #atab-appointments .appointments-calendar-main {
  padding: 0;
  margin: 0;
  gap: 2px;
}

#admin-view #atab-appointments .appointments-team-day-board {
  --appointments-team-column-width: 194px;
  gap: 6px;
}

.owner-appointment-add-ons {
  display: grid;
  gap: 10px;
  margin-top: -2px;
}

.owner-appointment-add-ons-head {
  display: grid;
  gap: 4px;
}

.owner-appointment-add-ons-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #334155;
}

.owner-appointment-add-ons-copy {
  font-size: 13px;
  line-height: 1.45;
  color: #64748b;
}

.appointment-add-on-selector-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.owner-appointment-add-on-select,
.booking-add-on-select {
  min-width: 0;
}

.owner-appointment-add-on-button,
.booking-add-on-button {
  white-space: nowrap;
}

.appointment-add-on-selected-list {
  display: grid;
  gap: 8px;
}

.appointment-add-on-selected-list.is-disabled {
  opacity: 0.72;
}

.appointment-add-on-selected-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.94);
}

.appointment-add-on-selected-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.appointment-add-on-selected-name {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  overflow-wrap: anywhere;
}

.appointment-add-on-selected-meta {
  font-size: 12px;
  line-height: 1.4;
  color: #64748b;
}

.appointment-add-on-remove-btn {
  border: none;
  background: transparent;
  color: #2563eb;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  padding: 0;
}

.appointment-add-on-remove-btn:hover,
.appointment-add-on-remove-btn:focus-visible {
  color: #1d4ed8;
}

.booking-add-ons-card {
  margin-bottom: 12px;
}

.booking-step-summary-copy,
.booking-summary-copy,
.apt-modal-service-copy {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.45;
  color: #64748b;
}

@media (max-width: 720px) {
  .appointment-add-on-selector-row {
    grid-template-columns: 1fr;
  }

  .owner-appointment-add-on-button,
  .booking-add-on-button {
    width: 100%;
  }

  .appointment-add-on-selected-item {
    grid-template-columns: 1fr;
    align-items: flex-start;
  }
}

.support-shop-replay-active .admin-support-replay-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(191, 90, 36, 0.22);
  border-radius: 16px;
  background: rgba(191, 90, 36, 0.1);
  color: var(--text-strong);
}

.support-shop-replay-active .admin-support-replay-banner-copy {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}

.support-shop-replay-active .admin-support-replay-banner-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(191, 90, 36, 0.18);
  color: #9a3d11;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.support-shop-replay-active .admin-support-replay-banner-divider {
  color: rgba(15, 23, 42, 0.45);
}

.support-shop-replay-active .admin-support-replay-banner-body {
  color: var(--text-muted);
  line-height: 1.45;
}

.support-shop-replay-active .admin-support-replay-banner-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.support-shop-replay-active .admin-support-replay-banner-expiry {
  color: var(--text-muted);
  font-size: 12px;
}

/* #36E Phase 1: screenshot-first calendar shell */
#admin-view #atab-appointments .appointments-page-head {
  display: none;
}

#admin-view #atab-appointments .appointments-workspace-frame,
#admin-view #atab-appointments .appointments-workspace,
#admin-view #atab-appointments .appointments-calendar-main,
#admin-view #atab-appointments .appointments-group-list {
  min-width: 0;
}

#admin-view #atab-appointments .appointments-workspace-frame {
  background: transparent;
  border: none;
  padding: 0;
}

#admin-view #atab-appointments .appointments-calendar-main {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

#admin-view #atab-appointments .appointments-calendar-surface {
  background: #ffffff;
  border: 1px solid #e7edf4;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.035);
}

#admin-view #atab-appointments .appointments-calendar-toolbar {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 8px 12px 0;
  border-bottom: 1px solid #e7edf4;
  background: linear-gradient(180deg, rgba(255,255,255,0.995) 0%, rgba(252,253,255,0.995) 100%);
}

#admin-view #atab-appointments .appointments-calendar-toolbar-top,
#admin-view #atab-appointments .appointments-calendar-toolbar-bottom {
  display: grid;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-top {
  grid-template-columns: minmax(0, 1fr) auto;
  padding-bottom: 8px;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-bottom {
  grid-template-columns: auto minmax(0, 1fr);
  padding: 8px 0 10px;
  border-top: 1px solid #eef2f6;
}

#admin-view #atab-appointments .appointments-calendar-title-wrap {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
  white-space: nowrap;
}

#admin-view #atab-appointments .appointments-calendar-title {
  font-size: 23px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.045em;
  color: #172233;
}

#admin-view #atab-appointments .appointments-calendar-count {
  font-size: 11px;
  font-weight: 500;
  color: #61748f;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-actions,
#admin-view #atab-appointments .appointments-calendar-toolbar-date-row {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  justify-self: end;
  min-width: 0;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-month-side {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

#admin-view #atab-appointments .appointments-calendar-month-inline {
  font-size: 12px;
  font-weight: 600;
  color: #1a2435;
  white-space: nowrap;
}

#admin-view #atab-appointments .appointments-summary-strip--calendar {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: none;
}

#admin-view #atab-appointments .appointments-summary-strip--calendar:empty {
  display: none;
}

#admin-view #atab-appointments .appointments-summary-strip--calendar .appointments-summary-quiet-meta,
#admin-view #atab-appointments .appointments-summary-strip--calendar .appointments-advanced-filters-meta,
#admin-view #atab-appointments .appointments-summary-strip--calendar .appointments-advanced-filters summary {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 500;
}

#admin-view #atab-appointments .appointments-support-toolbar {
  flex: 0 0 auto;
  min-width: 0;
}

#admin-view #atab-appointments .appointments-support-toolbar .appointments-toolbar.toolbar {
  gap: 8px;
}

#admin-view #atab-appointments .appointments-toolbar-search {
  flex: 0 0 188px;
  min-width: 188px;
}

#admin-view #atab-appointments .appointments-toolbar-search::before {
  left: 10px;
  width: 11px;
  height: 11px;
  background-size: 11px 11px;
  opacity: 0.42;
}

#admin-view #atab-appointments .appointments-support-toolbar .appointments-toolbar-search input {
  min-height: 34px;
  height: 34px;
  padding: 0 12px 0 32px;
  border-radius: 9px;
  border: 1px solid #dce5ee;
  background: #ffffff;
  color: #243349;
  font-size: 11px;
  font-weight: 500;
  box-shadow: none;
}

#admin-view #apt-search-filter {
  padding-left: 32px !important;
}

#admin-view #atab-appointments .appointments-toolbar-filters {
  gap: 8px;
}

#admin-view #atab-appointments .appointments-toolbar-filters select,
#admin-view #atab-appointments .appointments-toolbar-filters .btn-sm-ghost,
#admin-view #atab-appointments .appointments-calendar-primary-btn,
#admin-view #atab-appointments .appointments-calendar-secondary-btn,
#admin-view #atab-appointments .appointments-head-refresh-btn,
#admin-view #atab-appointments .appointments-view-switcher-btn,
#admin-view #atab-appointments .appointments-calendar-day-btn,
#admin-view #atab-appointments .appointments-calendar-today-btn,
#admin-view #atab-appointments .appointments-date-picker summary,
#admin-view #atab-appointments .appointments-range-controls .appointments-range-button {
  min-height: 34px;
  height: 34px;
  border-radius: 9px;
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 11px;
}

#admin-view #atab-appointments .appointments-toolbar-filters select {
  min-width: 86px;
  padding: 0 9px;
  border: 1px solid #dce5ee;
  background: #fff;
  color: #2f3b4d;
  font-weight: 500;
}

#admin-view #atab-appointments .appointments-toolbar-filters .btn-sm-ghost,
#admin-view #atab-appointments .appointments-calendar-secondary-btn {
  padding: 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 600;
  border-color: #dce5ee;
  background: #fff;
  color: #253246;
}

#admin-view #atab-appointments .appointments-calendar-primary-btn {
  padding: 0 13px;
  border-color: #2f6ef4;
  background: #2f6ef4;
  color: #fff;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 700;
}

#admin-view #atab-appointments .appointments-head-refresh {
  gap: 7px;
  padding-left: 10px;
  border-left: 1px solid #e7edf4;
  font-size: 10px;
  font-weight: 500;
  color: #5f7290;
}

#admin-view #atab-appointments .appointments-head-refresh-status {
  font-size: 10px;
  font-weight: 500;
  color: #5f7290;
}

#admin-view #atab-appointments .appointments-head-refresh-btn {
  min-width: 20px;
  width: 20px;
  min-height: 20px;
  height: 20px;
  padding: 0;
  border-radius: 999px;
  font-size: 11px;
  color: #6f8098;
  background: #fff;
}

#admin-view #atab-appointments .appointments-view-switcher {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border: 1px solid #dce5ee;
  border-radius: 10px;
  background: #fff;
}

#admin-view #atab-appointments .appointments-grid-display-control {
  min-height: 32px;
  padding: 2px 8px 2px 10px;
  border: 1px solid #dce5ee;
  border-radius: 10px;
  background: #fff;
  box-shadow: none;
  transition: opacity 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

#admin-view #atab-appointments .appointments-grid-display-control[data-month-disabled="true"] {
  background: #f8fafc;
  border-color: #e2e8f0;
  opacity: 0.72;
  cursor: not-allowed;
}

#admin-view #atab-appointments .appointments-grid-display-label {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #64748b;
}

#admin-view #atab-appointments .appointments-grid-display-select {
  min-width: 76px;
  min-height: 26px;
  padding: 0 22px 0 8px;
  border: 1px solid #dce5ee;
  border-radius: 8px;
  background-color: #fff;
  background-position:
    calc(100% - 12px) calc(50% - 2px),
    calc(100% - 8px) calc(50% - 2px);
  color: #2f3b4d;
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
}

#admin-view #atab-appointments .appointments-grid-display-select:disabled {
  background-color: #f8fafc;
  color: #94a3b8;
  cursor: not-allowed;
}

#admin-view #atab-appointments .appointments-view-switcher-btn {
  min-width: 42px;
  height: 28px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 8px;
  border: none;
  background: transparent;
  font-size: 10px;
  font-weight: 600;
  color: #52657f;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-view-switcher-btn.is-active {
  background: #2f6ef4;
  color: #fff;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-calendar-today-btn {
  min-height: 28px;
  height: 28px;
  padding: 0 10px;
  border-radius: 8px;
  border-color: #dce5ee;
  background: #fff;
  color: #52657f;
  font-size: 10px;
  font-weight: 600;
}

#admin-view #atab-appointments .appointments-calendar-date-control {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#admin-view #atab-appointments .appointments-calendar-day-btn {
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid #dce5ee;
  background: #fff;
  font-size: 16px;
  font-weight: 600;
  color: #172233;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-date-picker {
  flex: 0 0 auto;
}

#admin-view #atab-appointments .appointments-date-picker summary {
  min-width: 0;
  height: 34px;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #dce5ee;
  border-radius: 9px;
  background: #fff;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-date-picker-summary {
  gap: 7px;
}

#admin-view #atab-appointments .appointments-date-picker-icon {
  width: 16px;
  height: 16px;
  color: #64748b;
}

#admin-view #atab-appointments .appointments-date-picker-icon svg {
  width: 15px;
  height: 15px;
}

#admin-view #atab-appointments .appointments-calendar-selected {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #172233;
}

#admin-view #atab-appointments .appointments-date-picker-body {
  border-radius: 12px;
  border-color: #e7edf4;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

#admin-view #atab-appointments .appointments-calendar-nav-current {
  font-size: 10px;
  font-weight: 500;
}

#admin-view #atab-appointments .appointments-group-list > .admin-card {
  border: none;
  border-radius: 0 0 18px 18px;
  box-shadow: none;
  background: transparent;
}

#admin-view #atab-appointments .appointments-group-list > .admin-card > .admin-card-body {
  padding: 0;
}

#admin-view #atab-appointments .appointments-week-shell {
  gap: 0;
}

#admin-view #atab-appointments .appointments-week-scroll {
  padding-bottom: 0;
  background: #fff;
  border-radius: 0 0 18px 18px;
}

#admin-view #atab-appointments .appointments-week-board {
  gap: 0;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week {
  gap: 0;
}

#admin-view #atab-appointments .appointments-week-corner,
#admin-view #atab-appointments .appointments-week-column-spacer {
  border-bottom: 1px solid #e7edf4;
  background: #fff;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-week-hours {
  border-right: 1px solid #e7edf4;
  border-radius: 0;
  background: #fff;
}

#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-hour-label {
  left: 0;
  padding-inline-end: 6px;
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
  color: #243249;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-day-grid-hour-label {
  font-size: 10px;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-day-grid-half-hour-label {
  display: none;
}

#admin-view #atab-appointments .appointments-week-day-header {
  border-bottom: 1px solid #e7edf4;
  background: #fff;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-week-day-header-button {
  gap: 1px;
  padding: 8px 6px 6px;
}

#admin-view #atab-appointments .appointments-week-day-label {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #172233;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-week-day-label {
  font-size: 10px;
}

#admin-view #atab-appointments .appointments-week-day-meta {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 9px;
  font-weight: 500;
  color: #7b8ca1;
  letter-spacing: 0;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-week-day-meta {
  font-size: 9px;
}

#admin-view #atab-appointments .appointments-week-day-column.is-selected-day .appointments-week-day-header,
#admin-view #atab-appointments .appointments-week-day-column.is-selected-day .appointments-week-day-header-button,
#admin-view #atab-appointments .appointments-week-day-column.is-today .appointments-week-day-label {
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-week-day-column.is-selected-day .appointments-week-day-header-button {
  background: rgba(239,246,255,0.9);
}

#admin-view #atab-appointments .appointments-week-day-canvas {
  border-top: none;
  border-left: 1px solid #e7edf4;
  border-right: none;
  border-bottom: none;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-grid-block {
  border-radius: 5px;
  box-shadow: 0 1px 1px rgba(15, 23, 42, 0.02);
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit,
#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-grid-block.is-content-week-fit-short {
  padding: 6px 7px 5px;
  border-radius: 5px;
  border-color: color-mix(in srgb, var(--apt-service-color, #60a5fa) 18%, #dbe7f5 82%);
  background: linear-gradient(180deg, rgba(247,250,255,0.98) 0%, rgba(241,247,255,0.98) 100%);
  box-shadow: 0 1px 1px rgba(15, 23, 42, 0.02);
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-grid-block.pink.is-content-week-fit,
#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-grid-block.pink.is-content-week-fit-short {
  background: linear-gradient(180deg, rgba(255,249,252,0.98) 0%, rgba(255,243,248,0.98) 100%);
}

#admin-view #atab-appointments .appointments-grid-block-week-fit {
  gap: 1px;
}

#admin-view #atab-appointments .appointments-grid-block-week-fit-client {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.1;
  color: #1e2a3a;
}

#admin-view #atab-appointments .appointments-grid-block-week-fit-time {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 9px;
  font-weight: 500;
  line-height: 1.05;
  color: #4d83cf;
}

#admin-view #atab-appointments .appointments-grid-block-week-fit-service {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 8px;
  font-weight: 400;
  line-height: 1.02;
  color: #94a3b8;
}

#admin-view #atab-appointments .appointments-day-grid-card,
#admin-view #atab-appointments .appointments-month-card {
  border: none;
  box-shadow: none;
  background: transparent;
}

@media (max-width: 1080px) {
  #admin-view #atab-appointments .appointments-toolbar-search {
    flex-basis: 168px;
    min-width: 168px;
  }

  #admin-view #atab-appointments .appointments-calendar-toolbar-top {
    grid-template-columns: minmax(0, 1fr);
  }

  #admin-view #atab-appointments .appointments-calendar-toolbar-actions,
  #admin-view #atab-appointments .appointments-calendar-toolbar-date-row,
  #admin-view #atab-appointments .appointments-calendar-toolbar-bottom {
    justify-self: stretch;
    flex-wrap: wrap;
  }

  #admin-view #atab-appointments .appointments-calendar-toolbar-bottom {
    grid-template-columns: 1fr;
  }

  #admin-view #atab-appointments .appointments-calendar-toolbar-month-side {
    justify-content: space-between;
  }

  #admin-view #atab-appointments .appointments-grid-display-control {
    justify-content: space-between;
    width: 100%;
  }
}

/* #36E locked prototype correction */
#admin-view #atab-appointments .appointments-page-head,
#admin-view #atab-appointments .appointments-page-head--compact {
  display: none !important;
}

#admin-view #atab-appointments .appointments-workspace,
#admin-view #atab-appointments .appointments-calendar-main,
#admin-view #atab-appointments .appointments-calendar-surface {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -0.01em;
}

#admin-view #atab-appointments .appointments-workspace {
  gap: 0;
}

#admin-view #atab-appointments .appointments-zone-center {
  padding: 0;
}

#admin-view #atab-appointments .appointments-calendar-toolbar {
  padding: 8px 12px 0;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-top {
  padding-bottom: 8px;
}

#admin-view #atab-appointments .appointments-calendar-toolbar-bottom {
  padding: 8px 0 10px;
}

#admin-view #atab-appointments .appointments-calendar-title {
  font-size: 23px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.045em;
}

#admin-view #atab-appointments .appointments-calendar-count {
  font-size: 11px;
  font-weight: 500;
  color: #61748f;
}

#admin-view #atab-appointments .appointments-support-toolbar .appointments-toolbar.toolbar {
  align-items: center;
}

#admin-view #atab-appointments .appointments-toolbar-search,
#admin-view #atab-appointments .appointments-toolbar-filters {
  flex: 0 0 auto;
}

#admin-view #atab-appointments .appointments-toolbar-search {
  width: 188px;
  min-width: 188px;
}

#admin-view #atab-appointments .appointments-toolbar.toolbar {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

#admin-view #atab-appointments .appointments-toolbar-search input,
#admin-view #atab-appointments .appointments-toolbar-filters select,
#admin-view #atab-appointments .appointments-calendar-primary-btn,
#admin-view #atab-appointments .appointments-calendar-secondary-btn,
#admin-view #atab-appointments .appointments-calendar-clear-btn,
#admin-view #atab-appointments .appointments-head-refresh-status,
#admin-view #atab-appointments .appointments-date-picker summary,
#admin-view #atab-appointments .appointments-view-switcher-btn,
#admin-view #atab-appointments .appointments-calendar-day-btn {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

#admin-view #atab-appointments .appointments-calendar-clear-btn[hidden] {
  display: none !important;
}

#admin-view #atab-appointments .appointments-summary-strip--calendar .appointments-summary-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #5f7391;
  font-size: 10px;
  font-weight: 500;
  white-space: nowrap;
}

#admin-view #atab-appointments .appointments-summary-strip--calendar .appointments-summary-swatch {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  flex: 0 0 auto;
}

#admin-view #atab-appointments .appointments-group-list {
  background: #fff;
}

#admin-view #atab-appointments .appointments-group-list > .admin-card,
#admin-view #atab-appointments .appointments-day-grid-card,
#admin-view #atab-appointments .appointments-week-card,
#admin-view #atab-appointments .appointments-team-day-card,
#admin-view #atab-appointments .appointments-month-card {
  background: transparent;
  border: none;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-day-grid-card .admin-card-body,
#admin-view #atab-appointments .appointments-week-card .admin-card-body,
#admin-view #atab-appointments .appointments-team-day-card .admin-card-body,
#admin-view #atab-appointments .appointments-month-card .admin-card-body {
  padding: 0 12px 12px;
}

#admin-view #atab-appointments .appointments-day-grid-shell,
#admin-view #atab-appointments .appointments-week-shell,
#admin-view #atab-appointments .appointments-team-day-shell {
  background: #fff;
  border-radius: 0 0 18px 18px;
}

#admin-view #atab-appointments .appointments-day-grid,
#admin-view #atab-appointments .appointments-week-board,
#admin-view #atab-appointments .appointments-team-day-board,
#admin-view #atab-appointments .appointments-month-shell {
  background: #fff;
}

#admin-view #atab-appointments .appointments-day-grid-hours,
#admin-view #atab-appointments .appointments-week-hours,
#admin-view #atab-appointments .appointments-team-day-hours {
  background: #fff;
  border-right: 1px solid #e7edf4;
  border-radius: 10px 0 0 10px;
  padding-left: 4px;
  padding-right: 8px;
}

#admin-view #atab-appointments .appointments-day-grid-hour-label,
#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-hour-label,
#admin-view #atab-appointments .appointments-team-day-hours .appointments-day-grid-hour-label {
  left: 4px;
  right: 8px;
  width: auto;
  padding: 1px 3px 1px 8px;
  text-align: right;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.92) 26%, #fff 100%);
  font-size: 8.5px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.14;
  font-variant-numeric: tabular-nums;
  color: #223049;
  z-index: 2;
}

#admin-view #atab-appointments .appointments-day-grid-half-hour-label,
#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-half-hour-label,
#admin-view #atab-appointments .appointments-team-day-hours .appointments-day-grid-half-hour-label {
  left: 4px;
  right: 8px;
  width: auto;
  padding: 1px 3px 1px 8px;
  text-align: right;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 26%, #fff 100%);
  font-size: 7px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  color: #71839b;
  font-variant-numeric: tabular-nums;
  z-index: 2;
}

#admin-view #atab-appointments .appointments-day-grid-hour-line,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-hour-line,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-hour-line {
  background: #d8e3ef;
  opacity: 1;
}

#admin-view #atab-appointments .appointments-day-grid-half-hour-line,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-half-hour-line,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-half-hour-line {
  background: #edf2f7;
  opacity: 1;
}

#admin-view #atab-appointments .appointments-day-grid-quarter-hour-line-full,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-quarter-hour-line-full,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-quarter-hour-line-full {
  display: none;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-day-grid-quarter-hour-line-tick,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-quarter-hour-line-tick,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-quarter-hour-line-tick {
  display: none;
}

#admin-view #atab-appointments .appointments-day-grid-quarter-hour-line-tick,
#admin-view #atab-appointments .appointments-day-grid-hours .appointments-day-grid-quarter-hour-line-tick,
#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-quarter-hour-line-tick,
#admin-view #atab-appointments .appointments-team-day-hours .appointments-day-grid-quarter-hour-line-tick {
  background: #edf2f7;
  opacity: 0.72;
  width: 6px;
  left: auto;
  right: 1px;
}

#admin-view #atab-appointments .appointments-day-grid-hour-line-tick,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-hour-line-tick,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-hour-line-tick {
  background: linear-gradient(90deg, rgba(162, 190, 226, 0.34) 0%, rgba(216, 227, 239, 0.95) 18%, rgba(216, 227, 239, 1) 100%);
}

#admin-view #atab-appointments .appointments-day-grid-half-hour-line-tick,
#admin-view #atab-appointments .appointments-week-day-canvas .appointments-day-grid-half-hour-line-tick,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-day-grid-half-hour-line-tick {
  background: linear-gradient(90deg, rgba(198, 211, 226, 0.2) 0%, rgba(235, 241, 247, 0.9) 18%, rgba(235, 241, 247, 1) 100%);
}

#admin-view #atab-appointments .appointments-week-day-header,
#admin-view #atab-appointments .appointments-team-day-header-cell,
#admin-view #atab-appointments .appointments-month-day-header {
  background: #fff;
}

#admin-view #atab-appointments .appointments-week-day-header-button,
#admin-view #atab-appointments .appointments-team-day-header-cell,
#admin-view #atab-appointments .appointments-month-day-button {
  padding-top: 8px;
  padding-bottom: 6px;
}

#admin-view #atab-appointments .appointments-week-day-label,
#admin-view #atab-appointments .appointments-team-day-header-name {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #1d2738;
}

#admin-view #atab-appointments .appointments-week-day-meta,
#admin-view #atab-appointments .appointments-team-day-header-meta {
  margin-top: 1px;
  font-size: 9px;
  font-weight: 500;
  color: #7b8ca1;
}

#admin-view #atab-appointments .appointments-grid-block,
#admin-view #atab-appointments .appointments-month-preview {
  border: 1px solid color-mix(in srgb, var(--apt-service-color, #55a7ff) 34%, #d2deeb 66%);
  border-radius: 5px;
  position: relative;
  isolation: isolate;
  z-index: 4;
  background-color: color-mix(in srgb, var(--apt-service-color, #55a7ff) 28%, #ffffff 72%);
  background-image: none;
  box-shadow:
    inset 2px 0 0 color-mix(in srgb, var(--apt-service-color, #55a7ff) 68%, #ffffff 32%),
    0 1px 1px rgba(15, 23, 42, 0.016);
}

#admin-view #atab-appointments .appointments-grid-block::before,
#admin-view #atab-appointments .appointments-month-preview::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--apt-service-color, #55a7ff) 22%, #ffffff 78%) 0%,
    color-mix(in srgb, var(--apt-service-color, #55a7ff) 34%, #ffffff 66%) 100%
  );
}

#admin-view #atab-appointments .appointments-grid-block {
  padding: 6px 7px 5px;
}

#admin-view #atab-appointments .appointments-grid-block.is-selected {
  box-shadow: 0 0 0 1px rgba(86, 156, 255, 0.44) inset;
  border-color: #93c5fd;
}

#admin-view #atab-appointments .appointments-grid-block-proto {
  display: grid;
  gap: 1px;
  min-width: 0;
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-grid-block-proto-name,
#admin-view #atab-appointments .appointments-month-preview-label {
  font-size: 9.5px;
  font-weight: 600;
  line-height: 12px;
  color: #243248;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view #atab-appointments .appointments-grid-block-proto-time,
#admin-view #atab-appointments .appointments-month-preview-time {
  font-size: 8.5px;
  font-weight: 500;
  line-height: 11px;
  color: #4f70a7;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view #atab-appointments .appointments-grid-block-proto-service,
#admin-view #atab-appointments .appointments-month-preview-service {
  font-size: 7px;
  font-weight: 400;
  line-height: 9px;
  color: #8190a3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#admin-view #atab-appointments .appointments-grid-block-proto-service:empty {
  display: none;
}

#admin-view #atab-appointments .appointments-grid-block.is-short .appointments-grid-block-proto-service,
#admin-view #atab-appointments .appointments-grid-block.is-content-week-fit-short .appointments-grid-block-proto-service,
#admin-view #atab-appointments .appointments-grid-block.is-content-week-fit .appointments-grid-block-proto-service {
  display: none;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-1 .appointments-grid-block-proto {
  gap: 0;
  padding-block: 0;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-1 .appointments-grid-block-proto-time,
#admin-view #atab-appointments .appointments-grid-block.is-lines-1 .appointments-grid-block-proto-service {
  display: none;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-1 .appointments-grid-block-proto-name {
  font-size: 8.75px;
  line-height: 12px;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-2 .appointments-grid-block-proto {
  gap: 0;
  padding-block: 0;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-service {
  display: none;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-name {
  font-size: 8.9px;
  line-height: 12px;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-time {
  font-size: 7.8px;
  line-height: 11px;
}

#admin-view #atab-appointments .appointments-grid-block.is-lines-3 .appointments-grid-block-proto-service {
  max-width: 100%;
}

#admin-view #atab-appointments .appointments-grid-block.is-blocked-content.is-lines-2 .appointments-grid-block-proto,
#admin-view #atab-appointments .appointments-grid-block.is-blocked-content.is-lines-1 .appointments-grid-block-proto {
  background: transparent;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block {
  padding: 6px 8px 5px;
  max-width: min(220px, calc(100% - 10px));
  overflow: hidden;
  box-shadow: 0 1px 1px rgba(15, 23, 42, 0.02);
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block-proto,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block-proto {
  gap: 0;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block-proto-name,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block-proto-name {
  font-size: 10px;
  font-weight: 600;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block-proto-time,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block-proto-time {
  font-size: 8.5px;
  font-weight: 500;
  color: #5579b3;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block-proto-service,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block-proto-service {
  font-size: 7px;
  color: #8694a6;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block.is-lines-1 .appointments-grid-block-proto-name,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block.is-lines-1 .appointments-grid-block-proto-name {
  font-size: 9px;
  line-height: 12px;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-name,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-name {
  font-size: 9px;
  line-height: 12px;
}

#admin-view #atab-appointments .appointments-day-grid-canvas .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-time,
#admin-view #atab-appointments .appointments-team-day-canvas .appointments-grid-block.is-lines-2 .appointments-grid-block-proto-time {
  font-size: 7.8px;
  line-height: 11px;
}

#admin-view #atab-appointments .appointments-month-preview {
  padding: 4px 6px 3px;
}

#admin-view #atab-appointments .appointments-grid-block-client,
#admin-view #atab-appointments .appointments-grid-block-service,
#admin-view #atab-appointments .appointments-grid-block-time,
#admin-view #atab-appointments .appointments-grid-block-summary,
#admin-view #atab-appointments .appointments-grid-block-inline-meta,
#admin-view #atab-appointments .appointments-grid-block-meta,
#admin-view #atab-appointments .appointments-grid-block-barber-row,
#admin-view #atab-appointments .appointments-grid-block-actions,
#admin-view #atab-appointments .apt-row-details {
  display: none !important;
}

#admin-view #atab-appointments .appointments-week-day-empty-note {
  padding-top: 8px;
  padding-left: 12px;
  font-size: 10px;
  font-weight: 600;
  color: #71839b;
}

#admin-view #atab-appointments .appointments-day-grid-empty-card {
  max-width: 264px;
  border: 1px dashed #e5edf5;
  border-radius: 8px;
  background: rgba(252, 253, 255, 0.82);
  box-shadow: none;
  padding: 12px 14px 11px;
}

#admin-view #atab-appointments .appointments-day-grid-empty-title {
  font-size: 0.82rem;
  font-weight: 700;
  margin-bottom: 4px;
}

#admin-view #atab-appointments .appointments-day-grid-empty-copy {
  font-size: 0.74rem;
  line-height: 1.42;
  color: #7c8b9f;
}

#admin-view #atab-appointments .appointments-day-grid-empty-action {
  margin-top: 10px;
}

#admin-view #atab-appointments .appointments-team-day-header-dot {
  width: 8px;
  height: 8px;
}

#admin-view #atab-appointments .appointments-grid-offhours {
  background: linear-gradient(180deg, rgba(245, 248, 252, 0.58) 0%, rgba(248, 250, 252, 0.72) 100%);
}

#admin-view #atab-appointments .appointments-grid-offhours-full {
  background: linear-gradient(180deg, rgba(245, 248, 252, 0.82) 0%, rgba(248, 250, 252, 0.92) 100%);
}

#admin-view #atab-appointments .appointments-grid-blocked-overlay,
#admin-view #atab-appointments .appointments-grid-blocked-overlay-full {
  position: relative;
  z-index: 4;
  border: 1px solid rgba(243, 211, 156, 0.92);
  border-left: 3px solid rgba(180, 83, 9, 0.46);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 251, 235, 0.99) 0%, rgba(255, 247, 237, 0.985) 100%);
  box-shadow: none;
}

#admin-view #atab-appointments .appointments-grid-blocked-overlay-title {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
}

#admin-view #atab-appointments .appointments-grid-blocked-overlay-meta,
#admin-view #atab-appointments .appointments-grid-blocked-overlay-badge {
  font-family: "Geist", "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 8px;
  font-weight: 500;
}

#admin-view #atab-appointments .appointments-day-grid-hours,
#admin-view #atab-appointments .appointments-week-hours,
#admin-view #atab-appointments .appointments-team-day-hours {
  padding-left: 8px;
  padding-right: 10px;
}

#admin-view #atab-appointments .appointments-day-grid-hour-label,
#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-hour-label,
#admin-view #atab-appointments .appointments-team-day-hours .appointments-day-grid-hour-label {
  left: 8px;
  right: 10px;
  font-size: 9px;
  padding-left: 10px;
  padding-right: 4px;
}

#admin-view #atab-appointments .appointments-day-grid-half-hour-label,
#admin-view #atab-appointments .appointments-week-hours .appointments-day-grid-half-hour-label,
#admin-view #atab-appointments .appointments-team-day-hours .appointments-day-grid-half-hour-label {
  display: block;
  left: 8px;
  right: 10px;
  padding-left: 10px;
  padding-right: 4px;
}

#admin-view #atab-appointments .appointments-week-board.is-fit-week .appointments-day-grid-half-hour-label {
  display: block;
}

#admin-view #atab-appointments .appointments-calendar-horizontal-nav {
  margin-bottom: 6px;
}

@media (max-width: 1200px) {
  #admin-view #atab-appointments .appointments-calendar-toolbar {
    padding-inline: 12px;
  }

  #admin-view #atab-appointments .appointments-toolbar-search {
    width: 160px;
    min-width: 160px;
  }

  #admin-view #atab-appointments .appointments-calendar-toolbar-actions,
  #admin-view #atab-appointments .appointments-calendar-toolbar-date-row,
  #admin-view #atab-appointments .appointments-calendar-toolbar-month-side {
    gap: 6px;
  }

  #admin-view #atab-appointments .appointments-calendar-primary-btn,
  #admin-view #atab-appointments .appointments-calendar-secondary-btn,
  #admin-view #atab-appointments .appointments-toolbar-filters select,
  #admin-view #atab-appointments .appointments-date-picker summary {
    padding-inline: 10px;
  }
}
