/* Rush Patch 66 — Staff Clarity UI layer
   Scope: staff/admin shell only. No payment, checkout, QR, PayFast or Ozow logic is changed here. */

body.ui-staff-shell {
  --rush-sidebar-width: 15.6rem;
  --rush-sidebar-compact-width: 4.55rem;
  --rush-nav-height: 3.95rem;
  --rush-staff-card-radius: 1.18rem;
  --rush-staff-card-padding: 1rem;
  --rush-staff-soft-border: rgba(255,255,255,.095);
  --rush-staff-readable: rgba(255,255,255,.72);
  --rush-staff-muted: rgba(255,255,255,.48);
  background:
    radial-gradient(circle at 16% 8%, rgba(86,217,255,.07), transparent 34rem),
    radial-gradient(circle at 92% 3%, rgba(255,47,146,.08), transparent 30rem),
    #050509;
  font-size: 14px;
}

body.ui-staff-shell .noise { opacity: .20; }
body.ui-staff-shell .ui-main--staff { min-width: 0; }
body.ui-staff-shell .ui-main--staff > section { max-width: none; }
body.ui-staff-shell .ui-main--staff > section > .max-w-7xl,
body.ui-staff-shell .ui-main--staff > section > .max-w-6xl,
body.ui-staff-shell .ui-main--staff > section > .max-w-5xl {
  width: min(100%, 1180px) !important;
}
body.ui-staff-shell .ui-main--staff > section > .max-w-4xl,
body.ui-staff-shell .ui-main--staff > section > .max-w-3xl,
body.ui-staff-shell .ui-main--staff > section > .max-w-2xl {
  width: min(100%, 980px) !important;
}

/* Header and navigation: more operational, less billboard. */
body.ui-staff-shell .ui-staff-header,
body.ui-staff-shell .ui-staff-brand { min-height: var(--rush-nav-height); height: var(--rush-nav-height); }
body.ui-staff-shell .ui-staff-header { background: rgba(5,5,9,.88); border-bottom-color: rgba(255,255,255,.07); backdrop-filter: blur(20px) saturate(120%); }
body.ui-staff-shell .ui-staff-header__content { min-height: var(--rush-nav-height); }
body.ui-staff-shell .ui-staff-brand { padding: .55rem .8rem; }
body.ui-staff-shell .ui-staff-brand .ui-brand-mark { font-size: .82rem; }
body.ui-staff-shell .ui-brand-caption { letter-spacing: .12em; font-size: .52rem; }
body.ui-staff-shell .ui-staff-context { gap: .42rem; }
body.ui-staff-shell .ui-event-context,
body.ui-staff-shell .ui-command-trigger,
body.ui-staff-shell .ui-staff-account-trigger,
body.ui-staff-shell .ui-header-icon-action {
  height: 2.35rem;
  min-height: 2.35rem;
  border-radius: .74rem;
  background: rgba(255,255,255,.028);
}
body.ui-staff-shell .ui-event-context { min-width: 10.7rem; }
body.ui-staff-shell .ui-command-trigger { min-width: 10.3rem; }
body.ui-staff-shell .ui-staff-account-trigger { min-width: 9.8rem; padding-block: .22rem; }
body.ui-staff-shell .ui-header-icon-action { width: 2.35rem; }
body.ui-staff-shell .ui-staff-avatar { width: 1.72rem; height: 1.72rem; border-radius: .58rem; font-size: .64rem; }
body.ui-staff-shell .ui-staff-account-trigger__copy strong { font-size: .62rem; }
body.ui-staff-shell .ui-staff-account-trigger__copy small { font-size: .5rem; }

body.ui-staff-shell .ui-staff-sidebar { border-right-color: rgba(255,255,255,.075); background: rgba(6,6,10,.93); }
body.ui-staff-shell .ui-staff-sidebar__inner { padding: .58rem .48rem .75rem; }
body.ui-staff-shell .ui-staff-sidebar__status { min-height: 2.45rem; padding: .12rem .22rem .48rem; }
body.ui-staff-shell .ui-staff-sidebar__caption { margin-top: .12rem; font-size: .58rem; }
body.ui-staff-shell .ui-staff-recent { padding: .5rem 0 .48rem; }
body.ui-staff-shell .ui-staff-recent-link { min-height: 2rem; padding: .34rem .44rem; font-size: .62rem; border-radius: .62rem; }
body.ui-staff-shell .ui-staff-nav { margin-top: .4rem; }
body.ui-staff-shell .ui-nav-group + .ui-nav-group { margin-top: .18rem; }
body.ui-staff-shell .ui-nav-group__toggle {
  min-height: 2.05rem;
  padding: .35rem .44rem;
  border-radius: .66rem;
  letter-spacing: .05em;
}
body.ui-staff-shell .ui-nav-group__toggle small { display: none; }
body.ui-staff-shell .ui-nav-group__label,
body.ui-staff-shell .ui-nav-group__toggle strong { font-size: .6rem; }
body.ui-staff-shell .ui-nav-group__items { display: grid; gap: .08rem; }
body.ui-staff-shell .ui-staff-nav-link {
  min-height: 2.18rem;
  padding: .32rem .4rem;
  border-radius: .66rem;
  gap: .42rem;
}
body.ui-staff-shell .ui-staff-nav-link__icon { width: 1.5rem; height: 1.5rem; flex-basis: 1.5rem; border-radius: .52rem; }
body.ui-staff-shell .ui-staff-nav-link__icon .ui-icon { width: .82rem; height: .82rem; }
body.ui-staff-shell .ui-staff-nav-link__copy strong { font-size: .64rem; line-height: 1.08; }
body.ui-staff-shell .ui-staff-nav-link__copy small { display: none; }
body.ui-staff-shell .ui-staff-nav-link.is-active { box-shadow: inset 2px 0 0 var(--rush-pink); background: linear-gradient(90deg, rgba(255,47,146,.18), rgba(255,255,255,.028)); }
body.ui-staff-shell.ui-staff-sidebar-compact .ui-staff-nav-link { justify-content: center; }

/* Page tools are useful, but they should not dominate the actual work. */
body.ui-staff-shell .ui-staff-page-tools {
  min-height: 3.25rem;
  padding: .42rem .72rem;
  background: rgba(8,8,13,.86);
  border-bottom-color: rgba(255,255,255,.07);
  backdrop-filter: blur(20px) saturate(120%);
}
body.ui-staff-shell .ui-staff-page-tools__icon { width: 2rem; height: 2rem; flex-basis: 2rem; border-radius: .66rem; }
body.ui-staff-shell .ui-staff-page-tools__copy small { font-size: .5rem; }
body.ui-staff-shell .ui-staff-page-tools__copy strong { font-size: .72rem; }
body.ui-staff-shell .ui-staff-page-tools__copy > span { font-size: .54rem; max-width: 26rem; }
body.ui-staff-shell .ui-page-tool-button,
body.ui-staff-shell .ui-page-primary-action,
body.ui-staff-shell .ui-page-density-trigger {
  min-height: 2.25rem;
  border-radius: .72rem;
  padding: .42rem .65rem;
  font-size: .62rem;
}

/* Reduce billboard headings and empty vertical air across all staff pages. */
body.ui-staff-shell .ui-main--staff > section { padding-bottom: 2.2rem !important; }
body.ui-staff-shell .ui-main--staff h1.header-font,
body.ui-staff-shell .ui-main--staff .header-font.text-4xl,
body.ui-staff-shell .ui-main--staff .header-font.text-5xl,
body.ui-staff-shell .ui-main--staff .header-font.text-6xl {
  font-size: clamp(2rem, 3.7vw, 3.25rem) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
  margin-top: .4rem !important;
}
body.ui-staff-shell .ui-main--staff .tiny-label { font-size: .58rem !important; letter-spacing: .12em !important; }
body.ui-staff-shell .ui-main--staff .text-5xl { font-size: 2.45rem !important; }
body.ui-staff-shell .ui-main--staff .text-4xl { font-size: 2rem !important; }
body.ui-staff-shell .ui-main--staff .text-3xl { font-size: 1.45rem !important; }
body.ui-staff-shell .ui-main--staff .text-2xl { font-size: 1.12rem !important; }
body.ui-staff-shell .ui-main--staff .text-xl { font-size: 1rem !important; }
body.ui-staff-shell .ui-main--staff p,
body.ui-staff-shell .ui-main--staff li { line-height: 1.45; }
body.ui-staff-shell .ui-main--staff .text-white\/60 { color: var(--rush-staff-readable) !important; }
body.ui-staff-shell .ui-main--staff .text-white\/50,
body.ui-staff-shell .ui-main--staff .text-white\/45,
body.ui-staff-shell .ui-main--staff .text-white\/40,
body.ui-staff-shell .ui-main--staff .text-white\/35 { color: var(--rush-staff-muted) !important; }

body.ui-staff-shell .ui-main--staff .mt-8 { margin-top: 1.15rem !important; }
body.ui-staff-shell .ui-main--staff .mt-7 { margin-top: 1.05rem !important; }
body.ui-staff-shell .ui-main--staff .mt-6 { margin-top: .95rem !important; }
body.ui-staff-shell .ui-main--staff .mt-5 { margin-top: .85rem !important; }
body.ui-staff-shell .ui-main--staff .mt-4 { margin-top: .72rem !important; }
body.ui-staff-shell .ui-main--staff .mt-3 { margin-top: .55rem !important; }
body.ui-staff-shell .ui-main--staff .gap-8 { gap: 1.25rem !important; }
body.ui-staff-shell .ui-main--staff .gap-7 { gap: 1.15rem !important; }
body.ui-staff-shell .ui-main--staff .gap-6 { gap: 1rem !important; }
body.ui-staff-shell .ui-main--staff .gap-5 { gap: .9rem !important; }
body.ui-staff-shell .ui-main--staff .gap-4 { gap: .72rem !important; }

body.ui-staff-shell .ui-main--staff .glass-card,
body.ui-staff-shell .ui-main--staff .ui-staff-card {
  border-color: var(--rush-staff-soft-border) !important;
  border-radius: var(--rush-staff-card-radius) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.048), rgba(255,255,255,.018)) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.16) !important;
}
body.ui-staff-shell .ui-main--staff section.glass-card,
body.ui-staff-shell .ui-main--staff article.glass-card,
body.ui-staff-shell .ui-main--staff div.glass-card {
  padding: var(--rush-staff-card-padding) !important;
}
body.ui-staff-shell .ui-main--staff [class*="rounded-[2rem]"],
body.ui-staff-shell .ui-main--staff [class*="rounded-[1.5rem]"] { border-radius: var(--rush-staff-card-radius) !important; }
body.ui-staff-shell .ui-main--staff [class*="rounded-[1.25rem]"] { border-radius: .95rem !important; }
body.ui-staff-shell .ui-main--staff [class*="rounded-xl"] { border-radius: .78rem !important; }

/* Controls, pills, chips and forms. */
body.ui-staff-shell .ui-main--staff .pill-primary,
body.ui-staff-shell .ui-main--staff .pill-secondary,
body.ui-staff-shell .ui-main--staff .pill-ghost {
  min-height: 2.22rem;
  padding: .48rem .76rem !important;
  border-radius: .72rem !important;
  font-size: .66rem !important;
  letter-spacing: .025em !important;
  white-space: nowrap;
}
body.ui-staff-shell .ui-main--staff .code-chip,
body.ui-staff-shell .ui-main--staff .status-chip {
  min-height: 1.65rem;
  padding: .25rem .52rem !important;
  font-size: .6rem !important;
  letter-spacing: .045em !important;
}
body.ui-staff-shell .ui-main--staff .field,
body.ui-staff-shell .ui-main--staff input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body.ui-staff-shell .ui-main--staff select,
body.ui-staff-shell .ui-main--staff textarea {
  min-height: 2.34rem;
  border-radius: .74rem !important;
  font-size: .74rem;
}
body.ui-staff-shell .ui-main--staff textarea { min-height: 5.8rem; }
body.ui-staff-shell .ui-main--staff label > span { font-size: .62rem; }

/* Tables: better density, better scannability, less empty card space. */
body.ui-staff-shell .ui-main--staff .overflow-x-auto { scrollbar-width: thin; }
body.ui-staff-shell .ui-main--staff table { font-size: .72rem; border-collapse: separate; border-spacing: 0; }
body.ui-staff-shell .ui-main--staff thead th {
  padding-top: .55rem !important;
  padding-bottom: .55rem !important;
  color: rgba(255,255,255,.46) !important;
  font-size: .58rem !important;
  text-transform: uppercase;
  letter-spacing: .08em;
}
body.ui-staff-shell .ui-main--staff tbody td { padding-top: .68rem !important; padding-bottom: .68rem !important; vertical-align: middle; }
body.ui-staff-shell .ui-main--staff tbody tr:hover { background: rgba(255,255,255,.026); }
body.ui-staff-shell .ui-main--staff td[colspan] { padding: 1rem !important; color: rgba(255,255,255,.48) !important; }
body.ui-staff-shell .ui-staff-table-toolbar { margin: .75rem 0 .45rem; }
body.ui-staff-shell .ui-staff-table-search { height: 2.35rem; border-radius: .75rem; width: min(21rem, 100%); }
body.ui-staff-shell .ui-staff-table-search input { height: 2.25rem; font-size: .64rem; }
body.ui-staff-shell .ui-staff-table-toolbar__meta span:first-child { font-size: .58rem; }
body.ui-staff-shell .ui-staff-table-toolbar__meta span:last-child { font-size: .5rem; }

/* Event cards: actions stay compact and usable, never huge vertical slabs. */
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex { gap: .95rem !important; }
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child {
  align-items: flex-start;
  align-content: flex-start;
  gap: .42rem !important;
  max-width: 22rem !important;
}
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child form { display: inline-flex; }
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child .pill-primary,
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child .pill-secondary,
body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child .pill-ghost { min-width: 0; }

/* Operations/dashboard cards: keep information first and reduce giant empty zones. */
body.ui-staff-shell[data-staff-page-key="dashboard"] .ui-main--staff .glass-card,
body.ui-staff-shell[data-staff-page-key="operations"] .ui-main--staff .glass-card,
body.ui-staff-shell[data-staff-page-key="event-day"] .ui-main--staff .glass-card { min-height: 0; }
body.ui-staff-shell[data-staff-page-key="dashboard"] .ui-main--staff .grid,
body.ui-staff-shell[data-staff-page-key="operations"] .ui-main--staff .grid,
body.ui-staff-shell[data-staff-page-key="event-day"] .ui-main--staff .grid { align-items: stretch; }
body.ui-staff-shell .ui-main--staff .font-black { letter-spacing: -.018em; }

/* Page-specific top spacing. */
@media (min-width: 1024px) {
  body.ui-staff-shell .ui-staff-header__content { padding-left: calc(var(--ui-staff-active-sidebar-width, var(--rush-sidebar-width)) + .95rem); padding-right: .95rem; }
  body.ui-staff-shell .ui-main--staff > section.pt-32 { padding-top: 6.25rem !important; }
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > section.pt-32 { padding-top: 8.45rem !important; }
  body.ui-staff-shell .ui-main--staff > .ui-staff-page { padding-top: 6.85rem !important; }
  body.ui-staff-shell .ui-staff-page-tools { left: var(--ui-staff-active-sidebar-width, var(--rush-sidebar-width)); }
}

@media (max-width: 1380px) {
  body.ui-staff-shell .ui-event-context { min-width: 9.4rem; }
  body.ui-staff-shell .ui-command-trigger { min-width: 9.2rem; }
  body.ui-staff-shell .ui-staff-account-trigger { min-width: 8.8rem; }
}

@media (max-width: 1023px) {
  body.ui-staff-shell .ui-main--staff > section.pt-32 { padding-top: 6.4rem !important; }
  body.ui-staff-shell .ui-main--staff > .ui-staff-page { padding-top: 7rem !important; }
  body.ui-staff-shell .ui-staff-page-tools { left: 0; }
}

@media (max-width: 760px) {
  body.ui-staff-shell { font-size: 13px; }
  body.ui-staff-shell .ui-main--staff > section { padding-left: .72rem !important; padding-right: .72rem !important; }
  body.ui-staff-shell .ui-main--staff h1.header-font { font-size: clamp(1.82rem, 12vw, 2.55rem) !important; }
  body.ui-staff-shell .ui-main--staff .text-4xl { font-size: 1.7rem !important; }
  body.ui-staff-shell .ui-main--staff .text-3xl { font-size: 1.25rem !important; }
  body.ui-staff-shell .ui-main--staff section.glass-card,
  body.ui-staff-shell .ui-main--staff article.glass-card,
  body.ui-staff-shell .ui-main--staff div.glass-card { padding: .86rem !important; }
  body.ui-staff-shell .ui-main--staff .pill-primary,
  body.ui-staff-shell .ui-main--staff .pill-secondary,
  body.ui-staff-shell .ui-main--staff .pill-ghost { width: auto; min-height: 2.15rem; }
  body.ui-staff-shell[data-staff-page-key="events"] .ui-main--staff article.glass-card > .flex > div:last-child { max-width: 100% !important; }
  body.ui-staff-shell .ui-staff-page-tools__copy strong { max-width: 45vw; }
}

/* Patch 94 — staff shell clearance repair.
   Keeps the fixed staff toolbar from covering page titles on Patrons, Loyalty, Ambassadors, Bar Team and other staff pages. */
body.ui-staff-shell {
  --rush-staff-fixed-tools-height: 3.85rem;
  --rush-staff-content-safety-gap: 1.85rem;
}
body.ui-staff-shell .ui-staff-page-tools { overflow: visible; }
body.ui-staff-shell .ui-staff-page-tools__actions { min-width: 0; flex-wrap: wrap; row-gap: .45rem; }
body.ui-staff-shell .ui-page-tool-button,
body.ui-staff-shell .pill-primary,
body.ui-staff-shell .pill-secondary,
body.ui-staff-shell .pill-ghost,
body.ui-staff-shell button { overflow: visible; text-overflow: clip; }
@media (min-width: 1024px) {
  body.ui-staff-shell .ui-main--staff > section,
  body.ui-staff-shell .ui-main--staff > section.pt-28,
  body.ui-staff-shell .ui-main--staff > section.pt-32,
  body.ui-staff-shell .ui-main--staff > .ui-staff-page {
    padding-top: calc(var(--rush-nav-height) + var(--rush-staff-fixed-tools-height) + var(--rush-staff-content-safety-gap)) !important;
  }
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > section,
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > section.pt-28,
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > section.pt-32,
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > .ui-staff-page {
    padding-top: calc(40px + var(--rush-nav-height) + var(--rush-staff-fixed-tools-height) + var(--rush-staff-content-safety-gap)) !important;
  }
}
@media (max-width: 1023px) {
  body.ui-staff-shell .ui-main--staff > section,
  body.ui-staff-shell .ui-main--staff > section.pt-28,
  body.ui-staff-shell .ui-main--staff > section.pt-32,
  body.ui-staff-shell .ui-main--staff > .ui-staff-page { padding-top: 9.4rem !important; }
}
body.ui-staff-shell .ui-main--staff .scroll-mt-32 {
  scroll-margin-top: calc(var(--rush-nav-height) + var(--rush-staff-fixed-tools-height) + 2.25rem) !important;
}

/* Patch 94b — content wrappers also need clearance because many admin views start with a direct div.space-y-* wrapper. */
@media (min-width: 1024px) {
  body.ui-staff-shell .ui-main--staff > div:not(.ui-staff-page-tools):not(.ui-page-loader):not(.ui-toast-region) {
    padding-top: calc(var(--rush-nav-height) + var(--rush-staff-fixed-tools-height) + var(--rush-staff-content-safety-gap)) !important;
  }
  body.ui-staff-shell.ui-has-announcement .ui-main--staff > div:not(.ui-staff-page-tools):not(.ui-page-loader):not(.ui-toast-region) {
    padding-top: calc(40px + var(--rush-nav-height) + var(--rush-staff-fixed-tools-height) + var(--rush-staff-content-safety-gap)) !important;
  }
}
@media (max-width: 1023px) {
  body.ui-staff-shell .ui-main--staff > div:not(.ui-staff-page-tools):not(.ui-page-loader):not(.ui-toast-region) { padding-top: 9.4rem !important; }
}

/* Patch 95: prevent hero/page titles being clipped by the staff shell and fixed toolbar */
body.ui-staff-shell .ui-main--staff header,
body.ui-staff-shell .ui-main--staff .glass-card,
body.ui-staff-shell .ui-main--staff section {
  overflow: visible;
}
body.ui-staff-shell .ui-main--staff .header-font,
body.ui-staff-shell .ui-main--staff h1.header-font,
body.ui-staff-shell .ui-main--staff h1[class*="header-font"] {
  line-height: 1.08 !important;
  padding-top: .12em !important;
  padding-bottom: .08em !important;
  overflow: visible !important;
  transform: none !important;
}
body.ui-staff-shell .ui-main--staff > .mx-auto,
body.ui-staff-shell .ui-main--staff > main,
body.ui-staff-shell .ui-main--staff > section:first-child,
body.ui-staff-shell .ui-main--staff > div:first-child {
  margin-top: .75rem !important;
}
body.ui-staff-shell .ui-main--staff .sticky,
body.ui-staff-shell .ui-main--staff [class*="sticky"] {
  scroll-margin-top: 7rem;
}
@media (max-width: 900px) {
  body.ui-staff-shell .ui-main--staff .header-font,
  body.ui-staff-shell .ui-main--staff h1.header-font,
  body.ui-staff-shell .ui-main--staff h1[class*="header-font"] {
    line-height: 1.12 !important;
    padding-top: .16em !important;
    padding-bottom: .10em !important;
  }
}

/* Rush Patch 98 — live staff shell width + Promoter Hub containment repair
   This is deliberately scoped to staff/admin UI. It does not touch checkout, PayFast, QR, tickets or pricing. */
body.ui-staff-shell,
body.ui-staff-shell .ui-page-frame,
body.ui-staff-shell .ui-page-frame--staff,
body.ui-staff-shell .ui-main,
body.ui-staff-shell .ui-main--staff {
  min-width: 0 !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}
@media (min-width: 1024px) {
  body.ui-staff-shell .ui-page-frame--staff {
    width: 100vw !important;
    max-width: 100vw !important;
    padding-left: var(--ui-staff-active-sidebar-width, var(--rush-sidebar-width)) !important;
    overflow-x: hidden !important;
  }
  body.ui-staff-shell .ui-main--staff {
    width: calc(100vw - var(--ui-staff-active-sidebar-width, var(--rush-sidebar-width))) !important;
    max-width: calc(100vw - var(--ui-staff-active-sidebar-width, var(--rush-sidebar-width))) !important;
    overflow-x: hidden !important;
  }
  body.ui-staff-shell .ui-main--staff > section,
  body.ui-staff-shell .ui-main--staff > div:not(.ui-staff-page-tools):not(.ui-page-loader):not(.ui-toast-region) {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}
body.ui-staff-shell .ui-main--staff .max-w-7xl,
body.ui-staff-shell .ui-main--staff .max-w-6xl,
body.ui-staff-shell .ui-main--staff .max-w-5xl,
body.ui-staff-shell .ui-main--staff .max-w-4xl,
body.ui-staff-shell .ui-main--staff .max-w-\[92rem\] {
  max-width: min(100%, 92rem) !important;
  box-sizing: border-box !important;
}
body.ui-staff-shell .ui-main--staff .glass-card,
body.ui-staff-shell .ui-main--staff .ui-staff-card,
body.ui-staff-shell .ui-main--staff article,
body.ui-staff-shell .ui-main--staff form,
body.ui-staff-shell .ui-main--staff .grid,
body.ui-staff-shell .ui-main--staff .flex,
body.ui-staff-shell .ui-main--staff label,
body.ui-staff-shell .ui-main--staff input,
body.ui-staff-shell .ui-main--staff select,
body.ui-staff-shell .ui-main--staff textarea {
  max-width: 100%;
  box-sizing: border-box;
}
body.ui-staff-shell .ui-main--staff .overflow-x-auto {
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}
body.ui-staff-shell .ui-main--staff table {
  max-width: none;
}
body.ui-staff-shell .ui-main--staff td,
body.ui-staff-shell .ui-main--staff th {
  overflow-wrap: anywhere;
}
body.ui-staff-shell[data-staff-page-key="orders"] .ui-main--staff table {
  min-width: 72rem !important;
}
body.ui-staff-shell[data-staff-page-key="orders"] .ui-main--staff td,
body.ui-staff-shell[data-staff-page-key="orders"] .ui-main--staff th {
  padding-left: .55rem !important;
  padding-right: .55rem !important;
}
body.ui-staff-shell[data-staff-page-key="orders"] .ui-main--staff .status-chip,
body.ui-staff-shell[data-staff-page-key="orders"] .ui-main--staff .code-chip {
  white-space: normal !important;
  line-height: 1.15 !important;
}

body.ui-staff-shell .promoter-hub-page {
  padding-top: calc(var(--rush-nav-height, 4rem) + 4.25rem) !important;
}
body.ui-staff-shell .promoter-hub-grid { align-items: start; }
body.ui-staff-shell .promoter-roster-card-shell { overflow: hidden !important; }
body.ui-staff-shell .promoter-roster-list {
  max-height: 36rem !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding-right: .35rem;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.24) transparent;
}
body.ui-staff-shell .promoter-roster-list::-webkit-scrollbar { width: 8px; }
body.ui-staff-shell .promoter-roster-list::-webkit-scrollbar-thumb { background: rgba(255,255,255,.20); border-radius: 999px; }
body.ui-staff-shell .promoter-roster-item {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
body.ui-staff-shell .promoter-roster-item > .flex {
  align-items: flex-start !important;
  min-width: 0 !important;
}
body.ui-staff-shell .promoter-logo-thumb,
body.ui-staff-shell .promoter-logo-selected {
  display: block !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  flex: 0 0 auto !important;
  max-width: none !important;
  max-height: none !important;
  background: rgba(255,255,255,.045) !important;
}
body.ui-staff-shell .promoter-logo-thumb {
  width: 3.35rem !important;
  height: 3.35rem !important;
  min-width: 3.35rem !important;
}
body.ui-staff-shell .promoter-logo-selected {
  width: 4.8rem !important;
  height: 4.8rem !important;
  min-width: 4.8rem !important;
}
body.ui-staff-shell .promoter-roster-item .status-chip,
body.ui-staff-shell .promoter-roster-item .code-chip {
  white-space: nowrap !important;
  writing-mode: horizontal-tb !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body.ui-staff-shell .promoter-roster-item h3,
body.ui-staff-shell .promoter-roster-item p { min-width: 0 !important; }
@media (max-width: 767px) {
  body.ui-staff-shell .promoter-hub-page { padding-top: calc(var(--rush-nav-height, 4rem) + 3.25rem) !important; }
  body.ui-staff-shell .promoter-logo-thumb { width: 3rem !important; height: 3rem !important; min-width: 3rem !important; }
  body.ui-staff-shell .promoter-logo-selected { width: 4rem !important; height: 4rem !important; min-width: 4rem !important; }
}

/* ========================================================================
   Patch 105 — administration containment and responsive boundary repair
   ======================================================================== */
body.ui-staff-shell .ui-main--staff {
  min-width: 0 !important;
  overflow-x: visible !important;
}
body.ui-staff-shell .ui-main--staff > section,
body.ui-staff-shell .ui-main--staff > div:not(.ui-staff-page-tools):not(.ui-page-loader):not(.ui-toast-region),
body.ui-staff-shell .ui-main--staff .grid,
body.ui-staff-shell .ui-main--staff .flex,
body.ui-staff-shell .ui-main--staff .grid > *,
body.ui-staff-shell .ui-main--staff .flex > * {
  min-width: 0 !important;
}
body.ui-staff-shell .ui-main--staff img,
body.ui-staff-shell .ui-main--staff video,
body.ui-staff-shell .ui-main--staff canvas,
body.ui-staff-shell .ui-main--staff svg:not([width]):not([height]) {
  max-width: 100% !important;
  height: auto;
}
body.ui-staff-shell .ui-main--staff a,
body.ui-staff-shell .ui-main--staff p,
body.ui-staff-shell .ui-main--staff dd,
body.ui-staff-shell .ui-main--staff .breakable,
body.ui-staff-shell .ui-main--staff [data-ui-wrap] {
  overflow-wrap: anywhere;
  word-break: normal;
}
body.ui-staff-shell .ui-main--staff input,
body.ui-staff-shell .ui-main--staff select,
body.ui-staff-shell .ui-main--staff textarea,
body.ui-staff-shell .ui-main--staff button {
  min-width: 0;
}
body.ui-staff-shell .ui-main--staff dialog,
body.ui-staff-shell .ui-main--staff [role="dialog"] {
  max-width: calc(100vw - 1rem) !important;
  max-height: calc(100dvh - 1rem) !important;
}
body.ui-staff-shell .ui-main--staff .pill-primary,
body.ui-staff-shell .ui-main--staff .pill-secondary,
body.ui-staff-shell .ui-main--staff .pill-ghost {
  max-width: 100%;
  white-space: normal;
  text-align: center;
  justify-content: center;
}
body.ui-staff-shell .ui-main--staff .overflow-x-auto,
body.ui-staff-shell .ui-main--staff [data-responsive-table] {
  width: 100%;
  max-width: 100% !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}
body.ui-staff-shell .ui-main--staff table {
  border-collapse: collapse;
}
body.ui-staff-shell .ui-main--staff .field,
body.ui-staff-shell .ui-main--staff .settings-input,
body.ui-staff-shell .ui-main--staff .settings-select,
body.ui-staff-shell .ui-main--staff .settings-textarea {
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 767px) {
  body.ui-staff-shell .ui-main--staff > section {
    padding-left: max(.85rem, env(safe-area-inset-left)) !important;
    padding-right: max(.85rem, env(safe-area-inset-right)) !important;
  }
  body.ui-staff-shell .ui-main--staff .glass-card,
  body.ui-staff-shell .ui-main--staff .ui-staff-card,
  body.ui-staff-shell .ui-main--staff article {
    border-radius: 1.35rem !important;
  }
  body.ui-staff-shell .ui-main--staff .flex.gap-2,
  body.ui-staff-shell .ui-main--staff .flex.gap-3,
  body.ui-staff-shell .ui-main--staff .flex.gap-4 {
    row-gap: .65rem;
  }
  body.ui-staff-shell .ui-main--staff .status-chip,
  body.ui-staff-shell .ui-main--staff .code-chip {
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}
