:root {
  --spce-purple: #4811b2;
  --spce-orange: #fc893b;
  --spce-pink: #d83191;
  --spce-blue: #0374df;
  --spce-cream: #f8f7ff;
  --spce-ink: #17143f;
  --spce-white: #ffffff;
  --spce-deep: #1b125c;
  --spce-purple-2: #7119de;
  --spce-orange-2: #ff7a2f;
  --spce-pink-2: #f3516c;
  --spce-blue-2: #16aefa;
  --spce-green: #1aa873;
  --spce-muted: #67637d;
  --spce-border: rgba(23, 20, 63, .09);
  --spce-card: #ffffff;
  --spce-bg: #f8f7ff;
  --spce-sidebar: #1b125c;
  --spce-sidebar-2: #291070;
  --spce-shadow: 0 18px 45px rgba(72, 17, 178, .10);
  --spce-radius: 22px;
  --spce-font-display: 'Space Grotesk', sans-serif;
  --spce-font-body: 'DM Sans', sans-serif;
  --sidebar-width: 268px;
  --topbar-height: 76px;
}


* { box-sizing: border-box; }
html { min-height: 100%; background: var(--spce-bg); }
body {
  margin: 0;
  min-height: 100vh;
  background: var(--spce-bg);
  color: var(--spce-ink);
  font-family: var(--spce-font-body);
  font-size: 15px;
  line-height: 1.5;
}
body.sidebar-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }

.spce-app { min-height: 100vh; }

/* Sidebar */
.spce-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 1040;
  width: var(--sidebar-width);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  background:
    radial-gradient(circle at 10% 2%, rgba(216,49,145,.22), transparent 24%),
    linear-gradient(180deg, var(--spce-sidebar-2), var(--spce-sidebar));
  color: rgba(255,255,255,.82);
  box-shadow: 10px 0 35px rgba(27, 18, 92, .08);
}
.sidebar-header {
  min-height: 100px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28px 18px 24px;
}
.sidebar-logo { display: inline-flex; align-items: center; }
.sidebar-logo img { display: block; width: 215px; height: auto; }
.sidebar-close, .restaurant-switch, .mobile-menu-btn, .topbar-button, .card-menu {
  border: 0;
  background: transparent;
}
.sidebar-close {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  color: #fff;
  background: rgba(255,255,255,.1);
}
.sidebar-restaurant {
  margin: 4px 14px 18px;
  padding: 13px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 24px;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  background: rgba(255,255,255,.07);
}
.restaurant-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--spce-orange), var(--spce-pink));
  color: var(--spce-ink);
  font-family: var(--spce-font-display);
  font-weight: 700;
}
.restaurant-meta { min-width: 0; }
.restaurant-meta strong,
.restaurant-meta span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.restaurant-meta strong { color: #fff; font-size: .86rem; }
.restaurant-meta span { color: rgba(255,255,255,.52); font-size: .71rem; margin-top: 2px; }
.restaurant-switch { color: rgba(255,255,255,.58); font-size: .72rem; }

.sidebar-nav { padding: 0 12px 20px; }
.sidebar-label {
  padding: 0 12px 7px;
  color: rgba(255,255,255,.38);
  font-family: var(--spce-font-display);
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.sidebar-link {
  position: relative;
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 43px;
  margin: 2px 0;
  padding: 8px 11px;
  border-radius: 12px;
  color: rgba(255,255,255,.72);
  font-weight: 600;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.sidebar-link:hover { color: #fff; background: rgba(255,255,255,.08); }
.sidebar-link.active {
  color: #fff;
  background: linear-gradient(90deg, rgba(252,137,59,.22), rgba(216,49,145,.11));
  box-shadow: inset 3px 0 0 var(--spce-orange);
}
.sidebar-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  border-radius: 9px;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.78);
}
.sidebar-link.active .sidebar-icon { color: var(--spce-orange); background: rgba(252,137,59,.13); }
.sidebar-badge {
  margin-left: auto;
  min-width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--spce-pink-2);
  color: #fff;
  font-size: .68rem;
  font-weight: 700;
}
.sidebar-footer {
  margin-top: auto;
  padding: 14px 12px 18px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.sidebar-overlay {
  position: fixed;
  inset: 0;
  z-index: 1035;
  display: none;
  background: rgba(27, 18, 92, .5);
  backdrop-filter: blur(2px);
}
.sidebar-overlay.is-visible { display: block; }

/* Main + topbar */
.spce-main { min-height: 100vh; margin-left: var(--sidebar-width); }
.spce-topbar {
  position: sticky;
  top: 0;
  z-index: 1020;
  min-height: var(--topbar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 28px;
  border-bottom: 1px solid var(--spce-border);
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(18px);
}
.topbar-left, .topbar-actions { display: flex; align-items: center; gap: 12px; }
.mobile-menu-btn {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: var(--spce-cream);
  color: var(--spce-purple);
}
.topbar-search {
  width: min(34vw, 420px);
  min-width: 260px;
  height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border: 1px solid var(--spce-border);
  border-radius: 13px;
  background: #fff;
  color: var(--spce-muted);
}
.topbar-search input {
  min-width: 0;
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--spce-ink);
}
.topbar-search input::placeholder { color: #aaa6b8; }
.search-shortcut {
  padding: 3px 7px;
  border-radius: 7px;
  background: #f2effa;
  color: #8a8597;
  font-size: .66rem;
  font-weight: 700;
}
.topbar-button {
  position: relative;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid var(--spce-border);
  border-radius: 12px;
  background: #fff;
  color: var(--spce-ink);
}
.notification-dot {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 7px;
  height: 7px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--spce-orange-2);
}
.notification-count {
  position: absolute;
  right: -4px;
  top: -5px;
  min-width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  padding: 0 5px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: var(--spce-pink-2);
  color: #fff;
  font-size: .62rem;
  font-weight: 700;
}
.topbar-user {
  display: grid;
  grid-template-columns: 38px auto 12px;
  align-items: center;
  gap: 9px;
  margin-left: 4px;
}
.user-avatar {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--spce-purple), var(--spce-pink));
  color: #fff;
  font-family: var(--spce-font-display);
  font-weight: 700;
}
.user-meta strong, .user-meta span { display: block; line-height: 1.2; }
.user-meta strong { font-size: .8rem; }
.user-meta span { margin-top: 3px; color: var(--spce-muted); font-size: .68rem; }
.user-chevron { color: #9b97a8; font-size: .62rem; }

/* Content */
.spce-content { width: 100%; max-width: 1700px; margin: 0 auto; padding: 30px 30px 54px; }
.page-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}
.page-eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--spce-pink);
  font-family: var(--spce-font-display);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.page-heading h1 {
  margin: 0;
  font-family: var(--spce-font-display);
  font-size: clamp(1.9rem, 2.6vw, 2.8rem);
  font-weight: 700;
  letter-spacing: -.045em;
}
.page-heading p { margin: 6px 0 0; color: var(--spce-muted); }
.page-heading-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.btn { border-radius: 12px; font-family: var(--spce-font-display); font-weight: 700; }
.btn-spce {
  border: 0;
  background: linear-gradient(135deg, var(--spce-orange), var(--spce-orange-2));
  color: var(--spce-ink);
  box-shadow: 0 10px 22px rgba(252,137,59,.23);
}
.btn-spce:hover { color: var(--spce-ink); transform: translateY(-1px); }
.btn-spce-light {
  border: 1px solid var(--spce-border);
  background: #fff;
  color: var(--spce-ink);
}

/* Action center */
.action-center {
  margin-bottom: 22px;
  padding: 20px;
  border: 1px solid rgba(252,137,59,.24);
  border-radius: var(--spce-radius);
  background:
    radial-gradient(circle at 95% 0%, rgba(216,49,145,.08), transparent 32%),
    linear-gradient(135deg, #fffaf6, #fff 58%);
  box-shadow: var(--spce-shadow);
}
.section-heading-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}
.section-heading-row > div { display: flex; align-items: center; gap: 12px; }
.section-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
}
.action-icon { background: rgba(252,137,59,.18); color: var(--spce-orange-2); }
.section-heading-row h2, .card-heading h2 {
  margin: 0;
  font-family: var(--spce-font-display);
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -.02em;
}
.section-heading-row p, .card-heading p { margin: 2px 0 0; color: var(--spce-muted); font-size: .78rem; }
.section-link {
  color: var(--spce-purple);
  font-size: .78rem;
  font-weight: 700;
}
.section-link i { margin-left: 5px; }
.action-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; }
.action-item {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) 12px;
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 12px;
  border: 1px solid var(--spce-border);
  border-radius: 15px;
  background: #fff;
}
.action-item-icon {
  width: 38px;
  height: 38px;
  display: grid !important;
  place-items: center;
  border-radius: 11px;
}
.action-item strong, .action-item span { display: block; }
.action-item strong { font-size: .77rem; }
.action-item div span { margin-top: 2px; color: var(--spce-muted); font-size: .68rem; }
.action-item > i { color: #b4b0bc; font-size: .64rem; }
.action-orange .action-item-icon { background: rgba(252,137,59,.16); color: var(--spce-orange-2); }
.action-pink .action-item-icon { background: rgba(216,49,145,.13); color: var(--spce-pink); }
.action-blue .action-item-icon { background: rgba(3,116,223,.12); color: var(--spce-blue); }
.action-purple .action-item-icon { background: rgba(72,17,178,.12); color: var(--spce-purple); }

/* Metrics */
.dashboard-metrics { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; margin-bottom: 18px; }
.metric-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--spce-border);
  border-radius: var(--spce-radius);
  background: var(--spce-card);
  box-shadow: var(--spce-shadow);
}
.metric-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.metric-icon {
  width: 43px;
  height: 43px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #fff;
}
.metric-blue { background: linear-gradient(135deg, var(--spce-blue-2), var(--spce-blue)); }
.metric-purple { background: linear-gradient(135deg, var(--spce-purple-2), var(--spce-purple)); }
.metric-orange { background: linear-gradient(135deg, var(--spce-orange), var(--spce-orange-2)); color: var(--spce-white); }
.metric-pink { background: linear-gradient(135deg, var(--spce-pink-2), var(--spce-pink)); }
.metric-change {
  padding: 4px 7px;
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 700;
}
.metric-change.positive { background: rgba(26,168,115,.09); color: var(--spce-green); }
.metric-label { display: block; margin-bottom: 3px; color: var(--spce-muted); font-size: .75rem; font-weight: 600; }
.metric-value { display: block; font-family: var(--spce-font-display); font-size: 1.75rem; letter-spacing: -.04em; }
.metric-foot { display: block; margin-top: 5px; color: #9a96a4; font-size: .68rem; }

/* Cards / grids */
.dashboard-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(320px,.75fr); gap: 18px; margin-bottom: 18px; }
.dashboard-grid-bottom { grid-template-columns: repeat(2, minmax(0,1fr)); }
.dashboard-card {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--spce-border);
  border-radius: var(--spce-radius);
  background: #fff;
  box-shadow: var(--spce-shadow);
}
.card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 20px; }
.card-menu {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #f7f5fc;
  color: var(--spce-muted);
}

/* Sales chart */
.sales-chart { min-height: 285px; display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 10px; }
.chart-y { display: flex; flex-direction: column; justify-content: space-between; padding: 5px 0 18px; color: #aaa5b1; font-size: .66rem; text-align: right; }
.chart-body { position: relative; min-width: 0; overflow: hidden; border-radius: 10px; }
.chart-grid-line { position: absolute; left: 0; right: 0; height: 1px; background: #ece9f7; }
.chart-grid-line:nth-child(1) { top: 6px; }
.chart-grid-line:nth-child(2) { top: 33%; }
.chart-grid-line:nth-child(3) { top: 66%; }
.chart-grid-line:nth-child(4) { bottom: 18px; }
.line-chart { position: absolute; inset: 0 0 18px; width: 100%; height: calc(100% - 18px); overflow: visible; }
.chart-area { fill: url(#salesGradient); }
.chart-line { fill: none; stroke: var(--spce-purple); stroke-width: 5; stroke-linecap: round; }

/* Revenue */
.revenue-layout { display: grid; grid-template-columns: 180px minmax(0,1fr); align-items: center; gap: 20px; min-height: 285px; }
.revenue-donut {
  position: relative;
  width: 170px;
  height: 170px;
  margin: 0 auto;
  border-radius: 50%;
  background: conic-gradient(var(--spce-blue) 0 54%, var(--spce-purple) 54% 74%, var(--spce-orange) 74% 88%, var(--spce-pink) 88% 100%);
}
.revenue-donut::after { content: ''; position: absolute; inset: 31px; border-radius: 50%; background: #fff; }
.donut-center { position: absolute; z-index: 2; inset: 0; display: grid; place-content: center; text-align: center; }
.donut-center strong { display: block; font-family: var(--spce-font-display); font-size: 1.2rem; }
.donut-center span { margin-top: 2px; color: var(--spce-muted); font-size: .65rem; }
.revenue-legend { display: grid; gap: 13px; }
.revenue-legend > div { display: grid; grid-template-columns: 10px minmax(0,1fr) auto; align-items: center; gap: 8px; color: var(--spce-muted); font-size: .72rem; }
.revenue-legend strong { color: var(--spce-ink); }
.legend-dot { width: 8px; height: 8px; border-radius: 50%; }
.legend-blue { background: var(--spce-blue); }
.legend-purple { background: var(--spce-purple); }
.legend-orange { background: var(--spce-orange); }
.legend-pink { background: var(--spce-pink); }

/* Lists */
.reservation-list, .menu-performance { display: grid; gap: 4px; }
.reservation-row, .menu-performance-row {
  min-width: 0;
  display: grid;
  align-items: center;
  gap: 12px;
  min-height: 68px;
  padding: 10px 8px;
  border-top: 1px solid #efedfb;
}
.reservation-row { grid-template-columns: 52px minmax(0,1fr) auto; }
.menu-performance-row { grid-template-columns: 36px minmax(0,1fr) auto; }
.reservation-row:first-child, .menu-performance-row:first-child { border-top: 0; }
.reservation-time { width: 46px; height: 46px; display: grid; place-content: center; border-radius: 12px; background: #f5f2fb; text-align: center; }
.reservation-time strong { font-family: var(--spce-font-display); font-size: .84rem; line-height: 1; }
.reservation-time span { margin-top: 2px; color: var(--spce-muted); font-size: .58rem; }
.reservation-info strong, .reservation-info span, .menu-performance-row div strong, .menu-performance-row div span { display: block; }
.reservation-info strong, .menu-performance-row div strong { font-size: .78rem; }
.reservation-info span, .menu-performance-row div span { margin-top: 2px; color: var(--spce-muted); font-size: .68rem; }
.reservation-status { padding: 5px 8px; border-radius: 999px; background: rgba(26,168,115,.09); color: var(--spce-green); font-size: .63rem; font-weight: 700; }
.reservation-status.pending { background: rgba(252,137,59,.12); color: #be6c24; }
.menu-rank { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; background: rgba(72,17,178,.08); color: var(--spce-purple); font-family: var(--spce-font-display); font-size: .72rem; font-weight: 700; }
.menu-sales { font-family: var(--spce-font-display); font-size: .82rem; }

/* Demo toast */
.demo-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1100;
  min-width: 290px;
  max-width: calc(100vw - 48px);
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(23,20,63,.96);
  color: #fff;
  box-shadow: 0 22px 50px rgba(17,13,38,.28);
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}
.demo-toast.show { opacity: 1; transform: translateY(0); }
.demo-toast-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: linear-gradient(135deg, var(--spce-orange), var(--spce-pink)); color: var(--spce-ink); }
.demo-toast strong, .demo-toast span { display: block; }
.demo-toast strong { font-size: .8rem; }
.demo-toast span { margin-top: 2px; color: rgba(255,255,255,.68); font-size: .7rem; }

/* Responsive */
@media (max-width: 1399.98px) {
  .action-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .revenue-layout { grid-template-columns: 150px minmax(0,1fr); }
  .revenue-donut { width: 145px; height: 145px; }
  .revenue-donut::after { inset: 27px; }
}

@media (max-width: 1199.98px) {
  .dashboard-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dashboard-grid { grid-template-columns: 1fr; }
  .dashboard-grid-bottom { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .revenue-layout { grid-template-columns: 180px minmax(0,1fr); }
}

@media (max-width: 991.98px) {
  .spce-sidebar {
    transform: translateX(-102%);
    transition: transform .24s ease;
  }
  .spce-sidebar.is-open { transform: translateX(0); }
  .spce-main { margin-left: 0; }
  .spce-topbar { padding-inline: 18px; }
  .spce-content { padding-inline: 18px; }
  .topbar-search { min-width: 220px; width: 36vw; }
}

@media (max-width: 767.98px) {
  .topbar-search { min-width: 0; width: min(52vw, 310px); }
  .search-shortcut { display: none; }
  .topbar-user { grid-template-columns: 38px 12px; }
  .page-heading { align-items: flex-start; flex-direction: column; }
  .page-heading-actions { width: 100%; }
  .page-heading-actions .btn { flex: 1; }
  .action-grid, .dashboard-metrics, .dashboard-grid-bottom { grid-template-columns: 1fr; }
  .sales-chart { min-height: 245px; }
  .revenue-layout { grid-template-columns: 1fr; }
  .revenue-legend { max-width: 320px; width: 100%; margin: 0 auto; }
}

@media (max-width: 575.98px) {
  :root { --topbar-height: 68px; }
  .spce-topbar { gap: 8px; padding: 10px 12px; }
  .topbar-actions { gap: 7px; }
  .topbar-search { width: 42vw; height: 42px; }
  .topbar-search i { display: none; }
  .topbar-button { width: 40px; height: 40px; }
  .user-chevron { display: none; }
  .topbar-user { grid-template-columns: 38px; }
  .spce-content { padding: 22px 12px 42px; }
  .page-heading h1 { font-size: 1.85rem; }
  .action-center, .dashboard-card, .metric-card { padding: 16px; border-radius: 18px; }
  .section-heading-row { align-items: flex-start; }
  .section-heading-row .section-link { display: none; }
  .action-grid { gap: 9px; }
  .action-item { min-height: 70px; }
  .dashboard-metrics { gap: 10px; }
  .reservation-row { grid-template-columns: 48px minmax(0,1fr); }
  .reservation-status { grid-column: 2; justify-self: start; margin-top: -5px; }
  .menu-performance-row { grid-template-columns: 32px minmax(0,1fr); }
  .menu-sales { grid-column: 2; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}


/* ==========================================================================
   Finalized Sidebar + Menu Management Screen
   ========================================================================== */

.sidebar-nav { padding-bottom: 12px; }
.sidebar-label.mt-4 { margin-top: 18px !important; }
.sidebar-link > span:nth-child(2) { min-width: 0; }

/* Menu page status */
.menu-status-card {
  display: grid;
  grid-template-columns: minmax(250px,1.2fr) minmax(420px,1.5fr) auto;
  align-items: center;
  gap: 22px;
  margin-bottom: 18px;
  padding: 20px;
  border: 1px solid rgba(72,17,178,.13);
  border-radius: var(--spce-radius);
  background: linear-gradient(135deg, rgba(72,17,178,.07), #fff 45%, rgba(252,137,59,.08));
  box-shadow: var(--spce-shadow);
}
.menu-status-main { display: flex; align-items: center; gap: 14px; }
.menu-status-main h2 { margin: 0; font-family: var(--spce-font-display); font-size: 1.2rem; letter-spacing: -.03em; }
.menu-status-main p { margin: 3px 0 0; color: var(--spce-muted); font-size: .76rem; }
.menu-live-pill { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; border-radius: 999px; background: rgba(26,168,115,.1); color: var(--spce-green); font-size: .68rem; font-weight: 800; }
.menu-live-pill i { font-size: .48rem; }
.menu-status-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.menu-status-stats > div { padding: 10px 12px; border-left: 1px solid var(--spce-border); }
.menu-status-stats span, .menu-status-stats strong { display: block; }
.menu-status-stats span { color: var(--spce-muted); font-size: .66rem; }
.menu-status-stats strong { margin-top: 2px; font-family: var(--spce-font-display); font-size: .88rem; }
.menu-status-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }

.menu-summary-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.menu-summary-card { display: flex; align-items: center; gap: 12px; padding: 15px; border: 1px solid var(--spce-border); border-radius: 18px; background: #fff; box-shadow: var(--spce-shadow); }
.summary-icon { width: 42px; height: 42px; flex: 0 0 42px; display: grid !important; place-items: center; border-radius: 13px; color: #fff; }
.summary-purple { background: linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.summary-orange { background: linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color: #fff; }
.summary-blue { background: linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.summary-pink { background: linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }
.menu-summary-card span, .menu-summary-card strong, .menu-summary-card small { display: block; }
.menu-summary-card > div > span { color: var(--spce-muted); font-size: .68rem; font-weight: 600; }
.menu-summary-card strong { margin-top: 1px; font-family: var(--spce-font-display); font-size: 1.3rem; }
.menu-summary-card small { margin-top: 2px; color: #9c98a6; font-size: .62rem; }

.menu-workspace { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; align-items: start; }
.menu-items-card { padding: 0; overflow: hidden; }
.menu-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 18px; border-bottom: 1px solid var(--spce-border); }
.menu-search { min-width: 230px; height: 40px; display: flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid var(--spce-border); border-radius: 11px; background: #fdfcff; color: var(--spce-muted); }
.menu-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--spce-ink); font-size: .76rem; }
.menu-filter-buttons { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.menu-filter { border: 0; border-radius: 999px; padding: 6px 10px; background: #f5f3fb; color: var(--spce-muted); font-size: .68rem; font-weight: 700; }
.menu-filter.active { background: var(--spce-purple); color: #fff; }
.menu-table-wrap { overflow-x: auto; }
.menu-table-head, .menu-item-row { min-width: 790px; display: grid; grid-template-columns: minmax(290px,1.8fr) 75px 80px 110px 78px 32px; align-items: center; gap: 12px; }
.menu-table-head { padding: 10px 18px; background: #faf9ff; color: #9b97a7; font-size: .62rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.menu-item-row { padding: 11px 18px; border-top: 1px solid #efedfb; background: #fff; transition: background .15s ease, opacity .15s ease; }
.menu-item-row:hover { background: #fcfbff; }
.menu-item-row.is-hidden { display: none; }
.menu-item-name { display: grid; grid-template-columns: 16px 46px minmax(0,1fr); align-items: center; gap: 10px; min-width: 0; }
.drag-handle { color: #c3bec9; cursor: grab; }
.menu-thumb { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 12px; font-family: var(--spce-font-display); font-size: .72rem; font-weight: 800; color: #fff; }
.thumb-burger { background: linear-gradient(135deg,#6e3db0,#d83191); }
.thumb-tuna { background: linear-gradient(135deg,#0374df,#16aefa); }
.thumb-curry { background: linear-gradient(135deg,#fc893b,#ff7a2f); color: var(--spce-ink); }
.thumb-calamari { background: linear-gradient(135deg,#d83191,#f3516c); }
.thumb-pie { background: linear-gradient(135deg,#45a68f,#0374df); }
.thumb-chicken { background: linear-gradient(135deg,#4811B2,#fc893b); }
.menu-item-name strong, .menu-item-name > div > span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.menu-item-name strong { font-size: .76rem; }
.menu-item-name > div > span { margin-top: 2px; color: var(--spce-muted); font-size: .64rem; }
.tag-row { display: flex; gap: 4px; margin-top: 4px; }
.tiny-tag { display: inline-flex; padding: 2px 5px; border-radius: 999px; background: rgba(3,116,223,.08); color: var(--spce-blue); font-size: .54rem; font-weight: 800; }
.tiny-tag.featured { background: rgba(252,137,59,.16); color: #ad5e18; }
.tiny-tag.spicy { background: rgba(243,81,108,.1); color: var(--spce-pink-2); }
.menu-price { font-family: var(--spce-font-display); font-size: .78rem; }
.cost-good, .cost-warning { font-size: .69rem; font-weight: 800; }
.cost-good { color: var(--spce-green); }
.cost-warning { color: #c26c21; }
.mapping { display: inline-flex; align-items: center; gap: 5px; font-size: .64rem; font-weight: 800; }
.mapping.mapped { color: var(--spce-green); }
.mapping.needs-map { color: #c26c21; }
.mini-switch { position: relative; width: 38px; height: 22px; display: inline-block; margin: 0; }
.mini-switch input { opacity: 0; width: 0; height: 0; }
.mini-switch span { position: absolute; inset: 0; border-radius: 999px; background: #ded9e3; cursor: pointer; transition: .18s ease; }
.mini-switch span::after { content: ''; position: absolute; width: 16px; height: 16px; left: 3px; top: 3px; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px rgba(23,20,63,.16); transition: .18s ease; }
.mini-switch input:checked + span { background: var(--spce-purple); }
.mini-switch input:checked + span::after { transform: translateX(16px); }
.row-menu { width: 30px; height: 30px; display: grid; place-items: center; border: 0; border-radius: 9px; background: transparent; color: var(--spce-muted); }
.row-menu:hover { background: #f2effa; color: var(--spce-purple); }
.menu-list-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-top: 1px solid var(--spce-border); color: var(--spce-muted); font-size: .68rem; }
.menu-empty { display: none; padding: 50px 20px; text-align: center; color: var(--spce-muted); }
.menu-empty.show { display: grid; place-items: center; gap: 5px; }
.menu-empty i { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 4px; border-radius: 14px; background: rgba(72,17,178,.08); color: var(--spce-purple); }
.menu-empty strong { color: var(--spce-ink); }
.menu-empty span { font-size: .72rem; }

.menu-side-stack { display: grid; gap: 18px; }
.menu-health-card, .quick-actions-card { padding: 18px; }
.health-score { padding: 6px 9px; border-radius: 999px; background: rgba(26,168,115,.1); color: var(--spce-green); font-family: var(--spce-font-display); font-size: .75rem; font-weight: 800; }
.health-meter { height: 8px; margin: 2px 0 18px; border-radius: 999px; background: #ece9f7; overflow: hidden; }
.health-meter span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--spce-purple),var(--spce-pink),var(--spce-orange)); }
.health-list { display: grid; gap: 10px; }
.health-list > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 10px; border-top: 1px solid #efedfb; font-size: .7rem; }
.health-list > div:first-child { border-top: 0; padding-top: 0; }
.health-list span { color: var(--spce-muted); }
.health-list i { width: 18px; color: var(--spce-blue); }
.health-list i.good { color: var(--spce-green); }
.health-list i.warn { color: #c26c21; }
.quick-action { width: 100%; display: grid; grid-template-columns: 40px minmax(0,1fr) 14px; align-items: center; gap: 10px; padding: 10px 0; border: 0; border-top: 1px solid #efedfb; background: transparent; text-align: left; }
.quick-action:first-of-type { border-top: 0; }
.quick-action > span:nth-child(2) strong, .quick-action > span:nth-child(2) small { display: block; }
.quick-action > span:nth-child(2) strong { font-size: .72rem; }
.quick-action > span:nth-child(2) small { margin-top: 2px; color: var(--spce-muted); font-size: .62rem; }
.quick-action > i { color: #b4afbb; font-size: .62rem; }
.qa-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #fff; }
.qa-purple { background: var(--spce-purple); }
.qa-orange { background: var(--spce-orange); color: var(--spce-ink); }
.qa-blue { background: var(--spce-blue); }
.menu-tip-card { display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 12px; padding: 18px; border-radius: var(--spce-radius); background: linear-gradient(145deg,var(--spce-purple),#291070); color: #fff; box-shadow: var(--spce-shadow); }
.menu-tip-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color: var(--spce-ink); }
.menu-tip-card strong { font-family: var(--spce-font-display); }
.menu-tip-card p { margin: 5px 0 0; color: rgba(255,255,255,.7); font-size: .68rem; line-height: 1.5; }

/* Placeholder module pages */
.module-placeholder { min-height: 480px; display: grid; place-items: center; align-content: center; max-width: 820px; margin: 40px auto; padding: 48px; border: 1px solid rgba(72,17,178,.12); border-radius: 30px; background: radial-gradient(circle at 85% 8%,rgba(252,137,59,.16),transparent 30%),linear-gradient(145deg,#fff,#f8f6ff); box-shadow: var(--spce-shadow); text-align: center; }
.module-placeholder-icon { width: 78px; height: 78px; display: grid; place-items: center; margin-bottom: 16px; border-radius: 24px; background: linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color: #fff; font-size: 1.8rem; box-shadow: 0 18px 34px rgba(72,17,178,.18); }
.module-placeholder h2 { margin: 4px 0 8px; font-family: var(--spce-font-display); font-size: clamp(1.7rem,3vw,2.4rem); letter-spacing: -.04em; }
.module-placeholder p { max-width: 580px; margin: 0 auto 12px; color: var(--spce-muted); }
.module-placeholder-note { font-size: .78rem; }

@media (max-width: 1399.98px) {
  .menu-status-card { grid-template-columns: 1fr; }
  .menu-status-actions { justify-content: flex-start; }
  .menu-workspace { grid-template-columns: minmax(0,1fr) 300px; }
}
@media (max-width: 1199.98px) {
  .menu-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .menu-workspace { grid-template-columns: 1fr; }
  .menu-side-stack { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .menu-tip-card { grid-column: 1 / -1; }
}
@media (max-width: 767.98px) {
  .menu-status-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .menu-status-stats > div:nth-child(odd) { border-left: 0; }
  .menu-summary-grid { grid-template-columns: 1fr; }
  .menu-toolbar { align-items: stretch; flex-direction: column; }
  .menu-search { min-width: 0; width: 100%; }
  .menu-filter-buttons { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
  .menu-filter { flex: 0 0 auto; }
  .menu-side-stack { grid-template-columns: 1fr; }
  .module-placeholder { margin: 20px auto; padding: 32px 20px; }
}

/* ========================================================================== 
   Orders Screen
   ========================================================================== */

.order-status-card {
  display: grid;
  grid-template-columns: minmax(250px, 1.2fr) minmax(430px, 1.5fr) auto;
  align-items: center;
  gap: 22px;
  margin-bottom: 18px;
  padding: 20px;
  border: 1px solid rgba(72,17,178,.13);
  border-radius: var(--spce-radius);
  background: linear-gradient(135deg, rgba(3,116,223,.07), #fff 42%, rgba(216,49,145,.08));
  box-shadow: var(--spce-shadow);
}
.order-status-main { display: flex; align-items: center; gap: 14px; }
.order-status-main h2 { margin: 0; font-family: var(--spce-font-display); font-size: 1.2rem; letter-spacing: -.03em; }
.order-status-main p { margin: 3px 0 0; color: var(--spce-muted); font-size: .76rem; }
.order-live-pill { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; border-radius: 999px; background: rgba(26,168,115,.1); color: var(--spce-green); font-size: .68rem; font-weight: 800; }
.order-live-pill i { font-size: .48rem; }
.order-channel-status { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.order-channel-status > div { display: grid; grid-template-columns: 34px minmax(0,1fr) 18px; align-items: center; gap: 8px; min-width: 0; padding: 9px 10px; border: 1px solid var(--spce-border); border-radius: 13px; background: rgba(255,255,255,.76); }
.order-channel-status small, .order-channel-status strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.order-channel-status small { color: var(--spce-muted); font-size: .58rem; }
.order-channel-status strong { margin-top: 1px; font-size: .68rem; }
.channel-status-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: #fff; }
.channel-web { background: var(--spce-purple); }
.channel-pos { background: var(--spce-blue); }
.channel-kds { background: var(--spce-orange); color: var(--spce-ink); }
.channel-ok { color: var(--spce-green); font-size: .76rem; }
#websiteOrderingStatus.is-paused { background: rgba(243,81,108,.06); border-color: rgba(243,81,108,.16); }
#websiteOrderingStatus.is-paused .channel-web { background: #b6b0bd; }
#websiteOrderingStatus.is-paused .channel-ok { color: var(--spce-pink-2); }

.order-summary-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.order-summary-card { display: flex; align-items: center; gap: 12px; padding: 15px; border: 1px solid var(--spce-border); border-radius: 18px; background: #fff; box-shadow: var(--spce-shadow); }
.order-summary-card span, .order-summary-card strong, .order-summary-card small { display: block; }
.order-summary-card > div > span { color: var(--spce-muted); font-size: .68rem; font-weight: 600; }
.order-summary-card strong { margin-top: 1px; font-family: var(--spce-font-display); font-size: 1.3rem; }
.order-summary-card small { margin-top: 2px; color: #9c98a6; font-size: .62rem; }

.orders-workspace { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; align-items: start; }
.order-board-card { padding: 0; overflow: hidden; }
.order-board-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px; border-bottom: 1px solid var(--spce-border); }
.order-board-heading h2 { margin: 0; font-family: var(--spce-font-display); font-size: 1.05rem; letter-spacing: -.025em; }
.order-board-heading p { margin: 3px 0 0; color: var(--spce-muted); font-size: .7rem; }
.order-board-title-line { display: flex; align-items: center; gap: 8px; }
.open-orders-pill { display: inline-flex; align-items: center; gap: 4px; padding: 4px 7px; border-radius: 999px; background: rgba(216,49,145,.1); color: var(--spce-pink); font-size: .61rem; font-weight: 800; }
.order-board-controls { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.order-search { width: 230px; height: 40px; display: flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid var(--spce-border); border-radius: 11px; background: #fdfcff; color: var(--spce-muted); }
.order-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--spce-ink); font-size: .72rem; }
.order-select-wrap { height: 40px; display: flex; align-items: center; gap: 7px; padding: 0 10px; border: 1px solid var(--spce-border); border-radius: 11px; background: #fdfcff; color: var(--spce-muted); }
.order-select-wrap select { border: 0; outline: 0; background: transparent; color: var(--spce-ink); font-size: .7rem; font-weight: 700; cursor: pointer; }
.order-select-wrap i { font-size: .66rem; }

.order-status-tabs { display: flex; align-items: center; gap: 6px; padding: 12px 18px; border-bottom: 1px solid var(--spce-border); background: #faf9ff; overflow-x: auto; }
.order-status-tab { flex: 0 0 auto; border: 0; border-radius: 999px; padding: 7px 10px; background: transparent; color: var(--spce-muted); font-size: .68rem; font-weight: 800; }
.order-status-tab span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; padding: 0 5px; border-radius: 999px; background: #ebe7ee; color: #8d8795; font-size: .58rem; }
.order-status-tab.active { background: var(--spce-purple); color: #fff; }
.order-status-tab.active span { background: rgba(255,255,255,.18); color: #fff; }

.order-board { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); min-height: 660px; background: #f9f7ff; }
.order-lane { min-width: 0; border-right: 1px solid var(--spce-border); }
.order-lane:last-child { border-right: 0; }
.order-lane.is-hidden { display: none; }
.order-lane-header { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 13px 14px; border-bottom: 1px solid var(--spce-border); background: rgba(255,255,255,.68); }
.order-lane-header > div { display: flex; align-items: center; gap: 7px; }
.order-lane-header strong { font-family: var(--spce-font-display); font-size: .78rem; }
.order-lane-header small { color: var(--spce-muted); font-size: .59rem; }
.lane-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--spce-pink); }
.order-lane-preparing .lane-dot { background: var(--spce-purple); }
.order-lane-ready .lane-dot { background: var(--spce-green); }
.lane-count { min-width: 22px; height: 22px; display: grid; place-items: center; padding: 0 5px; border-radius: 999px; background: rgba(216,49,145,.09); color: var(--spce-pink); font-size: .59rem; font-weight: 800; }
.order-lane-preparing .lane-count { background: rgba(72,17,178,.09); color: var(--spce-purple); }
.order-lane-ready .lane-count { background: rgba(26,168,115,.09); color: var(--spce-green); }
.order-lane-body { display: grid; gap: 10px; padding: 12px; align-content: start; }
.order-lane-empty { display: none; place-items: center; align-content: center; min-height: 230px; padding: 28px 18px; color: var(--spce-muted); text-align: center; }
.order-lane-empty i { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 14px; background: rgba(72,17,178,.08); color: var(--spce-purple); }
.order-lane-empty strong, .order-lane-empty span { display: block; }
.order-lane-empty strong { color: var(--spce-ink); font-size: .75rem; }
.order-lane-empty span { margin-top: 3px; font-size: .65rem; }
.order-lane.is-empty .order-lane-empty { display: grid; }

.order-ticket { padding: 13px; border: 1px solid rgba(23,20,63,.08); border-radius: 16px; background: #fff; box-shadow: 0 10px 26px rgba(72,17,178,.055); transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease; }
.order-ticket:hover { transform: translateY(-2px); box-shadow: 0 15px 30px rgba(72,17,178,.085); }
.order-ticket.is-filtered { display: none; }
.order-ticket.is-moving { opacity: .35; transform: scale(.98); }
.order-ticket-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.order-ticket-top > div { display: flex; align-items: center; gap: 7px; min-width: 0; }
.order-ticket-top > div > strong { font-family: var(--spce-font-display); font-size: .78rem; }
.order-channel-pill { display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; border-radius: 999px; font-size: .55rem; font-weight: 800; white-space: nowrap; }
.order-channel-pill.website { background: rgba(72,17,178,.09); color: var(--spce-purple); }
.order-channel-pill.pos { background: rgba(3,116,223,.09); color: var(--spce-blue); }
.order-channel-pill.phone { background: rgba(252,137,59,.16); color: #a95c18; }
.order-age { display: inline-flex; align-items: center; gap: 4px; color: var(--spce-muted); font-size: .56rem; font-weight: 700; white-space: nowrap; }
.order-age.hot { color: var(--spce-pink-2); }
.order-age.scheduled { color: var(--spce-blue); }
.order-age.ready { color: var(--spce-green); }
.order-ticket-customer { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 9px; align-items: center; margin: 11px 0; padding-bottom: 10px; border-bottom: 1px solid #efedfb; }
.order-type-icon { width: 38px; height: 38px; display: grid !important; place-items: center; border-radius: 11px; color: #fff !important; }
.order-type-icon.pickup { background: linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); }
.order-type-icon.dinein { background: linear-gradient(135deg,var(--spce-blue),var(--spce-blue-2)); }
.order-type-icon.delivery { background: linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color: var(--spce-ink); }
.order-ticket-customer strong, .order-ticket-customer span { display: block; }
.order-ticket-customer strong { font-size: .72rem; }
.order-ticket-customer span { margin-top: 2px; color: var(--spce-muted); font-size: .61rem; }
.order-items { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }
.order-items li { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; color: #59576a; font-size: .62rem; }
.order-items li span:first-child { min-width: 0; }
.order-items b { margin-right: 4px; color: var(--spce-ink); }
.order-note, .guest-notified { display: flex; align-items: flex-start; gap: 6px; margin-top: 9px; padding: 7px 8px; border-radius: 9px; font-size: .58rem; line-height: 1.4; }
.order-note { background: rgba(252,137,59,.12); color: #9a591e; }
.guest-notified { background: rgba(26,168,115,.08); color: var(--spce-green); }
.order-ticket-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 11px; padding-top: 10px; border-top: 1px solid #efedfb; }
.order-ticket-footer small, .order-ticket-footer strong { display: block; }
.order-ticket-footer small { color: var(--spce-muted); font-size: .54rem; }
.order-ticket-footer strong { margin-top: 1px; font-family: var(--spce-font-display); font-size: .8rem; }
.order-advance { display: inline-flex; align-items: center; gap: 6px; border: 0; border-radius: 9px; padding: 7px 9px; background: var(--spce-pink); color: #fff; font-size: .59rem; font-weight: 800; }
.order-advance:hover { filter: brightness(.96); }
.order-advance.preparing { background: var(--spce-purple); }
.order-advance.ready { background: var(--spce-green); }
.order-filter-empty { display: none; place-items: center; align-content: center; min-height: 300px; padding: 36px; text-align: center; color: var(--spce-muted); }
.order-filter-empty.show { display: grid; }
.order-filter-empty i { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 15px; background: rgba(72,17,178,.08); color: var(--spce-purple); }
.order-filter-empty strong, .order-filter-empty span { display: block; }
.order-filter-empty strong { color: var(--spce-ink); font-size: .8rem; }
.order-filter-empty span { margin-top: 3px; font-size: .66rem; }
.order-board.is-empty { display: none; }

.orders-side-stack { display: grid; gap: 18px; }
.scheduled-orders-card, .fulfillment-card, .order-channel-health-card { padding: 18px; }
.scheduled-count { min-width: 28px; height: 28px; display: grid; place-items: center; border-radius: 999px; background: rgba(216,49,145,.1); color: var(--spce-pink); font-size: .66rem; font-weight: 800; }
.scheduled-order-list { display: grid; }
.scheduled-order { width: 100%; display: grid; grid-template-columns: 48px minmax(0,1fr) 12px; align-items: center; gap: 10px; padding: 11px 0; border: 0; border-top: 1px solid #efedfb; background: transparent; text-align: left; }
.scheduled-order:first-child { border-top: 0; }
.scheduled-order > span:nth-child(2) strong, .scheduled-order > span:nth-child(2) small { display: block; }
.scheduled-order > span:nth-child(2) strong { font-size: .7rem; }
.scheduled-order > span:nth-child(2) small { margin-top: 2px; color: var(--spce-muted); font-size: .61rem; }
.scheduled-order > i { color: #b7b1bd; font-size: .58rem; }
.scheduled-time { width: 46px; height: 46px; display: grid; place-items: center; align-content: center; border-radius: 12px; background: rgba(72,17,178,.08); color: var(--spce-purple); }
.scheduled-time strong, .scheduled-time small { display: block; line-height: 1; }
.scheduled-time strong { font-family: var(--spce-font-display); font-size: .72rem; }
.scheduled-time small { margin-top: 3px; font-size: .5rem; font-weight: 800; }
.scheduled-time.tomorrow { background: rgba(3,116,223,.08); color: var(--spce-blue); }
.side-card-link { width: 100%; display: flex; align-items: center; justify-content: space-between; margin-top: 4px; padding: 10px 0 0; border: 0; border-top: 1px solid #efedfb; background: transparent; color: var(--spce-purple); font-size: .65rem; font-weight: 800; }
.fulfillment-list { display: grid; }
.fulfillment-list > div { display: grid; grid-template-columns: 40px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px 0; border-top: 1px solid #efedfb; }
.fulfillment-list > div:first-child { border-top: 0; }
.fulfillment-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #fff; }
.fulfillment-icon.pickup { background: var(--spce-purple); }
.fulfillment-icon.delivery { background: var(--spce-orange); color: var(--spce-ink); }
.fulfillment-icon.dinein { background: var(--spce-blue); }
.fulfillment-list strong, .fulfillment-list small { display: block; }
.fulfillment-list strong { font-size: .69rem; }
.fulfillment-list small { margin-top: 2px; color: var(--spce-muted); font-size: .59rem; }
.fulfillment-list button { width: 28px; height: 28px; display: grid; place-items: center; border: 0; border-radius: 8px; background: #f4f2fb; color: var(--spce-purple); font-size: .58rem; }
.pace-good { padding: 4px 6px; border-radius: 999px; background: rgba(26,168,115,.09); color: var(--spce-green); font-size: .55rem; font-weight: 800; }
.order-tip-card { display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 12px; padding: 18px; border-radius: var(--spce-radius); background: linear-gradient(145deg,var(--spce-purple),#291070); color: #fff; box-shadow: var(--spce-shadow); }
.order-tip-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color: var(--spce-ink); }
.order-tip-card strong { font-family: var(--spce-font-display); }
.order-tip-card p { margin: 5px 0 0; color: rgba(255,255,255,.7); font-size: .68rem; line-height: 1.5; }

@media (max-width: 1399.98px) {
  .order-status-card { grid-template-columns: 1fr; }
  .order-channel-status { max-width: 760px; }
  .orders-workspace { grid-template-columns: minmax(0,1fr) 300px; }
  .order-board { grid-template-columns: repeat(3, minmax(280px,1fr)); overflow-x: auto; }
}

@media (max-width: 1199.98px) {
  .order-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .orders-workspace { grid-template-columns: 1fr; }
  .orders-side-stack { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .order-tip-card { grid-column: 1 / -1; }
}

@media (max-width: 767.98px) {
  .order-channel-status { grid-template-columns: 1fr; }
  .order-summary-grid { grid-template-columns: 1fr; }
  .order-board-heading { align-items: stretch; flex-direction: column; }
  .order-board-controls { justify-content: flex-start; }
  .order-search { flex: 1; min-width: 0; width: auto; }
  .order-select-wrap { flex: 0 0 auto; }
  .orders-side-stack { grid-template-columns: 1fr; }
  .order-board { grid-template-columns: repeat(3, minmax(265px, 82vw)); }
}

@media (max-width: 575.98px) {
  .order-board-controls { flex-direction: column; align-items: stretch; }
  .order-search, .order-select-wrap { width: 100%; }
  .order-select-wrap select { width: 100%; }
  .order-lane-header { padding-inline: 12px; }
  .order-lane-body { padding: 10px; }
}


/* ==========================================================================
   Reservations & Waitlist
   ========================================================================== */
.reservation-page-heading { margin-bottom: 16px; }
.reservation-subnav { display: flex; gap: 6px; margin: 0 0 18px; padding: 6px; overflow-x: auto; scrollbar-width: none; border: 1px solid var(--spce-border); border-radius: 17px; background: rgba(255,255,255,.78); box-shadow: 0 10px 28px rgba(72,17,178,.05); }
.reservation-subnav::-webkit-scrollbar { display: none; }
.reservation-subnav-link { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 8px 12px; border-radius: 11px; color: var(--spce-muted); font-size: .78rem; font-weight: 700; transition: color .18s ease, background .18s ease, box-shadow .18s ease; }
.reservation-subnav-link i { color: #9d99aa; }
.reservation-subnav-link:hover { color: var(--spce-purple); background: rgba(72,17,178,.06); }
.reservation-subnav-link.active { color: var(--spce-purple); background: #fff; box-shadow: 0 6px 18px rgba(72,17,178,.09); }
.reservation-subnav-link.active i { color: var(--spce-orange-2); }
.res-nav-count { min-width: 20px; height: 20px; display: grid; place-items: center; padding: 0 5px; border-radius: 999px; background: rgba(216,49,145,.12); color: var(--spce-pink); font-size: .64rem; }
.reservation-view { display: none; }
.reservation-view.active { display: block; animation: resViewIn .22s ease both; }
@keyframes resViewIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }

.reservation-daybar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; padding: 13px 15px; border: 1px solid var(--spce-border); border-radius: 18px; background: #fff; box-shadow: var(--spce-shadow); }
.res-date-controls { display: flex; align-items: center; gap: 11px; }
.res-date-controls > div span, .res-date-controls > div strong { display: block; }
.res-date-controls > div span { color: var(--spce-pink); font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.res-date-controls > div strong { margin-top: 1px; font-family: var(--spce-font-display); font-size: .88rem; }
.res-date-controls.compact > div { min-width: 88px; }
.res-icon-button { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--spce-border); border-radius: 10px; background: var(--spce-bg); color: var(--spce-muted); }
.res-icon-button:hover { color: var(--spce-purple); background: rgba(72,17,178,.07); }
.res-service-pill { display: inline-flex; align-items: center; gap: 8px; padding: 8px 11px; border-radius: 999px; background: rgba(26,168,115,.08); color: #327a61; font-size: .72rem; }
.res-service-pill strong { color: #176a4e; }
.res-live-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--spce-green); box-shadow: 0 0 0 4px rgba(26,168,115,.12); }

.res-summary-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 16px; }
.res-summary-card { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 15px; border: 1px solid var(--spce-border); border-radius: 18px; background: #fff; box-shadow: var(--spce-shadow); }
.res-summary-card > div { min-width: 0; }
.res-summary-card > div > span, .res-summary-card strong, .res-summary-card small { display: block; }
.res-summary-card > div > span { overflow: hidden; color: var(--spce-muted); font-size: .68rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.res-summary-card strong { margin-top: 1px; font-family: var(--spce-font-display); font-size: 1.28rem; }
.res-summary-card small { margin-top: 2px; color: #9c98a6; font-size: .62rem; }
.positive-text { color: var(--spce-green); font-style: normal; }

.host-stand-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(330px,.85fr); gap: 16px; align-items: start; }
.res-floor-card { min-width: 0; }
.res-card-heading { align-items: flex-start; }
.res-floor-controls { display: flex; align-items: center; gap: 10px; }
.res-legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px 10px; color: var(--spce-muted); font-size: .61rem; font-weight: 600; }
.res-legend span { display: inline-flex; align-items: center; gap: 5px; }
.res-legend i, .res-chart-legend i { width: 8px; height: 8px; display: inline-block; border-radius: 50%; }
.res-legend i.available { background: #fff; border: 2px solid #8ecab5; }
.res-legend i.reserved { background: var(--spce-orange); }
.res-legend i.seated { background: var(--spce-purple); }
.res-legend i.dirty { background: #a7a4b1; }
.res-floor-section-label { display: flex; align-items: baseline; justify-content: space-between; margin: 4px 0 12px; padding: 0 2px 8px; border-bottom: 1px solid var(--spce-border); }
.res-floor-section-label span { font-family: var(--spce-font-display); font-size: .79rem; font-weight: 700; }
.res-floor-section-label small { color: var(--spce-muted); font-size: .62rem; }
.res-floor-plan { display: grid; grid-template-columns: repeat(4,minmax(70px,1fr)); gap: 18px 22px; min-height: 375px; padding: 22px; border-radius: 20px; background: linear-gradient(135deg,rgba(72,17,178,.035),rgba(3,116,223,.035)), repeating-linear-gradient(0deg,transparent,transparent 31px,rgba(23,20,63,.025) 32px), repeating-linear-gradient(90deg,transparent,transparent 31px,rgba(23,20,63,.025) 32px); }
.floor-table { position: relative; min-width: 70px; min-height: 70px; display: grid; place-items: center; align-content: center; gap: 1px; align-self: center; justify-self: center; border: 2px solid transparent; background: #fff; color: var(--spce-ink); box-shadow: 0 8px 18px rgba(72,17,178,.08); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.floor-table:hover, .floor-table.selected { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(72,17,178,.14); }
.floor-table.round { width: 72px; height: 72px; border-radius: 50%; }
.floor-table.square { width: 78px; height: 78px; border-radius: 17px; }
.floor-table.booth { width: 112px; height: 72px; border-radius: 22px; }
.floor-table strong { font-family: var(--spce-font-display); font-size: .83rem; }
.floor-table > span { display: grid; place-items: center; min-width: 20px; height: 18px; padding: 0 5px; border-radius: 999px; background: rgba(23,20,63,.06); color: var(--spce-muted); font-size: .58rem; }
.floor-table small { margin-top: 1px; font-size: .54rem; font-weight: 700; }
.floor-table.available { border-color: rgba(26,168,115,.38); }
.floor-table.available::after { content: ''; position: absolute; top: 7px; right: 7px; width: 7px; height: 7px; border-radius: 50%; background: var(--spce-green); }
.floor-table.reserved { border-color: rgba(252,137,59,.42); background: #fffaf5; }
.floor-table.reserved small { color: #b66c2a; }
.floor-table.seated { border-color: rgba(72,17,178,.2); background: linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); color: #fff; }
.floor-table.seated > span { background: rgba(255,255,255,.13); color: rgba(255,255,255,.78); }
.floor-table.seated small { color: rgba(255,255,255,.65); }
.floor-table.dirty { border-color: rgba(103,99,125,.25); background: #efedf8; color: #767481; }
.floor-table.selected { outline: 3px solid rgba(3,116,223,.16); border-color: var(--spce-blue); }
.floor-table.is-filtered { display: none; }
.res-floor-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 12px; color: var(--spce-muted); font-size: .64rem; }
.res-floor-footer i { color: var(--spce-blue); margin-right: 5px; }
.host-queue-stack { display: grid; gap: 16px; }
.host-queue-card, .host-wait-card { min-width: 0; }
.res-text-link { border: 0; background: transparent; color: var(--spce-purple); font-size: .68rem; font-weight: 800; }
.host-reservation-list { display: grid; gap: 7px; }
.host-reservation-item { display: grid; grid-template-columns: 44px minmax(0,1fr) auto 34px; align-items: center; gap: 9px; padding: 9px; border: 1px solid var(--spce-border); border-radius: 13px; background: #fff; }
.host-time { text-align: center; }
.host-time strong, .host-time span { display: block; }
.host-time strong { font-family: var(--spce-font-display); font-size: .84rem; }
.host-time span { margin-top: -2px; color: var(--spce-muted); font-size: .54rem; font-weight: 700; }
.host-guest { min-width: 0; }
.host-guest strong, .host-guest span, .host-guest small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.host-guest strong { font-size: .75rem; }
.host-guest span { color: var(--spce-muted); font-size: .61rem; }
.host-guest small { color: #9d99a7; font-size: .56rem; }
.host-seat-button { width: 32px; height: 32px; display: grid; place-items: center; border: 0; border-radius: 9px; background: rgba(72,17,178,.08); color: var(--spce-purple); }
.host-seat-button:hover { background: var(--spce-purple); color: #fff; }
.res-status { display: inline-flex; align-items: center; justify-content: center; min-height: 24px; padding: 4px 8px; border-radius: 999px; font-size: .58rem; font-weight: 800; white-space: nowrap; }
.res-status.confirmed { background: rgba(3,116,223,.09); color: #226e9f; }
.res-status.arrived { background: rgba(252,137,59,.13); color: #a65f20; }
.res-status.seated { background: rgba(72,17,178,.1); color: var(--spce-purple); }
.res-status.completed { background: rgba(26,168,115,.09); color: #277b5e; }
.res-status.cancelled { background: rgba(216,49,145,.09); color: #a34474; }
.host-wait-list { display: grid; gap: 7px; }
.host-wait-item { display: grid; grid-template-columns: 28px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px; border-radius: 12px; background: var(--spce-bg); }
.wait-position { width: 25px; height: 25px; display: grid !important; place-items: center; border-radius: 8px; background: var(--spce-orange); color: var(--spce-ink) !important; font-family: var(--spce-font-display); font-size: .68rem; font-weight: 800; }
.host-wait-item strong, .host-wait-item span { display: block; }
.host-wait-item strong { font-size: .7rem; }
.host-wait-item > div > span { color: var(--spce-muted); font-size: .58rem; }
.wait-notify-mini { border: 0; border-radius: 8px; padding: 6px 8px; background: #fff; color: var(--spce-purple); font-size: .6rem; font-weight: 800; box-shadow: 0 4px 12px rgba(72,17,178,.05); }
.wait-notify-mini.notified { background: rgba(26,168,115,.08); color: #277b5e; }

/* Reservations list */
.reservation-list-card { padding-top: 15px; }
.res-list-toolbar { display: flex; align-items: center; gap: 10px; margin-bottom: 13px; }
.res-search { flex: 1; min-width: 220px; height: 40px; display: flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid var(--spce-border); border-radius: 11px; background: var(--spce-bg); color: #aaa6b3; }
.res-search.wide { max-width: 520px; }
.res-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--spce-ink); font-size: .72rem; }
.res-select { height: 40px; display: flex; align-items: center; gap: 6px; padding: 0 8px 0 10px; border: 1px solid var(--spce-border); border-radius: 11px; background: var(--spce-bg); color: #aaa6b3; }
.res-select select { min-width: 125px; border: 0; outline: 0; background: transparent; color: var(--spce-ink); font-size: .7rem; }
.reservation-table-wrap { overflow-x: auto; }
.reservation-table { width: 100%; min-width: 880px; border-collapse: collapse; }
.reservation-table th { padding: 10px 12px; border-bottom: 1px solid var(--spce-border); color: #9995a4; font-size: .58rem; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.reservation-table td { padding: 12px; border-bottom: 1px solid rgba(23,20,63,.055); font-size: .69rem; vertical-align: middle; }
.reservation-table tr:last-child td { border-bottom: 0; }
.reservation-record.is-hidden { display: none; }
.res-guest-cell { display: flex; align-items: center; gap: 9px; }
.guest-avatar { width: 32px; height: 32px; display: grid !important; place-items: center; flex: 0 0 32px; border-radius: 10px; color: #fff !important; font-size: .62rem; font-weight: 800; }
.guest-avatar.large { width: 43px; height: 43px; flex-basis: 43px; border-radius: 13px; font-size: .72rem; }
.guest-avatar.purple { background: linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.guest-avatar.orange { background: linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color: var(--spce-ink); }.guest-avatar.pink { background: linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.guest-avatar.blue { background: linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.res-guest-cell strong, .res-guest-cell span { display: block; }
.res-guest-cell strong { font-size: .69rem; }.res-guest-cell span { color: var(--spce-muted); font-size: .58rem; }
.source-pill { display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border-radius: 8px; background: rgba(3,116,223,.07); color: #3c7b9f; font-size: .58rem; font-weight: 700; }.source-pill.google { background: rgba(252,137,59,.1); color: #a86a2e; }.source-pill.phone { background: rgba(72,17,178,.07); color: var(--spce-purple); }.source-pill.social { background: rgba(216,49,145,.08); color: var(--spce-pink); }
.res-empty { display: none; place-items: center; padding: 40px 20px; text-align: center; color: var(--spce-muted); }.res-empty.show { display: grid; }.res-empty i { margin-bottom: 9px; color: var(--spce-purple); font-size: 1.8rem; }.res-empty strong,.res-empty span { display: block; }.res-empty strong { color: var(--spce-ink); font-family: var(--spce-font-display); }.res-empty span { margin-top: 3px; font-size: .67rem; }

/* Waitlist */
.waitlist-layout { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(280px,.65fr); gap: 16px; align-items: start; }.waitlist-side-stack { display: grid; gap: 16px; }.waitlist-table-head { display: grid; grid-template-columns: 34px 1.25fr 60px 105px 80px 120px 150px; gap: 10px; padding: 7px 10px; color: #9a96a4; font-size: .56rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }.waitlist-rows { display: grid; gap: 7px; }.waitlist-row { display: grid; grid-template-columns: 34px 1.25fr 60px 105px 80px 120px 150px; align-items: center; gap: 10px; padding: 11px 10px; border: 1px solid var(--spce-border); border-radius: 13px; background: #fff; transition: opacity .18s ease, transform .18s ease; }.waitlist-row.is-seating { opacity: 0; transform: translateX(20px); }.wait-position.large { width: 28px; height: 28px; }.wait-guest strong,.wait-guest span,.wait-elapsed strong,.wait-elapsed span { display: block; }.wait-guest strong { font-size: .7rem; }.wait-guest span,.wait-elapsed span { color: var(--spce-muted); font-size: .57rem; }.wait-elapsed strong,.wait-quote,.wait-party { font-size: .68rem; }.preference-pill { display: inline-flex; align-items: center; gap: 5px; color: var(--spce-purple); font-size: .59rem; font-weight: 700; }.preference-pill.patio { color: #b46b28; }.wait-actions { display: flex; gap: 6px; }.wait-actions button { min-height: 30px; display: inline-flex; align-items: center; gap: 5px; border: 0; border-radius: 9px; padding: 6px 8px; font-size: .58rem; font-weight: 800; }.waitlist-notify { background: rgba(3,116,223,.08); color: #2474a6; }.waitlist-notify.notified { background: rgba(26,168,115,.09); color: #28795e; }.waitlist-seat { background: var(--spce-purple); color: #fff; }.wait-estimates { display: grid; gap: 8px; }.wait-estimates > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px; border-radius: 11px; background: var(--spce-bg); }.wait-estimates span { color: var(--spce-muted); font-size: .64rem; }.wait-estimates strong { font-size: .69rem; }.waitlist-message-card { text-align: left; }.waitlist-message-card .section-icon { margin-bottom: 12px; }.waitlist-message-card h3 { font-size: .95rem; }.waitlist-message-card p { color: var(--spce-muted); font-size: .67rem; }

/* Tables & Sections */
.tables-layout { display: grid; grid-template-columns: minmax(0,1.55fr) 300px; gap: 16px; align-items: start; }.section-filter-row { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 13px; }.section-filter { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; border: 1px solid var(--spce-border); border-radius: 10px; padding: 6px 9px; background: #fff; color: var(--spce-muted); font-size: .64rem; font-weight: 700; }.section-filter span { min-width: 18px; height: 18px; display: grid; place-items: center; padding: 0 4px; border-radius: 999px; background: var(--spce-bg); font-size: .56rem; }.section-filter.active { border-color: rgba(72,17,178,.22); background: rgba(72,17,178,.07); color: var(--spce-purple); }.res-floor-plan.editor { min-height: 470px; grid-template-columns: repeat(4,minmax(75px,1fr)); }.table-inspector { position: sticky; top: calc(var(--topbar-height) + 18px); }.selected-table-icon { width: 64px; height: 64px; display: grid; place-items: center; margin: 14px auto 6px; border-radius: 20px; background: linear-gradient(135deg,rgba(72,17,178,.12),rgba(3,116,223,.11)); color: var(--spce-purple); font-size: 1.5rem; }.table-inspector > h2,.table-inspector > p { text-align: center; }.table-inspector > h2 { margin-bottom: 2px; font-size: 1.35rem; }.table-inspector > p { color: var(--spce-muted); font-size: .67rem; }.inspector-fields,.settings-form-grid { display: grid; gap: 10px; margin: 16px 0; }.inspector-fields label,.settings-form-grid label,.settings-textarea { display: grid; gap: 5px; color: var(--spce-muted); font-size: .61rem; font-weight: 700; }.inspector-fields input,.inspector-fields select,.settings-form-grid select,.settings-textarea textarea { min-height: 39px; width: 100%; border: 1px solid var(--spce-border); border-radius: 10px; padding: 8px 10px; outline: 0; background: var(--spce-bg); color: var(--spce-ink); font-size: .68rem; }.inspector-fields input:focus,.inspector-fields select:focus,.settings-form-grid select:focus,.settings-textarea textarea:focus { border-color: rgba(72,17,178,.35); box-shadow: 0 0 0 3px rgba(72,17,178,.06); }

/* Guests */
.guest-directory-card { min-height: 420px; }.guest-directory { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }.guest-card { padding: 14px; border: 1px solid var(--spce-border); border-radius: 16px; background: #fff; }.guest-card.is-hidden { display: none; }.guest-card-top { display: grid; grid-template-columns: 43px minmax(0,1fr) auto; align-items: center; gap: 10px; }.guest-card-top > div strong,.guest-card-top > div span { display: block; }.guest-card-top > div strong { font-size: .74rem; }.guest-card-top > div span { color: var(--spce-muted); font-size: .58rem; }.guest-tag { padding: 5px 7px; border-radius: 999px; background: rgba(72,17,178,.08); color: var(--spce-purple); font-size: .55rem; font-weight: 800; }.guest-tag.vip { background: rgba(252,137,59,.13); color: #9b5e24; }.guest-tag.returning { background: rgba(3,116,223,.08); color: #3179a2; }.guest-tag.newish { background: rgba(216,49,145,.08); color: var(--spce-pink); }.guest-meta-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin: 13px 0 10px; }.guest-meta-grid span { padding: 8px; border-radius: 10px; background: var(--spce-bg); }.guest-meta-grid small,.guest-meta-grid strong { display: block; }.guest-meta-grid small { color: var(--spce-muted); font-size: .53rem; }.guest-meta-grid strong { margin-top: 2px; font-size: .72rem; }.guest-card p { margin: 0 0 9px; color: var(--spce-muted); font-size: .61rem; }.guest-card p i { color: var(--spce-pink); margin-right: 5px; }.guest-tags { display: flex; flex-wrap: wrap; gap: 5px; }.guest-tags span { padding: 4px 6px; border-radius: 7px; background: rgba(72,17,178,.06); color: var(--spce-purple); font-size: .53rem; font-weight: 700; }

/* Reservation analytics */
.analytics-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); gap: 16px; }.res-analytics-wide { min-width: 0; }.res-period-pill { padding: 6px 8px; border-radius: 8px; background: var(--spce-bg); color: var(--spce-muted); font-size: .59rem; font-weight: 700; }.res-bar-chart { height: 260px; display: flex; align-items: end; gap: 12px; padding: 20px 8px 0; border-bottom: 1px solid var(--spce-border); background: repeating-linear-gradient(to bottom,rgba(23,20,63,.04) 0,rgba(23,20,63,.04) 1px,transparent 1px,transparent 64px); }.res-bar-group { flex: 1; min-width: 0; display: grid; gap: 7px; height: 100%; align-items: end; text-align: center; }.res-bars { height: calc(100% - 20px); display: flex; align-items: end; justify-content: center; gap: 4px; }.res-bars span { width: min(16px,42%); min-height: 8px; border-radius: 6px 6px 2px 2px; }.reserved-bar { background: linear-gradient(180deg,var(--spce-purple-2),var(--spce-purple)); }.walkin-bar { background: linear-gradient(180deg,var(--spce-orange),var(--spce-orange-2)); }.res-bar-group small { color: var(--spce-muted); font-size: .58rem; }.res-chart-legend { display: flex; justify-content: flex-end; gap: 13px; margin-top: 10px; color: var(--spce-muted); font-size: .58rem; }.res-chart-legend span { display: inline-flex; align-items: center; gap: 5px; }.res-chart-legend i.reserved { background: var(--spce-purple); }.res-chart-legend i.walkins { background: var(--spce-orange-2); }.res-source-chart { display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 14px; min-height: 250px; }.res-source-donut { width: 145px; height: 145px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--spce-purple) 0 46%,var(--spce-blue) 46% 74%,var(--spce-orange) 74% 91%,var(--spce-pink) 91% 100%); position: relative; }.res-source-donut::after { content: ''; position: absolute; inset: 28px; border-radius: 50%; background: #fff; }.res-source-donut > div { position: relative; z-index: 2; text-align: center; }.res-source-donut strong,.res-source-donut span { display: block; }.res-source-donut strong { font-family: var(--spce-font-display); font-size: .95rem; }.res-source-donut span { color: var(--spce-muted); font-size: .55rem; }.res-source-legend { display: grid; gap: 8px; }.res-source-legend > div { display: grid; grid-template-columns: 10px 1fr auto; align-items: center; gap: 7px; font-size: .62rem; }.res-source-legend i { width: 8px; height: 8px; border-radius: 50%; }.res-source-legend i.web { background: var(--spce-purple); }.res-source-legend i.google { background: var(--spce-blue); }.res-source-legend i.phone { background: var(--spce-orange); }.res-source-legend i.other { background: var(--spce-pink); }.res-source-legend span { color: var(--spce-muted); }.res-heatmap { display: grid; grid-template-columns: 44px repeat(5,1fr); gap: 5px; }.heatmap-times { display: contents; }.heatmap-times span { padding-bottom: 4px; color: var(--spce-muted); font-size: .54rem; text-align: center; }.heatmap-times::before { content: ''; }.heatmap-row { display: contents; }.heatmap-row strong { align-self: center; color: var(--spce-muted); font-size: .58rem; }.heatmap-row span { min-height: 38px; border-radius: 7px; background: rgba(72,17,178,.05); }.heatmap-row .h1 { background: rgba(72,17,178,.1); }.heatmap-row .h2 { background: rgba(72,17,178,.18); }.heatmap-row .h3 { background: rgba(72,17,178,.3); }.heatmap-row .h4 { background: rgba(72,17,178,.48); }.heatmap-row .h5 { background: rgba(72,17,178,.72); }.section-performance { display: grid; gap: 8px; }.section-performance > div { display: flex; justify-content: space-between; gap: 10px; padding: 10px; border-radius: 11px; background: var(--spce-bg); font-size: .65rem; }.section-performance span { display: inline-flex; align-items: center; gap: 7px; color: var(--spce-muted); }.section-performance strong small { color: var(--spce-muted); font-weight: 500; }.section-dot { width: 8px; height: 8px; border-radius: 50%; }.section-dot.purple { background: var(--spce-purple); }.section-dot.orange { background: var(--spce-orange); }.section-dot.blue { background: var(--spce-blue); }

/* Reservation settings */
.settings-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(280px,.6fr); gap: 16px; align-items: start; }.settings-main-stack,.settings-side-stack { display: grid; gap: 16px; }.reservation-settings-card { min-width: 0; }.settings-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.setting-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 12px 0; border-top: 1px solid var(--spce-border); }.setting-row.compact { padding: 10px 0; }.setting-row > div strong,.setting-row > div span { display: block; }.setting-row > div strong { font-size: .69rem; }.setting-row > div span { color: var(--spce-muted); font-size: .58rem; }.settings-textarea { margin: 0 0 12px; }.settings-textarea textarea { min-height: 88px; resize: vertical; }.settings-widget-copy { color: var(--spce-muted); font-size: .66rem; }.widget-status { display: grid; gap: 7px; margin: 14px 0; padding: 11px; border-radius: 12px; background: var(--spce-bg); }.widget-status span { color: #277b5e; font-size: .61rem; font-weight: 800; }.widget-status span i { margin-right: 5px; }.widget-status strong { overflow-wrap: anywhere; font-size: .62rem; }

@media (max-width: 1240px) {
  .res-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .host-stand-grid,.waitlist-layout,.tables-layout,.settings-layout { grid-template-columns: 1fr; }
  .table-inspector { position: static; }
  .waitlist-table-head,.waitlist-row { grid-template-columns: 34px 1.2fr 50px 90px 70px 110px 145px; }
  .analytics-grid { grid-template-columns: 1fr; }
}
@media (max-width: 991.98px) {
  .reservation-daybar { flex-wrap: wrap; }
  .reservation-subnav { margin-inline: -2px; }
  .res-floor-plan,.res-floor-plan.editor { grid-template-columns: repeat(4,minmax(64px,1fr)); padding: 16px; gap: 15px; }
  .guest-directory { grid-template-columns: 1fr; }
  .res-list-toolbar { flex-wrap: wrap; align-items: stretch; }
  .res-search { order: 2; width: 100%; flex-basis: 100%; }
  .res-search.wide { max-width: none; }
  .waitlist-main-card { overflow-x: auto; }
  .waitlist-table-head,.waitlist-row { min-width: 800px; }
}
@media (max-width: 767.98px) {
  .res-summary-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .res-summary-card { padding: 12px; }
  .res-summary-card .summary-icon { width: 38px; height: 38px; flex-basis: 38px; }
  .res-floor-controls { display: none; }
  .res-floor-plan,.res-floor-plan.editor { grid-template-columns: repeat(3,minmax(62px,1fr)); min-height: 0; gap: 12px; padding: 14px; }
  .floor-table.booth { width: 95px; }
  .res-floor-footer { align-items: flex-start; flex-direction: column; }
  .host-reservation-item { grid-template-columns: 42px minmax(0,1fr) auto; }
  .host-reservation-item .res-status { display: none; }.host-seat-button { grid-column: 3; grid-row: 1; }
  .settings-form-grid { grid-template-columns: 1fr; }
  .res-source-chart { grid-template-columns: 1fr; justify-items: center; }.res-source-legend { width: 100%; }
}
@media (max-width: 575.98px) {
  .res-summary-grid { grid-template-columns: 1fr; }
  .reservation-daybar { align-items: flex-start; }
  .res-service-pill { width: 100%; justify-content: center; }
  .res-floor-plan,.res-floor-plan.editor { grid-template-columns: repeat(2,minmax(70px,1fr)); }
  .guest-meta-grid { grid-template-columns: 1fr 1fr 1fr; }
  .res-heatmap { grid-template-columns: 34px repeat(5,minmax(42px,1fr)); overflow-x: auto; }
  .res-bar-chart { gap: 7px; }
}

/* ==========================================================================
   Catering
   ========================================================================== */
.catering-page-heading { margin-bottom: 16px; }
.catering-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.catering-subnav::-webkit-scrollbar { display:none; }
.catering-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.catering-subnav-link i { color:#9d99aa; }
.catering-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.catering-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.catering-subnav-link.active i { color:var(--spce-orange-2); }
.cat-nav-count { min-width:20px; height:20px; display:grid; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.catering-view { display:none; }
.catering-view.active { display:block; animation:catViewIn .22s ease both; }
@keyframes catViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.catering-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.catering-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.catering-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.catering-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.catering-summary-grid.compact { margin-bottom:18px; }
.catering-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.catering-summary-card > div { min-width:0; }
.catering-summary-card span,.catering-summary-card strong,.catering-summary-card small { display:block; }
.catering-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.catering-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }
.catering-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }

.catering-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.catering-side-stack { display:grid; gap:16px; }
.catering-pipeline-card { min-width:0; }
.catering-pipeline { display:grid; grid-template-columns:repeat(4,minmax(190px,1fr)); gap:10px; overflow-x:auto; padding-bottom:3px; }
.pipeline-stage { min-width:190px; padding:10px; border-radius:15px; background:var(--spce-bg); }
.pipeline-stage-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; color:var(--spce-muted); font-size:.63rem; font-weight:800; }
.pipeline-stage-head span { display:inline-flex; align-items:center; gap:6px; }
.pipeline-stage-head strong { min-width:22px; height:22px; display:grid; place-items:center; border-radius:999px; background:#fff; color:var(--spce-ink); font-size:.58rem; }
.pipeline-dot { width:8px; height:8px; display:inline-block; border-radius:50%; }
.pipeline-dot.new { background:var(--spce-pink); }.pipeline-dot.proposal { background:var(--spce-blue); }.pipeline-dot.deposit { background:var(--spce-orange-2); }.pipeline-dot.confirmed { background:var(--spce-green); }
.pipeline-card { width:100%; display:block; margin-top:7px; padding:10px; border:1px solid var(--spce-border); border-radius:12px; background:#fff; text-align:left; box-shadow:0 6px 15px rgba(72,17,178,.04); }
.pipeline-card:hover { border-color:rgba(72,17,178,.2); transform:translateY(-1px); }
.pipeline-card.confirmed { border-color:rgba(26,168,115,.15); }
.pipeline-card span,.pipeline-card b { display:block; }
.pipeline-card-top { display:flex !important; align-items:flex-start; justify-content:space-between; gap:6px; }
.pipeline-card-top strong { font-size:.68rem; }.pipeline-card-top small { color:#a19ca9; font-size:.52rem; white-space:nowrap; }
.pipeline-card > span:not(.pipeline-card-top) { margin-top:4px; color:var(--spce-muted); font-size:.56rem; }
.pipeline-card b { margin-top:6px; color:var(--spce-purple); font-family:var(--spce-font-display); font-size:.7rem; }
.next-event-list { display:grid; }
.next-event { width:100%; display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }
.next-event:first-child { border-top:0; }
.event-date { width:44px; height:44px; display:grid; place-items:center; align-content:center; border-radius:12px; color:#fff; }
.event-date.purple { background:var(--spce-purple); }.event-date.orange { background:var(--spce-orange); color:var(--spce-ink); }.event-date.blue { background:var(--spce-blue); }
.event-date strong,.event-date small { display:block; line-height:1; }.event-date strong { font-family:var(--spce-font-display); font-size:.8rem; }.event-date small { margin-top:3px; font-size:.48rem; font-weight:800; }
.next-event > span:nth-child(2) strong,.next-event > span:nth-child(2) small { display:block; }.next-event > span:nth-child(2) strong { font-size:.69rem; }.next-event > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.next-event > b { font-family:var(--spce-font-display); font-size:.7rem; }
.catering-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }
.catering-orbit-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:var(--spce-ink); }
.catering-orbit-card strong { font-family:var(--spce-font-display); }.catering-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.7); font-size:.65rem; }.catering-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }
.catering-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.catering-revenue-layout { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; gap:18px; min-height:210px; }
.catering-donut,.catering-source-donut { position:relative; width:140px; height:140px; display:grid; place-items:center; margin:auto; border-radius:50%; background:conic-gradient(var(--spce-purple) 0 42%,var(--spce-pink) 42% 68%,var(--spce-orange) 68% 89%,var(--spce-blue) 89% 100%); }
.catering-donut::after,.catering-source-donut::after { content:''; position:absolute; inset:27px; border-radius:50%; background:#fff; }
.catering-donut > div,.catering-source-donut > div { position:relative; z-index:2; text-align:center; }.catering-donut strong,.catering-donut span,.catering-source-donut strong,.catering-source-donut span { display:block; }.catering-donut strong,.catering-source-donut strong { font-family:var(--spce-font-display); font-size:.93rem; }.catering-donut span,.catering-source-donut span { color:var(--spce-muted); font-size:.54rem; }
.catering-revenue-legend { display:grid; gap:9px; }.catering-revenue-legend > div { display:grid; grid-template-columns:9px minmax(0,1fr) auto; align-items:center; gap:7px; font-size:.63rem; }.catering-revenue-legend i { width:8px; height:8px; border-radius:50%; }.catering-revenue-legend span { color:var(--spce-muted); }.catering-revenue-legend .corporate,.catering-revenue-legend .website { background:var(--spce-purple); }.catering-revenue-legend .wedding,.catering-revenue-legend .google { background:var(--spce-pink); }.catering-revenue-legend .social,.catering-revenue-legend .referral { background:var(--spce-orange); }.catering-revenue-legend .other { background:var(--spce-blue); }
.catering-attention-list { display:grid; }.catering-attention { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.catering-attention:first-child { border-top:0; }.attention-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; }.attention-icon.orange { background:rgba(252,137,59,.15); color:#b46926; }.attention-icon.purple { background:rgba(72,17,178,.1); color:var(--spce-purple); }.attention-icon.blue { background:rgba(3,116,223,.1); color:var(--spce-blue); }.catering-attention > span:nth-child(2) strong,.catering-attention > span:nth-child(2) small { display:block; }.catering-attention > span:nth-child(2) strong { font-size:.69rem; }.catering-attention > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.catering-attention > i { color:#b5b0bd; font-size:.58rem; }

.catering-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.catering-search { min-width:250px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.catering-search.wide { width:min(520px,100%); }.catering-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }
.catering-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.catering-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.64rem; font-weight:800; }.catering-filter span { margin-left:3px; }.catering-filter.active { background:var(--spce-purple); color:#fff; }
.catering-table-wrap { overflow-x:auto; }.catering-lead-head,.catering-lead-row { min-width:900px; display:grid; grid-template-columns:minmax(230px,1.4fr) 105px 60px 85px 105px 70px 30px; align-items:center; gap:10px; }.catering-lead-head { padding:9px 10px; color:#9995a4; font-size:.56rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.catering-lead-row { padding:11px 10px; border-top:1px solid rgba(23,20,63,.055); font-size:.66rem; }.catering-lead-row.is-hidden { display:none; }
.lead-event { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.lead-avatar { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; font-size:.6rem; font-weight:800; }.lead-avatar.large { width:43px; height:43px; border-radius:13px; }.lead-avatar.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.lead-avatar.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.lead-avatar.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.lead-avatar.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color:var(--spce-ink); }.lead-event strong,.lead-event span { display:block; }.lead-event strong { font-size:.69rem; }.lead-event span { color:var(--spce-muted); font-size:.57rem; }
.cat-stage { display:inline-flex; justify-content:center; width:max-content; padding:5px 7px; border-radius:999px; font-size:.55rem; font-weight:800; }.cat-stage.new { background:rgba(216,49,145,.09); color:var(--spce-pink); }.cat-stage.proposal { background:rgba(3,116,223,.09); color:var(--spce-blue); }.cat-stage.deposit { background:rgba(252,137,59,.14); color:#a86325; }.cat-stage.confirmed { background:rgba(26,168,115,.09); color:#28795e; }
.cat-empty { display:none; place-items:center; padding:40px 20px; text-align:center; color:var(--spce-muted); }.cat-empty.show { display:grid; }.cat-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.cat-empty strong,.cat-empty span { display:block; }.cat-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.cat-empty span { margin-top:3px; font-size:.65rem; }

.cat-calendar-nav { display:flex; align-items:center; gap:10px; }.cat-calendar-nav strong { min-width:130px; text-align:center; font-family:var(--spce-font-display); font-size:.78rem; }.catering-calendar-layout { display:grid; grid-template-columns:minmax(0,1.5fr) 300px; gap:16px; align-items:start; }.catering-calendar-side { display:grid; gap:16px; }.cat-calendar-weekdays,.cat-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(95px,1fr)); }.cat-calendar-weekdays { padding:0 3px 7px; color:var(--spce-muted); font-size:.58rem; font-weight:800; text-align:center; }.cat-calendar-grid { border-top:1px solid var(--spce-border); border-left:1px solid var(--spce-border); }.cat-day { min-height:112px; padding:8px; border-right:1px solid var(--spce-border); border-bottom:1px solid var(--spce-border); background:#fff; }.cat-day > span { width:24px; height:24px; display:grid; place-items:center; border-radius:8px; font-size:.61rem; font-weight:800; }.cat-day.muted { background:#faf9fb; color:#bbb6c1; }.cat-day.today > span { background:var(--spce-purple); color:#fff; }.calendar-event { width:100%; display:block; margin-top:5px; padding:6px 7px; border:0; border-radius:8px; background:rgba(72,17,178,.09); color:var(--spce-purple); font-size:.56rem; font-weight:800; text-align:left; }.calendar-event small { display:block; margin-top:1px; opacity:.7; font-size:.49rem; }.calendar-event.proposal { background:rgba(3,116,223,.09); color:var(--spce-blue); }.calendar-event.deadline { background:rgba(252,137,59,.15); color:#9f5f24; }.calendar-event.confirmed.orange { background:rgba(216,49,145,.09); color:var(--spce-pink); }.calendar-event.confirmed.blue { background:rgba(26,168,115,.09); color:#2b795f; }
.calendar-detail-event { display:grid; grid-template-columns:40px minmax(0,1fr); gap:10px; align-items:start; padding:10px; border-radius:12px; background:var(--spce-bg); }.calendar-detail-event strong,.calendar-detail-event span,.calendar-detail-event small { display:block; }.calendar-detail-event strong { font-size:.68rem; }.calendar-detail-event span,.calendar-detail-event small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.calendar-checklist { display:grid; gap:7px; margin:12px 0; }.calendar-checklist div { display:flex; align-items:center; gap:7px; color:#397a64; font-size:.61rem; }.calendar-checklist div.pending { color:var(--spce-muted); }.cat-calendar-legend { display:grid; gap:8px; }.cat-calendar-legend span { display:flex; align-items:center; gap:7px; color:var(--spce-muted); font-size:.61rem; }.cat-calendar-legend i { width:9px; height:9px; border-radius:3px; }.cat-calendar-legend i.confirmed { background:var(--spce-purple); }.cat-calendar-legend i.proposal { background:var(--spce-blue); }.cat-calendar-legend i.deadline { background:var(--spce-orange); }

.client-count { color:var(--spce-muted); font-size:.64rem; }.catering-client-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }.catering-client-card { padding:14px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; }.catering-client-card.is-hidden { display:none; }.client-top { display:grid; grid-template-columns:43px minmax(0,1fr) auto; align-items:center; gap:10px; }.client-top > div strong,.client-top > div span { display:block; }.client-top > div strong { font-size:.72rem; }.client-top > div span { color:var(--spce-muted); font-size:.57rem; }.client-type { padding:5px 7px; border-radius:999px; font-size:.53rem; font-weight:800; }.client-type.corporate { background:rgba(3,116,223,.08); color:var(--spce-blue); }.client-type.social { background:rgba(216,49,145,.08); color:var(--spce-pink); }.client-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin:12px 0; }.client-stats span { padding:8px; border-radius:9px; background:var(--spce-bg); }.client-stats small,.client-stats strong { display:block; }.client-stats small { color:var(--spce-muted); font-size:.5rem; }.client-stats strong { margin-top:2px; font-size:.68rem; }.catering-client-card p { margin:0 0 9px; color:var(--spce-muted); font-size:.58rem; }.catering-client-card p i { color:var(--spce-orange-2); margin-right:4px; }.client-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:9px; border-top:1px solid #efedfb; color:var(--spce-muted); font-size:.56rem; }

.catering-item-head,.catering-item-row { min-width:940px; display:grid; grid-template-columns:minmax(250px,1.45fr) 90px 95px 85px 75px 60px 55px 30px; align-items:center; gap:10px; }.catering-item-head { padding:9px 10px; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.catering-item-row { padding:10px; border-top:1px solid rgba(23,20,63,.055); font-size:.63rem; }.catering-item-row.is-hidden { display:none; }.catering-item-name { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:9px; }.cat-item-icon,.category-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.cat-item-icon.purple,.category-icon.purple { background:var(--spce-purple); }.cat-item-icon.blue,.category-icon.blue { background:var(--spce-blue); }.cat-item-icon.orange,.category-icon.orange { background:var(--spce-orange); color:var(--spce-ink); }.cat-item-icon.pink,.category-icon.pink { background:var(--spce-pink); }.catering-item-name strong,.catering-item-name span { display:block; }.catering-item-name strong { font-size:.68rem; }.catering-item-name span { color:var(--spce-muted); font-size:.55rem; }

.catering-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.catering-category-card { display:grid; grid-template-columns:18px 42px minmax(0,1fr) 40px 30px; align-items:center; gap:10px; padding:14px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; box-shadow:var(--spce-shadow); }.catering-category-card > div strong,.catering-category-card > div span { display:block; }.catering-category-card > div strong { font-size:.72rem; }.catering-category-card > div span { color:var(--spce-muted); font-size:.58rem; }.category-icon { width:42px; height:42px; border-radius:12px; }

.catering-pdf-layout { display:grid; grid-template-columns:310px minmax(0,1fr); gap:18px; align-items:start; }.catering-pdf-controls { position:sticky; top:calc(var(--topbar-height) + 18px); }.settings-form-grid.one-col { grid-template-columns:1fr; }.settings-form-grid input { min-height:39px; width:100%; border:1px solid var(--spce-border); border-radius:10px; padding:8px 10px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.68rem; }.catering-pdf-preview-wrap { min-height:720px; display:grid; place-items:center; padding:35px; border-radius:22px; background:linear-gradient(135deg,#ece8f7,#f9f7ff); }.pdf-paper { width:min(100%,620px); min-height:760px; padding:42px 46px 34px; background:#fff; box-shadow:0 24px 55px rgba(46,30,78,.18); color:#2b2940; }.pdf-brand { display:flex; align-items:center; gap:10px; }.pdf-mark { width:42px; height:42px; display:grid !important; place-items:center; border-radius:50%; background:var(--spce-purple); color:#fff !important; }.pdf-brand strong,.pdf-brand span { display:block; }.pdf-brand strong { font-family:var(--spce-font-display); font-size:.75rem; letter-spacing:.08em; }.pdf-brand span { color:var(--spce-pink); font-size:.5rem; font-weight:800; letter-spacing:.15em; }.pdf-hero { margin:34px -46px 28px; padding:32px 46px; background:linear-gradient(135deg,var(--spce-purple),#1b125c); color:#fff; }.pdf-hero > span { color:var(--spce-orange); font-size:.5rem; font-weight:800; letter-spacing:.11em; }.pdf-hero h3 { margin:5px 0; font-family:var(--spce-font-display); font-size:2rem; letter-spacing:-.05em; }.pdf-hero p { max-width:430px; margin:0; color:rgba(255,255,255,.7); font-size:.65rem; }.pdf-menu-section { margin-top:24px; }.pdf-menu-section h4 { padding-bottom:7px; border-bottom:2px solid var(--spce-orange); color:var(--spce-purple); font-family:var(--spce-font-display); font-size:.7rem; letter-spacing:.09em; }.pdf-menu-line { display:flex; justify-content:space-between; gap:16px; padding:10px 0; border-bottom:1px solid #ece9f7; }.pdf-menu-line strong,.pdf-menu-line span { display:block; }.pdf-menu-line strong { font-size:.68rem; }.pdf-menu-line span { margin-top:2px; color:#777487; font-size:.56rem; }.pdf-menu-line b { flex:0 0 auto; font-size:.64rem; }.pdf-footer { display:flex; justify-content:space-between; gap:12px; margin-top:34px; padding-top:12px; border-top:1px solid #ece9f7; color:#8d8998; font-size:.5rem; }.pdf-footer strong { color:var(--spce-purple); }

.catering-analytics-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:16px; }.catering-analytics-grid .analytics-wide { min-width:0; }.catering-bar-chart { height:270px; display:flex; align-items:end; gap:14px; padding:24px 10px 5px; border-bottom:1px solid var(--spce-border); background:repeating-linear-gradient(to bottom,rgba(23,20,63,.04) 0,rgba(23,20,63,.04) 1px,transparent 1px,transparent 62px); }.cat-bar-group { flex:1; height:100%; display:grid; grid-template-rows:1fr auto auto; align-items:end; gap:3px; text-align:center; }.cat-bar-group > span { width:min(44px,70%); height:var(--h); justify-self:center; align-self:end; border-radius:8px 8px 3px 3px; background:linear-gradient(180deg,var(--spce-pink),var(--spce-purple)); }.cat-bar-group small { color:var(--spce-muted); font-size:.54rem; }.cat-bar-group b { font-size:.55rem; }.catering-source-layout { display:grid; grid-template-columns:140px minmax(0,1fr); align-items:center; gap:14px; min-height:220px; }.catering-source-donut { background:conic-gradient(var(--spce-purple) 0 48%,var(--spce-blue) 48% 72%,var(--spce-orange) 72% 90%,var(--spce-pink) 90% 100%); }.catering-funnel { display:grid; gap:7px; }.catering-funnel > div { width:var(--w); min-width:48%; display:flex; justify-content:space-between; gap:10px; margin:auto; padding:9px 11px; border-radius:10px; background:linear-gradient(90deg,rgba(72,17,178,.12),rgba(216,49,145,.08)); color:var(--spce-purple); font-size:.63rem; }.catering-funnel > div:nth-child(2) { background:rgba(3,116,223,.1); color:var(--spce-blue); }.catering-funnel > div:nth-child(3) { background:rgba(252,137,59,.14); color:#9d6129; }.catering-funnel > div:nth-child(4) { background:rgba(26,168,115,.1); color:#27795d; }.profit-list { display:grid; }.profit-list > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.profit-list > div:first-child { border-top:0; }.profit-list span strong,.profit-list span small { display:block; }.profit-list span strong { font-size:.67rem; }.profit-list span small { color:var(--spce-muted); font-size:.55rem; }.profit-list b { color:var(--spce-green); font-family:var(--spce-font-display); font-size:.72rem; }

.catering-settings-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:16px; align-items:start; }.catering-settings-main,.catering-settings-side { display:grid; gap:16px; }

@media (max-width:1399.98px) { .catering-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.catering-dashboard-grid { grid-template-columns:1fr; }.catering-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.catering-orbit-card { grid-column:auto; }.catering-pipeline { grid-template-columns:repeat(4,minmax(210px,1fr)); } }
@media (max-width:1199.98px) { .catering-calendar-layout,.catering-pdf-layout,.catering-settings-layout { grid-template-columns:1fr; }.catering-pdf-controls { position:static; }.catering-analytics-grid { grid-template-columns:1fr; }.catering-calendar-side { grid-template-columns:repeat(2,minmax(0,1fr)); }.cat-calendar-weekdays,.cat-calendar-grid { min-width:760px; }.catering-calendar-card { overflow-x:auto; } }
@media (max-width:991.98px) { .catering-dashboard-bottom { grid-template-columns:1fr; }.catering-client-grid,.catering-category-grid { grid-template-columns:1fr; }.catering-toolbar { align-items:stretch; flex-direction:column; }.catering-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }.catering-filter { flex:0 0 auto; }.catering-search { min-width:0; width:100%; }.catering-side-stack,.catering-calendar-side { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .catering-summary-grid { grid-template-columns:1fr; gap:10px; }.catering-view-header { align-items:flex-start; flex-direction:column; }.catering-revenue-layout,.catering-source-layout { grid-template-columns:1fr; }.catering-revenue-legend { width:100%; max-width:320px; margin:auto; }.catering-pdf-preview-wrap { padding:18px; min-height:0; overflow-x:auto; }.pdf-paper { min-width:540px; }.catering-category-card { grid-template-columns:16px 38px minmax(0,1fr) 40px 28px; }.client-stats { grid-template-columns:repeat(3,1fr); } }
@media (max-width:575.98px) { .catering-page-heading .page-heading-actions { width:100%; }.catering-page-heading .page-heading-actions .btn { flex:1; }.catering-summary-card { padding:12px; }.catering-orbit-card { padding:15px; }.cat-calendar-nav { width:100%; justify-content:space-between; }.catering-category-card { grid-template-columns:16px 38px minmax(0,1fr) 38px; }.catering-category-card .row-menu { display:none; }.client-top { grid-template-columns:43px minmax(0,1fr); }.client-type { grid-column:2; width:max-content; }.pdf-paper { transform-origin:top left; }.catering-bar-chart { gap:7px; }.cat-bar-group b { display:none; } }

/* ==========================================================================
   Customers / Restaurant CRM
   ========================================================================== */
.customer-page-heading { margin-bottom: 16px; }
.customer-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.customer-subnav::-webkit-scrollbar { display:none; }
.customer-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.customer-subnav-link i { color:#9d99aa; }
.customer-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.customer-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.customer-subnav-link.active i { color:var(--spce-orange-2); }
.customer-view { display:none; }
.customer-view.active { display:block; animation:customerViewIn .22s ease both; }
@keyframes customerViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.customer-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.customer-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.customer-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.customer-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.customer-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.customer-summary-card > div { min-width:0; }
.customer-summary-card span,.customer-summary-card strong,.customer-summary-card small { display:block; }
.customer-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.customer-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }
.customer-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.customer-summary-icon { width:42px; height:42px; flex:0 0 42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }
.customer-summary-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.customer-summary-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }
.customer-summary-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.customer-summary-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }

.customer-overview-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.customer-side-stack { display:grid; gap:16px; }
.customer-card-list { display:grid; gap:8px; }
.customer-recent-row { width:100%; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:10px; padding:11px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }
.customer-recent-row:first-child { border-top:0; }
.customer-avatar { width:40px; height:40px; display:grid !important; place-items:center; border-radius:12px; color:#fff !important; font-size:.62rem; font-weight:800; }
.customer-avatar.large { width:52px; height:52px; border-radius:15px; font-size:.76rem; }
.customer-avatar.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.customer-avatar.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }
.customer-avatar.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.customer-avatar.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }
.customer-avatar.green { background:linear-gradient(135deg,#36c28e,var(--spce-green)); }
.customer-recent-row > span:nth-child(2) strong,.customer-recent-row > span:nth-child(2) span { display:block; }
.customer-recent-row > span:nth-child(2) strong { font-size:.7rem; }
.customer-recent-row > span:nth-child(2) span { margin-top:2px; color:var(--spce-muted); font-size:.58rem; }
.customer-recent-value { text-align:right; }
.customer-recent-value strong,.customer-recent-value small { display:block; }
.customer-recent-value strong { font-family:var(--spce-font-display); font-size:.72rem; }
.customer-recent-value small { margin-top:2px; color:var(--spce-muted); font-size:.55rem; }

.customer-segment-mini-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.customer-segment-mini { padding:12px; border:1px solid var(--spce-border); border-radius:13px; background:var(--spce-bg); }
.customer-segment-mini-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.customer-segment-mini-top strong { font-size:.68rem; }
.customer-segment-mini-top span { color:var(--spce-purple); font-family:var(--spce-font-display); font-size:.78rem; font-weight:800; }
.customer-segment-mini p { margin:5px 0 0; color:var(--spce-muted); font-size:.56rem; line-height:1.45; }
.customer-source-layout { display:grid; grid-template-columns:145px minmax(0,1fr); align-items:center; gap:16px; min-height:210px; }
.customer-source-donut { position:relative; width:140px; height:140px; display:grid !important; place-items:center; margin:auto; border-radius:50%; background:conic-gradient(var(--spce-purple) 0 38%,var(--spce-blue) 38% 67%,var(--spce-orange) 67% 85%,var(--spce-pink) 85% 100%); }
.customer-source-donut::after { content:''; position:absolute; inset:27px; border-radius:50%; background:#fff; }
.customer-source-donut > div { position:relative; z-index:2; text-align:center; }
.customer-source-donut strong,.customer-source-donut span { display:block; }
.customer-source-donut strong { font-family:var(--spce-font-display); font-size:.92rem; }
.customer-source-donut span { color:var(--spce-muted); font-size:.54rem; }
.customer-source-legend { display:grid; gap:9px; }
.customer-source-legend > div { display:grid; grid-template-columns:9px minmax(0,1fr) auto; align-items:center; gap:7px; font-size:.61rem; }
.customer-source-legend i { width:8px; height:8px; display:block; border-radius:50%; }
.customer-source-legend span { color:var(--spce-muted); }
.customer-source-legend i.orders { background:var(--spce-purple); }.customer-source-legend i.reservations { background:var(--spce-blue); }.customer-source-legend i.catering { background:var(--spce-orange); }.customer-source-legend i.website { background:var(--spce-pink); }
.customer-insight-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }
.customer-insight-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }
.customer-insight-card strong { font-family:var(--spce-font-display); }
.customer-insight-card p { margin:5px 0 8px; color:rgba(255,255,255,.72); font-size:.65rem; }
.customer-insight-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }

.customer-directory-layout { display:grid; grid-template-columns:minmax(0,1fr) 335px; gap:16px; align-items:start; }
.customer-directory-card { padding:0; overflow:hidden; }
.customer-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid var(--spce-border); }
.customer-search { min-width:250px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }
.customer-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }
.customer-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.customer-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.63rem; font-weight:800; }
.customer-filter.active { background:var(--spce-purple); color:#fff; }
.customer-table-wrap { overflow-x:auto; }
.customer-table-head,.customer-row { min-width:870px; display:grid; grid-template-columns:minmax(250px,1.45fr) 75px 90px 95px 110px 105px 30px; align-items:center; gap:10px; }
.customer-table-head { padding:9px 14px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.customer-row { width:100%; padding:11px 14px; border:0; border-top:1px solid rgba(23,20,63,.055); background:#fff; text-align:left; font-size:.64rem; transition:background .15s ease; }
.customer-row:hover,.customer-row.active { background:#fbfaff; }
.customer-row.active { box-shadow:inset 3px 0 0 var(--spce-purple); }
.customer-row.is-hidden { display:none; }
.customer-name-cell { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; min-width:0; }
.customer-name-cell > span:nth-child(2) strong,.customer-name-cell > span:nth-child(2) span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.customer-name-cell > span:nth-child(2) strong { font-size:.69rem; }
.customer-name-cell > span:nth-child(2) span { margin-top:2px; color:var(--spce-muted); font-size:.56rem; }
.customer-tag { display:inline-flex; align-items:center; width:max-content; padding:5px 7px; border-radius:999px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.54rem; font-weight:800; }
.customer-tag.vip { background:rgba(252,137,59,.14); color:#9d6127; }.customer-tag.regular { background:rgba(3,116,223,.09); color:var(--spce-blue); }.customer-tag.new { background:rgba(216,49,145,.09); color:var(--spce-pink); }.customer-tag.lapsed { background:rgba(103,99,125,.1); color:#69677a; }
.customer-consent { display:inline-flex; align-items:center; gap:5px; font-size:.58rem; font-weight:800; }
.customer-consent.yes { color:var(--spce-green); }.customer-consent.partial { color:#ad692b; }.customer-consent.no { color:#8e8997; }
.customer-row-menu { width:30px; height:30px; display:grid !important; place-items:center; border:0; border-radius:9px; background:transparent; color:var(--spce-muted); }
.customer-row-menu:hover { background:#f2eff9; color:var(--spce-purple); }
.customer-empty { display:none; place-items:center; padding:42px 20px; text-align:center; color:var(--spce-muted); }
.customer-empty.show { display:grid !important; }
.customer-empty i { width:46px; height:46px; display:grid !important; place-items:center; margin-bottom:8px; border-radius:14px; background:rgba(72,17,178,.08); color:var(--spce-purple); }
.customer-empty strong,.customer-empty span { display:block; }.customer-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.customer-empty span { margin-top:3px; font-size:.64rem; }
.customer-directory-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 16px; border-top:1px solid var(--spce-border); color:var(--spce-muted); font-size:.61rem; }

.customer-profile-card { position:sticky; top:calc(var(--topbar-height) + 18px); }
.customer-profile-header { display:grid !important; grid-template-columns:52px minmax(0,1fr); align-items:center; gap:11px; margin-bottom:14px; }
.customer-profile-header h3 { margin:0; font-family:var(--spce-font-display); font-size:1rem; }
.customer-profile-header p { margin:2px 0 0; color:var(--spce-muted); font-size:.62rem; }
.customer-profile-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:5px; }
.customer-profile-stats { display:grid !important; grid-template-columns:repeat(3,1fr); gap:7px; margin-bottom:14px; }
.customer-profile-stats span { padding:9px; border-radius:10px; background:var(--spce-bg); }
.customer-profile-stats small,.customer-profile-stats strong { display:block; }
.customer-profile-stats small { color:var(--spce-muted); font-size:.5rem; }
.customer-profile-stats strong { margin-top:2px; font-size:.68rem; }
.customer-profile-section { padding:12px 0; border-top:1px solid #efedfb; }
.customer-profile-section h4 { margin:0 0 8px; font-family:var(--spce-font-display); font-size:.7rem; }
.customer-profile-line { display:flex; align-items:flex-start; gap:8px; margin-top:7px; color:var(--spce-muted); font-size:.59rem; }
.customer-profile-line i { width:15px; margin-top:2px; color:var(--spce-purple); text-align:center; }
.customer-profile-line strong { color:var(--spce-ink); }
.customer-profile-actions { display:grid !important; grid-template-columns:1fr 1fr; gap:7px; margin-top:12px; }
.customer-profile-actions button { min-height:36px; border:1px solid var(--spce-border); border-radius:10px; background:#fff; color:var(--spce-purple); font-size:.61rem; font-weight:800; }
.customer-profile-actions button.primary { border-color:transparent; background:var(--spce-purple); color:#fff; }

.customer-segments-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.customer-segment-card { min-width:0; padding:16px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.segment-icon { width:42px; height:42px; display:grid !important; place-items:center; margin-bottom:13px; border-radius:13px; color:#fff !important; }
.segment-icon.purple { background:var(--spce-purple); }.segment-icon.orange { background:var(--spce-orange); }.segment-icon.blue { background:var(--spce-blue); }.segment-icon.pink { background:var(--spce-pink); }.segment-icon.green { background:var(--spce-green); }.segment-icon.ink { background:var(--spce-ink); }
.customer-segment-card h3 { margin:0; font-family:var(--spce-font-display); font-size:.9rem; }
.customer-segment-card > p { min-height:38px; margin:5px 0 12px; color:var(--spce-muted); font-size:.62rem; }
.segment-count { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; margin-bottom:11px; }
.segment-count strong { font-family:var(--spce-font-display); font-size:1.55rem; line-height:1; }
.segment-count span { color:var(--spce-muted); font-size:.57rem; }
.segment-preview { display:flex; align-items:center; margin:8px 0 13px; }
.segment-preview .customer-avatar { width:30px; height:30px; margin-left:-6px; border:2px solid #fff; border-radius:9px; font-size:.5rem; }
.segment-preview .customer-avatar:first-child { margin-left:0; }
.segment-preview small { margin-left:8px; color:var(--spce-muted); font-size:.55rem; }
.segment-action { width:100%; min-height:36px; border:0; border-radius:10px; background:var(--spce-bg); color:var(--spce-purple); font-size:.61rem; font-weight:800; }
.segment-action:hover { background:rgba(72,17,178,.1); }

.customer-activity-layout { display:grid; grid-template-columns:minmax(0,1.5fr) 300px; gap:16px; align-items:start; }
.customer-activity-filter { display:flex; flex-wrap:wrap; gap:6px; }
.activity-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.62rem; font-weight:800; }
.activity-filter.active { background:var(--spce-purple); color:#fff; }
.customer-activity-list { display:grid; }
.customer-activity-row { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:start; gap:10px; padding:13px 0; border-top:1px solid #efedfb; }
.customer-activity-row:first-child { border-top:0; }
.customer-activity-row.is-hidden { display:none; }
.activity-icon { width:40px; height:40px; display:grid !important; place-items:center; border-radius:12px; color:#fff !important; }
.activity-icon.order { background:var(--spce-purple); }.activity-icon.reservation { background:var(--spce-blue); }.activity-icon.catering { background:var(--spce-orange); }.activity-icon.marketing { background:var(--spce-pink); }
.customer-activity-row strong,.customer-activity-row span,.customer-activity-row small { display:block; }
.customer-activity-row strong { font-size:.69rem; }
.customer-activity-row span { margin-top:2px; color:var(--spce-muted); font-size:.59rem; }
.customer-activity-row small { margin-top:4px; color:#a29dab; font-size:.54rem; }
.activity-value { color:var(--spce-ink); font-family:var(--spce-font-display); font-size:.7rem; font-weight:800; white-space:nowrap; }
.activity-side-card { padding:18px; }
.activity-breakdown { display:grid; gap:9px; }
.activity-breakdown > div { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px; border-radius:11px; background:var(--spce-bg); }
.activity-breakdown .activity-icon { width:34px; height:34px; border-radius:10px; font-size:.72rem; }
.activity-breakdown strong,.activity-breakdown span { display:block; }
.activity-breakdown strong { font-size:.66rem; }.activity-breakdown span { color:var(--spce-muted); font-size:.55rem; }.activity-breakdown b { font-family:var(--spce-font-display); font-size:.73rem; }

.customer-consent-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.customer-consent-card { display:grid !important; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:11px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.consent-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }
.consent-icon.email { background:var(--spce-purple); }.consent-icon.sms { background:var(--spce-blue); }.consent-icon.optout { background:var(--spce-pink); }
.customer-consent-card span,.customer-consent-card strong,.customer-consent-card small { display:block; }.customer-consent-card span { color:var(--spce-muted); font-size:.61rem; }.customer-consent-card strong { font-family:var(--spce-font-display); font-size:1.15rem; }.customer-consent-card small { color:#9e9aa7; font-size:.55rem; }
.customer-consent-table { overflow-x:auto; }
.consent-head,.consent-row { min-width:820px; display:grid; grid-template-columns:minmax(230px,1.35fr) 120px 105px 130px 125px 30px; align-items:center; gap:10px; }
.consent-head { padding:9px 10px; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.consent-row { padding:11px 10px; border-top:1px solid rgba(23,20,63,.055); font-size:.62rem; }
.consent-row.is-hidden { display:none; }
.consent-customer { display:grid !important; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:8px; }
.consent-customer .customer-avatar { width:34px; height:34px; border-radius:10px; }
.consent-customer strong,.consent-customer span { display:block; }.consent-customer strong { font-size:.66rem; }.consent-customer span { color:var(--spce-muted); font-size:.55rem; }
.consent-status-pill { display:inline-flex; align-items:center; width:max-content; gap:5px; padding:5px 7px; border-radius:999px; font-size:.55rem; font-weight:800; }.consent-status-pill.opted { background:rgba(26,168,115,.09); color:#28795e; }.consent-status-pill.unsubscribed { background:rgba(216,49,145,.09); color:var(--spce-pink); }.consent-status-pill.not-set { background:rgba(103,99,125,.1); color:#767380; }
.customer-consent-note { display:flex; align-items:flex-start; gap:10px; margin-top:16px; padding:13px; border-radius:13px; background:rgba(3,116,223,.06); color:#55758e; font-size:.62rem; }
.customer-consent-note i { margin-top:2px; color:var(--spce-blue); }

@media (max-width:1399.98px) {
  .customer-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-overview-grid { grid-template-columns:1fr; }
  .customer-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-insight-card { grid-column:1 / -1; }
  .customer-directory-layout { grid-template-columns:minmax(0,1fr) 300px; }
  .customer-segments-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1199.98px) {
  .customer-directory-layout,.customer-activity-layout { grid-template-columns:1fr; }
  .customer-profile-card { position:static; }
  .customer-profile-stats { grid-template-columns:repeat(3,1fr); }
  .customer-consent-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:991.98px) {
  .customer-toolbar { align-items:stretch; flex-direction:column; }
  .customer-search { min-width:0; width:100%; }
  .customer-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }
  .customer-filter { flex:0 0 auto; }
  .customer-side-stack { grid-template-columns:1fr; }
  .customer-segments-grid { grid-template-columns:1fr; }
  .customer-consent-grid { grid-template-columns:1fr; }
}
@media (max-width:767.98px) {
  .customer-summary-grid { grid-template-columns:1fr; gap:10px; }
  .customer-view-header { align-items:flex-start; flex-direction:column; }
  .customer-source-layout { grid-template-columns:1fr; }
  .customer-source-legend { width:100%; max-width:320px; margin:auto; }
  .customer-profile-actions { grid-template-columns:1fr; }
  .customer-activity-row { grid-template-columns:40px minmax(0,1fr); }
  .activity-value { grid-column:2; }
}
@media (max-width:575.98px) {
  .customer-page-heading .page-heading-actions { width:100%; }
  .customer-page-heading .page-heading-actions .btn { flex:1; }
  .customer-summary-card { padding:12px; }
  .customer-segment-mini-grid { grid-template-columns:1fr; }
  .customer-profile-stats { grid-template-columns:1fr 1fr 1fr; }
}

/* ========================================================================== 
   Promotions
   ========================================================================== */
.promotion-page-heading { margin-bottom:16px; }
.promotion-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.promotion-subnav::-webkit-scrollbar { display:none; }
.promotion-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.promotion-subnav-link i { color:#9d99aa; }
.promotion-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.promotion-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.promotion-subnav-link.active i { color:var(--spce-orange-2); }
.promotion-view { display:none; }
.promotion-view.active { display:block; animation:promotionViewIn .22s ease both; }
@keyframes promotionViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.promotion-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.promotion-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.promotion-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.promotion-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.promotion-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.promotion-summary-card > div { min-width:0; }
.promotion-summary-card span,.promotion-summary-card strong,.promotion-summary-card small { display:block; }
.promotion-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.promotion-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }
.promotion-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.promotion-summary-icon,.promotion-live-icon,.promotion-placement-icon,.promotion-offer-icon,.featured-food-icon,.promotion-orbit-icon,.featured-suggestion-icon,.promotion-conflict-icon { display:grid !important; place-items:center; color:#fff !important; }
.promotion-summary-icon { width:42px; height:42px; flex:0 0 42px; border-radius:13px; }
.promotion-summary-icon.purple,.promotion-live-icon.purple,.promotion-placement-icon.purple,.promotion-offer-icon.purple,.featured-food-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.promotion-summary-icon.orange,.promotion-live-icon.orange,.promotion-placement-icon.orange,.promotion-offer-icon.orange,.featured-food-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color:#fff !important; }
.promotion-summary-icon.blue,.promotion-live-icon.blue,.promotion-placement-icon.blue,.promotion-offer-icon.blue,.featured-food-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.promotion-summary-icon.pink,.promotion-live-icon.pink,.promotion-placement-icon.pink,.promotion-offer-icon.pink,.featured-food-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }

.promotion-overview-grid { display:grid; grid-template-columns:minmax(0,1.55fr) 330px; gap:16px; align-items:start; }
.promotion-side-stack { display:grid; gap:16px; }
.promotion-live-list { display:grid; }
.promotion-live-row { width:100%; display:grid !important; grid-template-columns:40px minmax(0,1fr) auto auto 12px; align-items:center; gap:10px; padding:11px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }
.promotion-live-row:first-child { border-top:0; }
.promotion-live-icon { width:38px; height:38px; border-radius:11px; }
.promotion-live-row > span:nth-child(2) strong,.promotion-live-row > span:nth-child(2) small { display:block; }
.promotion-live-row > span:nth-child(2) strong { font-size:.7rem; }
.promotion-live-row > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.58rem; }
.promotion-live-row > i { color:#b5b0bd; font-size:.58rem; }
.promotion-placement-pill { padding:5px 7px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.55rem; font-weight:800; white-space:nowrap; }
.promotion-state { display:inline-flex !important; align-items:center; gap:5px; width:max-content; padding:5px 7px; border-radius:999px; font-size:.55rem; font-weight:800; white-space:nowrap; }
.promotion-state i { font-size:.42rem; }
.promotion-state.live { background:rgba(26,168,115,.09); color:#28795e; }
.promotion-state.scheduled { background:rgba(3,116,223,.09); color:var(--spce-blue); }
.promotion-state.draft { background:rgba(103,99,125,.1); color:var(--spce-muted); }
.promotion-upcoming-list { display:grid; }
.promotion-upcoming-list > div { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }
.promotion-upcoming-list > div:first-child { border-top:0; }
.promotion-upcoming-list > div > span:nth-child(2) strong,.promotion-upcoming-list > div > span:nth-child(2) small { display:block; }
.promotion-upcoming-list > div > span:nth-child(2) strong { font-size:.68rem; }
.promotion-upcoming-list > div > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }
.promotion-date { width:44px; height:44px; display:grid !important; place-items:center; align-content:center; border-radius:12px; color:#fff !important; }
.promotion-date.purple { background:var(--spce-purple); }.promotion-date.orange { background:var(--spce-orange); color:#fff !important; }.promotion-date.blue { background:var(--spce-blue); }
.promotion-date strong,.promotion-date small { display:block; line-height:1; }.promotion-date strong { font-family:var(--spce-font-display); font-size:.8rem; }.promotion-date small { margin-top:3px; font-size:.48rem; font-weight:800; }
.promotion-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }
.promotion-orbit-icon { width:44px; height:44px; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }
.promotion-orbit-card strong { font-family:var(--spce-font-display); }.promotion-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.72); font-size:.65rem; }.promotion-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }

.promotion-website-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr); gap:16px; align-items:start; }
.promotion-placement-stack { display:grid; gap:12px; }
.promotion-placement-card { transition:opacity .18s ease; }
.promotion-placement-card.is-paused { opacity:.6; }
.promotion-placement-head { display:grid !important; grid-template-columns:42px minmax(0,1fr) 42px; align-items:center; gap:10px; }
.promotion-placement-icon { width:40px; height:40px; border-radius:12px; }
.promotion-placement-head h3 { margin:0; font-family:var(--spce-font-display); font-size:.82rem; }.promotion-placement-head p { margin:2px 0 0; color:var(--spce-muted); font-size:.6rem; }
.promotion-placement-meta { display:flex; flex-wrap:wrap; gap:6px; margin:12px 0 4px; }.promotion-placement-meta span { display:inline-flex; align-items:center; gap:5px; padding:6px 7px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.56rem; }.promotion-placement-meta i { color:var(--spce-purple); }
.promotion-text-button { border:0; padding:7px 0 0; background:transparent; color:var(--spce-purple); font-size:.61rem; font-weight:800; }
.promotion-toggle { position:relative; width:40px; height:23px; display:inline-block; margin:0; }.promotion-toggle input { opacity:0; width:0; height:0; }.promotion-toggle > span { position:absolute; inset:0; border-radius:999px; background:#ded9e3; cursor:pointer; transition:.18s ease; }.promotion-toggle > span::after { content:''; position:absolute; width:17px; height:17px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(23,20,63,.16); transition:.18s ease; }.promotion-toggle input:checked + span { background:var(--spce-purple); }.promotion-toggle input:checked + span::after { transform:translateX(17px); }
.promotion-site-preview-card { position:sticky; top:calc(var(--topbar-height) + 18px); }
.promotion-preview-live { display:inline-flex; align-items:center; gap:5px; padding:5px 8px; border-radius:999px; background:rgba(26,168,115,.08); color:#28795e; font-size:.56rem; font-weight:800; }.promotion-preview-live i { font-size:.4rem; }
.promotion-browser { overflow:hidden; border:1px solid var(--spce-border); border-radius:16px; background:#fff; box-shadow:0 16px 35px rgba(72,17,178,.08); }
.promotion-browser-bar { height:34px; display:flex; align-items:center; gap:5px; padding:0 10px; background:#efedfb; }.promotion-browser-bar i { width:7px; height:7px; border-radius:50%; background:#c9c3ce; }.promotion-browser-bar span { margin-left:6px; color:#9893a1; font-size:.5rem; }
.promotion-preview-announcement { padding:7px 10px; background:var(--spce-purple); color:#fff; text-align:center; font-size:.5rem; font-weight:800; letter-spacing:.06em; }.promotion-preview-announcement span { margin-left:8px; color:var(--spce-orange); }
.promotion-preview-nav { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 15px; color:var(--spce-ink); font-size:.49rem; }.promotion-preview-nav strong { font-family:var(--spce-font-display); font-size:.62rem; }.promotion-preview-nav span { color:#777487; }
.promotion-preview-hero { min-height:235px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:26px; background:radial-gradient(circle at 90% 20%,rgba(252,137,59,.35),transparent 25%),linear-gradient(135deg,#1b125c,var(--spce-purple)); color:#fff; }.promotion-preview-hero > span { color:var(--spce-orange); font-size:.48rem; font-weight:800; letter-spacing:.13em; }.promotion-preview-hero h3 { max-width:330px; margin:5px 0; font-family:var(--spce-font-display); font-size:1.65rem; letter-spacing:-.05em; }.promotion-preview-hero p { max-width:300px; margin:0 0 13px; color:rgba(255,255,255,.72); font-size:.61rem; }.promotion-preview-hero button { border:0; border-radius:8px; padding:7px 10px; background:var(--spce-orange); color:var(--spce-ink); font-size:.52rem; font-weight:800; }
.promotion-preview-feature { display:grid; grid-template-columns:65px minmax(0,1fr); align-items:center; gap:12px; padding:15px; background:#fff; }.promotion-preview-dish { width:62px; height:62px; display:grid !important; place-items:center; border-radius:16px; background:linear-gradient(135deg,var(--spce-pink),var(--spce-purple)); color:#fff !important; font-size:1.4rem; }.promotion-preview-feature small,.promotion-preview-feature strong,.promotion-preview-feature span { display:block; }.promotion-preview-feature small { color:var(--spce-pink); font-size:.46rem; font-weight:800; letter-spacing:.08em; }.promotion-preview-feature strong { margin-top:2px; font-family:var(--spce-font-display); font-size:.77rem; }.promotion-preview-feature span { color:var(--spce-muted); font-size:.54rem; }

.promotion-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.promotion-search { min-width:250px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.promotion-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }
.promotion-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.promotion-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.64rem; font-weight:800; }.promotion-filter.active { background:var(--spce-purple); color:#fff; }
.promotion-offer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.promotion-offer-card { padding:16px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.promotion-offer-card.is-hidden { display:none; }.promotion-offer-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }.promotion-offer-icon { width:42px; height:42px; border-radius:13px; }.promotion-offer-card h3 { margin:12px 0 3px; font-family:var(--spce-font-display); font-size:.9rem; }.promotion-offer-card > p { min-height:36px; margin:0; color:var(--spce-muted); font-size:.62rem; }.promotion-offer-meta { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin:13px 0; }.promotion-offer-meta span { padding:8px; border-radius:10px; background:var(--spce-bg); }.promotion-offer-meta small,.promotion-offer-meta strong { display:block; }.promotion-offer-meta small { color:var(--spce-muted); font-size:.48rem; }.promotion-offer-meta strong { margin-top:2px; font-size:.61rem; }.promotion-offer-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:10px; border-top:1px solid #efedfb; color:var(--spce-muted); font-size:.57rem; }.promotion-offer-footer button { border:0; background:transparent; color:var(--spce-purple); font-weight:800; }
.promotion-empty { display:none; place-items:center; padding:48px 20px; text-align:center; color:var(--spce-muted); }.promotion-empty.show { display:grid; }.promotion-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.promotion-empty strong,.promotion-empty span { display:block; }.promotion-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.promotion-empty span { margin-top:3px; font-size:.65rem; }

.featured-item-layout { display:grid; grid-template-columns:minmax(0,1.5fr) 300px; gap:16px; align-items:start; }.featured-item-list { display:grid; }.featured-item-row { display:grid !important; grid-template-columns:18px 44px minmax(0,1fr) auto 42px 30px; align-items:center; gap:10px; padding:11px 0; border-top:1px solid #efedfb; transition:opacity .18s ease; }.featured-item-row:first-child { border-top:0; }.featured-item-row.is-paused { opacity:.5; }.featured-drag { color:#c0bac5; cursor:grab; }.featured-food-icon { width:42px; height:42px; border-radius:12px; }.featured-item-row > span:nth-child(3) strong,.featured-item-row > span:nth-child(3) small { display:block; }.featured-item-row > span:nth-child(3) strong { font-size:.7rem; }.featured-item-row > span:nth-child(3) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.featured-placement { display:inline-flex !important; align-items:center; gap:5px; padding:6px 8px; border-radius:9px; background:var(--spce-bg); color:var(--spce-muted); font-size:.55rem; font-weight:700; white-space:nowrap; }.featured-placement i { color:var(--spce-purple); }.promotion-count-pill { min-width:58px; padding:5px 8px; border-radius:999px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.57rem; font-weight:800; text-align:center; }.featured-suggestion-card { text-align:left; }.featured-suggestion-icon { width:56px; height:56px; margin:2px 0 12px; border-radius:17px; background:linear-gradient(135deg,var(--spce-blue),var(--spce-purple)); font-size:1.25rem; }.featured-suggestion-card h3 { margin:0 0 5px; font-family:var(--spce-font-display); font-size:.95rem; }.featured-suggestion-card > p { margin:0 0 14px; color:var(--spce-muted); font-size:.64rem; }

.promotion-schedule-grid { display:grid; grid-template-columns:minmax(0,1.5fr) 300px; gap:16px; align-items:start; }.promotion-calendar-nav { display:flex; gap:6px; }.promotion-week-head { display:grid; grid-template-columns:150px repeat(7,1fr); margin-left:0; padding:0 0 8px 150px; color:var(--spce-muted); font-size:.52rem; text-align:center; }.promotion-week-head span b { display:block; margin-top:1px; color:var(--spce-ink); font-family:var(--spce-font-display); font-size:.68rem; }.promotion-timeline { display:grid; gap:8px; }.promotion-timeline-row { display:grid !important; grid-template-columns:140px minmax(0,1fr); align-items:center; gap:10px; }.promotion-timeline-row > strong { font-size:.65rem; }.promotion-track { position:relative; min-height:42px; display:grid; grid-template-columns:repeat(7,1fr); border:1px solid var(--spce-border); border-radius:10px; background:repeating-linear-gradient(90deg,transparent 0,transparent calc(14.285% - 1px),rgba(23,20,63,.06) calc(14.285% - 1px),rgba(23,20,63,.06) 14.285%); }.promotion-schedule-block { grid-column:calc(var(--start) + 1) / span var(--span); align-self:center; min-height:28px; display:flex; align-items:center; padding:0 8px; margin:5px; border-radius:7px; color:#fff; font-size:.52rem; font-weight:800; white-space:nowrap; overflow:hidden; }.promotion-schedule-block.purple { background:var(--spce-purple); }.promotion-schedule-block.orange { background:var(--spce-orange); color:var(--spce-ink); }.promotion-schedule-block.blue { background:var(--spce-blue); }.promotion-schedule-block.pink { background:var(--spce-pink); }.promotion-health-list { display:grid; }.promotion-health-list > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #efedfb; font-size:.61rem; }.promotion-health-list > div:first-child { border-top:0; }.promotion-health-list span { color:var(--spce-muted); }.promotion-health-list span i { width:18px; color:var(--spce-purple); }.promotion-health-list strong.good { color:var(--spce-green); }.promotion-conflict-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:16px; border:1px solid rgba(252,137,59,.28); border-radius:var(--spce-radius); background:#fffaf4; box-shadow:var(--spce-shadow); }.promotion-conflict-icon { width:44px; height:44px; border-radius:13px; background:var(--spce-orange); color:#fff !important; }.promotion-conflict-card strong { font-family:var(--spce-font-display); font-size:.76rem; }.promotion-conflict-card p { margin:4px 0 8px; color:#8b6a4b; font-size:.61rem; }.promotion-conflict-card button { border:0; padding:0; background:transparent; color:#a56123; font-size:.59rem; font-weight:800; }

@media (max-width:1399.98px) { .promotion-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.promotion-overview-grid,.promotion-website-layout { grid-template-columns:1fr; }.promotion-site-preview-card { position:static; }.promotion-placement-stack { grid-template-columns:repeat(3,minmax(0,1fr)); }.promotion-placement-meta { display:grid; }.promotion-placement-card { min-width:0; } }
@media (max-width:1199.98px) { .promotion-offer-grid { grid-template-columns:1fr 1fr; }.featured-item-layout,.promotion-schedule-grid { grid-template-columns:1fr; }.featured-suggestion-card { max-width:none; }.promotion-placement-stack { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .promotion-toolbar { align-items:stretch; flex-direction:column; }.promotion-search { min-width:0; width:100%; }.promotion-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }.promotion-filter { flex:0 0 auto; }.promotion-offer-grid { grid-template-columns:1fr; }.featured-item-list-card { overflow-x:auto; }.featured-item-list { min-width:720px; }.promotion-calendar-card { overflow-x:auto; }.promotion-week-head,.promotion-timeline { min-width:760px; } }
@media (max-width:767.98px) { .promotion-summary-grid { grid-template-columns:1fr; gap:10px; }.promotion-view-header { align-items:flex-start; flex-direction:column; }.promotion-live-row { grid-template-columns:38px minmax(0,1fr) auto 12px; }.promotion-live-row .promotion-placement-pill { display:none; }.promotion-offer-meta { grid-template-columns:repeat(3,1fr); }.promotion-browser { max-width:100%; }.promotion-preview-hero h3 { font-size:1.35rem; } }
@media (max-width:575.98px) { .promotion-page-heading .page-heading-actions { width:100%; }.promotion-page-heading .page-heading-actions .btn { flex:1; }.promotion-summary-card { padding:12px; }.promotion-live-row { grid-template-columns:38px minmax(0,1fr) 12px; }.promotion-live-row .promotion-state { grid-column:2; width:max-content; }.promotion-offer-meta { grid-template-columns:1fr; }.promotion-placement-head { grid-template-columns:40px minmax(0,1fr) 40px; }.promotion-preview-nav span { display:none; }.promotion-preview-hero { min-height:210px; padding:21px; }.promotion-preview-feature { grid-template-columns:58px minmax(0,1fr); }.promotion-preview-dish { width:56px; height:56px; }.promotion-orbit-card { padding:15px; } }


/* ==========================================================================\n   QR & Digital Menus\n   ========================================================================== */
.qr-page-heading { margin-bottom:16px; }
.qr-subnav { display:flex !important; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.qr-subnav::-webkit-scrollbar { display:none; }
.qr-subnav-link { flex:0 0 auto; display:inline-flex !important; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.qr-subnav-link i { color:#9d99aa; }.qr-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }.qr-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }.qr-subnav-link.active i { color:var(--spce-orange-2); }
.qr-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.qr-view { display:none; }.qr-view.active { display:block; animation:qrViewIn .22s ease both; }@keyframes qrViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.qr-view-header { display:flex !important; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }.qr-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }.qr-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }
.qr-summary-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.qr-summary-grid.compact { margin-bottom:18px; }.qr-summary-card { min-width:0; display:flex !important; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.qr-summary-card > div { min-width:0; }.qr-summary-card span,.qr-summary-card strong,.qr-summary-card small { display:block; }.qr-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }.qr-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }.qr-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }

.qr-dashboard-grid { display:grid !important; grid-template-columns:minmax(0,1.5fr) 320px; gap:16px; align-items:start; margin-bottom:16px; }.qr-side-stack { display:grid !important; gap:16px; }.qr-live-list { display:grid !important; gap:7px; }.qr-live-row { width:100%; display:grid !important; grid-template-columns:44px minmax(0,1fr) 70px 58px 12px; align-items:center; gap:10px; padding:10px; border:1px solid var(--spce-border); border-radius:13px; background:#fff; text-align:left; }.qr-live-row:hover { border-color:rgba(72,17,178,.2); background:#fcfbff; }.qr-live-row > span:nth-child(2) strong,.qr-live-row > span:nth-child(2) small,.qr-scan-stat strong,.qr-scan-stat small { display:block; }.qr-live-row > span:nth-child(2) strong { font-size:.71rem; }.qr-live-row > span:nth-child(2) small,.qr-scan-stat small { color:var(--spce-muted); font-size:.57rem; }.qr-scan-stat { text-align:right; }.qr-scan-stat strong { font-family:var(--spce-font-display); font-size:.75rem; }.qr-live-row > i { color:#b5b0bd; font-size:.57rem; }
.qr-mini-code { width:42px; height:42px; display:grid !important; place-items:center; overflow:hidden; border:5px solid #fff; border-radius:8px; background:#fff; box-shadow:0 0 0 1px rgba(23,20,63,.08); }.qr-mini-code svg { width:100%; height:100%; display:block; }
.qr-state { display:inline-flex !important; align-items:center; justify-content:center; width:max-content; min-height:23px; padding:4px 7px; border-radius:999px; font-size:.55rem; font-weight:800; white-space:nowrap; }.qr-state.live { background:rgba(26,168,115,.09); color:#28795e; }.qr-state.scheduled { background:rgba(252,137,59,.14); color:#a56225; }.qr-state.draft { background:rgba(103,99,125,.1); color:var(--spce-muted); }
.qr-preview-card { text-align:center; }.qr-preview-shell { display:grid !important; place-items:center; padding:5px 0 10px; }.qr-code-large { width:178px; height:178px; display:grid !important; place-items:center; padding:12px; margin:0 auto 12px; border-radius:18px; background:#fff; box-shadow:0 12px 30px rgba(72,17,178,.11); border:1px solid var(--spce-border); }.qr-code-large img,.qr-code-large canvas { width:100% !important; height:100% !important; image-rendering:pixelated; }.qr-code-large.inspector { width:195px; height:195px; margin-bottom:16px; }.qr-preview-label { display:block; font-family:var(--spce-font-display); font-size:.85rem; font-weight:800; }.qr-preview-shell small { color:var(--spce-muted); font-size:.6rem; }.qr-preview-actions { display:grid !important; grid-template-columns:1fr 1fr; gap:8px; }
.qr-orbit-card { display:grid !important; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff !important; box-shadow:var(--spce-shadow); }.qr-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.qr-orbit-card strong { color:#fff !important; font-family:var(--spce-font-display); }.qr-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.72); font-size:.65rem; }.qr-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }
.qr-dashboard-bottom { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.qr-menu-status-list { display:grid !important; }.qr-menu-status-list > div { display:grid !important; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.qr-menu-status-list > div:first-child { border-top:0; }.qr-menu-status-list > div > span:nth-child(2) strong,.qr-menu-status-list > div > span:nth-child(2) small { display:block; }.qr-menu-status-list > div > span:nth-child(2) strong { font-size:.69rem; }.qr-menu-status-list > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.57rem; }.qr-menu-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.qr-menu-icon.purple { background:var(--spce-purple); }.qr-menu-icon.orange { background:var(--spce-orange); color:#fff !important; }.qr-menu-icon.blue { background:var(--spce-blue); }.qr-menu-icon.pink { background:var(--spce-pink); }
.qr-spark-chart { height:180px; display:flex !important; align-items:end; justify-content:space-between; gap:10px; padding:15px 10px 24px; border-bottom:1px solid var(--spce-border); background:repeating-linear-gradient(to bottom,rgba(23,20,63,.04) 0,rgba(23,20,63,.04) 1px,transparent 1px,transparent 45px); }.qr-spark-chart > span { position:relative; width:10%; height:var(--h); min-height:18px; border-radius:8px 8px 3px 3px; background:linear-gradient(180deg,var(--spce-blue-2),var(--spce-purple)); }.qr-spark-chart b { position:absolute; left:50%; top:calc(100% + 6px); transform:translateX(-50%); color:var(--spce-muted); font-size:.52rem; font-weight:600; }.qr-chart-note { display:flex !important; justify-content:space-between; gap:12px; margin-top:12px; }.qr-chart-note span { color:var(--spce-green); font-size:.61rem; font-weight:800; }.qr-chart-note small { color:var(--spce-muted); font-size:.58rem; }

.qr-codes-layout { display:grid !important; grid-template-columns:minmax(0,1fr) 320px; gap:16px; align-items:start; }.qr-codes-card { padding:0; overflow:hidden; }.qr-toolbar { display:flex !important; align-items:center; justify-content:space-between; gap:12px; padding:16px; border-bottom:1px solid var(--spce-border); }.qr-search { min-width:260px; height:40px; display:flex !important; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.qr-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.7rem; }.qr-filter-row { display:flex !important; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.qr-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.63rem; font-weight:800; }.qr-filter.active { background:var(--spce-purple); color:#fff !important; }.qr-table-wrap { overflow-x:auto; }.qr-code-head,.qr-code-row { min-width:850px; display:grid !important; grid-template-columns:44px minmax(210px,1.4fr) 130px 60px 90px 70px 22px; align-items:center; gap:10px; }.qr-code-head { padding:9px 16px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.qr-code-head span:first-child { grid-column:1/3; }.qr-code-head span:nth-child(2) { display:none; }.qr-code-row { width:100%; padding:10px 16px; border:0; border-top:1px solid #efedfb; background:#fff; text-align:left; font-size:.62rem; }.qr-code-row:hover,.qr-code-row.active { background:#fcfbff; }.qr-code-row.active { box-shadow:inset 3px 0 0 var(--spce-purple); }.qr-code-row.is-hidden { display:none !important; }.qr-code-row > span:nth-child(2) strong,.qr-code-row > span:nth-child(2) small { display:block; }.qr-code-row > span:nth-child(2) strong { font-size:.69rem; }.qr-code-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.qr-code-row > b { font-family:var(--spce-font-display); }.qr-code-row > i { color:#b5b0bd; }.qr-empty { display:none; place-items:center; padding:48px 20px; text-align:center; color:var(--spce-muted); }.qr-empty.show { display:grid !important; }.qr-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.qr-empty strong,.qr-empty span { display:block; }.qr-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.qr-empty span { margin-top:3px; font-size:.65rem; }
.qr-code-inspector { position:sticky; top:calc(var(--topbar-height) + 18px); text-align:center; }.qr-code-inspector .card-heading { text-align:left; }.qr-code-inspector h3 { margin:0 0 6px; font-family:var(--spce-font-display); font-size:1rem; }.qr-dynamic-badge { display:inline-flex !important; align-items:center; gap:5px; margin-bottom:15px; padding:5px 8px; border-radius:999px; background:rgba(3,116,223,.08); color:var(--spce-blue); font-size:.58rem; font-weight:800; }.qr-url-field { display:grid !important; gap:5px; margin:0 0 12px; color:var(--spce-muted); font-size:.58rem; text-align:left; }.qr-url-field > span:last-child { display:grid !important; grid-template-columns:minmax(0,1fr) 34px; border:1px solid var(--spce-border); border-radius:10px; overflow:hidden; background:var(--spce-bg); }.qr-url-field input { min-width:0; border:0; outline:0; padding:8px 9px; background:transparent; color:var(--spce-ink); font-size:.58rem; }.qr-url-field button { border:0; border-left:1px solid var(--spce-border); background:#fff; color:var(--spce-purple); }.qr-inspector-actions { display:grid !important; gap:8px; }.qr-inspector-help { display:flex !important; align-items:flex-start; gap:6px; margin:12px 0 0; color:var(--spce-muted); font-size:.56rem; text-align:left; }.qr-inspector-help i { color:var(--spce-blue); margin-top:2px; }

.digital-menu-layout { display:grid !important; grid-template-columns:minmax(0,1.45fr) 330px; gap:16px; align-items:start; }.digital-menu-list { display:grid !important; gap:10px; }.digital-menu-card { display:grid !important; grid-template-columns:48px minmax(0,1fr) 42px; align-items:center; gap:12px; padding:14px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; cursor:pointer; transition:.18s ease; }.digital-menu-card:hover,.digital-menu-card.active { border-color:rgba(72,17,178,.2); box-shadow:0 10px 24px rgba(72,17,178,.07); }.digital-menu-card.active { box-shadow:inset 3px 0 0 var(--spce-purple),0 10px 24px rgba(72,17,178,.07); }.digital-menu-card > div { min-width:0; }.digital-menu-card h3 { margin:5px 0 2px; font-family:var(--spce-font-display); font-size:.84rem; }.digital-menu-card p { margin:0; color:var(--spce-muted); font-size:.6rem; }.digital-menu-icon { width:46px; height:46px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }.digital-menu-icon.purple { background:var(--spce-purple); }.digital-menu-icon.orange { background:var(--spce-orange); color:#fff !important; }.digital-menu-icon.blue { background:var(--spce-blue); }.digital-menu-icon.pink { background:var(--spce-pink); }.digital-menu-meta { display:flex !important; flex-wrap:wrap; gap:8px 12px; margin-top:8px; color:var(--spce-muted); font-size:.55rem; }.digital-menu-meta span { display:inline-flex !important; align-items:center; gap:4px; }.digital-menu-meta i { color:var(--spce-purple); }.digital-phone-card { position:sticky; top:calc(var(--topbar-height) + 18px); }.digital-phone { width:230px; height:470px; margin:0 auto; padding:8px; border:5px solid var(--spce-ink); border-radius:32px; background:var(--spce-ink); box-shadow:0 18px 40px rgba(23,20,63,.18); }.digital-phone-notch { width:78px; height:15px; margin:0 auto -8px; position:relative; z-index:2; border-radius:0 0 12px 12px; background:var(--spce-ink); }.digital-phone-screen { height:100%; overflow:hidden; border-radius:22px; background:#fff; }.guest-menu-brand { display:flex !important; align-items:center; gap:6px; padding:18px 14px 8px; }.guest-menu-brand > span { width:26px; height:26px; display:grid !important; place-items:center; border-radius:8px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-size:.5rem; font-weight:800; }.guest-menu-brand strong { font-size:.57rem; }.guest-menu-hero { padding:15px 14px; background:linear-gradient(135deg,var(--spce-purple),#291070); color:#fff !important; }.guest-menu-hero small { color:var(--spce-orange); font-size:.4rem; font-weight:800; letter-spacing:.08em; }.guest-menu-hero h3 { margin:3px 0; color:#fff !important; font-family:var(--spce-font-display); font-size:1rem; }.guest-menu-hero p { margin:0; color:rgba(255,255,255,.72); font-size:.46rem; }.guest-menu-tabs { display:flex !important; gap:5px; padding:9px; overflow:hidden; }.guest-menu-tabs span { padding:5px 7px; border-radius:999px; background:#f4f2fb; color:var(--spce-muted); font-size:.44rem; font-weight:700; white-space:nowrap; }.guest-menu-tabs span.active { background:var(--spce-purple); color:#fff !important; }.guest-menu-item { display:flex !important; justify-content:space-between; gap:8px; padding:10px 12px; border-top:1px solid #efedfb; }.guest-menu-item strong,.guest-menu-item small { display:block; }.guest-menu-item strong { font-size:.55rem; }.guest-menu-item small { color:var(--spce-muted); font-size:.42rem; }.guest-menu-item b { font-size:.5rem; }

.pdf-menu-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.pdf-menu-card { min-width:0; display:grid !important; grid-template-columns:135px minmax(0,1fr); overflow:hidden; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.pdf-menu-cover { min-height:190px; display:grid !important; place-items:center; align-content:center; gap:6px; color:#fff !important; text-align:center; }.pdf-menu-cover.purple { background:linear-gradient(145deg,var(--spce-purple),#291070); }.pdf-menu-cover.orange { background:linear-gradient(145deg,var(--spce-orange),var(--spce-pink)); }.pdf-menu-cover.pink { background:linear-gradient(145deg,var(--spce-pink),var(--spce-purple)); }.pdf-menu-cover.blue { background:linear-gradient(145deg,var(--spce-blue),var(--spce-purple)); }.pdf-menu-cover i { color:#fff !important; font-size:1.6rem; }.pdf-menu-cover strong { color:#fff !important; font-family:var(--spce-font-display); font-size:.83rem; letter-spacing:.12em; }.pdf-menu-cover span { color:rgba(255,255,255,.75); font-size:.46rem; letter-spacing:.09em; }.pdf-menu-info { min-width:0; padding:15px; }.pdf-menu-info h3 { margin:8px 0 2px; font-family:var(--spce-font-display); font-size:.84rem; }.pdf-menu-info > p { margin:0; color:var(--spce-muted); font-size:.58rem; }.pdf-menu-info > div { display:flex !important; flex-wrap:wrap; gap:7px 12px; margin-top:12px; color:var(--spce-muted); font-size:.54rem; }.pdf-menu-info > div i { color:var(--spce-purple); }.pdf-menu-info footer { display:grid !important; grid-template-columns:38px minmax(0,1fr) 30px; align-items:center; gap:7px; margin-top:15px; padding-top:10px; border-top:1px solid #efedfb; }.pdf-menu-info footer small { color:var(--spce-muted); font-size:.55rem; }.qr-pdf-note { display:grid !important; grid-template-columns:46px minmax(0,1fr); gap:12px; margin-top:16px; padding:17px; border:1px solid rgba(3,116,223,.16); border-radius:var(--spce-radius); background:linear-gradient(135deg,rgba(3,116,223,.06),#fff); box-shadow:var(--spce-shadow); }.qr-pdf-note-icon { width:46px; height:46px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-blue),var(--spce-purple)); color:#fff !important; }.qr-pdf-note strong { font-family:var(--spce-font-display); font-size:.77rem; }.qr-pdf-note p { margin:4px 0 0; color:var(--spce-muted); font-size:.62rem; }

.qr-analytics-grid { display:grid !important; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:16px; }.qr-analytics-wide { min-width:0; }.qr-line-chart { position:relative; height:270px; overflow:hidden; }.qr-line-grid { position:absolute; inset:10px 0 28px; background:repeating-linear-gradient(to bottom,rgba(23,20,63,.045) 0,rgba(23,20,63,.045) 1px,transparent 1px,transparent 58px); }.qr-line-chart svg { position:absolute; inset:10px 0 28px; width:100%; height:calc(100% - 38px); overflow:visible; }.qr-area { fill:url(#qrArea); }.qr-line { fill:none; stroke:var(--spce-blue); stroke-width:5; stroke-linecap:round; }.qr-line-labels { position:absolute; left:0; right:0; bottom:0; display:flex !important; justify-content:space-between; color:var(--spce-muted); font-size:.53rem; }.qr-placement-bars { display:grid !important; gap:12px; }.qr-placement-bars > div { display:grid !important; grid-template-columns:minmax(0,1fr) 38px; gap:6px; }.qr-placement-bars span { color:var(--spce-muted); font-size:.62rem; }.qr-placement-bars span i { width:18px; color:var(--spce-purple); }.qr-placement-bars strong { font-size:.62rem; text-align:right; }.qr-placement-bars b { grid-column:1/-1; height:7px; display:block; overflow:hidden; border-radius:999px; background:#ece9f7; }.qr-placement-bars b i { display:block; width:var(--w); height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-blue)); }.qr-top-destinations { display:grid !important; }.qr-top-destinations > div { display:grid !important; grid-template-columns:30px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.qr-top-destinations > div:first-child { border-top:0; }.qr-rank { width:28px; height:28px; display:grid !important; place-items:center; border-radius:9px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-family:var(--spce-font-display); font-size:.65rem; font-weight:800; }.qr-top-destinations span:nth-child(2) strong,.qr-top-destinations span:nth-child(2) small { display:block; }.qr-top-destinations span:nth-child(2) strong { font-size:.67rem; }.qr-top-destinations span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.qr-top-destinations b { font-size:.62rem; }.qr-action-funnel { display:grid !important; gap:7px; }.qr-action-funnel > div { width:var(--w); min-width:48%; display:flex !important; justify-content:space-between; gap:10px; margin:auto; padding:9px 11px; border-radius:10px; background:linear-gradient(90deg,rgba(72,17,178,.12),rgba(3,116,223,.09)); color:var(--spce-purple); font-size:.62rem; }.qr-action-funnel > div:nth-child(2) { background:rgba(3,116,223,.1); color:var(--spce-blue); }.qr-action-funnel > div:nth-child(3) { background:rgba(252,137,59,.14); color:#a36125; }.qr-action-funnel > div:nth-child(4) { background:rgba(26,168,115,.1); color:#28795e; }

.qr-settings-layout { display:grid !important; grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:16px; align-items:start; }.qr-settings-main,.qr-settings-side { display:grid !important; gap:16px; }.qr-color-field { min-height:39px; display:grid !important; grid-template-columns:26px minmax(0,1fr); align-items:center; gap:7px; border:1px solid var(--spce-border); border-radius:10px; padding:5px 8px; background:var(--spce-bg); }.qr-color-field span { width:22px; height:22px; border-radius:7px; background:var(--spce-purple); }.qr-color-field input { min-height:0 !important; border:0 !important; padding:0 !important; background:transparent !important; }.qr-privacy-card { display:grid !important; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:17px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff !important; box-shadow:var(--spce-shadow); }.qr-privacy-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.qr-privacy-card strong { color:#fff !important; font-family:var(--spce-font-display); }.qr-privacy-card p { margin:5px 0 0; color:rgba(255,255,255,.72); font-size:.62rem; }.qr-domain-field { display:flex !important; align-items:center; overflow:hidden; margin:4px 0 10px; border:1px solid var(--spce-border); border-radius:10px; background:var(--spce-bg); font-size:.61rem; }.qr-domain-field span { padding:9px; color:var(--spce-muted); }.qr-domain-field strong { flex:1; padding:9px 9px 9px 0; }

@media (max-width:1399.98px) { .qr-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.qr-dashboard-grid { grid-template-columns:minmax(0,1fr) 300px; }.qr-codes-layout { grid-template-columns:minmax(0,1fr) 300px; }.digital-menu-layout { grid-template-columns:minmax(0,1fr) 300px; } }
@media (max-width:1199.98px) { .qr-dashboard-grid,.qr-codes-layout,.digital-menu-layout,.qr-settings-layout { grid-template-columns:1fr; }.qr-code-inspector,.digital-phone-card { position:static; }.qr-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.qr-orbit-card { min-height:100%; }.pdf-menu-grid { grid-template-columns:1fr 1fr; }.qr-analytics-grid { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .qr-dashboard-bottom { grid-template-columns:1fr; }.qr-toolbar { align-items:stretch; flex-direction:column; }.qr-search { min-width:0; width:100%; }.qr-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }.qr-filter { flex:0 0 auto; }.qr-side-stack { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .qr-summary-grid { grid-template-columns:1fr; gap:10px; }.qr-view-header { align-items:flex-start; flex-direction:column; }.qr-live-row { grid-template-columns:42px minmax(0,1fr) 55px 12px; }.qr-live-row .qr-state { display:none !important; }.qr-scan-stat { text-align:left; }.pdf-menu-grid { grid-template-columns:1fr; }.pdf-menu-card { grid-template-columns:115px minmax(0,1fr); }.digital-phone { width:220px; }.qr-chart-note { flex-direction:column; }.qr-analytics-grid { grid-template-columns:1fr; } }
@media (max-width:575.98px) { .qr-page-heading .page-heading-actions { width:100%; }.qr-page-heading .page-heading-actions .btn { flex:1; }.qr-summary-card { padding:12px; }.qr-live-row { grid-template-columns:40px minmax(0,1fr) 12px; }.qr-live-row .qr-scan-stat { grid-column:2; }.qr-preview-actions { grid-template-columns:1fr; }.pdf-menu-card { grid-template-columns:95px minmax(0,1fr); }.pdf-menu-cover { min-height:180px; }.pdf-menu-cover strong { font-size:.68rem; }.qr-pdf-note { padding:14px; }.qr-orbit-card,.qr-privacy-card { padding:15px; } }

/* ==========================================================================\n   Inventory & Costs\n   ========================================================================== */
.inventory-page-heading { margin-bottom:16px; }
.inventory-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.inventory-subnav::-webkit-scrollbar { display:none; }
.inventory-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.inventory-subnav-link i { color:#9d99aa; }
.inventory-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.inventory-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.inventory-subnav-link.active i { color:var(--spce-orange-2); }
.inventory-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.inventory-view { display:none; }
.inventory-view.active { display:block; animation:inventoryViewIn .22s ease both; }
@keyframes inventoryViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.inventory-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.inventory-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.inventory-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }
.inventory-view-actions { display:flex; flex-wrap:wrap; gap:8px; }
.inventory-period-pill { padding:6px 8px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.59rem; font-weight:700; }

.inventory-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.inventory-summary-card,.count-summary-card,.waste-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.inventory-summary-card > div,.count-summary-card > div,.waste-summary-card > div { min-width:0; }
.inventory-summary-card span,.inventory-summary-card strong,.inventory-summary-card small,.count-summary-card span,.count-summary-card strong,.count-summary-card small,.waste-summary-card span,.waste-summary-card strong,.waste-summary-card small { display:block; }
.inventory-summary-card > div > span,.count-summary-card > div > span,.waste-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.inventory-summary-card strong,.count-summary-card strong,.waste-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }
.inventory-summary-card small,.count-summary-card small,.waste-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.inventory-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.inventory-side-stack { display:grid; gap:16px; }
.inventory-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }

.inventory-cost-chart { min-height:300px; display:grid; grid-template-columns:42px minmax(0,1fr); gap:9px; }
.inventory-chart-scale { display:flex; flex-direction:column; justify-content:space-between; padding:8px 0 28px; color:#aaa5b1; font-size:.58rem; text-align:right; }
.inventory-chart-area { position:relative; min-width:0; min-height:280px; background:repeating-linear-gradient(to bottom,rgba(23,20,63,.045) 0,rgba(23,20,63,.045) 1px,transparent 1px,transparent 78px); }
.inventory-chart-area svg { position:absolute; inset:0 0 28px; width:100%; height:calc(100% - 28px); overflow:visible; }
.inventory-cost-fill { fill:url(#invCostFill); }.inventory-cost-line { fill:none; stroke:var(--spce-purple); stroke-width:5; stroke-linecap:round; }
.inventory-target-line { position:absolute; z-index:2; left:0; right:0; top:var(--target); border-top:1px dashed rgba(252,137,59,.95); }
.inventory-target-line b { position:absolute; right:5px; top:-20px; padding:3px 6px; border-radius:6px; background:rgba(252,137,59,.12); color:#a96020; font-size:.54rem; }
.inventory-chart-labels { position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; color:#aaa5b1; font-size:.52rem; }
.inventory-chart-foot { display:flex; justify-content:space-between; gap:10px; margin-top:7px; color:var(--spce-muted); font-size:.61rem; }.inventory-chart-foot span { display:inline-flex; align-items:center; gap:6px; }.inventory-chart-foot i { color:var(--spce-purple); font-size:.48rem; }.inventory-chart-foot strong { color:var(--spce-ink); }
.inventory-alert-count { min-width:28px; height:28px; display:grid !important; place-items:center; border-radius:999px; background:rgba(216,49,145,.1); color:var(--spce-pink); font-size:.65rem; font-weight:800; }
.inventory-alert-list { display:grid; }.inventory-alert { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.inventory-alert:first-child { border-top:0; }.inventory-alert > span:nth-child(2) strong,.inventory-alert > span:nth-child(2) small { display:block; }.inventory-alert > span:nth-child(2) strong { font-size:.69rem; }.inventory-alert > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.inventory-alert > i { color:#b5b0bd; font-size:.58rem; }
.inventory-alert-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; }.inventory-alert-icon.critical { background:rgba(243,81,108,.1); color:var(--spce-pink-2); }.inventory-alert-icon.warning { background:rgba(252,137,59,.14); color:#aa6425; }.inventory-alert-icon.purple { background:rgba(72,17,178,.09); color:var(--spce-purple); }.inventory-alert-icon.blue { background:rgba(3,116,223,.09); color:var(--spce-blue); }
.inventory-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff !important; box-shadow:var(--spce-shadow); }
.inventory-orbit-card * { color:inherit; }.inventory-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.inventory-orbit-card strong { font-family:var(--spce-font-display); color:#fff !important; }.inventory-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.72) !important; font-size:.65rem; }.inventory-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange) !important; font-size:.62rem; font-weight:800; }

.low-stock-list,.profitability-list { display:grid; }
.low-stock-row { display:grid; grid-template-columns:42px minmax(0,1fr) minmax(100px,.7fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.low-stock-row:first-child { border-top:0; }.low-stock-row > span:nth-child(2) strong,.low-stock-row > span:nth-child(2) small { display:block; }.low-stock-row > span:nth-child(2) strong { font-size:.69rem; }.low-stock-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.56rem; }
.inventory-item-icon,.menu-impact-icon,.count-section-icon,.cost-source-icon { width:40px; height:40px; display:grid !important; place-items:center; flex:0 0 40px; border-radius:12px; color:#fff !important; }.inventory-item-icon.large { width:50px; height:50px; flex-basis:50px; border-radius:15px; }.inventory-item-icon.green { background:linear-gradient(135deg,#36b58a,#1aa873); }.inventory-item-icon.blue,.menu-impact-icon.blue,.count-section-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.inventory-item-icon.orange,.menu-impact-icon.orange,.count-section-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color:#fff !important; }.inventory-item-icon.purple,.menu-impact-icon.purple,.count-section-icon.purple,.cost-source-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.inventory-item-icon.pink,.menu-impact-icon.pink,.count-section-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.cost-source-icon.blue { background:var(--spce-blue); }.cost-source-icon.orange { background:var(--spce-orange); color:#fff !important; }
.stock-meter { min-width:90px; }.stock-meter > i { position:relative; height:6px; display:block; margin-bottom:4px; overflow:hidden; border-radius:999px; background:#ece9f7; }.stock-meter > i::after { content:''; display:block; width:var(--stock); height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-pink),var(--spce-orange)); }.stock-meter small { color:var(--spce-muted); font-size:.54rem; }.stock-state,.profit-state,.count-status,.cost-source-status { display:inline-flex; align-items:center; justify-content:center; width:max-content; min-height:24px; padding:4px 8px; border-radius:999px; font-size:.55rem; font-weight:800; white-space:nowrap; }.stock-state.critical,.profit-state.high { background:rgba(243,81,108,.09); color:var(--spce-pink-2); }.stock-state.low,.profit-state.watch { background:rgba(252,137,59,.14); color:#a66327; }.stock-state.healthy,.profit-state.good,.cost-source-status.connected { background:rgba(26,168,115,.09); color:#27795e; }.cost-source-status.planned { background:rgba(103,99,125,.09); color:var(--spce-muted); }
.profitability-list > div { display:grid; grid-template-columns:30px minmax(0,1fr) 80px auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.profitability-list > div:first-child { border-top:0; }.profitability-list > div > span:nth-child(2) strong,.profitability-list > div > span:nth-child(2) small,.profitability-list > div > span:nth-child(3) strong,.profitability-list > div > span:nth-child(3) small { display:block; }.profitability-list > div > span:nth-child(2) strong { font-size:.69rem; }.profitability-list > div > span:nth-child(2) small,.profitability-list > div > span:nth-child(3) small { color:var(--spce-muted); font-size:.55rem; }.profitability-list > div > span:nth-child(3) strong { font-size:.67rem; }.profitability-rank { width:28px; height:28px; display:grid !important; place-items:center; border-radius:9px; font-family:var(--spce-font-display); font-size:.66rem; font-weight:800; }.profitability-rank.danger { background:rgba(243,81,108,.1); color:var(--spce-pink-2); }.profitability-rank.warning { background:rgba(252,137,59,.14); color:#a66327; }.profitability-rank.good { background:rgba(26,168,115,.09); color:#27795e; }

.inventory-ingredients-layout,.recipes-layout,.counts-layout,.waste-layout,.price-history-layout,.inventory-settings-layout { display:grid; grid-template-columns:minmax(0,1.55fr) 320px; gap:16px; align-items:start; }
.inventory-list-card,.recipe-list-card,.waste-log-card { padding:0; overflow:hidden; }.inventory-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 17px; border-bottom:1px solid var(--spce-border); }.inventory-search { min-width:260px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.inventory-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.7rem; }.inventory-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.inventory-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.62rem; font-weight:800; }.inventory-filter.active { background:var(--spce-purple); color:#fff; }
.inventory-table-wrap,.recipe-table-wrap,.waste-table-wrap { overflow-x:auto; }.ingredient-table-head,.ingredient-row { min-width:900px; display:grid; grid-template-columns:minmax(230px,1.5fr) 70px 65px 78px 80px 110px 68px 14px; align-items:center; gap:9px; }.ingredient-table-head { padding:9px 13px; background:#faf9ff; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.ingredient-row { width:100%; padding:10px 13px; border:0; border-top:1px solid rgba(23,20,63,.055); background:#fff; color:var(--spce-ink); font-size:.63rem; text-align:left; }.ingredient-row:hover,.ingredient-row.active { background:#fcfbff; }.ingredient-row.active { box-shadow:inset 3px 0 0 var(--spce-purple); }.ingredient-row.is-hidden { display:none; }.ingredient-row > i { color:#b4b0bc; font-size:.55rem; }.ingredient-row b { font-size:.65rem; }.ingredient-name { display:grid !important; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:9px; min-width:0; }.ingredient-name strong,.ingredient-name small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.ingredient-name strong { font-size:.67rem; }.ingredient-name small { color:var(--spce-muted); font-size:.54rem; }
.inventory-list-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 16px; border-top:1px solid var(--spce-border); color:var(--spce-muted); font-size:.61rem; }.inventory-empty { display:none; place-items:center; padding:42px 20px; text-align:center; color:var(--spce-muted); }.inventory-empty.show { display:grid; }.inventory-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.inventory-empty strong,.inventory-empty span { display:block; }.inventory-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.inventory-empty span { margin-top:3px; font-size:.64rem; }
.ingredient-inspector { position:sticky; top:calc(var(--topbar-height) + 18px); }.ingredient-inspector-head { display:grid; grid-template-columns:50px minmax(0,1fr); align-items:center; gap:11px; padding-bottom:14px; border-bottom:1px solid var(--spce-border); }.ingredient-inspector-head h2 { margin:0; font-family:var(--spce-font-display); font-size:1.1rem; letter-spacing:-.03em; }.ingredient-inspector-head p { margin:2px 0 0; color:var(--spce-muted); font-size:.6rem; }.ingredient-inspector-head .page-eyebrow { margin:0 0 2px; font-size:.56rem; }.ingredient-inspector-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin:14px 0; }.ingredient-inspector-stats > div { padding:10px; border-radius:11px; background:var(--spce-bg); }.ingredient-inspector-stats span,.ingredient-inspector-stats strong { display:block; }.ingredient-inspector-stats span { color:var(--spce-muted); font-size:.54rem; }.ingredient-inspector-stats strong { margin-top:2px; font-size:.69rem; }.ingredient-cost-change { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 0; border-top:1px solid var(--spce-border); border-bottom:1px solid var(--spce-border); font-size:.61rem; }.ingredient-cost-change span { color:var(--spce-muted); }.price-up { color:var(--spce-pink-2) !important; }.price-down { color:var(--spce-green) !important; }.ingredient-uses { display:flex; flex-wrap:wrap; gap:5px; margin:13px 0; }.ingredient-uses > strong { width:100%; margin-bottom:2px; font-size:.62rem; }.ingredient-uses span { padding:4px 6px; border-radius:7px; background:rgba(72,17,178,.06); color:var(--spce-purple); font-size:.53rem; font-weight:700; }.ingredient-inspector-actions { display:grid; gap:8px; }

.recipe-summary-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:16px; }.recipe-summary-strip > span { padding:12px 14px; border:1px solid var(--spce-border); border-radius:14px; background:#fff; box-shadow:0 8px 20px rgba(72,17,178,.04); }.recipe-summary-strip b,.recipe-summary-strip small { display:block; }.recipe-summary-strip b { font-family:var(--spce-font-display); font-size:1.05rem; }.recipe-summary-strip small { color:var(--spce-muted); font-size:.57rem; }.recipe-table-head,.recipe-row { min-width:760px; display:grid; grid-template-columns:minmax(220px,1.45fr) 82px 78px 75px 75px 74px 12px; align-items:center; gap:9px; }.recipe-table-head { padding:9px 13px; background:#faf9ff; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.recipe-row { width:100%; padding:12px 13px; border:0; border-top:1px solid rgba(23,20,63,.055); background:#fff; color:var(--spce-ink); text-align:left; font-size:.63rem; }.recipe-row:hover,.recipe-row.active { background:#fcfbff; }.recipe-row.active { box-shadow:inset 3px 0 0 var(--spce-purple); }.recipe-row.is-hidden { display:none; }.recipe-row > span:first-child strong,.recipe-row > span:first-child small { display:block; }.recipe-row > span:first-child strong { font-size:.68rem; }.recipe-row > span:first-child small { color:var(--spce-muted); font-size:.54rem; }.recipe-row > i { color:#b4b0bc; }.cost-bad { color:var(--spce-pink-2); }.cost-watch { color:#b36a2b; }.recipe-inspector { position:sticky; top:calc(var(--topbar-height) + 18px); }.recipe-inspector .card-heading h2 { font-size:1.08rem; }.recipe-inspector .card-heading .page-eyebrow { margin-bottom:1px; font-size:.55rem; }.recipe-cost-hero { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-bottom:14px; }.recipe-cost-hero > span { padding:10px 7px; border-radius:11px; background:var(--spce-bg); text-align:center; }.recipe-cost-hero small,.recipe-cost-hero strong { display:block; }.recipe-cost-hero small { color:var(--spce-muted); font-size:.5rem; }.recipe-cost-hero strong { margin-top:2px; font-family:var(--spce-font-display); font-size:.78rem; }.recipe-ingredient-list { display:grid; margin-bottom:13px; }.recipe-ingredient-list > div { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-top:1px solid #efedfb; font-size:.61rem; }.recipe-ingredient-list > div:first-child { border-top:0; }.recipe-ingredient-list span { color:var(--spce-muted); }.recipe-warning { display:grid; grid-template-columns:34px minmax(0,1fr); gap:9px; margin:10px 0 13px; padding:10px; border-radius:11px; background:rgba(252,137,59,.12); color:#9d5c22; }.recipe-warning > i { width:32px; height:32px; display:grid !important; place-items:center; border-radius:9px; background:rgba(252,137,59,.18); }.recipe-warning strong,.recipe-warning small { display:block; }.recipe-warning strong { font-size:.61rem; }.recipe-warning small { margin-top:2px; opacity:.8; font-size:.54rem; }

.count-summary-grid,.waste-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.count-status.in-progress { background:rgba(3,116,223,.09); color:var(--spce-blue); }.count-progress-head { display:flex; justify-content:space-between; align-items:end; gap:10px; margin:2px 0 7px; }.count-progress-head span strong,.count-progress-head span small { display:block; }.count-progress-head span strong { font-family:var(--spce-font-display); font-size:.8rem; }.count-progress-head span small { color:var(--spce-muted); font-size:.55rem; }.count-progress-head > b { color:var(--spce-purple); font-family:var(--spce-font-display); }.count-progress-meter { height:8px; margin-bottom:15px; border-radius:999px; overflow:hidden; background:#ece9f7; }.count-progress-meter i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); transition:width .2s ease; }.count-items { display:grid; }.count-item { display:grid; grid-template-columns:28px minmax(0,1fr) 90px 45px; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.count-item:first-child { border-top:0; }.count-check { width:24px; height:24px; display:grid !important; place-items:center; border:2px solid #d8d3dc; border-radius:8px; color:#fff !important; }.count-item.complete .count-check { border-color:var(--spce-green); background:var(--spce-green); }.count-item > span:nth-child(2) strong,.count-item > span:nth-child(2) small { display:block; }.count-item > span:nth-child(2) strong { font-size:.66rem; }.count-item > span:nth-child(2) small { color:var(--spce-muted); font-size:.54rem; }.count-item > span:nth-child(3) { display:flex; align-items:center; gap:5px; }.count-item input { min-width:0; width:62px; height:34px; border:1px solid var(--spce-border); border-radius:9px; padding:5px 7px; outline:0; background:var(--spce-bg); font-size:.63rem; }.count-item > span:nth-child(3) small { color:var(--spce-muted); font-size:.55rem; }.variance-negative { color:var(--spce-pink-2); font-size:.61rem; }.variance-positive { color:var(--spce-green); font-size:.61rem; }.count-progress-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:14px; }.count-section-list { display:grid; }.count-section { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.count-section:first-child { border-top:0; }.count-section > span:nth-child(2) strong,.count-section > span:nth-child(2) small { display:block; }.count-section > span:nth-child(2) strong { font-size:.66rem; }.count-section > span:nth-child(2) small { color:var(--spce-muted); font-size:.54rem; }.count-section > b { color:var(--spce-muted); font-size:.55rem; }.count-section.active > b { color:var(--spce-purple); }.recent-count-list { display:grid; }.recent-count-list > div { display:flex; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.recent-count-list > div:first-child { border-top:0; }.recent-count-list span strong,.recent-count-list span small { display:block; }.recent-count-list span strong { font-size:.65rem; }.recent-count-list span small { color:var(--spce-muted); font-size:.53rem; }.recent-count-list b { color:var(--spce-pink); font-size:.61rem; }

.waste-table-head,.waste-row { min-width:760px; display:grid; grid-template-columns:minmax(220px,1.4fr) 65px 65px 90px 80px 65px; align-items:center; gap:9px; }.waste-table-head { padding:9px 13px; background:#faf9ff; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.waste-row { padding:10px 13px; border-top:1px solid rgba(23,20,63,.055); font-size:.62rem; }.waste-row.is-hidden { display:none; }.waste-reason { display:inline-flex; width:max-content; padding:5px 7px; border-radius:999px; font-size:.54rem; font-weight:800; }.waste-reason.spoilage { background:rgba(243,81,108,.09); color:var(--spce-pink-2); }.waste-reason.prep { background:rgba(252,137,59,.13); color:#a66327; }.waste-reason.mistake { background:rgba(3,116,223,.09); color:var(--spce-blue); }.waste-reason-chart { display:grid; gap:12px; }.waste-reason-chart > div { display:grid; grid-template-columns:1fr auto; gap:5px; }.waste-reason-chart span { display:flex; align-items:center; gap:7px; color:var(--spce-muted); font-size:.61rem; }.waste-reason-chart b { font-size:.59rem; }.reason-dot { width:8px; height:8px; border-radius:50%; }.reason-dot.spoilage { background:var(--spce-pink); }.reason-dot.prep { background:var(--spce-orange); }.reason-dot.mistake { background:var(--spce-blue); }.reason-dot.other { background:var(--spce-purple); }.reason-bar { grid-column:1 / -1; height:6px; overflow:hidden; border-radius:999px; background:#ece9f7; }.reason-bar em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); }

.price-history-layout { grid-template-columns:minmax(0,1.5fr) 300px; margin-bottom:16px; }.inventory-select { height:40px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:var(--spce-muted); }.inventory-select select { min-width:130px; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.65rem; font-weight:700; }.price-chart-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:12px; }.price-chart-summary > span { padding:10px; border-radius:11px; background:var(--spce-bg); }.price-chart-summary small,.price-chart-summary strong { display:block; }.price-chart-summary small { color:var(--spce-muted); font-size:.52rem; }.price-chart-summary strong { margin-top:2px; font-family:var(--spce-font-display); font-size:.78rem; }.price-line-chart { position:relative; min-height:260px; overflow:hidden; }.price-grid-lines { position:absolute; inset:0 0 24px; display:flex; flex-direction:column; justify-content:space-between; }.price-grid-lines i { height:1px; background:#ece9f7; }.price-line-chart svg { position:absolute; inset:0 0 24px; width:100%; height:calc(100% - 24px); }.price-area-path { fill:rgba(216,49,145,.1); }.price-line-path { fill:none; stroke:var(--spce-pink); stroke-width:5; stroke-linecap:round; }.price-chart-labels { position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; color:#aaa5b1; font-size:.52rem; }.price-change-list { display:grid; }.price-change-row { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.price-change-row:first-child { border-top:0; }.price-change-row > span:nth-child(2) strong,.price-change-row > span:nth-child(2) small { display:block; }.price-change-row > span:nth-child(2) strong { font-size:.66rem; }.price-change-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.53rem; }.price-change-row > b { font-size:.59rem; }.price-impact-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }.price-impact-grid > div { display:grid; grid-template-columns:40px minmax(0,1fr) 60px auto; align-items:center; gap:9px; padding:11px; border:1px solid var(--spce-border); border-radius:13px; }.price-impact-grid > div > span:nth-child(2) strong,.price-impact-grid > div > span:nth-child(2) small { display:block; }.price-impact-grid > div > span:nth-child(2) strong { font-size:.66rem; }.price-impact-grid > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.53rem; }.price-impact-grid > div > b { font-size:.63rem; }

.inventory-settings-layout { grid-template-columns:minmax(0,1.35fr) 300px; }.inventory-settings-main { display:grid; gap:16px; }.inventory-settings-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.inventory-settings-grid.one-col { grid-template-columns:1fr; }.inventory-settings-grid label { display:grid; gap:5px; color:var(--spce-muted); font-size:.59rem; font-weight:700; }.inventory-settings-grid input,.inventory-settings-grid select { min-height:39px; width:100%; border:1px solid var(--spce-border); border-radius:10px; padding:8px 10px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.66rem; }.setting-input-with-unit { display:grid; grid-template-columns:1fr 36px; }.setting-input-with-unit input { border-radius:10px 0 0 10px; }.setting-input-with-unit span { display:grid !important; place-items:center; border:1px solid var(--spce-border); border-left:0; border-radius:0 10px 10px 0; background:#ece9f7; color:var(--spce-muted); }.cost-source-list { display:grid; }.cost-source-list > div { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #efedfb; }.cost-source-list > div:first-child { border-top:0; }.cost-source-list > div > span:nth-child(2) strong,.cost-source-list > div > span:nth-child(2) small { display:block; }.cost-source-list > div > span:nth-child(2) strong { font-size:.65rem; }.cost-source-list > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.52rem; }

@media (max-width:1399.98px) { .inventory-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.inventory-dashboard-grid { grid-template-columns:1fr; }.inventory-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.inventory-orbit-card { grid-column:auto; }.inventory-ingredients-layout,.recipes-layout,.counts-layout,.waste-layout,.price-history-layout,.inventory-settings-layout { grid-template-columns:minmax(0,1fr) 300px; }.price-impact-grid { grid-template-columns:1fr; } }
@media (max-width:1199.98px) { .inventory-ingredients-layout,.recipes-layout,.counts-layout,.waste-layout,.price-history-layout,.inventory-settings-layout { grid-template-columns:1fr; }.ingredient-inspector,.recipe-inspector { position:static; }.inventory-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.price-history-layout .inventory-side-stack { grid-template-columns:1fr; }.inventory-dashboard-bottom { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .inventory-view-header { align-items:flex-start; flex-direction:column; }.inventory-toolbar { align-items:stretch; flex-direction:column; }.inventory-search { min-width:0; width:100%; }.inventory-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }.inventory-filter { flex:0 0 auto; }.inventory-side-stack { grid-template-columns:1fr; }.recipe-summary-strip { grid-template-columns:repeat(2,1fr); }.price-impact-grid { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .inventory-summary-grid,.count-summary-grid,.waste-summary-grid { grid-template-columns:1fr; gap:10px; }.low-stock-row { grid-template-columns:40px minmax(0,1fr) auto; }.low-stock-row .stock-meter { grid-column:2; }.profitability-list > div { grid-template-columns:28px minmax(0,1fr) auto; }.profitability-list > div > span:nth-child(3) { grid-column:2; }.recipe-summary-strip { grid-template-columns:1fr 1fr; }.count-item { grid-template-columns:28px minmax(0,1fr) 80px; }.count-item > b { grid-column:3; }.count-progress-actions { flex-direction:column; }.inventory-settings-grid { grid-template-columns:1fr; }.price-chart-summary { grid-template-columns:1fr 1fr 1fr; } }
@media (max-width:575.98px) { .inventory-view-actions { width:100%; }.inventory-view-actions .btn { flex:1; }.inventory-summary-card,.count-summary-card,.waste-summary-card { padding:12px; }.inventory-cost-chart { min-height:240px; }.inventory-chart-labels span:nth-child(even) { display:none; }.recipe-summary-strip { grid-template-columns:1fr; }.price-chart-summary { grid-template-columns:1fr; }.price-impact-grid > div { grid-template-columns:40px minmax(0,1fr) auto; }.price-impact-grid > div > b { grid-column:2; }.ingredient-inspector-stats { grid-template-columns:1fr 1fr; } }



/* ==========================================================================
   Vendors
   ========================================================================== */
.vendor-page-heading { margin-bottom:16px; }
.vendor-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.vendor-subnav::-webkit-scrollbar { display:none; }
.vendor-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.vendor-subnav-link i { color:#9d99aa; }
.vendor-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.vendor-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.vendor-subnav-link.active i { color:var(--spce-orange-2); }
.vendor-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.vendor-view { display:none; }
.vendor-view.active { display:block; animation:vendorViewIn .22s ease both; }
@keyframes vendorViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.vendor-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.vendor-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.vendor-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.vendor-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.vendor-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.vendor-summary-card > div { min-width:0; }
.vendor-summary-card span,.vendor-summary-card strong,.vendor-summary-card small { display:block; }
.vendor-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.vendor-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }
.vendor-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.vendor-summary-icon { width:42px; height:42px; flex:0 0 42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }
.vendor-summary-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.vendor-summary-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.vendor-summary-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.vendor-summary-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }

.vendor-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.vendor-side-stack { display:grid; gap:16px; }
.vendor-period-pill { padding:6px 8px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.59rem; font-weight:700; }
.vendor-spend-chart { min-height:280px; display:grid; grid-template-columns:42px minmax(0,1fr); gap:10px; }
.vendor-chart-scale { display:flex; flex-direction:column; justify-content:space-between; padding:8px 0 26px; color:#aaa5b1; font-size:.61rem; text-align:right; }
.vendor-chart-area { position:relative; overflow:hidden; border-radius:12px; background:repeating-linear-gradient(to bottom,rgba(23,20,63,.045) 0,rgba(23,20,63,.045) 1px,transparent 1px,transparent 65px); }
.vendor-chart-area svg { position:absolute; inset:0 0 24px; width:100%; height:calc(100% - 24px); }
.vendor-spend-fill { fill:url(#vendorSpendFill); }.vendor-spend-line { fill:none; stroke:var(--spce-blue); stroke-width:5; stroke-linecap:round; }
.vendor-chart-labels { position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; color:#9f9aa8; font-size:.54rem; }
.vendor-chart-foot { display:flex; justify-content:space-between; gap:10px; margin-top:8px; color:var(--spce-muted); font-size:.61rem; }.vendor-chart-foot i { color:var(--spce-blue); font-size:.5rem; }.vendor-chart-foot strong { color:var(--spce-ink); }
.vendor-attention-count { min-width:28px; height:28px; display:grid !important; place-items:center; border-radius:999px; background:rgba(216,49,145,.1); color:var(--spce-pink); font-size:.66rem; font-weight:800; }
.vendor-attention-list { display:grid; }.vendor-attention { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.vendor-attention:first-child { border-top:0; }.vendor-attention > span:nth-child(2) strong,.vendor-attention > span:nth-child(2) small { display:block; }.vendor-attention > span:nth-child(2) strong { font-size:.69rem; }.vendor-attention > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }.vendor-attention > i { color:#b5b0bd; font-size:.58rem; }
.vendor-alert-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.vendor-alert-icon.pink { background:var(--spce-pink); }.vendor-alert-icon.orange { background:var(--spce-orange-2); }.vendor-alert-icon.purple { background:var(--spce-purple); }.vendor-alert-icon.blue { background:var(--spce-blue); }
.vendor-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }.vendor-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.vendor-orbit-card strong { font-family:var(--spce-font-display); }.vendor-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.7); font-size:.65rem; }.vendor-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }
.vendor-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.vendor-delivery-list,.vendor-spend-list { display:grid; }.vendor-delivery-row { display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.vendor-delivery-row:first-child { border-top:0; }.vendor-delivery-date { width:46px; height:46px; display:grid !important; place-items:center; align-content:center; border-radius:12px; color:#fff !important; }.vendor-delivery-date.purple { background:var(--spce-purple); }.vendor-delivery-date.blue { background:var(--spce-blue); }.vendor-delivery-date.pink { background:var(--spce-pink); }.vendor-delivery-date strong,.vendor-delivery-date small { display:block; line-height:1; }.vendor-delivery-date strong { font-family:var(--spce-font-display); font-size:.62rem; }.vendor-delivery-date small { margin-top:3px; font-size:.48rem; }.vendor-delivery-row > span:nth-child(2) strong,.vendor-delivery-row > span:nth-child(2) small { display:block; }.vendor-delivery-row > span:nth-child(2) strong { font-size:.69rem; }.vendor-delivery-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.57rem; }
.delivery-state { display:inline-flex; justify-content:center; width:max-content; padding:5px 7px; border-radius:999px; font-size:.55rem; font-weight:800; }.delivery-state.scheduled { background:rgba(72,17,178,.09); color:var(--spce-purple); }.delivery-state.updated { background:rgba(252,137,59,.14); color:#a56325; }.delivery-state.received { background:rgba(26,168,115,.09); color:#27795d; }
.vendor-spend-list > div { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.vendor-spend-list > div:first-child { border-top:0; }.vendor-spend-list span:nth-child(2) strong,.vendor-spend-list span:nth-child(2) small { display:block; }.vendor-spend-list span:nth-child(2) strong { font-size:.68rem; }.vendor-spend-list span:nth-child(2) small { color:var(--spce-muted); font-size:.56rem; }.vendor-spend-list b { font-family:var(--spce-font-display); font-size:.7rem; }
.vendor-logo { width:38px; height:38px; display:grid !important; place-items:center; flex:0 0 38px; border-radius:11px; color:#fff !important; font-family:var(--spce-font-display); font-size:.61rem; font-weight:800; }.vendor-logo.large { width:46px; height:46px; flex-basis:46px; border-radius:13px; }.vendor-logo.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.vendor-logo.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.vendor-logo.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.vendor-logo.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.vendor-logo.muted { background:#9d99a7; }

.vendor-directory-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:16px; align-items:start; }.vendor-directory-card { padding:0; overflow:hidden; }.vendor-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 16px; border-bottom:1px solid var(--spce-border); }.vendor-search { min-width:260px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.vendor-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }.vendor-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.vendor-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.64rem; font-weight:800; }.vendor-filter.active { background:var(--spce-purple); color:#fff; }.vendor-table-wrap { overflow-x:auto; }.vendor-table-head,.vendor-row { min-width:850px; display:grid; grid-template-columns:minmax(240px,1.45fr) 110px 80px 105px 90px 75px 20px; align-items:center; gap:10px; }.vendor-table-head { padding:9px 16px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.vendor-row { width:100%; padding:11px 16px; border:0; border-top:1px solid rgba(23,20,63,.055); background:#fff; text-align:left; font-size:.65rem; }.vendor-row:hover,.vendor-row.active { background:#fcfbff; }.vendor-row.active { box-shadow:inset 3px 0 0 var(--spce-purple); }.vendor-row.is-hidden { display:none; }.vendor-row > i { color:#b4afbb; }.vendor-name-cell { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.vendor-name-cell strong,.vendor-name-cell small { display:block; }.vendor-name-cell strong { font-size:.69rem; }.vendor-name-cell small { color:var(--spce-muted); font-size:.56rem; }.vendor-status { width:max-content; padding:5px 7px; border-radius:999px; font-size:.54rem; font-weight:800; }.vendor-status.core { background:rgba(26,168,115,.09); color:#27795d; }.vendor-status.specialty { background:rgba(72,17,178,.09); color:var(--spce-purple); }.vendor-status.inactive { background:#eeebf0; color:#817d8a; }
.vendor-empty { display:none; place-items:center; padding:42px 20px; text-align:center; color:var(--spce-muted); }.vendor-empty.show { display:grid; }.vendor-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.7rem; }.vendor-empty strong,.vendor-empty span { display:block; }.vendor-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.vendor-empty span { margin-top:3px; font-size:.65rem; }
.vendor-inspector { position:sticky; top:calc(var(--topbar-height) + 18px); }.vendor-profile-top { display:grid; grid-template-columns:54px minmax(0,1fr); align-items:center; gap:11px; }.vendor-profile-mark { width:52px; height:52px; display:grid !important; place-items:center; border-radius:16px; color:#fff !important; font-size:1.05rem; }.vendor-profile-mark.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.vendor-profile-mark.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.vendor-profile-mark.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.vendor-profile-mark.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.vendor-profile-mark.muted { background:#9d99a7; }.vendor-profile-top h2 { margin:0; font-family:var(--spce-font-display); font-size:1.15rem; }.vendor-profile-top p { margin:2px 0 0; color:var(--spce-muted); font-size:.62rem; }.vendor-profile-contact { margin:15px 0; padding:12px; border-radius:12px; background:var(--spce-bg); }.vendor-profile-contact strong,.vendor-profile-contact span { display:block; }.vendor-profile-contact strong { font-size:.67rem; }.vendor-profile-contact span { margin-top:3px; color:var(--spce-muted); font-size:.59rem; }.vendor-profile-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }.vendor-profile-stats span { padding:10px; border-radius:11px; background:var(--spce-bg); }.vendor-profile-stats small,.vendor-profile-stats strong { display:block; }.vendor-profile-stats small { color:var(--spce-muted); font-size:.52rem; }.vendor-profile-stats strong { margin-top:2px; font-size:.68rem; }.vendor-profile-detail { display:flex; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #efedfb; font-size:.62rem; }.vendor-profile-detail span { color:var(--spce-muted); }.vendor-profile-actions { display:flex; gap:8px; margin-top:12px; }.vendor-profile-actions .btn { flex:1; font-size:.67rem; }

.order-guide-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }.order-guide-card { padding:0; overflow:hidden; }.vendor-guide-side { display:grid; gap:16px; }.vendor-guide-select { display:grid; grid-template-columns:38px minmax(0,1fr) 12px; align-items:center; gap:9px; }.vendor-guide-select small,.vendor-guide-select strong { display:block; }.vendor-guide-select small { color:var(--spce-muted); font-size:.53rem; }.vendor-guide-select strong { font-size:.7rem; }.vendor-guide-select > i { color:#aaa5b1; font-size:.58rem; }.order-guide-head,.order-guide-row { min-width:780px; display:grid; grid-template-columns:46px minmax(220px,1.4fr) 90px 70px 60px 95px 105px; align-items:center; gap:10px; }.order-guide-head { padding:9px 16px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.order-guide-rows { overflow-x:auto; }.order-guide-row { padding:10px 16px; border-top:1px solid rgba(23,20,63,.055); font-size:.63rem; }.guide-check { width:24px; height:24px; position:relative; display:block; }.guide-check input { opacity:0; position:absolute; }.guide-check span { position:absolute; inset:0; display:grid !important; place-items:center; border:1px solid #d8d3dc; border-radius:7px; background:#fff; }.guide-check input:checked + span { background:var(--spce-purple); border-color:var(--spce-purple); }.guide-check input:checked + span::after { content:'✓'; color:#fff !important; font-size:.65rem; font-weight:800; }.guide-item { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.guide-item strong,.guide-item small { display:block; }.guide-item strong { font-size:.68rem; }.guide-item small { color:var(--spce-muted); font-size:.54rem; }.order-guide-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.order-guide-icon.purple { background:var(--spce-purple); }.order-guide-icon.blue { background:var(--spce-blue); }.order-guide-icon.orange { background:var(--spce-orange-2); }.order-guide-icon.pink { background:var(--spce-pink); }.guide-qty { display:grid !important; grid-template-columns:26px 28px 26px; align-items:center; justify-content:start; }.guide-qty button { width:26px; height:26px; border:1px solid var(--spce-border); background:#fff; color:var(--spce-purple); }.guide-qty button:first-child { border-radius:8px 0 0 8px; }.guide-qty button:last-child { border-radius:0 8px 8px 0; }.guide-qty strong { height:26px; display:grid !important; place-items:center; border-top:1px solid var(--spce-border); border-bottom:1px solid var(--spce-border); font-size:.63rem; }.order-guide-footer { display:flex; align-items:center; justify-content:flex-end; gap:18px; padding:14px 16px; border-top:1px solid var(--spce-border); }.order-guide-footer > span:first-child { margin-right:auto; }.order-guide-footer span strong,.order-guide-footer span small { display:block; }.order-guide-footer span strong { font-size:.68rem; }.order-guide-footer span small { color:var(--spce-muted); font-size:.54rem; }.order-guide-footer > span:nth-child(2) { text-align:right; }.order-guide-footer > span:nth-child(2) strong { font-family:var(--spce-font-display); font-size:.9rem; }.suggested-order-list { display:grid; gap:7px; }.suggested-order-list > div { display:flex; justify-content:space-between; gap:10px; padding:9px 10px; border-radius:10px; background:var(--spce-bg); font-size:.61rem; }.suggested-order-list span { color:var(--spce-muted); }.suggested-order-list strong { color:#a85f21; }

.vendor-po-card,.vendor-invoice-card { padding:0; overflow:hidden; }.po-table-wrap { overflow-x:auto; }.po-table-head,.po-row { min-width:850px; display:grid; grid-template-columns:60px minmax(220px,1.35fr) 80px 80px 55px 90px 90px 30px; align-items:center; gap:10px; }.po-table-head { padding:9px 16px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.po-row { padding:11px 16px; border-top:1px solid rgba(23,20,63,.055); font-size:.64rem; }.po-row.is-hidden { display:none; }.po-vendor { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.po-vendor strong,.po-vendor small { display:block; }.po-vendor strong { font-size:.67rem; }.po-vendor small { color:var(--spce-muted); font-size:.54rem; }.po-state,.invoice-state { width:max-content; padding:5px 7px; border-radius:999px; font-size:.54rem; font-weight:800; }.po-state.sent { background:rgba(3,116,223,.09); color:var(--spce-blue); }.po-state.partial { background:rgba(252,137,59,.14); color:#a35f25; }.po-state.draft { background:rgba(103,99,125,.1); color:#67637d; }.po-state.received { background:rgba(26,168,115,.09); color:#27795d; }
.invoice-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:14px; }.invoice-summary-grid article { padding:14px 16px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; box-shadow:var(--spce-shadow); }.invoice-summary-grid span,.invoice-summary-grid strong,.invoice-summary-grid small { display:block; }.invoice-summary-grid span { color:var(--spce-muted); font-size:.62rem; }.invoice-summary-grid strong { margin-top:2px; font-family:var(--spce-font-display); font-size:1.15rem; }.invoice-summary-grid small { margin-top:2px; color:#9b97a5; font-size:.55rem; }.invoice-list { display:grid; }.invoice-row { display:grid; grid-template-columns:38px minmax(230px,1.4fr) 85px 95px 120px 75px; align-items:center; gap:10px; padding:12px 16px; border-top:1px solid rgba(23,20,63,.055); }.invoice-row:first-child { border-top:0; }.invoice-row.is-hidden { display:none; }.invoice-row > span:nth-child(2) strong,.invoice-row > span:nth-child(2) small,.invoice-row > span:nth-child(3) small,.invoice-row > span:nth-child(3) strong,.invoice-row > span:nth-child(4) small,.invoice-row > span:nth-child(4) strong { display:block; }.invoice-row > span:nth-child(2) strong { font-size:.68rem; }.invoice-row small { color:var(--spce-muted); font-size:.54rem; }.invoice-row > span:nth-child(3) strong,.invoice-row > span:nth-child(4) strong { font-size:.64rem; }.invoice-state.due { background:rgba(252,137,59,.14); color:#a35f25; }.invoice-state.flagged { background:rgba(216,49,145,.1); color:var(--spce-pink); }.invoice-state.paid { background:rgba(26,168,115,.09); color:#27795d; }

.delivery-daybar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; padding:13px 15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.delivery-daybar > div { display:flex; align-items:center; gap:11px; }.delivery-daybar > div > div span,.delivery-daybar > div > div strong { display:block; }.delivery-daybar > div > div span { color:var(--spce-pink); font-size:.62rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.delivery-daybar > div > div strong { font-family:var(--spce-font-display); font-size:.83rem; }.delivery-board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.delivery-card { padding:17px; border:1px solid var(--spce-border); border-radius:20px; background:#fff; box-shadow:var(--spce-shadow); }.delivery-card-top { display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:start; gap:10px; }.delivery-card-top h3 { margin:0; font-family:var(--spce-font-display); font-size:.9rem; }.delivery-card-top p { margin:2px 0 0; color:var(--spce-muted); font-size:.58rem; }.delivery-checks { display:grid; gap:7px; margin:15px 0; }.delivery-checks span { padding:8px 9px; border-radius:9px; background:var(--spce-bg); color:var(--spce-muted); font-size:.6rem; }.delivery-checks i { margin-right:6px; color:var(--spce-purple); }.delivery-card .btn { width:100%; font-size:.67rem; }.delivery-card.is-receiving { border-color:rgba(26,168,115,.25); }.delivery-card.is-receiving .delivery-checks i::before { content:'\\f14a'; }.delivery-card.is-receiving .delivery-checks span { color:#27795d; background:rgba(26,168,115,.07); }

.price-compare-card { padding:0; overflow:hidden; }.price-compare-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px; border-bottom:1px solid var(--spce-border); }.price-compare-top > div { display:flex; align-items:center; gap:12px; }.price-compare-top h2 { margin:0; font-family:var(--spce-font-display); font-size:1.05rem; }.price-compare-top p { margin:2px 0 0; color:var(--spce-muted); font-size:.62rem; }.vendor-select-control { min-width:210px; display:grid; gap:4px; color:var(--spce-muted); font-size:.56rem; font-weight:700; }.vendor-select-control select { min-height:40px; border:1px solid var(--spce-border); border-radius:10px; padding:8px 10px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.68rem; }.price-compare-table { overflow-x:auto; }.price-compare-head,.price-compare-row { min-width:810px; display:grid; grid-template-columns:minmax(210px,1.3fr) 105px 95px 120px 80px 75px 95px; align-items:center; gap:10px; }.price-compare-head { padding:9px 18px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.price-compare-row { padding:12px 18px; border-top:1px solid rgba(23,20,63,.055); font-size:.64rem; }.price-vendor { display:grid !important; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.price-vendor strong,.price-vendor small { display:block; }.price-vendor strong { font-size:.67rem; }.price-vendor small { color:var(--spce-muted); font-size:.54rem; }.price-delta.up { color:var(--spce-pink); font-weight:800; }.price-delta.down { color:var(--spce-green); font-weight:800; }.price-delta.flat { color:var(--spce-muted); font-weight:800; }.preferred-pill { width:max-content; padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:#27795d; font-size:.54rem; font-weight:800; }.compare-use { border:0; border-radius:8px; padding:6px 8px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.56rem; font-weight:800; }.price-compare-insight { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; margin-top:14px; padding:16px 18px; border:1px solid rgba(252,137,59,.22); border-radius:18px; background:linear-gradient(135deg,#fff9f3,#fff); }.price-compare-insight strong { font-family:var(--spce-font-display); font-size:.78rem; }.price-compare-insight p { margin:4px 0 0; color:var(--spce-muted); font-size:.64rem; }

.vendor-settings-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); gap:16px; align-items:start; }.vendor-settings-main,.vendor-settings-side { display:grid; gap:16px; }

@media (max-width:1399.98px) { .vendor-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.vendor-dashboard-grid { grid-template-columns:1fr; }.vendor-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.vendor-directory-layout { grid-template-columns:minmax(0,1fr) 300px; }.delivery-board { grid-template-columns:1fr 1fr; } }
@media (max-width:1199.98px) { .vendor-directory-layout,.order-guide-layout,.vendor-settings-layout { grid-template-columns:1fr; }.vendor-inspector { position:static; }.vendor-guide-side { grid-template-columns:1fr 1fr; }.delivery-board { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .vendor-dashboard-bottom { grid-template-columns:1fr; }.vendor-toolbar { align-items:stretch; flex-direction:column; }.vendor-search { min-width:0; width:100%; }.vendor-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; }.vendor-filter { flex:0 0 auto; }.invoice-row { min-width:760px; }.invoice-list { overflow-x:auto; }.vendor-guide-side { grid-template-columns:1fr; }.price-compare-top { align-items:flex-start; flex-direction:column; }.vendor-select-control { width:100%; } }
@media (max-width:767.98px) { .vendor-summary-grid,.invoice-summary-grid { grid-template-columns:1fr; gap:10px; }.vendor-view-header { align-items:flex-start; flex-direction:column; }.vendor-side-stack { grid-template-columns:1fr; }.vendor-profile-stats { grid-template-columns:1fr 1fr; }.delivery-daybar { align-items:flex-start; flex-direction:column; }.delivery-daybar .res-service-pill { width:100%; justify-content:center; }.order-guide-footer { align-items:flex-start; flex-direction:column; }.order-guide-footer > span:first-child { margin-right:0; }.order-guide-footer > span:nth-child(2) { text-align:left; }.order-guide-footer .btn { width:100%; } }
@media (max-width:575.98px) { .vendor-summary-card { padding:12px; }.vendor-dashboard-grid,.vendor-dashboard-bottom { gap:12px; }.vendor-directory-layout { gap:12px; }.vendor-profile-actions { flex-direction:column; }.delivery-card-top { grid-template-columns:46px minmax(0,1fr); }.delivery-card-top .delivery-state { grid-column:2; }.vendor-chart-labels span:nth-child(even) { display:none; } }


/* ==========================================================================\n   Reports\n   ========================================================================== */
.reports-page-heading { margin-bottom:16px; }
.reports-subnav { display:flex; gap:6px; margin:0 0 14px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.82); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.reports-subnav::-webkit-scrollbar { display:none; }
.reports-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.74rem; font-weight:700; transition:.18s ease; }
.reports-subnav-link i { color:#9d99aa; }
.reports-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.reports-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.reports-subnav-link.active i { color:var(--spce-orange-2); }
.report-view { display:none; }
.report-view.active { display:block; animation:reportViewIn .22s ease both; }
@keyframes reportViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }

.report-control-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; padding:11px 14px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; box-shadow:0 9px 24px rgba(72,17,178,.045); }
.report-control-group { display:flex; align-items:center; gap:8px; }
.report-control-group label { height:40px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#9a96a5; }
.report-control-group label > span { font-size:.57rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.report-control-group select { min-width:130px; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.68rem; font-weight:700; }
.report-compare-control { display:flex; align-items:center; gap:9px; margin:0; cursor:pointer; }
.report-compare-control > span:last-child strong,.report-compare-control > span:last-child small { display:block; }
.report-compare-control > span:last-child strong { font-size:.66rem; }
.report-compare-control > span:last-child small { color:var(--spce-muted); font-size:.55rem; }

.report-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.report-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.report-summary-icon { width:44px; height:44px; flex:0 0 44px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }
.report-summary-icon.purple,.report-module-icon.purple,.report-library-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.report-summary-icon.orange,.report-module-icon.orange,.report-library-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); color:#fff !important; }
.report-summary-icon.blue,.report-module-icon.blue,.report-library-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.report-summary-icon.pink,.report-module-icon.pink,.report-library-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }
.report-summary-card > div { min-width:0; }
.report-summary-card > div > span,.report-summary-card strong,.report-summary-card small { display:block; }
.report-summary-card > div > span { color:var(--spce-muted); font-size:.67rem; font-weight:600; }
.report-summary-card strong { margin-top:1px; overflow:hidden; font-family:var(--spce-font-display); font-size:1.28rem; letter-spacing:-.025em; text-overflow:ellipsis; white-space:nowrap; }
.report-summary-card small { margin-top:2px; color:#9c98a6; font-size:.6rem; }
.report-trend { font-style:normal; font-weight:800; }
.report-trend.up { color:var(--spce-green) !important; }
.report-trend.down { color:#c76b32 !important; }

.report-overview-grid,.report-two-col { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr); gap:16px; margin-bottom:16px; }
.report-two-col { grid-template-columns:repeat(2,minmax(0,1fr)); }
.report-bottom-grid { grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr); }
.report-period-label { padding:6px 8px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.58rem; font-weight:700; }
.report-line-chart { min-height:290px; display:grid; grid-template-columns:42px minmax(0,1fr); gap:9px; }
.report-chart-y { display:flex; flex-direction:column; justify-content:space-between; padding:0 0 28px; color:#aaa6b2; font-size:.56rem; text-align:right; }
.report-chart-stage { position:relative; min-width:0; min-height:260px; }
.report-grid-line { position:absolute; left:0; right:0; height:1px; background:#ece9f7; }
.report-chart-stage svg { position:absolute; inset:0 0 28px; width:100%; height:calc(100% - 28px); overflow:visible; }
.report-chart-area { fill:url(#reportRevenueGradient); }
.report-chart-line { fill:none; stroke:var(--spce-purple); stroke-width:5; stroke-linecap:round; }
.report-chart-labels { position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; color:#aaa6b2; font-size:.54rem; }
.report-donut-layout { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; gap:17px; min-height:265px; }
.report-donut { position:relative; width:145px; height:145px; display:grid !important; place-items:center; margin:auto; border-radius:50%; }
.report-donut.sales { background:conic-gradient(var(--spce-purple) 0 52%,var(--spce-blue) 52% 74%,var(--spce-orange) 74% 85%,var(--spce-pink) 85% 100%); }
.report-donut.reservations { background:conic-gradient(var(--spce-purple) 0 92%,var(--spce-blue) 92% 96.9%,var(--spce-orange) 96.9% 100%); }
.report-donut.customers { background:conic-gradient(var(--spce-purple) 0 41%,var(--spce-blue) 41% 75%,var(--spce-orange) 75% 87%,var(--spce-pink) 87% 100%); }
.report-donut.catering { background:conic-gradient(var(--spce-purple) 0 44%,var(--spce-pink) 44% 71%,var(--spce-orange) 71% 89%,var(--spce-blue) 89% 100%); }
.report-donut::after { content:''; position:absolute; inset:28px; border-radius:50%; background:#fff; }
.report-donut > div { position:relative; z-index:2; text-align:center; }
.report-donut strong,.report-donut span { display:block; }
.report-donut strong { font-family:var(--spce-font-display); font-size:.95rem; }
.report-donut span { color:var(--spce-muted); font-size:.54rem; }
.report-donut-legend { display:grid; gap:10px; }
.report-donut-legend > div { display:grid; grid-template-columns:9px minmax(0,1fr) auto; align-items:center; gap:7px; font-size:.63rem; }
.report-donut-legend i,.channel-dot,.stack-legend i { width:8px; height:8px; display:inline-block; border-radius:50%; }
.report-donut-legend i.purple,.channel-dot.purple,.stack-legend i.purple { background:var(--spce-purple); }.report-donut-legend i.blue,.channel-dot.blue { background:var(--spce-blue); }.report-donut-legend i.orange,.channel-dot.orange,.stack-legend i.orange { background:var(--spce-orange); }.report-donut-legend i.pink,.channel-dot.pink { background:var(--spce-pink); }
.report-donut-legend span { color:var(--spce-muted); }
.report-module-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.report-module-card { display:grid; grid-template-columns:42px minmax(0,1fr) 28px; align-items:center; gap:10px; padding:14px; border:1px solid var(--spce-border); border-radius:16px; background:#fff; box-shadow:var(--spce-shadow); }
.report-module-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:12px; color:#fff !important; }
.report-module-card div > span,.report-module-card div > strong,.report-module-card div > small { display:block; }
.report-module-card div > span { color:var(--spce-muted); font-size:.57rem; }.report-module-card div > strong { font-size:.72rem; }.report-module-card div > small { margin-top:2px; color:#9a96a5; font-size:.54rem; }
.report-module-card > a { width:28px; height:28px; display:grid !important; place-items:center; border-radius:9px; background:var(--spce-bg); color:var(--spce-purple); font-size:.58rem; }
.report-insight-list { display:grid; }
.report-insight-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }
.report-insight-list > div:first-child { border-top:0; }
.report-insight-icon { width:36px; height:36px; display:grid !important; place-items:center; border-radius:11px; }
.report-insight-icon.up { background:rgba(26,168,115,.09); color:var(--spce-green); }.report-insight-icon.warn { background:rgba(252,137,59,.14); color:#ab6427; }.report-insight-icon.blue { background:rgba(3,116,223,.09); color:var(--spce-blue); }
.report-insight-list div div strong,.report-insight-list div div span { display:block; }.report-insight-list div div strong { font-size:.68rem; }.report-insight-list div div span { color:var(--spce-muted); font-size:.57rem; }.report-insight-list > div > b { font-size:.64rem; white-space:nowrap; }
.report-health-list { display:grid; gap:5px; }.report-health-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 10px; border-radius:10px; background:var(--spce-bg); font-size:.63rem; }.report-health-list span { color:var(--spce-muted); }.report-health-list strong.good { color:var(--spce-green); }.report-health-list strong.warn { color:#b76b2c; }

.report-view-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:14px; }
.report-view-heading h2 { margin:0; font-family:var(--spce-font-display); font-size:1.52rem; letter-spacing:-.04em; }.report-view-heading p { margin:4px 0 0; color:var(--spce-muted); font-size:.72rem; }
.report-bars-horizontal { display:grid; gap:10px; }.report-bars-horizontal > div { display:grid; grid-template-columns:78px minmax(0,1fr) 65px; align-items:center; gap:10px; font-size:.62rem; }.report-bars-horizontal > div > span { color:var(--spce-muted); }.report-bars-horizontal > div > i { height:9px; overflow:hidden; border-radius:999px; background:#ece9f7; }.report-bars-horizontal > div > i > b { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); }.report-bars-horizontal > div > strong { text-align:right; font-size:.62rem; }
.sales-days { min-height:280px; justify-content:center; }
.report-daypart-list { display:grid; gap:8px; }.report-daypart-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px; border-radius:12px; background:var(--spce-bg); }.report-daypart-list > div > span { display:grid; grid-template-columns:35px minmax(0,1fr); align-items:center; gap:9px; }.report-daypart-list > div > span i { grid-row:1 / 3; width:35px; height:35px; display:grid !important; place-items:center; border-radius:10px; background:rgba(72,17,178,.09); color:var(--spce-purple); }.report-daypart-list b,.report-daypart-list small,.report-daypart-list strong { display:block; }.report-daypart-list b { font-size:.67rem; }.report-daypart-list small { color:var(--spce-muted); font-size:.54rem; }.report-daypart-list > div > strong { text-align:right; font-size:.69rem; }.report-daypart-list > div > strong small { margin-top:2px; }
.report-table-card { overflow:hidden; }.report-table-wrap { overflow-x:auto; }.report-sales-head,.report-sales-row { min-width:820px; display:grid; grid-template-columns:minmax(150px,1.2fr) 70px 95px 80px 80px 75px 65px; align-items:center; gap:10px; }.report-sales-head { padding:8px 4px; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.report-sales-row { padding:11px 4px; border-top:1px solid rgba(23,20,63,.055); font-size:.62rem; }.report-sales-row > span:first-child { display:flex; align-items:center; gap:7px; }

.menu-report-grid { grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr); }.report-menu-head,.report-menu-row { min-width:650px; display:grid; grid-template-columns:minmax(170px,1.3fr) 55px 80px 75px 80px 78px; align-items:center; gap:8px; }.report-menu-head { padding:8px 4px; color:#9995a4; font-size:.54rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.report-menu-row { padding:10px 4px; border-top:1px solid rgba(23,20,63,.055); font-size:.61rem; }.report-menu-row > span:first-child strong,.report-menu-row > span:first-child small { display:block; }.report-menu-row > span:first-child small { color:var(--spce-muted); font-size:.53rem; }.report-menu-row span.warn { color:#b66c2b; font-weight:800; }.menu-class { width:max-content; padding:4px 6px; border-radius:999px; font-size:.52rem; }.menu-class.star { background:rgba(26,168,115,.09); color:#24785b; }.menu-class.plowhorse { background:rgba(3,116,223,.09); color:var(--spce-blue); }.menu-class.puzzle { background:rgba(252,137,59,.13); color:#a86225; }
.menu-engineering { position:relative; padding:10px 10px 0 26px; }.menu-matrix { position:relative; display:grid; grid-template-columns:1fr 1fr; min-height:300px; border:1px solid var(--spce-border); border-radius:14px; overflow:hidden; }.matrix-quadrant { padding:13px; }.matrix-quadrant:nth-child(odd) { border-right:1px solid var(--spce-border); }.matrix-quadrant:nth-child(-n+2) { border-bottom:1px solid var(--spce-border); }.matrix-quadrant b,.matrix-quadrant small { display:block; }.matrix-quadrant b { font-size:.65rem; }.matrix-quadrant small { color:var(--spce-muted); font-size:.51rem; }.stars { background:rgba(26,168,115,.035); }.puzzles { background:rgba(252,137,59,.04); }.plowhorses { background:rgba(3,116,223,.035); }.dogs { background:rgba(103,99,125,.035); }.matrix-axis-y { position:absolute; left:-21px; top:47%; transform:rotate(-90deg); color:var(--spce-muted); font-size:.52rem; }.matrix-axis-x { display:block; margin-top:5px; color:var(--spce-muted); font-size:.52rem; text-align:right; }.matrix-item { position:absolute; width:30px; height:30px; display:grid !important; place-items:center; border:3px solid #fff; border-radius:50%; color:#fff !important; font-size:.52rem; font-weight:800; box-shadow:0 6px 14px rgba(23,20,63,.14); }.matrix-item.burger { left:30%; top:22%; background:var(--spce-purple); }.matrix-item.tuna { left:39%; top:34%; background:var(--spce-blue); }.matrix-item.curry { left:28%; top:68%; background:var(--spce-orange-2); }.matrix-item.pie { left:72%; top:29%; background:var(--spce-pink); }.matrix-item.calamari { left:67%; top:63%; background:#7b7890; }
.report-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.report-category-grid > div { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; column-gap:10px; padding:12px; border:1px solid var(--spce-border); border-radius:13px; background:var(--spce-bg); }.category-report-icon { grid-row:1 / 4; width:40px; height:40px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.category-report-icon.purple { background:var(--spce-purple); }.category-report-icon.blue { background:var(--spce-blue); }.category-report-icon.orange { background:var(--spce-orange-2); }.category-report-icon.pink { background:var(--spce-pink); }.report-category-grid strong,.report-category-grid b,.report-category-grid small { display:block; }.report-category-grid strong { font-size:.64rem; }.report-category-grid b { font-size:.68rem; }.report-category-grid small { color:var(--spce-muted); font-size:.52rem; }

.fulfillment-report-list { display:grid; gap:10px; }.fulfillment-report-list > div { display:grid; grid-template-columns:120px minmax(0,1fr) 100px; align-items:center; gap:10px; }.fulfillment-report-list > div > span { display:flex; align-items:center; gap:8px; }.fulfillment-report-list > div > span i { width:32px; height:32px; display:grid !important; place-items:center; border-radius:9px; color:#fff !important; }.fulfillment-report-list > div > span i.purple { background:var(--spce-purple); }.fulfillment-report-list > div > span i.orange { background:var(--spce-orange-2); }.fulfillment-report-list > div > span i.blue { background:var(--spce-blue); }.fulfillment-report-list > div > span b { font-size:.62rem; }.fulfillment-report-list > div > i { height:8px; overflow:hidden; border-radius:999px; background:#ece9f7; }.fulfillment-report-list > div > i b { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--spce-blue),var(--spce-purple)); }.fulfillment-report-list > div > strong { text-align:right; font-size:.63rem; }.fulfillment-report-list > div > strong small { display:block; color:var(--spce-muted); font-size:.51rem; }
.service-heatmap { overflow-x:auto; }.service-heatmap-head,.service-heatmap-row { min-width:720px; display:grid; grid-template-columns:75px repeat(10,1fr); gap:5px; align-items:center; }.service-heatmap-head { margin-bottom:5px; color:var(--spce-muted); font-size:.53rem; text-align:center; }.service-heatmap-row { margin-top:5px; }.service-heatmap-row strong { color:var(--spce-muted); font-size:.56rem; }.service-heatmap-row i { min-height:34px; border-radius:7px; background:rgba(72,17,178,.04); }.service-heatmap-row i.h1 { background:rgba(72,17,178,.1); }.service-heatmap-row i.h2 { background:rgba(72,17,178,.18); }.service-heatmap-row i.h3 { background:rgba(72,17,178,.3); }.service-heatmap-row i.h4 { background:rgba(72,17,178,.47); }.service-heatmap-row i.h5 { background:rgba(72,17,178,.72); }

.customer-stack-chart { display:grid; gap:12px; }.customer-stack-chart > div { display:grid; grid-template-columns:55px minmax(0,1fr) 85px; align-items:center; gap:9px; }.customer-stack-chart strong,.customer-stack-chart small { font-size:.56rem; }.customer-stack-chart small { color:var(--spce-muted); text-align:right; }.customer-stack-chart > div > span { height:14px; display:flex; overflow:hidden; border-radius:999px; background:#ece9f7; }.customer-stack-chart i { height:100%; }.customer-stack-chart i.returning { background:var(--spce-purple); }.customer-stack-chart i.new { background:var(--spce-orange); }.stack-legend { display:flex; justify-content:flex-end; gap:13px; margin-top:12px; color:var(--spce-muted); font-size:.55rem; }.stack-legend span { display:flex; align-items:center; gap:5px; }
.report-segment-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.report-segment-grid > div { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:2px 9px; padding:12px; border:1px solid var(--spce-border); border-radius:13px; background:var(--spce-bg); }.segment-icon { grid-row:1 / 4; width:40px; height:40px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.segment-icon.vip { background:var(--spce-orange-2); }.segment-icon.regular { background:var(--spce-purple); }.segment-icon.catering { background:var(--spce-blue); }.segment-icon.lapsed { background:var(--spce-pink); }.report-segment-grid strong,.report-segment-grid b,.report-segment-grid small { display:block; }.report-segment-grid strong { font-size:.63rem; }.report-segment-grid b { font-size:.7rem; }.report-segment-grid small { color:var(--spce-muted); font-size:.51rem; }

.profit-waterfall { display:flex; align-items:center; justify-content:center; gap:8px; min-height:210px; }.profit-waterfall > i { color:#aaa6b2; font-size:.7rem; }.profit-block { min-width:115px; padding:15px 12px; border-radius:14px; text-align:center; }.profit-block span,.profit-block strong { display:block; }.profit-block span { font-size:.56rem; }.profit-block strong { margin-top:3px; font-family:var(--spce-font-display); font-size:.88rem; }.profit-block.sales { background:rgba(72,17,178,.09); color:var(--spce-purple); }.profit-block.costs { background:rgba(3,116,223,.09); color:var(--spce-blue); }.profit-block.waste { background:rgba(252,137,59,.15); color:#9f6028; }.profit-block.profit { background:rgba(26,168,115,.1); color:#24785b; }.profit-note { margin:5px 0 0; color:var(--spce-muted); font-size:.53rem; text-align:center; }
.cost-compare-gauge { display:grid; place-items:center; min-height:245px; }.cost-compare-gauge > div { display:flex; align-items:flex-end; gap:24px; }.cost-compare-gauge > div > span { position:relative; width:96px; height:140px; display:grid; place-items:end center; padding-bottom:12px; overflow:hidden; border-radius:48px 48px 12px 12px; background:#ece9f7; }.cost-compare-gauge > div > span::before { content:''; position:absolute; left:0; right:0; bottom:0; height:calc(var(--value) * 2.8px); background:linear-gradient(180deg,var(--spce-pink),var(--spce-purple)); opacity:.9; }.cost-compare-gauge strong,.cost-compare-gauge small { position:relative; z-index:2; display:block; color:#fff; text-align:center; }.cost-compare-gauge strong { font-family:var(--spce-font-display); font-size:.8rem; }.cost-compare-gauge small { font-size:.5rem; }.cost-compare-gauge p { margin:14px 0 0; padding:9px 10px; border-radius:10px; background:rgba(252,137,59,.12); color:#8f5d2e; font-size:.58rem; text-align:center; }.cost-mover-head,.cost-mover-row { min-width:760px; display:grid; grid-template-columns:minmax(160px,1.2fr) minmax(140px,1fr) 75px 75px 70px 75px; align-items:center; gap:9px; }.cost-mover-head { padding:8px 4px; color:#9995a4; font-size:.53rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.cost-mover-row { padding:10px 4px; border-top:1px solid rgba(23,20,63,.055); font-size:.6rem; }.cost-mover-row > span:first-child strong,.cost-mover-row > span:first-child small { display:block; }.cost-mover-row > span:first-child small { color:var(--spce-muted); font-size:.51rem; }
.report-funnel { display:grid; gap:7px; min-height:240px; align-content:center; }.report-funnel > div { width:var(--w); min-width:38%; display:flex; justify-content:space-between; gap:10px; margin:auto; padding:10px 13px; border-radius:10px; background:linear-gradient(90deg,rgba(72,17,178,.14),rgba(216,49,145,.08)); color:var(--spce-purple); font-size:.63rem; }.report-funnel > div:nth-child(2) { background:rgba(3,116,223,.1); color:var(--spce-blue); }.report-funnel > div:nth-child(3) { background:rgba(252,137,59,.14); color:#9d6129; }.report-funnel > div:nth-child(4) { background:rgba(26,168,115,.1); color:#27795d; }
.qr-report-list { display:grid; }.qr-report-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid #efedfb; }.qr-report-list > div:first-child { border-top:0; }.qr-report-list > div > span { display:grid; grid-template-columns:36px minmax(0,1fr); align-items:center; gap:8px; }.qr-report-list > div > span i { grid-row:1 / 3; width:36px; height:36px; display:grid !important; place-items:center; border-radius:10px; color:#fff !important; }.qr-report-list > div > span i.purple { background:var(--spce-purple); }.qr-report-list > div > span i.blue { background:var(--spce-blue); }.qr-report-list > div > span i.orange { background:var(--spce-orange-2); }.qr-report-list > div > span i.pink { background:var(--spce-pink); }.qr-report-list b,.qr-report-list small,.qr-report-list strong { display:block; }.qr-report-list b { font-size:.64rem; }.qr-report-list small { color:var(--spce-muted); font-size:.52rem; }.qr-report-list > div > strong { text-align:right; font-size:.66rem; }

.report-export-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:16px; align-items:start; }.report-export-side { display:grid; gap:16px; }.report-library-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.report-library-card { width:100%; display:grid; grid-template-columns:42px minmax(0,1fr) 26px; align-items:center; gap:10px; padding:12px; border:1px solid var(--spce-border); border-radius:14px; background:var(--spce-bg); text-align:left; }.report-library-card:hover { border-color:rgba(72,17,178,.2); background:#fff; }.report-library-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:12px; color:#fff !important; }.report-library-card div strong,.report-library-card div small,.report-library-card div span { display:block; }.report-library-card div strong { font-size:.66rem; }.report-library-card div small { margin-top:2px; color:var(--spce-muted); font-size:.53rem; }.report-library-card div span { margin-top:4px; color:var(--spce-purple); font-size:.51rem; font-weight:800; }.report-library-card > i { color:#aaa6b2; font-size:.62rem; }.scheduled-report-list { display:grid; }.scheduled-report-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.scheduled-report-list > div:first-child { border-top:0; }.scheduled-report-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; background:var(--spce-purple); color:#fff !important; }.scheduled-report-icon.blue { background:var(--spce-blue); }.scheduled-report-list div div strong,.scheduled-report-list div div small { display:block; }.scheduled-report-list div div strong { font-size:.64rem; }.scheduled-report-list div div small { color:var(--spce-muted); font-size:.52rem; }.report-active-pill { padding:4px 6px; border-radius:999px; background:rgba(26,168,115,.09); color:#28795e; font-size:.51rem; font-weight:800; }.report-data-note { display:grid; grid-template-columns:42px minmax(0,1fr); gap:11px; padding:16px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }.report-data-note-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:12px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.report-data-note strong { font-family:var(--spce-font-display); }.report-data-note p { margin:5px 0 0; color:rgba(255,255,255,.7); font-size:.61rem; }

@media (max-width:1399.98px) { .report-summary-grid,.report-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.report-category-grid,.report-segment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.report-export-layout { grid-template-columns:minmax(0,1fr) 300px; } }
@media (max-width:1199.98px) { .report-overview-grid,.report-bottom-grid,.menu-report-grid,.report-export-layout { grid-template-columns:1fr; }.report-export-side { grid-template-columns:repeat(2,minmax(0,1fr)); }.report-donut-layout { min-height:220px; }.report-library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:991.98px) { .report-two-col { grid-template-columns:1fr; }.report-control-bar { align-items:flex-start; flex-direction:column; }.report-control-group { width:100%; }.report-control-group label { flex:1; }.report-control-group select { min-width:0; width:100%; }.profit-waterfall { flex-wrap:wrap; }.report-export-side { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .report-summary-grid,.report-module-grid,.report-category-grid,.report-segment-grid { grid-template-columns:1fr; gap:10px; }.report-view-heading { align-items:flex-start; flex-direction:column; }.report-control-group { align-items:stretch; flex-direction:column; }.report-control-group label { width:100%; }.report-library-grid { grid-template-columns:1fr; }.report-donut-layout { grid-template-columns:1fr; }.report-donut-legend { width:min(100%,320px); margin:auto; }.customer-stack-chart > div { grid-template-columns:50px minmax(0,1fr); }.customer-stack-chart small { grid-column:2; text-align:left; }.profit-waterfall { display:grid; grid-template-columns:1fr; }.profit-waterfall > i { transform:rotate(90deg); justify-self:center; }.profit-block { width:100%; }.fulfillment-report-list > div { grid-template-columns:100px minmax(0,1fr); }.fulfillment-report-list > div > strong { grid-column:2; text-align:left; } }
@media (max-width:575.98px) { .reports-page-heading .page-heading-actions { width:100%; }.reports-page-heading .page-heading-actions .btn { flex:1; }.report-summary-card { padding:12px; }.report-line-chart { min-height:235px; }.report-chart-stage { min-height:205px; }.report-library-card { grid-template-columns:38px minmax(0,1fr) 22px; }.report-library-icon { width:38px; height:38px; }.report-daypart-list > div { align-items:flex-start; }.report-insight-list > div { grid-template-columns:36px minmax(0,1fr); }.report-insight-list > div > b { grid-column:2; }.report-module-card { grid-template-columns:40px minmax(0,1fr) 28px; } }


/* ==========================================================================
   Locations
   ========================================================================== */
.locations-page-heading { margin-bottom:16px; }
.locations-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.locations-subnav::-webkit-scrollbar { display:none; }
.locations-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.locations-subnav-link i { color:#9d99aa; }
.locations-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.locations-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.locations-subnav-link.active i { color:var(--spce-orange-2); }
.loc-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.location-view { display:none; }
.location-view.active { display:block; animation:locationViewIn .22s ease both; }
@keyframes locationViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.location-view-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.location-view-heading h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.location-view-heading p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.location-context-bar { display:grid; grid-template-columns:minmax(260px,1.2fr) minmax(460px,1.45fr) auto; align-items:center; gap:20px; margin-bottom:16px; padding:18px; border:1px solid rgba(72,17,178,.13); border-radius:var(--spce-radius); background:linear-gradient(135deg,rgba(72,17,178,.07),#fff 47%,rgba(3,116,223,.07)); box-shadow:var(--spce-shadow); }
.location-context-main { display:grid; grid-template-columns:44px minmax(0,1fr); align-items:center; gap:11px; }
.location-context-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; }
.location-context-main div span,.location-context-main div strong,.location-context-main div small { display:block; }.location-context-main div span { color:var(--spce-pink); font-size:.57rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.location-context-main div strong { margin-top:1px; font-family:var(--spce-font-display); font-size:.9rem; }.location-context-main div small { margin-top:2px; color:var(--spce-muted); font-size:.57rem; }
.location-context-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }.location-context-stats > div { padding:6px 12px; border-left:1px solid var(--spce-border); }.location-context-stats span,.location-context-stats strong { display:block; }.location-context-stats span { color:var(--spce-muted); font-size:.56rem; }.location-context-stats strong { margin-top:1px; font-family:var(--spce-font-display); font-size:.8rem; }
.location-warning-text { color:#b46825 !important; }.location-positive { color:var(--spce-green); font-style:normal; }
.location-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.location-summary-grid.compact { margin-bottom:18px; }.location-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.location-summary-icon { width:42px; height:42px; flex:0 0 42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }.location-summary-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.location-summary-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.location-summary-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.location-summary-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.location-summary-card > div { min-width:0; }.location-summary-card span,.location-summary-card strong,.location-summary-card small { display:block; }.location-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }.location-summary-card strong { margin-top:1px; overflow:hidden; font-family:var(--spce-font-display); font-size:1.22rem; text-overflow:ellipsis; white-space:nowrap; }.location-summary-card small { margin-top:2px; color:#9c98a6; font-size:.61rem; }

.locations-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }.locations-side-stack { display:grid; gap:16px; }.location-overview-list { display:grid; }.location-overview-row { width:100%; display:grid; grid-template-columns:46px minmax(0,1.4fr) 95px 92px 12px; align-items:center; gap:10px; padding:12px 5px; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.location-overview-row:first-child { border-top:0; }.location-overview-row:hover { background:#fcfbff; }.location-letter,.location-card-mark,.location-tab-mark { display:grid !important; place-items:center; color:#fff !important; font-family:var(--spce-font-display); font-weight:800; }.location-letter { width:44px; height:44px; border-radius:13px; font-size:.66rem; }.location-letter.purple,.location-card-mark.purple,.location-tab-mark.purple,.location-chart-mark.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.location-letter.blue,.location-card-mark.blue,.location-tab-mark.blue,.location-chart-mark.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.location-letter.orange,.location-card-mark.orange,.location-tab-mark.orange,.location-chart-mark.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.location-overview-name { min-width:0; }.location-overview-name strong,.location-overview-name small,.location-overview-name > span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.location-overview-name strong { font-size:.7rem; }.location-overview-name small { color:var(--spce-muted); font-size:.55rem; }.location-overview-name > span { margin-top:3px; color:#3f8068; font-size:.53rem; font-weight:700; }.location-overview-name > span i { margin-right:4px; color:var(--spce-green); font-size:.42rem; }.location-overview-metric { text-align:right; }.location-overview-metric small,.location-overview-metric strong,.location-overview-metric em { display:block; }.location-overview-metric small { color:var(--spce-muted); font-size:.51rem; }.location-overview-metric strong { font-family:var(--spce-font-display); font-size:.72rem; }.location-overview-metric em { margin-top:1px; color:var(--spce-green); font-size:.5rem; font-style:normal; font-weight:800; }.location-health { display:inline-flex; align-items:center; justify-content:center; gap:4px; padding:5px 7px; border-radius:999px; font-size:.53rem; font-weight:800; white-space:nowrap; }.location-health.good { background:rgba(26,168,115,.09); color:#28795e; }.location-health.warning { background:rgba(252,137,59,.13); color:#a66328; }.location-overview-row > i { color:#b4afbb; font-size:.55rem; }
.location-alert-count { min-width:28px; height:28px; display:grid !important; place-items:center; border-radius:999px; background:rgba(216,49,145,.1); color:var(--spce-pink); font-size:.64rem; font-weight:800; }.location-alert-list { display:grid; }.location-alert { width:100%; display:grid; grid-template-columns:38px minmax(0,1fr) 12px; align-items:center; gap:9px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.location-alert:first-child { border-top:0; }.location-alert-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; }.location-alert-icon.orange { background:rgba(252,137,59,.15); color:#b46926; }.location-alert-icon.pink { background:rgba(216,49,145,.1); color:var(--spce-pink); }.location-alert-icon.blue { background:rgba(3,116,223,.1); color:var(--spce-blue); }.location-alert > span:nth-child(2) strong,.location-alert > span:nth-child(2) small { display:block; }.location-alert > span:nth-child(2) strong { font-size:.67rem; }.location-alert > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.location-alert > i { color:#b4afbb; font-size:.55rem; }
.location-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }.location-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.location-orbit-card strong { font-family:var(--spce-font-display); }.location-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.7); font-size:.64rem; }.location-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.61rem; font-weight:800; }
.locations-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.location-period-pill { padding:6px 8px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.57rem; font-weight:700; }.location-sales-bars { display:grid; gap:12px; padding:6px 0; }.location-sales-bars > div { display:grid; grid-template-columns:145px minmax(0,1fr) 42px; align-items:center; gap:10px; }.location-sales-bars > div > span { display:grid; grid-template-columns:9px minmax(0,1fr); gap:1px 7px; align-items:center; }.location-sales-bars > div > span > i { grid-row:1 / 3; }.location-sales-bars b,.location-sales-bars small,.location-sales-bars strong { display:block; }.location-sales-bars b { font-size:.62rem; }.location-sales-bars small { color:var(--spce-muted); font-size:.51rem; }.location-sales-bars > div > i { height:8px; overflow:hidden; border-radius:999px; background:#ece9f7; }.location-sales-bars > div > i b { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); }.location-sales-bars > div:nth-child(2) > i b { background:linear-gradient(90deg,var(--spce-blue),var(--spce-blue-2)); }.location-sales-bars > div:nth-child(3) > i b { background:linear-gradient(90deg,var(--spce-orange),var(--spce-orange-2)); }.location-sales-bars > div > strong { text-align:right; font-size:.61rem; }.location-bar-dot { width:8px; height:8px; display:inline-block; border-radius:50%; }.location-bar-dot.purple { background:var(--spce-purple); }.location-bar-dot.blue { background:var(--spce-blue); }.location-bar-dot.orange { background:var(--spce-orange-2); }
.location-shared-list { display:grid; }.location-shared-list > div { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.location-shared-list > div:first-child { border-top:0; }.location-shared-list > div > span { display:flex; align-items:center; gap:8px; }.location-shared-list > div > span i { width:34px; height:34px; display:grid !important; place-items:center; border-radius:10px; background:rgba(72,17,178,.08); color:var(--spce-purple); }.location-shared-list b,.location-shared-list strong,.location-shared-list small { display:block; }.location-shared-list b { font-size:.64rem; }.location-shared-list strong { font-size:.62rem; }.location-shared-list small { color:var(--spce-muted); font-size:.52rem; }

.location-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.location-card { padding:17px; border:1px solid var(--spce-border); border-radius:20px; background:#fff; box-shadow:var(--spce-shadow); }.location-card.selected { border-color:rgba(72,17,178,.22); box-shadow:0 18px 45px rgba(72,17,178,.11), inset 0 3px 0 rgba(72,17,178,.7); }.location-card-top { display:grid; grid-template-columns:46px minmax(0,1fr) 30px; align-items:start; gap:10px; }.location-card-mark { width:46px; height:46px; border-radius:14px; font-size:.68rem; }.location-card-top h3 { margin:1px 0 1px; font-family:var(--spce-font-display); font-size:.9rem; }.location-card-top p { margin:0; color:var(--spce-muted); font-size:.57rem; }.location-primary-pill { display:inline-flex; width:max-content; margin-bottom:2px; padding:3px 6px; border-radius:999px; background:rgba(72,17,178,.09); color:var(--spce-purple); font-size:.49rem; font-weight:800; }.location-card-status { display:flex; flex-wrap:wrap; gap:8px 14px; margin:14px 0; padding:9px 10px; border-radius:11px; background:var(--spce-bg); color:var(--spce-muted); font-size:.57rem; }.location-card-status span { display:inline-flex; align-items:center; gap:5px; }.location-card-status .open { color:#34775f; }.location-card-status .open i { color:var(--spce-green); font-size:.42rem; }.location-card-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }.location-card-metrics span { padding:9px; border-radius:10px; background:#fbfaff; }.location-card-metrics small,.location-card-metrics strong { display:block; }.location-card-metrics small { color:var(--spce-muted); font-size:.51rem; }.location-card-metrics strong { margin-top:2px; font-family:var(--spce-font-display); font-size:.73rem; }.location-connection-row { display:flex; flex-wrap:wrap; justify-content:space-between; gap:7px; margin-top:12px; padding-top:10px; border-top:1px solid #efedfb; color:#2c795c; font-size:.55rem; font-weight:700; }.location-connection-row.warning span:last-child { color:#a66328; }.location-card-button { width:100%; display:flex; align-items:center; justify-content:space-between; margin-top:11px; padding:9px 10px; border:0; border-radius:10px; background:rgba(72,17,178,.07); color:var(--spce-purple); font-size:.61rem; font-weight:800; }.location-card-button:hover { background:var(--spce-purple); color:#fff; }.location-add-card { min-height:280px; display:grid; place-items:center; align-content:center; gap:7px; padding:24px; border:2px dashed rgba(72,17,178,.16); border-radius:20px; background:rgba(255,255,255,.45); color:var(--spce-muted); text-align:center; }.location-add-card:hover { border-color:rgba(72,17,178,.35); background:#fff; }.location-add-card > span { width:48px; height:48px; display:grid !important; place-items:center; margin-bottom:4px; border-radius:14px; background:rgba(72,17,178,.08); color:var(--spce-purple); }.location-add-card strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.location-add-card small { max-width:260px; font-size:.61rem; }

.location-view-select,.location-setting-select { display:grid; gap:4px; color:var(--spce-muted); font-size:.55rem; font-weight:700; }.location-view-select select,.location-setting-select select,.location-performance-controls select { min-height:40px; border:1px solid var(--spce-border); border-radius:11px; padding:7px 10px; outline:0; background:#fff; color:var(--spce-ink); font-size:.68rem; font-weight:700; }.location-menu-callout { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; margin-bottom:14px; padding:14px; border:1px solid rgba(26,168,115,.15); border-radius:16px; background:linear-gradient(135deg,rgba(26,168,115,.06),#fff); }.location-callout-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:12px; background:var(--spce-green); color:#fff !important; }.location-menu-callout strong,.location-menu-callout p { display:block; }.location-menu-callout strong { font-size:.7rem; }.location-menu-callout p { margin:2px 0 0; color:var(--spce-muted); font-size:.58rem; }.location-menu-table-card { padding:0; overflow:hidden; margin-bottom:16px; }.location-table-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid var(--spce-border); }.location-table-toolbar h2 { margin:0; font-family:var(--spce-font-display); font-size:.95rem; }.location-table-toolbar p { margin:2px 0 0; color:var(--spce-muted); font-size:.61rem; }.location-menu-legend { display:flex; gap:10px; color:var(--spce-muted); font-size:.55rem; }.location-menu-legend span { display:flex; align-items:center; gap:5px; }.location-menu-legend i { width:8px; height:8px; border-radius:50%; }.location-menu-legend i.shared { background:var(--spce-green); }.location-menu-legend i.override { background:var(--spce-orange-2); }.location-menu-table-wrap { overflow-x:auto; }.location-menu-head,.location-menu-row { min-width:930px; display:grid; grid-template-columns:minmax(220px,1.4fr) 80px 110px 110px 110px 80px; align-items:center; gap:10px; }.location-menu-head { padding:9px 18px; background:#faf9ff; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.location-menu-row { padding:10px 18px; border-top:1px solid rgba(23,20,63,.055); font-size:.62rem; }.location-menu-item { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.location-menu-item > i { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.location-menu-item > i.purple { background:var(--spce-purple); }.location-menu-item > i.blue { background:var(--spce-blue); }.location-menu-item > i.orange { background:var(--spce-orange-2); }.location-menu-item > i.pink { background:var(--spce-pink); }.location-menu-item strong,.location-menu-item small { display:block; }.location-menu-item strong { font-size:.66rem; }.location-menu-item small { color:var(--spce-muted); font-size:.52rem; }.shared-price { color:#547a69; font-size:.6rem; }.shared-price::before { content:'✓ '; color:var(--spce-green); font-weight:800; }.location-price-button { border:0; border-radius:8px; padding:6px 7px; background:rgba(252,137,59,.13); color:#9d6129; font-size:.58rem; font-weight:800; }.location-price-button i { margin-left:3px; font-size:.5rem; }.location-override-pill,.location-shared-pill { display:inline-flex; width:max-content; padding:5px 7px; border-radius:999px; font-size:.52rem; font-weight:800; }.location-override-pill { background:rgba(252,137,59,.13); color:#a66328; }.location-shared-pill { background:rgba(26,168,115,.09); color:#28795e; }.location-menu-bottom-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:16px; }.location-only-list { display:grid; }.location-only-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #efedfb; }.location-only-list > div:first-child { border-top:0; }.location-only-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.location-only-icon.purple { background:var(--spce-purple); }.location-only-icon.blue { background:var(--spce-blue); }.location-only-icon.orange { background:var(--spce-orange-2); }.location-only-list span:nth-child(2) strong,.location-only-list span:nth-child(2) small { display:block; }.location-only-list span:nth-child(2) strong { font-size:.66rem; }.location-only-list span:nth-child(2) small { color:var(--spce-muted); font-size:.54rem; }.location-only-list b { font-family:var(--spce-font-display); font-size:.68rem; }.location-health-score { padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:#28795e; font-size:.59rem; font-weight:800; }.location-health-meter { height:8px; margin:4px 0 14px; overflow:hidden; border-radius:999px; background:#ece9f7; }.location-health-meter span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink),var(--spce-orange)); }.location-health-list { display:grid; gap:7px; }.location-health-list > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 9px; border-radius:9px; background:var(--spce-bg); font-size:.6rem; }.location-health-list span { color:var(--spce-muted); }

.location-hours-layout { display:grid; grid-template-columns:minmax(0,1.5fr) 310px; gap:16px; align-items:start; }.location-hours-side { display:grid; gap:16px; }.location-hours-tabs { display:flex; gap:6px; margin:-3px 0 16px; padding-bottom:12px; overflow-x:auto; border-bottom:1px solid var(--spce-border); }.location-hours-tabs button { flex:0 0 auto; display:flex; align-items:center; gap:6px; border:0; border-radius:10px; padding:6px 9px; background:var(--spce-bg); color:var(--spce-muted); font-size:.61rem; font-weight:800; }.location-hours-tabs button.active { background:rgba(72,17,178,.09); color:var(--spce-purple); }.location-tab-mark { width:25px; height:25px; border-radius:8px; font-size:.48rem; }.location-hours-panel { display:none; }.location-hours-panel.active { display:block; }.location-hours-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }.location-hours-heading h2 { margin:0; font-family:var(--spce-font-display); font-size:.9rem; }.location-hours-heading p { margin:2px 0 0; color:var(--spce-muted); font-size:.57rem; }.location-open-pill { display:inline-flex; align-items:center; gap:5px; padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:#28795e; font-size:.53rem; font-weight:800; }.location-open-pill i { font-size:.38rem; }.location-hours-list { display:grid; }.location-hours-list > div { display:grid; grid-template-columns:100px 90px 20px 90px auto; align-items:center; gap:9px; padding:9px 5px; border-top:1px solid #efedfb; font-size:.61rem; }.location-hours-list > div:first-child { border-top:0; }.location-hours-list > div > span { padding:6px 8px; border-radius:8px; background:var(--spce-bg); }.location-hours-list > div > i { color:var(--spce-muted); font-size:.52rem; font-style:normal; text-align:center; }.location-hours-placeholder { min-height:330px; display:grid; place-items:center; align-content:center; gap:7px; text-align:center; }.location-hours-placeholder .location-card-mark { margin-bottom:5px; }.location-hours-placeholder strong { font-family:var(--spce-font-display); }.location-hours-placeholder p { max-width:380px; color:var(--spce-muted); font-size:.63rem; }.location-hours-placeholder.warning { padding:24px; border-radius:16px; background:rgba(252,137,59,.06); }.location-hours-feeds { display:grid; }.location-hours-feeds > div { display:grid; grid-template-columns:38px minmax(0,1fr) 16px; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #efedfb; }.location-hours-feeds > div:first-child { border-top:0; }.location-feed-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.location-feed-icon.purple { background:var(--spce-purple); }.location-feed-icon.blue { background:var(--spce-blue); }.location-feed-icon.orange { background:var(--spce-orange-2); }.location-feed-icon.pink { background:var(--spce-pink); }.location-hours-feeds span:nth-child(2) strong,.location-hours-feeds span:nth-child(2) small { display:block; }.location-hours-feeds span:nth-child(2) strong { font-size:.64rem; }.location-hours-feeds span:nth-child(2) small { color:var(--spce-muted); font-size:.52rem; }.location-hours-feeds > div > i { color:var(--spce-green); font-size:.63rem; }.location-special-hours { display:grid; }.location-special-hours > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.location-special-hours > div:first-child { border-top:0; }.location-special-hours span:first-child strong,.location-special-hours span:first-child small { display:block; }.location-special-hours span:first-child strong { font-size:.64rem; }.location-special-hours span:first-child small { color:var(--spce-muted); font-size:.52rem; }.hours-set,.hours-pending { padding:5px 7px; border-radius:999px; font-size:.52rem; font-weight:800; }.hours-set { background:rgba(26,168,115,.09); color:#28795e; }.hours-pending { background:rgba(252,137,59,.13); color:#a66328; }

.location-services-card { padding:0; overflow:hidden; margin-bottom:16px; }.location-service-head,.location-service-row { min-width:760px; display:grid; grid-template-columns:minmax(240px,1.5fr) repeat(3,120px); align-items:center; gap:10px; }.location-service-head { padding:10px 18px; background:#faf9ff; color:#9995a4; font-size:.54rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.location-service-head > span:not(:first-child) { display:flex; align-items:center; justify-content:center; gap:6px; }.location-service-row { padding:11px 18px; border-top:1px solid rgba(23,20,63,.055); }.location-service-row > .mini-switch { justify-self:center; }.location-service-name { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.location-service-name > i { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.location-service-name > i.purple { background:var(--spce-purple); }.location-service-name > i.blue { background:var(--spce-blue); }.location-service-name > i.orange { background:var(--spce-orange-2); }.location-service-name > i.pink { background:var(--spce-pink); }.location-service-name strong,.location-service-name small { display:block; }.location-service-name strong { font-size:.65rem; }.location-service-name small { color:var(--spce-muted); font-size:.52rem; }.location-service-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.location-destination-list { display:grid; }.location-destination-list > div { display:grid; grid-template-columns:minmax(0,1fr) 30px; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #efedfb; }.location-destination-list > div:first-child { border-top:0; }.location-destination-list strong,.location-destination-list small { display:block; }.location-destination-list strong { font-size:.64rem; }.location-destination-list small { color:var(--spce-muted); font-size:.52rem; }.location-destination-list button { width:28px; height:28px; display:grid !important; place-items:center; border:0; border-radius:8px; background:var(--spce-bg); color:var(--spce-purple); font-size:.55rem; }.location-activity-matrix { display:grid; }.location-activity-matrix > div { display:grid; grid-template-columns:minmax(0,1fr) 105px 105px; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.location-activity-matrix > div:first-child { border-top:0; }.location-activity-matrix > div > span { font-size:.64rem; font-weight:700; }.location-activity-matrix strong,.location-activity-matrix b { font-size:.66rem; }.location-activity-matrix small { display:block; color:var(--spce-muted); font-size:.49rem; font-weight:500; }

.location-performance-controls { display:flex; gap:8px; }.location-performance-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr); gap:16px; margin-bottom:16px; }.location-compare-chart { min-height:300px; display:flex; align-items:end; justify-content:space-around; gap:22px; padding:28px 18px 8px; background:repeating-linear-gradient(to bottom,rgba(23,20,63,.04) 0,rgba(23,20,63,.04) 1px,transparent 1px,transparent 62px); }.location-compare-chart > div { width:30%; height:260px; display:grid; grid-template-rows:48px 1fr 25px; gap:6px; align-items:end; text-align:center; }.location-compare-chart > div > span { display:grid; place-items:center; align-content:center; gap:4px; }.location-chart-mark { width:32px; height:32px; display:grid !important; place-items:center; border-radius:10px; color:#fff !important; font-size:.53rem; font-style:normal; font-weight:800; }.location-compare-chart > div > span b { font-size:.56rem; }.location-compare-chart > div > i { height:100%; display:flex; align-items:end; justify-content:center; }.location-compare-chart > div > i b { width:min(70px,70%); min-height:15px; border-radius:10px 10px 3px 3px; background:linear-gradient(180deg,var(--spce-purple-2),var(--spce-purple)); transition:height .25s ease; }.location-compare-chart > div:nth-child(2) > i b { background:linear-gradient(180deg,var(--spce-blue-2),var(--spce-blue)); }.location-compare-chart > div:nth-child(3) > i b { background:linear-gradient(180deg,var(--spce-orange),var(--spce-orange-2)); }.location-compare-chart > div > strong { font-family:var(--spce-font-display); font-size:.68rem; }.location-scorecard { display:grid; gap:12px; }.location-scorecard > div { display:grid; grid-template-columns:minmax(0,1fr) 32px; gap:5px 9px; }.location-scorecard > div > span { display:flex; align-items:center; gap:7px; font-size:.62rem; font-weight:700; }.location-scorecard > div > strong { text-align:right; font-family:var(--spce-font-display); font-size:.72rem; }.location-scorecard > div > i { grid-column:1 / -1; height:8px; overflow:hidden; border-radius:999px; background:#ece9f7; }.location-scorecard > div > i b { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); }.location-scorecard > div > small { grid-column:1 / -1; color:var(--spce-muted); font-size:.51rem; }.location-comparison-table-card { min-width:0; }.location-comparison-wrap { overflow-x:auto; }.location-comparison-table { width:100%; min-width:760px; border-collapse:collapse; }.location-comparison-table th { padding:9px 10px; border-bottom:1px solid var(--spce-border); color:#9995a4; font-size:.54rem; letter-spacing:.06em; text-align:left; text-transform:uppercase; }.location-comparison-table td { padding:10px; border-bottom:1px solid rgba(23,20,63,.055); font-size:.62rem; }.location-comparison-table tr:last-child td { border-bottom:0; }.location-comparison-table td:first-child { color:var(--spce-muted); font-weight:700; }

.location-settings-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(290px,.55fr); gap:16px; align-items:start; }.location-settings-main,.location-settings-side { display:grid; gap:16px; }.location-setting-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 0; border-top:1px solid var(--spce-border); }.location-setting-row:first-of-type { border-top:0; }.location-setting-row strong,.location-setting-row span { display:block; }.location-setting-row strong { font-size:.67rem; }.location-setting-row span { color:var(--spce-muted); font-size:.55rem; }.location-switch { position:relative; width:38px; height:22px; display:inline-block; margin:0; }.location-switch input { opacity:0; width:0; height:0; }.location-switch span { position:absolute; inset:0; border-radius:999px; background:#ded9e3; cursor:pointer; transition:.18s ease; }.location-switch span::after { content:''; position:absolute; width:16px; height:16px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(23,20,63,.16); transition:.18s ease; }.location-switch input:checked + span { background:var(--spce-purple); }.location-switch input:checked + span::after { transform:translateX(16px); }.location-primary-info { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:10px; margin-top:14px; padding:11px; border-radius:12px; background:var(--spce-bg); }.location-primary-info strong,.location-primary-info small { display:block; }.location-primary-info strong { font-size:.65rem; }.location-primary-info small { color:var(--spce-muted); font-size:.52rem; }.location-template-list { display:grid; gap:8px; }.location-template-list span { color:#397a64; font-size:.6rem; }.location-template-list i { width:20px; color:var(--spce-green); }

@media (max-width:1399.98px) { .location-context-bar { grid-template-columns:1fr; }.location-context-stats { max-width:760px; }.locations-dashboard-grid { grid-template-columns:minmax(0,1fr) 300px; }.location-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.location-hours-layout { grid-template-columns:minmax(0,1fr) 290px; }.location-settings-layout { grid-template-columns:minmax(0,1fr) 280px; } }
@media (max-width:1199.98px) { .locations-dashboard-grid,.location-hours-layout,.location-performance-grid,.location-settings-layout { grid-template-columns:1fr; }.locations-side-stack,.location-hours-side,.location-settings-side { grid-template-columns:repeat(2,minmax(0,1fr)); }.location-orbit-card { grid-column:1 / -1; }.location-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.location-menu-bottom-grid { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .locations-dashboard-bottom,.location-service-bottom { grid-template-columns:1fr; }.location-directory-grid { grid-template-columns:1fr; }.locations-side-stack,.location-hours-side,.location-settings-side { grid-template-columns:1fr; }.location-overview-row { grid-template-columns:44px minmax(0,1fr) 82px 12px; }.location-overview-row .location-health { display:none; }.location-services-card { overflow-x:auto; }.location-service-head,.location-service-row { min-width:720px; }.location-menu-callout { grid-template-columns:42px minmax(0,1fr); }.location-menu-callout .btn { grid-column:2; justify-self:start; }.location-performance-controls { width:100%; }.location-performance-controls select { flex:1; } }
@media (max-width:767.98px) { .location-summary-grid { grid-template-columns:1fr; gap:10px; }.location-view-heading { align-items:flex-start; flex-direction:column; }.location-context-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.location-context-stats > div:nth-child(odd) { border-left:0; }.location-overview-row { grid-template-columns:42px minmax(0,1fr) 12px; }.location-overview-metric { display:none; }.location-sales-bars > div { grid-template-columns:120px minmax(0,1fr) 38px; }.location-hours-list > div { grid-template-columns:82px 1fr 18px 1fr auto; }.location-performance-controls { align-items:stretch; flex-direction:column; }.location-compare-chart { gap:8px; padding-inline:5px; }.location-compare-chart > div { width:33%; }.location-compare-chart > div > span b { display:none; } }
@media (max-width:575.98px) { .locations-page-heading .page-heading-actions { width:100%; }.locations-page-heading .page-heading-actions .btn { flex:1; }.location-context-bar,.location-summary-card { padding:12px; }.location-context-stats > div { padding:6px 8px; }.location-sales-bars > div { grid-template-columns:100px minmax(0,1fr); }.location-sales-bars > div > strong { grid-column:2; }.location-card-metrics { grid-template-columns:repeat(3,1fr); }.location-card-top { grid-template-columns:42px minmax(0,1fr) 28px; }.location-card-mark { width:42px; height:42px; }.location-menu-callout { grid-template-columns:38px minmax(0,1fr); }.location-callout-icon { width:38px; height:38px; }.location-hours-list { overflow-x:auto; }.location-hours-list > div { min-width:500px; }.location-service-bottom { grid-template-columns:1fr; }.location-activity-matrix > div { grid-template-columns:minmax(0,1fr) 90px; }.location-activity-matrix > div > b { grid-column:2; }.location-directory-grid { gap:10px; } }


/* ==========================================================================\n   Integrations\n   ========================================================================== */
.integrations-page-heading { margin-bottom:16px; }
.integrations-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.integrations-subnav::-webkit-scrollbar { display:none; }
.integrations-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.75rem; font-weight:700; transition:.18s ease; }
.integrations-subnav-link i { color:#9d99aa; }
.integrations-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.integrations-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.integrations-subnav-link.active i { color:var(--spce-orange-2); }
.int-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.61rem; }
.integration-view { display:none; }
.integration-view.active { display:block; animation:integrationViewIn .22s ease both; }
@keyframes integrationViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.integration-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.integration-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.integration-view-header p { max-width:760px; margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }
.integration-positive { color:var(--spce-green) !important; }.integration-warning { color:#b66824 !important; }

.integration-engine-card { display:grid; grid-template-columns:minmax(280px,1.2fr) minmax(460px,1.5fr) auto; align-items:center; gap:22px; margin-bottom:16px; padding:20px; border:1px solid rgba(72,17,178,.14); border-radius:var(--spce-radius); background:radial-gradient(circle at 92% 0%,rgba(3,116,223,.1),transparent 28%),linear-gradient(135deg,rgba(72,17,178,.07),#fff 45%,rgba(252,137,59,.07)); box-shadow:var(--spce-shadow); }
.integration-engine-main { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:12px; }
.integration-engine-icon { width:48px; height:48px; display:grid !important; place-items:center; border-radius:15px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; box-shadow:0 12px 24px rgba(72,17,178,.16); }
.integration-engine-main span,.integration-engine-main strong,.integration-engine-main small { display:block; }.integration-engine-main > div > span { color:var(--spce-pink); font-size:.59rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.integration-engine-main strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.05rem; }.integration-engine-main small { margin-top:2px; color:var(--spce-muted); font-size:.61rem; }
.integration-engine-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }.integration-engine-stats > div { padding:6px 13px; border-left:1px solid var(--spce-border); }.integration-engine-stats span,.integration-engine-stats strong { display:block; }.integration-engine-stats span { color:var(--spce-muted); font-size:.58rem; }.integration-engine-stats strong { margin-top:2px; font-family:var(--spce-font-display); font-size:.77rem; }
.integration-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.integration-summary-card { display:flex; align-items:center; gap:12px; min-width:0; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.integration-summary-icon { width:42px; height:42px; flex:0 0 42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }.integration-summary-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.integration-summary-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.integration-summary-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.integration-summary-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.integration-summary-card > div { min-width:0; }.integration-summary-card span,.integration-summary-card strong,.integration-summary-card small { display:block; }.integration-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }.integration-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }.integration-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.integrations-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(300px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }.integrations-side-stack { display:grid; gap:16px; }.integration-connected-list { display:grid; }.integration-connected-row { width:100%; display:grid; grid-template-columns:46px minmax(0,1fr) auto 12px; align-items:center; gap:11px; padding:11px 4px; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.integration-connected-row:first-child { border-top:0; }.integration-connected-row > i { color:#b7b2be; font-size:.58rem; }.integration-connected-name { min-width:0; }.integration-connected-name strong,.integration-connected-name small,.integration-connected-name span { display:block; }.integration-connected-name strong { font-size:.72rem; }.integration-connected-name small { color:var(--spce-muted); font-size:.57rem; }.integration-connected-name span { margin-top:2px; color:#41816c; font-size:.54rem; }.integration-connected-name span i { margin-right:4px; color:var(--spce-green); font-size:.38rem; }
.integration-logo { width:42px; height:42px; display:grid !important; place-items:center; flex:0 0 42px; border-radius:12px; color:#fff !important; font-family:var(--spce-font-display); font-size:.68rem; font-style:normal; font-weight:800; letter-spacing:-.03em; box-shadow:0 7px 16px rgba(72,17,178,.09); }.integration-logo.large { width:48px; height:48px; flex-basis:48px; border-radius:14px; font-size:.72rem; }.integration-logo.xlarge { width:58px; height:58px; flex-basis:58px; border-radius:17px; font-size:.82rem; }.integration-logo.square,.integration-mini-logo.square,.integration-sync-icon.square { background:linear-gradient(135deg,#23232a,#575763); }.integration-logo.quickbooks,.integration-mini-logo.quickbooks,.integration-sync-icon.quickbooks { background:linear-gradient(135deg,#1aa873,#0a7650); }.integration-logo.stripe,.integration-mini-logo.stripe,.integration-sync-icon.stripe { background:linear-gradient(135deg,#635bff,#483fd6); }.integration-logo.google,.integration-mini-logo.google,.integration-sync-icon.google { background:linear-gradient(135deg,var(--spce-blue),var(--spce-pink)); }.integration-logo.toast { background:linear-gradient(135deg,#ef3f2f,#b91d19); }.integration-logo.clover { background:linear-gradient(135deg,#58a932,#2e7c21); }.integration-logo.xero { background:linear-gradient(135deg,#13b5ea,#087ea7); }.integration-logo.doordash { background:linear-gradient(135deg,#ff3008,#c92005); }.integration-logo.uber { background:linear-gradient(135deg,#131313,#454545); }.integration-logo.grubhub { background:linear-gradient(135deg,#f63440,#ba1620); }
.integration-sync-health,.integration-sync-status,.integration-connected-badge,.integration-available-badge { display:inline-flex; align-items:center; justify-content:center; width:max-content; min-height:24px; padding:4px 8px; border-radius:999px; font-size:.55rem; font-weight:800; white-space:nowrap; }.integration-sync-health.good,.integration-sync-status.success,.integration-connected-badge { background:rgba(26,168,115,.09); color:#27795e; }.integration-sync-health.warning,.integration-sync-status.warning { background:rgba(252,137,59,.14); color:#a66327; }.integration-sync-status.error { background:rgba(243,81,108,.09); color:var(--spce-pink-2); }.integration-connected-badge i { margin-right:4px; }.integration-available-badge { background:rgba(72,17,178,.07); color:var(--spce-purple); }
.integration-alert-count { min-width:28px; height:28px; display:grid !important; place-items:center; border-radius:999px; background:rgba(216,49,145,.1); color:var(--spce-pink); font-size:.66rem; font-weight:800; }.integration-attention-list { display:grid; }.integration-attention { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.integration-attention:first-child { border-top:0; }.integration-attention-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.integration-attention-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.integration-attention-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.integration-attention > span:nth-child(2) strong,.integration-attention > span:nth-child(2) small { display:block; }.integration-attention > span:nth-child(2) strong { font-size:.68rem; }.integration-attention > span:nth-child(2) small { color:var(--spce-muted); font-size:.56rem; }.integration-attention > i { color:#b7b2be; font-size:.58rem; }
.integration-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff !important; box-shadow:var(--spce-shadow); }.integration-orbit-card.compact { padding:16px; }.integration-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.integration-orbit-card strong { font-family:var(--spce-font-display); }.integration-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.7); font-size:.65rem; }.integration-orbit-card button { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; text-align:left; }
.integrations-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.integration-recent-list { display:grid; }.integration-recent-list > div { display:grid; grid-template-columns:36px minmax(0,1fr) auto 45px; align-items:center; gap:9px; padding:9px 0; border-top:1px solid #efedfb; }.integration-recent-list > div:first-child { border-top:0; }.integration-sync-icon { width:34px; height:34px; display:grid !important; place-items:center; border-radius:10px; color:#fff !important; font-size:.65rem; }.integration-recent-list > div > span:nth-child(2) strong,.integration-recent-list > div > span:nth-child(2) small { display:block; }.integration-recent-list > div > span:nth-child(2) strong { font-size:.67rem; }.integration-recent-list > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.integration-recent-list time { color:var(--spce-muted); font-size:.54rem; text-align:right; }.integration-period-pill,.integration-directory-count { padding:6px 8px; border-radius:8px; background:var(--spce-bg); color:var(--spce-muted); font-size:.59rem; font-weight:700; }.integration-flow-list { display:grid; gap:13px; padding-top:4px; }.integration-flow-list > div { display:grid; grid-template-columns:130px minmax(0,1fr) 38px; align-items:center; gap:10px; }.integration-flow-list > div > span { display:flex; align-items:center; gap:7px; font-size:.64rem; }.integration-flow-list > div > span i { width:16px; color:var(--spce-purple); }.integration-flow-list > div > i { height:7px; display:block; overflow:hidden; border-radius:999px; background:#ece9f7; }.integration-flow-list > div > i b { height:100%; display:block; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink),var(--spce-orange)); }.integration-flow-list > div > strong { font-size:.62rem; text-align:right; }

.integration-directory-card { padding-top:16px; }.integration-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }.integration-search { min-width:260px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.integration-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }.integration-filter-row { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.integration-filter { border:0; border-radius:999px; padding:7px 10px; background:#f4f2fb; color:var(--spce-muted); font-size:.64rem; font-weight:800; }.integration-filter.active { background:var(--spce-purple); color:#fff; }.integration-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.integration-app-card { min-width:0; display:flex; flex-direction:column; padding:16px; border:1px solid var(--spce-border); border-radius:17px; background:#fff; box-shadow:0 10px 24px rgba(72,17,178,.05); }.integration-app-card.is-hidden { display:none; }.integration-app-card.connected { background:linear-gradient(145deg,#fff,rgba(26,168,115,.025)); border-color:rgba(26,168,115,.14); }.integration-app-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }.integration-app-card h3 { margin:12px 0 4px; font-family:var(--spce-font-display); font-size:.9rem; }.integration-app-card p { flex:1; margin:0 0 12px; color:var(--spce-muted); font-size:.62rem; line-height:1.55; }.integration-app-meta { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }.integration-app-meta span { display:inline-flex; align-items:center; gap:5px; padding:4px 6px; border-radius:7px; background:var(--spce-bg); color:var(--spce-muted); font-size:.53rem; font-weight:700; }.integration-app-card .btn { align-self:flex-start; font-size:.66rem; }.integration-directory-empty { display:none; place-items:center; padding:46px 20px; color:var(--spce-muted); text-align:center; }.integration-directory-empty.show { display:grid; }.integration-directory-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.7rem; }.integration-directory-empty strong,.integration-directory-empty span { display:block; }.integration-directory-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.integration-directory-empty span { margin-top:3px; font-size:.64rem; }

.pos-primary-card,.accounting-primary-card { display:grid; grid-template-columns:minmax(280px,1.2fr) minmax(480px,1.5fr) auto; align-items:center; gap:20px; margin-bottom:16px; padding:20px; border:1px solid rgba(72,17,178,.13); border-radius:var(--spce-radius); background:linear-gradient(135deg,rgba(72,17,178,.06),#fff 48%,rgba(3,116,223,.06)); box-shadow:var(--spce-shadow); }.pos-primary-main,.accounting-primary-main { display:grid; grid-template-columns:58px minmax(0,1fr); align-items:center; gap:13px; }.pos-primary-main h2,.accounting-primary-main h2 { margin:5px 0 0; font-family:var(--spce-font-display); font-size:1.05rem; }.pos-primary-main p,.accounting-primary-main p { margin:2px 0 0; color:var(--spce-muted); font-size:.61rem; }.pos-primary-stats,.accounting-primary-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }.accounting-primary-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }.pos-primary-stats > div,.accounting-primary-stats > div { padding:6px 12px; border-left:1px solid var(--spce-border); }.pos-primary-stats span,.pos-primary-stats strong,.accounting-primary-stats span,.accounting-primary-stats strong { display:block; }.pos-primary-stats span,.accounting-primary-stats span { color:var(--spce-muted); font-size:.56rem; }.pos-primary-stats strong,.accounting-primary-stats strong { margin-top:2px; font-size:.68rem; }.pos-primary-actions { display:flex; gap:7px; }
.integration-two-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }.integration-ownership-list,.integration-location-map-list,.account-mapping-list { display:grid; }.integration-ownership-list > div { display:grid; grid-template-columns:48px minmax(0,1fr) 16px; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.integration-ownership-list > div:first-child { border-top:0; }.integration-ownership-list > div > span:nth-child(2) strong,.integration-ownership-list > div > span:nth-child(2) small { display:block; }.integration-ownership-list > div > span:nth-child(2) strong { font-size:.68rem; }.integration-ownership-list > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.56rem; }.integration-ownership-list > div > i { color:#aaa5b1; font-size:.63rem; }.integration-owner-badge { width:42px; height:25px; display:grid !important; place-items:center; border-radius:8px; font-size:.55rem; font-weight:800; }.integration-owner-badge.square { background:#2b2b31; color:#fff !important; }.integration-owner-badge.spce { background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; }.integration-location-map-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.integration-location-map-list > div:first-child { border-top:0; }.integration-location-letter { width:36px; height:36px; display:grid !important; place-items:center; border-radius:10px; color:#fff !important; font-size:.58rem; font-weight:800; }.integration-location-letter.purple { background:var(--spce-purple); }.integration-location-letter.blue { background:var(--spce-blue); }.integration-location-letter.orange { background:var(--spce-orange-2); }.integration-location-map-list strong,.integration-location-map-list small { display:block; }.integration-location-map-list strong { font-size:.67rem; }.integration-location-map-list small { color:var(--spce-muted); font-size:.55rem; }
.integration-mapping-card { margin-bottom:16px; }.integration-table-wrap { overflow-x:auto; }.integration-map-head,.integration-map-row { min-width:760px; display:grid; grid-template-columns:minmax(220px,1.25fr) minmax(170px,1fr) 70px 105px 54px; align-items:center; gap:10px; }.integration-map-head { padding:8px 10px; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.integration-map-row { padding:10px; border-top:1px solid rgba(23,20,63,.055); font-size:.63rem; }.integration-map-row.warning { background:rgba(252,137,59,.035); }.integration-map-row > span:first-child strong,.integration-map-row > span:first-child small { display:block; }.integration-map-row > span:first-child strong { font-size:.67rem; }.integration-map-row > span:first-child small { color:var(--spce-muted); font-size:.55rem; }.integration-unmapped { color:#a66327; font-style:italic; }.integration-map-row .btn-sm { padding:5px 8px; font-size:.56rem; }.integration-available-pos-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.integration-pos-option,.integration-accounting-option { display:flex; align-items:center; justify-content:space-between; gap:14px; }.integration-pos-option > div,.integration-accounting-option > div { display:flex; align-items:center; gap:10px; }.integration-pos-option strong,.integration-pos-option small,.integration-accounting-option strong,.integration-accounting-option small { display:block; }.integration-pos-option strong,.integration-accounting-option strong { font-size:.72rem; }.integration-pos-option small,.integration-accounting-option small { color:var(--spce-muted); font-size:.57rem; }

.accounting-primary-card { grid-template-columns:minmax(300px,1.25fr) minmax(420px,1.3fr) auto; }.account-mapping-list > div { display:grid; grid-template-columns:minmax(0,1fr) 150px 18px; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.account-mapping-list > div:first-child { border-top:0; }.account-mapping-list > div > span { display:flex; align-items:center; gap:8px; font-size:.64rem; }.account-mapping-list > div > span i { width:17px; color:var(--spce-purple); }.account-mapping-list > div > strong { color:var(--spce-muted); font-size:.62rem; }.account-mapping-list > div > i { color:var(--spce-green); font-size:.7rem; }.integration-setting-list { display:grid; }.integration-setting-list > div { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 0; border-top:1px solid #efedfb; }.integration-setting-list > div:first-child { border-top:0; }.integration-setting-list > div > span strong,.integration-setting-list > div > span small { display:block; }.integration-setting-list > div > span strong { font-size:.67rem; }.integration-setting-list > div > span small { color:var(--spce-muted); font-size:.55rem; }.integration-setting-list.compact > div { padding:9px 0; }.integration-switch { position:relative; width:42px; height:24px; display:inline-block; flex:0 0 42px; margin:0; }.integration-switch input { position:absolute; opacity:0; pointer-events:none; }.integration-switch > span { position:absolute; inset:0; border-radius:999px; background:#ded9e3; cursor:pointer; transition:.18s ease; }.integration-switch > span::after { content:''; position:absolute; width:18px; height:18px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(23,20,63,.16); transition:.18s ease; }.integration-switch input:checked + span { background:var(--spce-purple); }.integration-switch input:checked + span::after { transform:translateX(18px); }.integration-accounting-option { margin-top:0; }

.delivery-callout { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:12px; margin-bottom:16px; padding:16px 18px; border:1px solid rgba(3,116,223,.14); border-radius:17px; background:linear-gradient(135deg,rgba(3,116,223,.06),#fff); }.delivery-callout-icon { width:46px; height:46px; display:grid !important; place-items:center; border-radius:14px; background:linear-gradient(135deg,var(--spce-blue),var(--spce-purple)); color:#fff !important; }.delivery-callout strong { font-family:var(--spce-font-display); }.delivery-callout p { margin:2px 0 0; color:var(--spce-muted); font-size:.63rem; }.delivery-integration-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.delivery-integration-card { display:flex; flex-direction:column; min-width:0; padding:18px; border:1px solid var(--spce-border); border-radius:19px; background:#fff; box-shadow:var(--spce-shadow); }.delivery-integration-card h3 { margin:14px 0 4px; font-family:var(--spce-font-display); font-size:.95rem; }.delivery-integration-card p { margin:0 0 12px; color:var(--spce-muted); font-size:.62rem; line-height:1.55; }.delivery-integration-card ul { display:grid; gap:7px; flex:1; margin:0 0 15px; padding:0; list-style:none; }.delivery-integration-card li { display:flex; align-items:center; gap:7px; color:#696579; font-size:.59rem; }.delivery-integration-card li i { color:var(--spce-green); }.delivery-integration-card .btn { align-self:flex-start; font-size:.66rem; }.delivery-routing-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }.delivery-routing-grid > div { display:grid; grid-template-columns:40px minmax(0,1fr) 42px; align-items:center; gap:10px; padding:12px; border:1px solid var(--spce-border); border-radius:14px; background:var(--spce-bg); }.integration-routing-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.integration-routing-icon.purple { background:var(--spce-purple); }.integration-routing-icon.blue { background:var(--spce-blue); }.integration-routing-icon.orange { background:var(--spce-orange-2); }.delivery-routing-grid strong,.delivery-routing-grid small { display:block; }.delivery-routing-grid strong { font-size:.67rem; }.delivery-routing-grid small { color:var(--spce-muted); font-size:.54rem; }

.api-key-card { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; padding:17px 18px; border:1px solid rgba(72,17,178,.14); border-radius:18px; background:linear-gradient(135deg,rgba(72,17,178,.07),#fff); box-shadow:var(--spce-shadow); }.api-key-main { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:11px; min-width:0; }.api-key-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; }.api-key-main span,.api-key-main strong,.api-key-main small { display:block; }.api-key-main span { color:var(--spce-muted); font-size:.58rem; }.api-key-main strong { margin-top:1px; overflow-wrap:anywhere; font-family:var(--spce-font-display); font-size:.75rem; }.api-key-main small { margin-top:2px; color:#9b97a6; font-size:.54rem; }.api-key-actions { display:flex; flex-wrap:wrap; gap:7px; }.webhook-list { display:grid; }.webhook-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto 30px; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.webhook-list > div:first-child { border-top:0; }.integration-webhook-icon { width:36px; height:36px; display:grid !important; place-items:center; border-radius:10px; color:#fff !important; }.integration-webhook-icon.purple { background:var(--spce-purple); }.integration-webhook-icon.blue { background:var(--spce-blue); }.integration-webhook-icon.orange { background:var(--spce-orange-2); }.webhook-list strong,.webhook-list small,.webhook-list code { display:block; }.webhook-list strong { font-size:.67rem; }.webhook-list small { color:var(--spce-muted); font-size:.54rem; }.webhook-list code { max-width:360px; margin-top:2px; overflow:hidden; color:#8f8999; font-size:.5rem; text-overflow:ellipsis; white-space:nowrap; }.api-event-list { display:flex; flex-wrap:wrap; gap:7px; }.api-event-list code { padding:6px 8px; border:1px solid var(--spce-border); border-radius:8px; background:var(--spce-bg); color:var(--spce-purple); font-size:.55rem; }.webhook-delivery-card { margin-bottom:0; }.webhook-delivery-head,.webhook-delivery-row { display:grid; grid-template-columns:minmax(160px,1.2fr) minmax(180px,1.3fr) 80px 70px 90px; align-items:center; gap:10px; }.webhook-delivery-head { padding:8px 10px; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.webhook-delivery-row { padding:10px; border-top:1px solid rgba(23,20,63,.055); font-size:.6rem; }.webhook-delivery-row code { color:var(--spce-purple); font-size:.57rem; }.webhook-delivery-row span,.webhook-delivery-row time { color:var(--spce-muted); }.integration-http-status { display:inline-grid !important; place-items:center; width:max-content; min-width:42px; min-height:22px; padding:3px 6px; border-radius:7px; font-size:.54rem; font-weight:800; }.integration-http-status.good { background:rgba(26,168,115,.09); color:#27795e; }.integration-http-status.retry { background:rgba(252,137,59,.14); color:#a66327; }

.integration-activity-card { padding-top:16px; }.activity-toolbar { justify-content:flex-start; }.activity-toolbar .integration-search { flex:1; max-width:520px; }.integration-select { height:40px; display:flex; align-items:center; gap:7px; padding:0 9px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.integration-select select { min-width:120px; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.67rem; }.integration-activity-head,.integration-activity-row { display:grid; grid-template-columns:125px minmax(260px,1.5fr) minmax(120px,.7fr) 90px 90px; align-items:center; gap:10px; }.integration-activity-head { padding:8px 10px; color:#9995a4; font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.integration-activity-row { padding:10px; border-top:1px solid rgba(23,20,63,.055); font-size:.6rem; }.integration-activity-row.is-hidden { display:none; }.integration-activity-row > span:first-child { display:flex; align-items:center; gap:7px; }.integration-activity-row > span:first-child b { font-size:.62rem; }.integration-mini-logo { width:30px; height:30px; display:grid !important; place-items:center; flex:0 0 30px; border-radius:9px; color:#fff !important; font-family:var(--spce-font-display); font-size:.49rem; font-style:normal; font-weight:800; }.integration-activity-row > span:nth-child(2) strong,.integration-activity-row > span:nth-child(2) small { display:block; }.integration-activity-row > span:nth-child(2) strong { font-size:.63rem; }.integration-activity-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.53rem; }.integration-activity-row > span:nth-child(3),.integration-activity-row time { color:var(--spce-muted); font-size:.57rem; }.integration-activity-empty { display:none; place-items:center; padding:45px 20px; color:var(--spce-muted); text-align:center; }.integration-activity-empty.show { display:grid; }.integration-activity-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.integration-activity-empty strong,.integration-activity-empty span { display:block; }.integration-activity-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.integration-activity-empty span { margin-top:3px; font-size:.64rem; }

.integration-settings-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(290px,.55fr); gap:16px; align-items:start; }.integration-settings-main,.integration-settings-side { display:grid; gap:16px; }.integration-settings-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.integration-settings-form.one-col { grid-template-columns:1fr; }.integration-settings-form label { display:grid; gap:5px; color:var(--spce-muted); font-size:.59rem; font-weight:700; }.integration-settings-form select { width:100%; min-height:39px; border:1px solid var(--spce-border); border-radius:10px; padding:8px 10px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.67rem; }

@media (max-width:1399.98px) { .integration-engine-card,.pos-primary-card,.accounting-primary-card { grid-template-columns:1fr; }.integration-engine-stats,.pos-primary-stats,.accounting-primary-stats { max-width:850px; }.integration-engine-stats > div:first-child,.pos-primary-stats > div:first-child,.accounting-primary-stats > div:first-child { border-left:0; }.integration-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.integrations-dashboard-grid { grid-template-columns:minmax(0,1fr) 300px; } }
@media (max-width:1199.98px) { .integration-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.integrations-dashboard-grid,.integration-settings-layout { grid-template-columns:1fr; }.integrations-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.integration-orbit-card { grid-column:auto; }.integration-two-col { grid-template-columns:1fr; }.delivery-integration-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.delivery-routing-grid { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .integrations-dashboard-bottom { grid-template-columns:1fr; }.integration-toolbar { align-items:stretch; flex-direction:column; }.integration-search { min-width:0; width:100%; }.integration-filter-row { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }.integration-filter { flex:0 0 auto; }.integration-activity-card { overflow-x:auto; }.integration-activity-head,.integration-activity-row { min-width:790px; }.webhook-delivery-card { overflow-x:auto; }.webhook-delivery-head,.webhook-delivery-row { min-width:720px; }.integrations-side-stack { grid-template-columns:1fr; } }
@media (max-width:767.98px) { .integration-summary-grid,.integration-directory-grid,.delivery-integration-grid,.integration-available-pos-grid { grid-template-columns:1fr; }.integration-view-header { align-items:flex-start; flex-direction:column; }.integration-engine-stats,.pos-primary-stats,.accounting-primary-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.integration-engine-stats > div:nth-child(odd),.pos-primary-stats > div:nth-child(odd),.accounting-primary-stats > div:nth-child(odd) { border-left:0; }.pos-primary-actions { justify-content:flex-start; }.api-key-card { align-items:flex-start; flex-direction:column; }.api-key-actions { width:100%; }.integration-settings-form { grid-template-columns:1fr; }.account-mapping-list > div { grid-template-columns:minmax(0,1fr) 120px 18px; } }
@media (max-width:575.98px) { .integration-summary-grid { gap:10px; }.integration-summary-card { padding:12px; }.integration-engine-stats,.pos-primary-stats,.accounting-primary-stats { grid-template-columns:1fr 1fr; }.integration-connected-row { grid-template-columns:42px minmax(0,1fr) 12px; }.integration-connected-row .integration-sync-health { grid-column:2; justify-self:start; }.integration-connected-row > i { grid-column:3; grid-row:1; }.integration-recent-list > div { grid-template-columns:34px minmax(0,1fr) auto; }.integration-recent-list .integration-sync-status { grid-column:2; width:max-content; }.integration-recent-list time { grid-column:3; grid-row:1; }.integration-flow-list > div { grid-template-columns:105px minmax(0,1fr) 34px; }.integration-pos-option,.integration-accounting-option { align-items:flex-start; flex-direction:column; }.account-mapping-list > div { grid-template-columns:1fr; gap:4px; }.account-mapping-list > div > i { display:none; }.webhook-list > div { grid-template-columns:36px minmax(0,1fr) 30px; }.webhook-list .integration-sync-status { grid-column:2; width:max-content; }.webhook-list .row-menu { grid-column:3; grid-row:1; }.delivery-routing-grid > div { grid-template-columns:38px minmax(0,1fr) 42px; } }


/* ==========================================================================
   Team & Positions
   ========================================================================== */
.team-page-heading { margin-bottom:16px; }
.team-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.team-subnav::-webkit-scrollbar { display:none; }
.team-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:.18s ease; }
.team-subnav-link i { color:#9d99aa; }.team-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }.team-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }.team-subnav-link.active i { color:var(--spce-orange-2); }
.team-nav-count { min-width:20px; height:20px; display:grid !important; place-items:center; padding:0 5px; border-radius:999px; background:rgba(216,49,145,.12); color:var(--spce-pink); font-size:.62rem; }
.team-view { display:none; }.team-view.active { display:block; animation:teamViewIn .22s ease both; } @keyframes teamViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.team-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }.team-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }.team-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }
.team-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }.team-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }.team-summary-icon { width:42px; height:42px; flex:0 0 42px; display:grid !important; place-items:center; border-radius:13px; color:#fff !important; }.team-purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.team-orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.team-blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.team-pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.team-summary-card span,.team-summary-card strong,.team-summary-card small { display:block; }.team-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }.team-summary-card strong { margin-top:1px; font-family:var(--spce-font-display); font-size:1.28rem; }.team-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.team-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr); gap:16px; margin-bottom:16px; align-items:start; }.team-side-stack { display:grid; gap:16px; }.team-roster-list { display:grid; }.team-roster-row { display:grid; grid-template-columns:42px minmax(0,1fr) 90px 95px; align-items:center; gap:10px; padding:11px 0; border-top:1px solid #efedfb; }.team-roster-row:first-child { border-top:0; }.team-roster-row > div strong,.team-roster-row > div small { display:block; }.team-roster-row > div strong { font-size:.69rem; }.team-roster-row > div small { color:var(--spce-muted); font-size:.57rem; }.team-roster-row > span:not(.position-mark) { color:var(--spce-muted); font-size:.61rem; }.team-roster-row > b { font-size:.61rem; text-align:right; }
.position-mark { width:40px; height:40px; display:grid !important; place-items:center; border-radius:12px; color:#fff !important; }.position-mark.owner { background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); }.position-mark.manager { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.position-mark.host { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.position-mark.kitchen { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.position-mark.staff { background:linear-gradient(135deg,#868297,#625e74); }
.team-alert-count { min-width:28px; height:28px; display:grid !important; place-items:center; border-radius:999px; background:rgba(216,49,145,.1); color:var(--spce-pink); font-size:.65rem; font-weight:800; }.team-attention-row { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.team-attention-row:first-of-type { border-top:0; }.team-attention-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; }.team-attention-icon.orange { background:rgba(252,137,59,.15); color:#b46926; }.team-attention-icon.pink { background:rgba(216,49,145,.1); color:var(--spce-pink); }.team-attention-icon.blue { background:rgba(3,116,223,.1); color:var(--spce-blue); }.team-attention-row > span:nth-child(2) strong,.team-attention-row > span:nth-child(2) small { display:block; }.team-attention-row > span:nth-child(2) strong { font-size:.68rem; }.team-attention-row > span:nth-child(2) small { color:var(--spce-muted); font-size:.56rem; }.team-attention-row > i { color:#b5b0bd; font-size:.58rem; }
.team-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }.team-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }.team-orbit-card strong { font-family:var(--spce-font-display); }.team-orbit-card p { margin:5px 0 8px; color:rgba(255,255,255,.72); font-size:.65rem; }.team-orbit-card button,.team-orbit-link { border:0; padding:0; background:transparent; color:var(--spce-orange); font-size:.62rem; font-weight:800; }
.team-dashboard-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.team-activity-list { display:grid; }.team-activity-list > div { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 0; border-top:1px solid #efedfb; }.team-activity-list > div:first-child { border-top:0; }.team-activity-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.team-activity-icon.purple { background:var(--spce-purple); }.team-activity-icon.blue { background:var(--spce-blue); }.team-activity-icon.orange { background:var(--spce-orange); }.team-activity-list p { margin:0; }.team-activity-list p strong,.team-activity-list p small { display:block; }.team-activity-list p strong { font-size:.68rem; }.team-activity-list p small { color:var(--spce-muted); font-size:.56rem; }.team-activity-status { padding:5px 7px; border-radius:999px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.54rem; font-weight:800; }.team-activity-status.success { background:rgba(26,168,115,.09); color:#28795e; }
.team-location-access { display:grid; gap:14px; }.team-location-access > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px 12px; align-items:center; }.team-location-access > div > span { display:flex; align-items:center; gap:8px; font-size:.67rem; }.team-location-access > div > span i { color:var(--spce-pink); }.team-location-access > div > b { font-family:var(--spce-font-display); font-size:.72rem; }.team-location-access > div > i { grid-column:1/-1; height:7px; border-radius:999px; background:#ece9f7; overflow:hidden; }.team-location-access > div > i span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink)); }
.team-members-layout { display:grid; grid-template-columns:minmax(0,1.55fr) 320px; gap:16px; align-items:start; }.team-directory-card { padding:0; overflow:hidden; }.team-toolbar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:15px; border-bottom:1px solid var(--spce-border); }.team-search { flex:1; min-width:220px; height:40px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.team-search input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.71rem; }.team-toolbar-filters { display:flex; gap:7px; }.team-select { height:40px; display:flex; align-items:center; gap:6px; padding:0 8px 0 10px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:#aaa6b3; }.team-select select { min-width:115px; border:0; outline:0; background:transparent; color:var(--spce-ink); font-size:.67rem; }.team-select.compact { flex:0 0 auto; }.team-select.compact select { min-width:120px; }
.team-member-head,.team-member-row { min-width:800px; display:grid; grid-template-columns:minmax(230px,1.4fr) 130px 140px 105px 72px 16px; align-items:center; gap:10px; }.team-member-head { padding:9px 15px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.team-member-list { overflow-x:auto; }.team-member-row { width:100%; padding:11px 15px; border:0; border-top:1px solid rgba(23,20,63,.055); background:#fff; text-align:left; }.team-member-row:hover,.team-member-row.selected { background:#fbfaff; }.team-member-row.selected { box-shadow:inset 3px 0 0 var(--spce-purple); }.team-member-row.is-hidden { display:none; }.team-person { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.team-avatar { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; font-style:normal; font-size:.6rem; font-weight:800; }.team-avatar.xlarge { width:58px; height:58px; border-radius:17px; font-size:.8rem; }.team-avatar.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }.team-avatar.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }.team-avatar.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }.team-avatar.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }.team-avatar.gray { background:linear-gradient(135deg,#8d8999,#656171); }.team-person strong,.team-person small,.team-member-row > span:not(.team-person):not(.team-status) b,.team-member-row > span:not(.team-person):not(.team-status) small { display:block; }.team-person strong { font-size:.68rem; }.team-person small,.team-member-row > span:not(.team-person):not(.team-status) small { color:var(--spce-muted); font-size:.55rem; }.team-member-row > span:not(.team-person):not(.team-status) b { font-size:.63rem; }.team-status { width:max-content; display:inline-flex; align-items:center; justify-content:center; min-height:24px; padding:4px 8px; border-radius:999px; font-size:.55rem; font-weight:800; }.team-status.active { background:rgba(26,168,115,.09); color:#28795e; }.team-status.pending { background:rgba(252,137,59,.14); color:#a86325; }.team-status.inactive { background:rgba(103,99,125,.1); color:#74717f; }.team-member-row > i { color:#b8b3bd; font-size:.56rem; }.team-empty { display:none; place-items:center; padding:42px 20px; text-align:center; color:var(--spce-muted); }.team-empty.show { display:grid; }.team-empty i { margin-bottom:8px; color:var(--spce-purple); font-size:1.6rem; }.team-empty strong,.team-empty span { display:block; }.team-empty strong { color:var(--spce-ink); font-family:var(--spce-font-display); }.team-empty span { margin-top:3px; font-size:.64rem; }
.team-member-detail { position:sticky; top:calc(var(--topbar-height) + 18px); }.team-profile-head { display:grid; grid-template-columns:58px minmax(0,1fr) 30px; align-items:start; gap:11px; }.team-profile-head h2 { margin:4px 0 1px; font-family:var(--spce-font-display); font-size:1.05rem; }.team-profile-head p { margin:0; color:var(--spce-muted); font-size:.6rem; overflow-wrap:anywhere; }.team-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin:16px 0; }.team-detail-grid > div { padding:9px; border-radius:10px; background:var(--spce-bg); }.team-detail-grid small,.team-detail-grid strong { display:block; }.team-detail-grid small { color:var(--spce-muted); font-size:.52rem; }.team-detail-grid strong { margin-top:2px; font-size:.67rem; }.team-detail-section { padding:12px 0; border-top:1px solid #efedfb; }.team-detail-section > span { display:block; margin-bottom:8px; color:var(--spce-muted); font-size:.57rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }.team-location-tags { display:flex; flex-wrap:wrap; gap:5px; }.team-location-tags b { padding:5px 7px; border-radius:8px; background:rgba(72,17,178,.07); color:var(--spce-purple); font-size:.55rem; }.team-permission-source { display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:9px; }.team-permission-source > i { width:34px; height:34px; display:grid !important; place-items:center; border-radius:10px; background:rgba(3,116,223,.08); color:var(--spce-blue); }.team-permission-source p { margin:0; }.team-permission-source strong,.team-permission-source small { display:block; }.team-permission-source strong { font-size:.65rem; }.team-permission-source small { color:var(--spce-muted); font-size:.55rem; }.team-detail-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:12px; }
.position-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.position-card { min-width:0; display:flex; flex-direction:column; min-height:290px; padding:18px; border:1px solid var(--spce-border); border-radius:20px; background:#fff; box-shadow:var(--spce-shadow); }.position-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }.position-system { padding:5px 7px; border-radius:999px; background:rgba(252,137,59,.13); color:#9b5f28; font-size:.53rem; font-weight:800; }.position-card h3 { margin:14px 0 4px; font-family:var(--spce-font-display); font-size:1rem; }.position-card p { margin:0; min-height:44px; color:var(--spce-muted); font-size:.64rem; }.position-meta { display:flex; flex-wrap:wrap; gap:9px; margin:14px 0 10px; color:var(--spce-muted); font-size:.57rem; }.position-meta span { display:inline-flex; align-items:center; gap:5px; }.position-meta i { color:var(--spce-purple); }.position-access-chips { display:flex; flex-wrap:wrap; gap:5px; }.position-access-chips b { padding:4px 6px; border-radius:7px; background:var(--spce-bg); color:#716d7d; font-size:.52rem; }.position-footer { margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding:12px 0 0; border:0; border-top:1px solid #efedfb; background:transparent; color:var(--spce-purple); font-size:.61rem; font-weight:800; text-align:left; }.add-position-card { align-items:center; justify-content:center; text-align:center; border:2px dashed rgba(72,17,178,.16); background:linear-gradient(145deg,#fff,#faf9ff); }.add-position-card > span { width:54px; height:54px; display:grid !important; place-items:center; margin-bottom:10px; border-radius:17px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:1.1rem; }.add-position-card strong { font-family:var(--spce-font-display); font-size:.9rem; }.add-position-card small { max-width:220px; margin-top:4px; color:var(--spce-muted); font-size:.6rem; }
.permission-matrix-card { padding:0; overflow:hidden; }.permission-matrix-note { display:flex; align-items:flex-start; gap:8px; padding:13px 15px; background:rgba(3,116,223,.06); color:#4f7189; font-size:.63rem; }.permission-matrix-note i { margin-top:2px; color:var(--spce-blue); }.permission-matrix-wrap { overflow-x:auto; }.permission-matrix { width:100%; min-width:850px; border-collapse:collapse; }.permission-matrix th { padding:11px 14px; border-bottom:1px solid var(--spce-border); background:#faf9ff; color:#9591a0; font-size:.56rem; text-align:center; letter-spacing:.05em; text-transform:uppercase; }.permission-matrix th:first-child { text-align:left; }.permission-matrix td { padding:12px 14px; border-bottom:1px solid rgba(23,20,63,.055); text-align:center; font-size:.62rem; }.permission-matrix td:first-child { text-align:left; }.permission-module { display:inline-flex; align-items:center; gap:8px; }.permission-module i { width:26px; height:26px; display:grid !important; place-items:center; border-radius:8px; background:rgba(72,17,178,.07); color:var(--spce-purple); }.permission-module b { font-size:.64rem; }.permission-full,.permission-edit,.permission-view,.permission-none { display:inline-flex; align-items:center; justify-content:center; min-width:48px; min-height:24px; padding:4px 7px; border-radius:999px; font-size:.54rem; font-weight:800; }.permission-full { background:rgba(26,168,115,.1); color:#27795d; }.permission-edit { background:rgba(72,17,178,.09); color:var(--spce-purple); }.permission-view { background:rgba(3,116,223,.09); color:var(--spce-blue); }.permission-none { background:rgba(103,99,125,.08); color:#8a8792; }.permission-legend { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; padding:12px 15px; color:var(--spce-muted); font-size:.56rem; }.permission-legend span { display:inline-flex; align-items:center; gap:5px; }.permission-legend i { min-width:9px; width:9px; min-height:9px; height:9px; padding:0; border-radius:50%; }
.team-access-card { padding:0; overflow:hidden; }.team-access-list { display:grid; }.team-access-row { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:11px; padding:12px 15px; border-top:1px solid rgba(23,20,63,.055); }.team-access-row:first-child { border-top:0; }.team-access-row.is-hidden { display:none; }.team-access-icon { width:38px; height:38px; display:grid !important; place-items:center; border-radius:11px; color:#fff !important; }.team-access-icon.green { background:var(--spce-green); }.team-access-icon.purple { background:var(--spce-purple); }.team-access-icon.blue { background:var(--spce-blue); }.team-access-icon.pink { background:var(--spce-pink); }.team-access-icon.orange { background:var(--spce-orange); }.team-access-row > div strong,.team-access-row > div small { display:block; }.team-access-row > div strong { font-size:.68rem; }.team-access-row > div small { color:var(--spce-muted); font-size:.56rem; }.team-access-result { padding:5px 7px; border-radius:999px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.54rem; font-weight:800; }.team-access-result.good { background:rgba(26,168,115,.09); color:#28795e; }.team-access-result.warn { background:rgba(216,49,145,.09); color:var(--spce-pink); }
.team-settings-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:16px; align-items:start; }.team-settings-main,.team-settings-side { display:grid; gap:16px; }.team-setting-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0; border-top:1px solid var(--spce-border); }.team-setting-row:first-of-type { border-top:0; padding-top:0; }.team-setting-row > div strong,.team-setting-row > div span { display:block; }.team-setting-row > div strong { font-size:.69rem; }.team-setting-row > div span { color:var(--spce-muted); font-size:.57rem; }.team-switch { position:relative; width:40px; height:23px; flex:0 0 40px; }.team-switch input { opacity:0; width:0; height:0; }.team-switch span { position:absolute; inset:0; border-radius:999px; background:#ded9e3; cursor:pointer; transition:.18s ease; }.team-switch span::after { content:''; position:absolute; width:17px; height:17px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(23,20,63,.16); transition:.18s ease; }.team-switch input:checked + span { background:var(--spce-purple); }.team-switch input:checked + span::after { transform:translateX(17px); }.team-radio-row { display:grid; grid-template-columns:18px minmax(0,1fr); gap:9px; align-items:start; padding:10px 0; border-top:1px solid #efedfb; }.team-radio-row:first-of-type { border-top:0; }.team-radio-row input { margin-top:3px; accent-color:var(--spce-purple); }.team-radio-row strong,.team-radio-row small { display:block; }.team-radio-row strong { font-size:.67rem; }.team-radio-row small { margin-top:2px; color:var(--spce-muted); font-size:.56rem; }
@media (max-width:1399.98px) { .team-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.team-dashboard-grid { grid-template-columns:1fr; }.team-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.team-orbit-card { grid-column:auto; }.position-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:1199.98px) { .team-members-layout,.team-settings-layout { grid-template-columns:1fr; }.team-member-detail { position:static; }.team-dashboard-bottom { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .team-toolbar { align-items:stretch; flex-direction:column; }.team-search { width:100%; min-width:0; }.team-toolbar-filters { overflow-x:auto; }.team-roster-row { grid-template-columns:42px minmax(0,1fr) 90px; }.team-roster-row > b { grid-column:2; text-align:left; }.position-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:767.98px) { .team-summary-grid { grid-template-columns:1fr; gap:10px; }.team-view-header { align-items:flex-start; flex-direction:column; }.team-side-stack { grid-template-columns:1fr; }.position-grid { grid-template-columns:1fr; }.team-toolbar-filters { width:100%; }.team-select { flex:1; }.team-select select { width:100%; min-width:105px; }.team-member-detail { padding:16px; } }
@media (max-width:575.98px) { .team-page-heading .page-heading-actions { width:100%; }.team-page-heading .page-heading-actions .btn { flex:1; }.team-roster-row { grid-template-columns:40px minmax(0,1fr); }.team-roster-row > span:not(.position-mark),.team-roster-row > b { grid-column:2; }.team-activity-list > div { grid-template-columns:38px minmax(0,1fr); }.team-activity-status { grid-column:2; width:max-content; }.team-detail-grid { grid-template-columns:1fr 1fr; }.team-access-row { grid-template-columns:38px minmax(0,1fr); }.team-access-result { grid-column:2; width:max-content; }.team-setting-row { align-items:flex-start; } }


/* ==========================================================================
   Settings
   ========================================================================== */
.settings-page-heading { margin-bottom:16px; }
.settings-subnav { display:flex; gap:6px; margin:0 0 18px; padding:6px; overflow-x:auto; scrollbar-width:none; border:1px solid var(--spce-border); border-radius:17px; background:rgba(255,255,255,.78); box-shadow:0 10px 28px rgba(72,17,178,.05); }
.settings-subnav::-webkit-scrollbar { display:none; }
.settings-subnav-link { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 12px; border-radius:11px; color:var(--spce-muted); font-size:.76rem; font-weight:700; transition:color .18s ease,background .18s ease,box-shadow .18s ease; }
.settings-subnav-link i { color:#9d99aa; }
.settings-subnav-link:hover { color:var(--spce-purple); background:rgba(72,17,178,.06); }
.settings-subnav-link.active { color:var(--spce-purple); background:#fff; box-shadow:0 6px 18px rgba(72,17,178,.09); }
.settings-subnav-link.active i { color:var(--spce-orange-2); }
.settings-view { display:none; }
.settings-view.active { display:block; animation:settingsViewIn .22s ease both; }
@keyframes settingsViewIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }
.settings-view-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:16px; }
.settings-view-header h2 { margin:0; font-family:var(--spce-font-display); font-size:1.55rem; letter-spacing:-.04em; }
.settings-view-header p { margin:4px 0 0; color:var(--spce-muted); font-size:.74rem; }

.settings-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
.settings-summary-card { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--spce-border); border-radius:18px; background:#fff; box-shadow:var(--spce-shadow); }
.settings-summary-card > div { min-width:0; }
.settings-summary-card span,.settings-summary-card strong,.settings-summary-card small { display:block; }
.settings-summary-card > div > span { color:var(--spce-muted); font-size:.68rem; font-weight:600; }
.settings-summary-card strong { margin-top:1px; overflow:hidden; font-family:var(--spce-font-display); font-size:1.28rem; text-overflow:ellipsis; white-space:nowrap; }
.settings-summary-card small { margin-top:2px; color:#9c98a6; font-size:.62rem; }
.settings-summary-icon,.settings-quick-icon,.settings-activity-icon,.settings-module-icon,.settings-notification-icon,.settings-personal-icon { display:grid !important; place-items:center; color:#fff !important; }
.settings-summary-icon { width:42px; height:42px; flex:0 0 42px; border-radius:13px; }
.settings-summary-icon.purple,.settings-quick-icon.purple,.settings-module-icon.purple,.settings-personal-icon.purple { background:linear-gradient(135deg,var(--spce-purple-2),var(--spce-purple)); }
.settings-summary-icon.blue,.settings-quick-icon.blue,.settings-module-icon.blue,.settings-personal-icon.blue { background:linear-gradient(135deg,var(--spce-blue-2),var(--spce-blue)); }
.settings-summary-icon.orange,.settings-quick-icon.orange,.settings-module-icon.orange,.settings-personal-icon.orange { background:linear-gradient(135deg,var(--spce-orange),var(--spce-orange-2)); }
.settings-summary-icon.green,.settings-module-icon.green { background:linear-gradient(135deg,#32bf8e,var(--spce-green)); }
.settings-quick-icon.pink,.settings-module-icon.pink,.settings-personal-icon.pink { background:linear-gradient(135deg,var(--spce-pink-2),var(--spce-pink)); }

.settings-overview-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.settings-side-stack,.settings-main-stack { display:grid; gap:16px; }
.settings-health-score { padding:6px 9px; border-radius:999px; background:rgba(26,168,115,.1); color:var(--spce-green); font-family:var(--spce-font-display); font-size:.73rem; font-weight:800; }
.settings-health-meter { height:8px; margin:0 0 15px; overflow:hidden; border-radius:999px; background:#ece9f7; }
.settings-health-meter span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink),var(--spce-orange)); }
.settings-health-list { display:grid; }
.settings-health-row { width:100%; display:grid; grid-template-columns:36px minmax(0,1fr) 12px; align-items:center; gap:10px; padding:11px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }
.settings-health-row:first-child { border-top:0; }
.settings-health-row > span:nth-child(2) strong,.settings-health-row > span:nth-child(2) small { display:block; }
.settings-health-row > span:nth-child(2) strong { font-size:.69rem; }
.settings-health-row > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.58rem; }
.settings-health-row > i { color:#b7b2be; font-size:.58rem; }
.settings-health-state { width:34px; height:34px; display:grid !important; place-items:center; border-radius:10px; }
.settings-health-state.good { background:rgba(26,168,115,.09); color:var(--spce-green); }
.settings-health-state.warn { background:rgba(252,137,59,.14); color:#a96628; }
.settings-account-card { text-align:center; }
.settings-account-mark { width:64px; height:64px; display:grid !important; place-items:center; margin:6px auto 9px; border-radius:19px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-family:var(--spce-font-display); font-size:1rem; font-weight:800; }
.settings-account-card > strong,.settings-account-card > span { display:block; }
.settings-account-card > strong { font-family:var(--spce-font-display); font-size:.85rem; }
.settings-account-card > span { margin-top:2px; color:var(--spce-muted); font-size:.61rem; }
.settings-account-meta { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:14px 0 4px; text-align:left; }
.settings-account-meta div { padding:9px; border-radius:10px; background:var(--spce-bg); }
.settings-account-meta small,.settings-account-meta b { display:block; }
.settings-account-meta small { color:var(--spce-muted); font-size:.51rem; }
.settings-account-meta b { margin-top:2px; font-size:.62rem; }
.settings-orbit-card { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:18px; border-radius:var(--spce-radius); background:linear-gradient(145deg,var(--spce-purple),#291070); color:#fff; box-shadow:var(--spce-shadow); }
.settings-orbit-icon { width:44px; height:44px; display:grid !important; place-items:center; border-radius:13px; background:linear-gradient(135deg,var(--spce-orange),var(--spce-pink)); color:#fff !important; }
.settings-orbit-card strong { font-family:var(--spce-font-display); }
.settings-orbit-card p { margin:5px 0 0; color:rgba(255,255,255,.7); font-size:.65rem; line-height:1.5; }
.settings-overview-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.settings-quick-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.settings-quick-card { width:100%; display:grid; grid-template-columns:38px minmax(0,1fr) 12px; align-items:center; gap:9px; padding:10px; border:1px solid var(--spce-border); border-radius:13px; background:#fff; text-align:left; }
.settings-quick-card:hover { background:#fcfbff; border-color:rgba(72,17,178,.17); }
.settings-quick-icon { width:38px; height:38px; border-radius:11px; }
.settings-quick-card > span:nth-child(2) strong,.settings-quick-card > span:nth-child(2) small { display:block; }
.settings-quick-card > span:nth-child(2) strong { font-size:.66rem; }
.settings-quick-card > span:nth-child(2) small { margin-top:2px; color:var(--spce-muted); font-size:.54rem; }
.settings-quick-card > i { color:#b8b3bf; font-size:.56rem; }
.settings-activity-list { display:grid; }
.settings-activity-list > div { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }
.settings-activity-list > div:first-child { border-top:0; }
.settings-activity-icon { width:36px; height:36px; border-radius:10px; }
.settings-activity-icon.purple { background:rgba(72,17,178,.1); color:var(--spce-purple) !important; }.settings-activity-icon.blue { background:rgba(3,116,223,.1); color:var(--spce-blue) !important; }.settings-activity-icon.orange { background:rgba(252,137,59,.15); color:#ac6829 !important; }.settings-activity-icon.green { background:rgba(26,168,115,.1); color:var(--spce-green) !important; }
.settings-activity-list strong,.settings-activity-list small { display:block; }.settings-activity-list strong { font-size:.67rem; }.settings-activity-list small { margin-top:2px; color:var(--spce-muted); font-size:.55rem; }

.settings-form-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(285px,.55fr); gap:16px; align-items:start; }
.app-settings-form-grid { display:grid; gap:10px; margin-top:4px; }
.app-settings-form-grid.two-col { grid-template-columns:repeat(2,minmax(0,1fr)); }.app-settings-form-grid.one-col { grid-template-columns:1fr; }.app-settings-form-grid.compact-grid { margin-top:14px; }
.app-settings-form-grid label { display:grid; gap:5px; min-width:0; color:var(--spce-muted); font-size:.61rem; font-weight:700; }
.app-settings-form-grid input,.app-settings-form-grid select { width:100%; min-width:0; min-height:40px; padding:8px 10px; border:1px solid var(--spce-border); border-radius:10px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.68rem; }
.app-settings-form-grid input:focus,.app-settings-form-grid select:focus { border-color:rgba(72,17,178,.35); box-shadow:0 0 0 3px rgba(72,17,178,.06); }
.app-settings-inline-note { display:flex; align-items:flex-start; gap:7px; margin-top:14px; padding:10px; border-radius:11px; background:rgba(3,116,223,.06); color:#56758a; font-size:.6rem; }
.app-settings-inline-note i { margin-top:2px; color:var(--spce-blue); }.app-settings-inline-note a { color:var(--spce-purple); font-weight:800; }
.app-settings-toggle-list { display:grid; }
.app-settings-toggle-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0; border-top:1px solid var(--spce-border); }
.app-settings-toggle-row:first-child,.app-settings-toggle-row.no-border { border-top:0; padding-top:0; }
.app-settings-toggle-row > div strong,.app-settings-toggle-row > div span { display:block; }.app-settings-toggle-row > div strong { font-size:.69rem; }.app-settings-toggle-row > div span { color:var(--spce-muted); font-size:.57rem; }
.app-settings-switch { position:relative; width:40px; height:23px; flex:0 0 40px; margin:0; }
.app-settings-switch input { opacity:0; width:0; height:0; }
.app-settings-switch > span { position:absolute; inset:0; border-radius:999px; background:#ded9e3; cursor:pointer; transition:.18s ease; }
.app-settings-switch > span::after { content:''; position:absolute; width:17px; height:17px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(23,20,63,.16); transition:.18s ease; }
.app-settings-switch input:checked + span { background:var(--spce-purple); }.app-settings-switch input:checked + span::after { transform:translateX(17px); }

.settings-modules-card { padding:0; overflow:hidden; }
.settings-module-note { display:flex; align-items:flex-start; gap:8px; padding:13px 16px; border-bottom:1px solid var(--spce-border); background:rgba(3,116,223,.06); color:#54768d; font-size:.62rem; }
.settings-module-note i { margin-top:2px; color:var(--spce-blue); }
.settings-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.settings-module-card { min-width:0; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:10px; min-height:102px; padding:14px 16px; border-right:1px solid var(--spce-border); border-bottom:1px solid var(--spce-border); background:#fff; }
.settings-module-card:nth-child(3n) { border-right:0; }
.settings-module-card > div strong,.settings-module-card > div small { display:block; }.settings-module-card > div strong { font-size:.69rem; }.settings-module-card > div small { margin-top:2px; color:var(--spce-muted); font-size:.56rem; line-height:1.45; }
.settings-module-icon { width:42px; height:42px; border-radius:12px; }
.settings-module-status { padding:5px 7px; border-radius:999px; font-size:.53rem; font-weight:800; }.settings-module-status.core { background:rgba(72,17,178,.08); color:var(--spce-purple); }
.settings-module-card.is-off { opacity:.52; background:#faf9fb; }

.notifications-layout { grid-template-columns:minmax(0,1.65fr) minmax(275px,.5fr); }
.settings-notification-card { padding:0; overflow:hidden; }.settings-notification-card > .card-heading { padding:18px 18px 0; }
.settings-notification-wrap { overflow-x:auto; }
.settings-notification-head,.settings-notification-row { min-width:720px; display:grid; grid-template-columns:minmax(340px,1fr) 110px 90px 80px; align-items:center; gap:8px; }
.settings-notification-head { padding:9px 16px; background:#faf9ff; color:#9995a4; font-size:.55rem; font-weight:800; text-align:center; letter-spacing:.06em; text-transform:uppercase; }.settings-notification-head span:first-child { text-align:left; }
.settings-notification-row { padding:11px 16px; border-top:1px solid rgba(23,20,63,.055); }.settings-notification-row > div { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; }.settings-notification-row > div > span:nth-child(2) strong,.settings-notification-row > div > span:nth-child(2) small { display:block; }.settings-notification-row > div > span:nth-child(2) strong { font-size:.67rem; }.settings-notification-row > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }
.settings-notification-icon { width:36px; height:36px; border-radius:10px; }.settings-notification-icon.purple { background:rgba(72,17,178,.1); color:var(--spce-purple) !important; }.settings-notification-icon.pink { background:rgba(216,49,145,.1); color:var(--spce-pink) !important; }.settings-notification-icon.orange { background:rgba(252,137,59,.15); color:#aa6526 !important; }.settings-notification-icon.green { background:rgba(26,168,115,.1); color:var(--spce-green) !important; }.settings-notification-icon.blue { background:rgba(3,116,223,.1); color:var(--spce-blue) !important; }
.settings-notification-row > label { position:relative; width:22px; height:22px; justify-self:center; margin:0; }.settings-notification-row > label input { position:absolute; opacity:0; }.settings-notification-row > label i { position:absolute; inset:0; display:grid !important; place-items:center; border:1px solid #d9d4de; border-radius:7px; background:#fff; cursor:pointer; }.settings-notification-row > label input:checked + i { border-color:var(--spce-purple); background:var(--spce-purple); }.settings-notification-row > label input:checked + i::after { content:'\f00c'; color:#fff !important; font-family:'Font Awesome 6 Free'; font-size:.58rem; font-weight:900; }

.settings-branding-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr); gap:16px; align-items:start; }.settings-brand-preview-card { position:sticky; top:calc(var(--topbar-height) + 18px); }
.settings-brand-row { display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:11px; padding-bottom:14px; border-bottom:1px solid var(--spce-border); }.settings-brand-logo { width:54px; height:54px; display:grid !important; place-items:center; border-radius:16px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-family:var(--spce-font-display); font-weight:800; }.settings-brand-row > div strong,.settings-brand-row > div span { display:block; }.settings-brand-row > div strong { font-size:.72rem; }.settings-brand-row > div span { color:var(--spce-muted); font-size:.58rem; }
.settings-brand-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:15px 0; }.settings-brand-fields > div > span { display:block; margin-bottom:7px; color:var(--spce-muted); font-size:.6rem; font-weight:700; }.settings-color-row { display:flex; gap:7px; }.settings-color { width:34px; height:34px; display:grid !important; place-items:center; border:3px solid #fff; outline:1px solid var(--spce-border); border-radius:10px; background:var(--swatch); color:#fff !important; box-shadow:0 3px 8px rgba(72,17,178,.08); }.settings-color.active { outline:2px solid var(--spce-ink); }.settings-color.custom-color { font-size:.6rem; }
.settings-preview-pill { padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:var(--spce-green); font-size:.53rem; font-weight:800; }.settings-brand-preview { overflow:hidden; border:1px solid rgba(23,20,63,.08); border-radius:18px; background:#fff; box-shadow:0 18px 36px rgba(72,17,178,.08); }.settings-preview-top { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:8px; padding:12px; }.settings-preview-logo { width:40px; height:40px; display:grid !important; place-items:center; border-radius:11px; background:var(--preview-primary); color:#fff !important; font-family:var(--spce-font-display); font-size:.65rem; font-weight:800; }.settings-preview-top strong,.settings-preview-top small { display:block; }.settings-preview-top strong { font-size:.67rem; }.settings-preview-top small { color:var(--spce-muted); font-size:.54rem; }.settings-preview-hero { padding:24px 18px; background:linear-gradient(135deg,var(--preview-primary),#1B125C); color:#fff; }.settings-preview-hero > span { color:var(--preview-accent); font-size:.5rem; font-weight:800; letter-spacing:.1em; }.settings-preview-hero h3 { margin:4px 0; font-family:var(--spce-font-display); font-size:1.3rem; letter-spacing:-.04em; }.settings-preview-hero p { margin:0; color:rgba(255,255,255,.68); font-size:.59rem; }.settings-preview-actions { display:flex; gap:7px; padding:12px; }.settings-preview-actions button { flex:1; min-height:35px; border:0; border-radius:10px; background:var(--preview-primary); color:#fff !important; font-size:.61rem; font-weight:800; }.settings-preview-actions button:last-child { background:var(--preview-accent); color:var(--spce-ink) !important; }.settings-preview-item { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 12px 12px; padding:11px; border-radius:11px; background:var(--spce-bg); }.settings-preview-item strong,.settings-preview-item small { display:block; }.settings-preview-item strong { font-size:.63rem; }.settings-preview-item small { color:var(--spce-muted); font-size:.52rem; }.settings-preview-item b { color:var(--preview-primary); font-family:var(--spce-font-display); font-size:.7rem; }.settings-preview-powered { padding:8px 12px; border-top:1px solid var(--spce-border); color:#aaa6b2; font-size:.49rem; text-align:center; }

.settings-billing-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr); gap:16px; margin-bottom:16px; }.settings-plan-card { background:radial-gradient(circle at 95% 0%,rgba(252,137,59,.12),transparent 35%),#fff; }.settings-plan-top { display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:12px; }.settings-plan-icon { width:54px; height:54px; display:grid !important; place-items:center; border-radius:16px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-size:1rem; }.settings-plan-top > div > span,.settings-plan-top h2,.settings-plan-top p { display:block; }.settings-plan-top > div > span { color:var(--spce-pink); font-size:.55rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }.settings-plan-top h2 { margin:1px 0 0; font-family:var(--spce-font-display); font-size:1.25rem; }.settings-plan-top p { margin:2px 0 0; color:var(--spce-muted); font-size:.59rem; }.settings-plan-badge { padding:6px 8px; border-radius:999px; background:rgba(26,168,115,.1); color:var(--spce-green); font-size:.55rem; font-weight:800; }.settings-plan-meta { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; margin:16px 0; }.settings-plan-meta div { padding:10px; border-radius:11px; background:var(--spce-bg); }.settings-plan-meta small,.settings-plan-meta strong { display:block; }.settings-plan-meta small { color:var(--spce-muted); font-size:.5rem; }.settings-plan-meta strong { margin-top:2px; font-size:.65rem; }.settings-plan-actions { display:flex; gap:8px; }.settings-payment-card { display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px; border:1px solid var(--spce-border); border-radius:13px; background:var(--spce-bg); }.settings-payment-icon { width:42px; height:42px; display:grid !important; place-items:center; border-radius:11px; background:#fff; color:var(--spce-blue); font-size:1.25rem; box-shadow:0 5px 12px rgba(72,17,178,.06); }.settings-payment-card > span:nth-child(2) strong,.settings-payment-card > span:nth-child(2) small { display:block; }.settings-payment-card > span:nth-child(2) strong { font-size:.67rem; }.settings-payment-card > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.settings-payment-default { padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:var(--spce-green); font-size:.53rem; font-weight:800; }.settings-billing-bottom { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.settings-billing-contact { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px 0; border-top:1px solid #efedfb; }.settings-billing-contact:first-of-type { border-top:0; }.settings-billing-contact > span:nth-child(2) strong,.settings-billing-contact > span:nth-child(2) small { display:block; }.settings-billing-contact > span:nth-child(2) strong { font-size:.67rem; }.settings-billing-contact > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.settings-invoice-list { display:grid; }.settings-invoice { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto 26px; align-items:center; gap:8px; padding:10px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.settings-invoice:first-child { border-top:0; }.settings-invoice > span:first-child strong,.settings-invoice > span:first-child small { display:block; }.settings-invoice > span:first-child strong { font-size:.66rem; }.settings-invoice > span:first-child small { color:var(--spce-muted); font-size:.54rem; }.settings-invoice > i { color:var(--spce-purple); }.settings-invoice-status { padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:var(--spce-green); font-size:.52rem; font-weight:800; }

.settings-data-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:16px; align-items:start; }.settings-backup-status { display:inline-flex; align-items:center; gap:5px; padding:5px 7px; border-radius:999px; background:rgba(26,168,115,.09); color:var(--spce-green); font-size:.54rem; font-weight:800; }.settings-backup-panel { display:grid; grid-template-columns:50px minmax(0,1fr); align-items:center; gap:11px; padding:13px; border-radius:13px; background:rgba(26,168,115,.055); }.settings-backup-icon { width:48px; height:48px; display:grid !important; place-items:center; border-radius:14px; background:var(--spce-green); color:#fff !important; }.settings-backup-panel strong,.settings-backup-panel span,.settings-backup-panel small { display:block; }.settings-backup-panel strong { font-size:.69rem; }.settings-backup-panel span { color:#337a62; font-size:.57rem; }.settings-backup-panel small { margin-top:3px; color:var(--spce-muted); font-size:.53rem; }.settings-backup-actions { display:flex; gap:8px; margin-top:12px; }.settings-export-icon { width:58px; height:58px; display:grid !important; place-items:center; margin:4px auto 10px; border-radius:18px; background:linear-gradient(135deg,var(--spce-blue),var(--spce-purple)); color:#fff !important; font-size:1.15rem; }.settings-data-copy { margin:0 0 12px; color:var(--spce-muted); font-size:.62rem; text-align:center; }.settings-side-note { display:block; margin-top:8px; color:#9d99a6; font-size:.53rem; text-align:center; }.settings-danger-card { border-color:rgba(216,49,145,.16); }.settings-danger-action { width:100%; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border:0; border-top:1px solid #efedfb; background:transparent; text-align:left; }.settings-danger-action:first-of-type { border-top:0; }.settings-danger-action > span { display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:9px; }.settings-danger-action > span > i { width:34px; height:34px; display:grid !important; place-items:center; border-radius:10px; background:rgba(72,17,178,.08); color:var(--spce-purple); }.settings-danger-action > span span strong,.settings-danger-action > span span small { display:block; }.settings-danger-action > span span strong { font-size:.66rem; }.settings-danger-action > span span small { color:var(--spce-muted); font-size:.54rem; }.settings-danger-action > i { color:#b6b1bd; font-size:.57rem; }.settings-danger-action.destructive > span > i { background:rgba(216,49,145,.09); color:var(--spce-pink); }.settings-danger-action.destructive > span span strong { color:#a23d70; }

.settings-preferences-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); gap:16px; align-items:start; }.settings-personal-channel { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:10px; padding:11px 0; border-top:1px solid #efedfb; }.settings-personal-channel:first-of-type { border-top:0; }.settings-personal-icon { width:38px; height:38px; border-radius:11px; }.settings-personal-channel > span:nth-child(2) strong,.settings-personal-channel > span:nth-child(2) small { display:block; }.settings-personal-channel > span:nth-child(2) strong { font-size:.67rem; }.settings-personal-channel > span:nth-child(2) small { color:var(--spce-muted); font-size:.55rem; }.settings-channel-required { padding:5px 7px; border-radius:999px; background:rgba(72,17,178,.08); color:var(--spce-purple); font-size:.52rem; font-weight:800; }

@media (max-width:1399.98px) { .settings-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.settings-overview-grid { grid-template-columns:1fr; }.settings-side-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }.settings-orbit-card { grid-column:auto; }.settings-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.settings-module-card:nth-child(3n) { border-right:1px solid var(--spce-border); }.settings-module-card:nth-child(2n) { border-right:0; } }
@media (max-width:1199.98px) { .settings-form-layout,.settings-branding-layout,.settings-billing-grid,.settings-data-grid,.settings-preferences-grid { grid-template-columns:1fr; }.settings-brand-preview-card { position:static; }.settings-billing-bottom { grid-template-columns:1fr; }.settings-plan-meta { grid-template-columns:repeat(2,1fr); }.notifications-layout { grid-template-columns:1fr; } }
@media (max-width:991.98px) { .settings-overview-bottom { grid-template-columns:1fr; }.settings-quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.settings-side-stack { grid-template-columns:1fr; }.settings-module-grid { grid-template-columns:1fr; }.settings-module-card,.settings-module-card:nth-child(2n),.settings-module-card:nth-child(3n) { border-right:0; }.settings-brand-fields { grid-template-columns:1fr 1fr; } }
@media (max-width:767.98px) { .settings-view-header { align-items:flex-start; flex-direction:column; }.settings-summary-grid { grid-template-columns:1fr; gap:10px; }.app-settings-form-grid.two-col { grid-template-columns:1fr; }.settings-quick-grid { grid-template-columns:1fr; }.settings-brand-row { grid-template-columns:50px minmax(0,1fr); }.settings-brand-row .btn { grid-column:2; width:max-content; }.settings-brand-fields { grid-template-columns:1fr; }.settings-plan-top { grid-template-columns:50px minmax(0,1fr); }.settings-plan-badge { grid-column:2; width:max-content; }.settings-plan-meta { grid-template-columns:1fr 1fr; }.settings-backup-actions,.settings-plan-actions { flex-direction:column; }.settings-backup-actions .btn,.settings-plan-actions .btn { width:100%; } }
@media (max-width:575.98px) { .settings-page-heading .page-heading-actions { width:100%; }.settings-page-heading .page-heading-actions .btn { flex:1; }.settings-summary-card { padding:12px; }.settings-account-meta { grid-template-columns:1fr; }.settings-brand-preview-card { padding:16px; }.settings-payment-card { grid-template-columns:40px minmax(0,1fr); }.settings-payment-default { grid-column:2; width:max-content; }.settings-billing-contact { grid-template-columns:34px minmax(0,1fr); }.settings-billing-contact > :last-child { grid-column:2; width:max-content; }.settings-plan-meta { grid-template-columns:1fr; }.settings-personal-channel { grid-template-columns:38px minmax(0,1fr); }.settings-personal-channel > :last-child { grid-column:2; justify-self:start; }.settings-data-grid .dashboard-card,.settings-form-layout .dashboard-card { padding:16px; } }

/* ==========================================================================
   COSMIC Scrollbars
   ========================================================================== */

/* Firefox */
html {
  scrollbar-width: thin;
  scrollbar-color: var(--spce-purple-2) #ece9f7;
}

/* Chrome / Edge / Safari */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: #ece9f7;
}

::-webkit-scrollbar-thumb {
  background: var(--spce-purple-2);
  border: 2px solid #ece9f7;
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--spce-purple);
}

::-webkit-scrollbar-corner {
  background: #ece9f7;
}


/* --------------------------------------------------------------------------
   Sidebar scrollbar
   Keep this darker and more subtle
   -------------------------------------------------------------------------- */

.spce-sidebar {
  scrollbar-width: thin;
  scrollbar-color: rgba(252, 137, 59, .65) transparent;
}

.spce-sidebar::-webkit-scrollbar {
  width: 7px;
}

.spce-sidebar::-webkit-scrollbar-track {
  background: transparent;
}

.spce-sidebar::-webkit-scrollbar-thumb {
  background: rgba(252, 137, 59, .55);
  border: 2px solid transparent;
  background-clip: padding-box;
  border-radius: 999px;
}

.spce-sidebar::-webkit-scrollbar-thumb:hover {
  background: rgba(252, 137, 59, .85);
  background-clip: padding-box;
}


/* --------------------------------------------------------------------------
   Horizontal app scroll areas
   Tables, navs, order lanes, calendars, etc.
   -------------------------------------------------------------------------- */

.menu-table-wrap,
.reservation-table-wrap,
.waitlist-main-card,
.catering-table-wrap,
.catering-calendar-card,
.order-board,
.catering-pipeline,
.catering-pdf-preview-wrap {
  scrollbar-width: thin;
  scrollbar-color: rgba(72, 17, 178, .55) transparent;
}

.menu-table-wrap::-webkit-scrollbar,
.reservation-table-wrap::-webkit-scrollbar,
.waitlist-main-card::-webkit-scrollbar,
.catering-table-wrap::-webkit-scrollbar,
.catering-calendar-card::-webkit-scrollbar,
.order-board::-webkit-scrollbar,
.catering-pipeline::-webkit-scrollbar,
.catering-pdf-preview-wrap::-webkit-scrollbar {
  height: 8px;
}

.menu-table-wrap::-webkit-scrollbar-track,
.reservation-table-wrap::-webkit-scrollbar-track,
.waitlist-main-card::-webkit-scrollbar-track,
.catering-table-wrap::-webkit-scrollbar-track,
.catering-calendar-card::-webkit-scrollbar-track,
.order-board::-webkit-scrollbar-track,
.catering-pipeline::-webkit-scrollbar-track,
.catering-pdf-preview-wrap::-webkit-scrollbar-track {
  background: transparent;
}

.menu-table-wrap::-webkit-scrollbar-thumb,
.reservation-table-wrap::-webkit-scrollbar-thumb,
.waitlist-main-card::-webkit-scrollbar-thumb,
.catering-table-wrap::-webkit-scrollbar-thumb,
.catering-calendar-card::-webkit-scrollbar-thumb,
.order-board::-webkit-scrollbar-thumb,
.catering-pipeline::-webkit-scrollbar-thumb,
.catering-pdf-preview-wrap::-webkit-scrollbar-thumb {
  background: rgba(72, 17, 178, .45);
  border-radius: 999px;
}

.menu-table-wrap::-webkit-scrollbar-thumb:hover,
.reservation-table-wrap::-webkit-scrollbar-thumb:hover,
.waitlist-main-card::-webkit-scrollbar-thumb:hover,
.catering-table-wrap::-webkit-scrollbar-thumb:hover,
.catering-calendar-card::-webkit-scrollbar-thumb:hover,
.order-board::-webkit-scrollbar-thumb:hover,
.catering-pipeline::-webkit-scrollbar-thumb:hover,
.catering-pdf-preview-wrap::-webkit-scrollbar-thumb:hover {
  background: var(--spce-purple);
}
/* ==========================================================================\n   COSMIC Demo Functional UI\n   Functional overlays only. Existing approved page styling remains untouched.\n   ========================================================================== */
body.spce-modal-open { overflow:hidden; }
.spce-functional-modal { position:fixed; inset:0; z-index:1200; display:grid; place-items:center; padding:18px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .18s ease,visibility .18s ease; }
.spce-functional-modal.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.spce-functional-modal-backdrop { position:absolute; inset:0; background:rgba(27,18,92,.58); backdrop-filter:blur(4px); }
.spce-functional-modal-card { position:relative; z-index:1; width:min(680px,100%); max-height:min(88vh,860px); display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(255,255,255,.35); border-radius:24px; background:#fff; box-shadow:0 30px 80px rgba(24,13,49,.28); transform:translateY(12px) scale(.985); transition:transform .18s ease; }
.spce-functional-modal.is-open .spce-functional-modal-card { transform:none; }
.spce-functional-modal-close { position:absolute; top:14px; right:14px; z-index:3; width:38px; height:38px; display:grid !important; place-items:center; border:0; border-radius:11px; background:var(--spce-bg); color:var(--spce-muted); }
.spce-functional-modal-close:hover { color:var(--spce-purple); background:rgba(72,17,178,.08); }
.spce-functional-modal-head { padding:24px 62px 16px 24px; border-bottom:1px solid var(--spce-border); }
.spce-functional-modal-eyebrow { display:block; margin-bottom:4px; color:var(--spce-pink); font-family:var(--spce-font-display); font-size:.64rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.spce-functional-modal-head h2 { margin:0; font-family:var(--spce-font-display); font-size:1.45rem; letter-spacing:-.035em; }
.spce-functional-modal-head p { margin:5px 0 0; color:var(--spce-muted); font-size:.72rem; }
.spce-functional-modal-body { min-height:80px; padding:20px 24px; overflow:auto; }
.spce-functional-modal-actions { display:flex; justify-content:flex-end; gap:9px; padding:14px 24px 18px; border-top:1px solid var(--spce-border); background:#fdfcff; }
.spce-functional-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.spce-functional-form label,.spce-functional-detail label { display:grid; gap:5px; color:var(--spce-muted); font-size:.62rem; font-weight:700; }
.spce-functional-form label:has(textarea),.spce-functional-detail label { grid-column:1 / -1; }
.spce-functional-form input,.spce-functional-form select,.spce-functional-form textarea,.spce-functional-detail textarea,.spce-functional-detail select,.spce-functional-confirm-input { width:100%; min-height:42px; padding:9px 11px; border:1px solid var(--spce-border); border-radius:11px; outline:0; background:var(--spce-bg); color:var(--spce-ink); font-size:.72rem; }
.spce-functional-form input:focus,.spce-functional-form select:focus,.spce-functional-form textarea:focus,.spce-functional-detail textarea:focus,.spce-functional-detail select:focus,.spce-functional-confirm-input:focus { border-color:rgba(72,17,178,.35); box-shadow:0 0 0 3px rgba(72,17,178,.07); }
.spce-functional-form textarea,.spce-functional-detail textarea { min-height:100px; resize:vertical; }
.spce-functional-detail { display:grid; gap:12px; }
.spce-functional-detail-copy { padding:13px; border-radius:13px; background:var(--spce-bg); color:#5f5c70; font-size:.69rem; line-height:1.6; }
.spce-functional-progress { padding:10px 0; }
.spce-functional-progress-track { height:11px; overflow:hidden; border-radius:999px; background:#ece9f7; }
.spce-functional-progress-track span { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--spce-purple),var(--spce-pink),var(--spce-orange)); transition:width .18s ease; }
.spce-functional-progress-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:8px; color:var(--spce-muted); font-size:.65rem; }
.spce-functional-progress-meta strong { color:var(--spce-purple); }
.spce-functional-upload { position:relative; min-height:170px; display:grid; place-items:center; align-content:center; gap:5px; padding:20px; border:2px dashed rgba(72,17,178,.18); border-radius:17px; background:rgba(72,17,178,.035); text-align:center; cursor:pointer; }
.spce-functional-upload i { width:48px; height:48px; display:grid !important; place-items:center; margin-bottom:4px; border-radius:14px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-size:1.05rem; }
.spce-functional-upload strong { color:var(--spce-ink); font-size:.77rem; }.spce-functional-upload span { color:var(--spce-muted); font-size:.62rem; }.spce-functional-upload input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.spce-functional-upload-result { margin-top:10px; color:var(--spce-muted); font-size:.64rem; text-align:center; }
.spce-functional-warning { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:11px; padding:13px; border-radius:14px; background:rgba(252,137,59,.12); color:#82521f; font-size:.69rem; }
.spce-functional-warning i { width:40px; height:40px; display:grid !important; place-items:center; border-radius:12px; background:var(--spce-orange); color:#fff !important; }
.spce-functional-warning.danger { background:rgba(216,49,145,.08); color:#89345f; }.spce-functional-warning.danger i { background:var(--spce-pink); }
.spce-functional-confirm-input { margin-top:12px; }
.spce-functional-copy code { display:block; padding:14px; border-radius:12px; background:#1b125c; color:#f8f7ff; overflow-wrap:anywhere; }
.spce-functional-logo-preview { width:90px; height:90px; display:grid !important; place-items:center; margin:14px auto 0; overflow:hidden; border-radius:22px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; font-family:var(--spce-font-display); font-weight:800; }.spce-functional-logo-preview img { width:100%; height:100%; object-fit:contain; background:#fff; }
.spce-functional-help { display:grid; grid-template-columns:50px minmax(0,1fr); gap:12px; align-items:start; }.spce-functional-help > i { width:48px; height:48px; display:grid !important; place-items:center; border-radius:14px; background:rgba(72,17,178,.09); color:var(--spce-purple); }.spce-functional-help strong { font-family:var(--spce-font-display); }.spce-functional-help p { margin:4px 0 0; color:var(--spce-muted); font-size:.69rem; }
.spce-functional-site-preview { overflow:hidden; border:1px solid var(--spce-border); border-radius:18px; background:#fff; }.spce-functional-preview-hero { padding:28px; background:linear-gradient(135deg,var(--spce-purple),#1b125c); color:#fff; }.spce-functional-preview-hero span { color:var(--spce-orange); font-size:.58rem; font-weight:800; letter-spacing:.12em; }.spce-functional-preview-hero h3 { margin:5px 0; font-family:var(--spce-font-display); font-size:1.45rem; }.spce-functional-preview-hero p { margin:0 0 12px; color:rgba(255,255,255,.72); font-size:.68rem; }.spce-functional-preview-hero button { border:0; border-radius:10px; padding:8px 11px; background:var(--spce-orange); color:var(--spce-ink); font-size:.62rem; font-weight:800; }.spce-functional-preview-items { display:grid; }.spce-functional-preview-items span { display:flex; justify-content:space-between; gap:14px; padding:12px 15px; border-top:1px solid var(--spce-border); font-size:.68rem; }
.spce-functional-list { display:grid; gap:8px; }.spce-functional-list > div { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:9px; padding:10px; border:1px solid var(--spce-border); border-radius:12px; }.spce-functional-list > div > span:nth-child(2) strong,.spce-functional-list > div > span:nth-child(2) small { display:block; }.spce-functional-list > div > span:nth-child(2) strong { font-size:.69rem; }.spce-functional-list > div > span:nth-child(2) small { color:var(--spce-muted); font-size:.57rem; }.spce-functional-list.simple > div { display:block; }.spce-functional-list.simple strong,.spce-functional-list.simple small { display:block; }.spce-functional-list.simple small { color:var(--spce-muted); }
.spce-functional-quick-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.spce-functional-quick-grid a { display:grid; grid-template-columns:40px minmax(0,1fr) 12px; align-items:center; gap:9px; padding:12px; border:1px solid var(--spce-border); border-radius:14px; background:#fff; }.spce-functional-quick-grid a:hover { border-color:rgba(72,17,178,.2); background:#fcfbff; }.spce-functional-quick-grid a > span { width:40px; height:40px; display:grid !important; place-items:center; border-radius:12px; background:linear-gradient(135deg,var(--spce-purple),var(--spce-pink)); color:#fff !important; }.spce-functional-quick-grid a strong { font-size:.7rem; }.spce-functional-quick-grid a > i { color:#b5b0bc; font-size:.58rem; }
.spce-functional-popover { position:fixed; z-index:1180; width:min(380px,calc(100vw - 24px)); overflow:hidden; border:1px solid rgba(23,20,63,.1); border-radius:17px; background:#fff; box-shadow:0 24px 60px rgba(26,15,49,.18); animation:spcePopoverIn .14s ease both; }
@keyframes spcePopoverIn { from { opacity:0; transform:translateY(-4px) scale(.99); } to { opacity:1; transform:none; } }
.spce-functional-popover-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 14px; border-bottom:1px solid var(--spce-border); }.spce-functional-popover-head span strong,.spce-functional-popover-head span small { display:block; }.spce-functional-popover-head span strong { font-family:var(--spce-font-display); font-size:.77rem; }.spce-functional-popover-head span small { color:var(--spce-muted); font-size:.57rem; }.spce-functional-popover-head a,.spce-functional-popover-head button { border:0; background:transparent; color:var(--spce-purple); font-size:.6rem; font-weight:800; }
.spce-functional-action-list,.spce-functional-notification-list { display:grid; }.spce-functional-action-list a { display:grid; grid-template-columns:38px minmax(0,1fr) 12px; align-items:center; gap:9px; padding:11px 13px; border-top:1px solid #f2eff9; }.spce-functional-action-list a:first-child { border-top:0; }.spce-functional-action-list a:hover { background:#fbfaff; }.spce-functional-action-icon { width:36px; height:36px; display:grid !important; place-items:center; border-radius:10px; background:rgba(72,17,178,.08); color:var(--spce-purple); }.spce-functional-action-list strong,.spce-functional-action-list small { display:block; }.spce-functional-action-list strong { font-size:.67rem; }.spce-functional-action-list small { color:var(--spce-muted); font-size:.56rem; }.spce-functional-action-list > a > i { color:#b6b1bd; font-size:.55rem; }
.spce-functional-notification-list a { position:relative; display:grid; grid-template-columns:8px minmax(0,1fr) auto; align-items:center; gap:9px; padding:11px 13px; border-top:1px solid #f2eff9; }.spce-functional-notification-list a:first-child { border-top:0; }.spce-functional-notification-list a:hover { background:#fbfaff; }.spce-functional-notification-list a > i { width:7px; height:7px; border-radius:50%; background:var(--spce-pink); }.spce-functional-notification-list a.is-read > i { background:#d8d3dc; }.spce-functional-notification-list strong,.spce-functional-notification-list small { display:block; }.spce-functional-notification-list strong { font-size:.67rem; }.spce-functional-notification-list small { color:var(--spce-muted); font-size:.56rem; }.spce-functional-notification-list time { color:#aaa5b1; font-size:.52rem; }.notification-count.is-zero { display:none; }
.spce-functional-account-head { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:10px; padding:14px; border-bottom:1px solid var(--spce-border); }.spce-functional-account-head .user-avatar { width:42px; height:42px; }.spce-functional-account-head strong,.spce-functional-account-head small { display:block; }.spce-functional-account-head strong { font-family:var(--spce-font-display); font-size:.75rem; }.spce-functional-account-head small { color:var(--spce-muted); font-size:.56rem; }.spce-functional-account-menu { display:grid; padding:6px; }.spce-functional-account-menu a,.spce-functional-account-menu button { width:100%; display:grid; grid-template-columns:30px minmax(0,1fr); align-items:center; gap:8px; min-height:40px; padding:7px 9px; border:0; border-radius:10px; background:transparent; color:var(--spce-ink); text-align:left; font-size:.66rem; font-weight:700; }.spce-functional-account-menu a:hover,.spce-functional-account-menu button:hover { background:var(--spce-bg); color:var(--spce-purple); }.spce-functional-account-menu i { width:28px; height:28px; display:grid !important; place-items:center; border-radius:8px; background:rgba(72,17,178,.06); color:var(--spce-purple); }.spce-functional-account-menu .danger { margin-top:4px; border-top:1px solid var(--spce-border); color:#a33b70; }.spce-functional-account-menu .danger i { background:rgba(216,49,145,.08); color:var(--spce-pink); }
.spce-functional-location-list { display:grid; padding:6px; }.spce-functional-location-list button { width:100%; display:grid; grid-template-columns:40px minmax(0,1fr) 18px; align-items:center; gap:9px; padding:8px; border:0; border-radius:11px; background:transparent; text-align:left; }.spce-functional-location-list button:hover,.spce-functional-location-list button.active { background:var(--spce-bg); }.spce-functional-location-list .restaurant-avatar { width:40px; height:40px; }.spce-functional-location-list strong,.spce-functional-location-list small { display:block; }.spce-functional-location-list strong { font-size:.67rem; }.spce-functional-location-list small { color:var(--spce-muted); font-size:.55rem; }.spce-functional-location-list button > i { color:var(--spce-green); }
.spce-functional-range { display:grid; padding:6px; }.spce-functional-range button { min-height:38px; padding:7px 10px; border:0; border-radius:9px; background:transparent; text-align:left; font-size:.65rem; font-weight:700; }.spce-functional-range button:hover,.spce-functional-range button.active { background:var(--spce-bg); color:var(--spce-purple); }
.spce-global-search-results { position:fixed; z-index:1190; max-height:min(520px,70vh); display:none; overflow:auto; border:1px solid rgba(23,20,63,.1); border-radius:16px; background:#fff; box-shadow:0 24px 60px rgba(26,15,49,.18); }.spce-global-search-results.show { display:block; }.spce-global-search-head { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; border-bottom:1px solid var(--spce-border); }.spce-global-search-head strong { font-family:var(--spce-font-display); font-size:.7rem; }.spce-global-search-head small { color:var(--spce-muted); font-size:.55rem; }.spce-global-search-results > a { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:8px; padding:9px 11px; border-top:1px solid #f3f1fa; }.spce-global-search-results > a:first-of-type { border-top:0; }.spce-global-search-results > a:hover { background:#faf9ff; }.spce-global-search-icon { width:32px; height:32px; display:grid !important; place-items:center; border-radius:9px; background:rgba(72,17,178,.07); color:var(--spce-purple); }.spce-global-search-results strong,.spce-global-search-results small { display:block; }.spce-global-search-results strong { font-size:.65rem; }.spce-global-search-results small { color:var(--spce-muted); font-size:.52rem; }.spce-global-search-results kbd { padding:2px 5px; border-radius:5px; background:#efedf8; color:#8e8998; font-size:.5rem; }
.action-item { cursor:pointer; }
.action-item:focus-visible { outline:3px solid rgba(72,17,178,.16); outline-offset:2px; }
.topbar-user { cursor:pointer; }
.spce-demo-login-screen { position:fixed; inset:0; z-index:1300; display:grid; place-items:center; padding:20px; background:radial-gradient(circle at 20% 15%,rgba(216,49,145,.28),transparent 30%),linear-gradient(145deg,#291070,#1b125c); opacity:1; transition:opacity .2s ease; }.spce-demo-login-screen.is-leaving { opacity:0; }.spce-demo-login-card { width:min(420px,100%); padding:30px; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:#fff; box-shadow:0 35px 80px rgba(8,5,20,.35); }.spce-demo-login-card > img { display:block; width:190px; max-width:70%; margin:0 auto 22px; filter:none; }.spce-demo-login-card > span { color:var(--spce-pink); font-size:.62rem; font-weight:800; letter-spacing:.12em; }.spce-demo-login-card h1 { margin:4px 0; font-family:var(--spce-font-display); letter-spacing:-.04em; }.spce-demo-login-card p { margin:0 0 18px; color:var(--spce-muted); font-size:.7rem; }.spce-demo-login-card label { display:grid; gap:5px; margin-top:10px; color:var(--spce-muted); font-size:.6rem; font-weight:700; }.spce-demo-login-card input { min-height:42px; padding:9px 11px; border:1px solid var(--spce-border); border-radius:11px; background:var(--spce-bg); color:var(--spce-ink); }.spce-demo-login-card .btn { width:100%; margin-top:16px; min-height:44px; }.spce-demo-login-card > small { display:block; margin-top:9px; color:#a09baa; font-size:.54rem; text-align:center; }
@media (max-width:767.98px) { .spce-functional-modal { padding:10px; align-items:end; }.spce-functional-modal-card { width:100%; max-height:92vh; border-radius:22px 22px 14px 14px; }.spce-functional-form { grid-template-columns:1fr; }.spce-functional-quick-grid { grid-template-columns:1fr; }.spce-global-search-results { left:12px !important; right:12px; width:auto !important; }.spce-functional-popover { right:12px; left:auto !important; } }


/* ==========================================================================
   Demo Mode / Account Demo Controls
   ========================================================================== */
.spce-demo-mode-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid rgba(72,17,178,.12);
  border-radius: 999px;
  background: rgba(72,17,178,.055);
  color: var(--spce-purple);
  font-family: var(--spce-font-display);
  font-size: .56rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
  white-space: nowrap;
}
.spce-demo-mode-dot {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--spce-orange-2);
  box-shadow: 0 0 0 3px rgba(252,137,59,.13);
}
.sidebar-demo-mode {
  width: max-content;
  display: none !important;
  align-items: center;
  gap: 5px;
  margin-top: 5px !important;
  padding: 3px 7px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.62) !important;
  font-family: var(--spce-font-display);
  font-size: .52rem !important;
  font-weight: 800;
  letter-spacing: .045em;
  line-height: 1.2;
  text-transform: uppercase;
}
.sidebar-demo-mode > span {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--spce-orange);
}
.spce-functional-account-menu .explore {
  margin-top: 4px;
  border-top: 1px solid var(--spce-border);
  color: var(--spce-purple);
}
.spce-functional-account-menu .explore i {
  background: rgba(252,137,59,.12);
  color: #a85f20;
}
.spce-functional-account-menu .reset {
  color: #746d80;
}
.spce-functional-account-menu .reset i {
  background: rgba(103,99,125,.09);
  color: #746d80;
}
@media (max-width: 991.98px) {
  .spce-demo-mode-badge { display: none; }
}
