/**
 * 멤버스 어드민 — master와 같은 편집샵 근간.
 * 컴포넌트는 여기. 색·자간·여백 값은 editorial-console-tokens.css.
 */
html.admin-root[data-admin-page="operator"] {
  --line: var(--ed-line);
  --radius: var(--ed-radius);
  --radius-md: var(--ed-radius);
  --radius-sm: var(--ed-radius);
  --muted: var(--ed-mute);
  --admin-bg: var(--ed-paper);
  --admin-surface: var(--ed-canvas);
  --admin-surface-muted: var(--ed-paper);
  --admin-sidebar-bg: var(--ed-canvas);
  --admin-border: var(--ed-line);
  --admin-border-strong: var(--ed-line-strong);
  --admin-grid-line: var(--ed-line);
  --admin-ink: var(--ed-ink);
  --admin-text: var(--ed-ink);
  --admin-text-secondary: var(--ed-mute);
  --admin-muted: var(--ed-faint);
  --admin-accent: var(--ed-ink);
  --admin-accent-hover: #000;
  --admin-accent-soft: var(--ed-wash);
  --admin-sage: var(--ed-ink);
  --admin-sage-soft: var(--ed-wash);
  --admin-nav-active-bg: transparent;
  --admin-nav-active-ink: var(--ed-ink);
  --admin-focus: var(--ed-line-strong);
  --admin-row-hover: var(--ed-wash);
  --admin-row-zebra: transparent;
  --admin-table-head: transparent;
  --admin-table-head-text: var(--ed-faint);
  --admin-danger: var(--ed-danger);
  --admin-radius-lg: var(--ed-radius);
  --admin-radius-md: var(--ed-radius);
  --admin-radius-sm: var(--ed-radius);
  --admin-shadow-sm: none;
  --admin-shadow: none;
  --admin-sidebar-w: var(--ed-sidebar);
  --admin-topbar-h: var(--ed-topbar);
  --admin-control-h: var(--ed-control);
  --admin-btn-h: 34px;
  --admin-font: var(--ed-font);
}

html.admin-root[data-admin-page="operator"] ::selection {
  background: rgba(26, 27, 29, 0.12);
  color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] body,
html.admin-root[data-admin-page="operator"] #adminAppShell,
html.admin-root[data-admin-page="operator"] .admin-shell {
  background: var(--ed-paper);
  color: var(--ed-ink);
  font-family: var(--ed-font);
  font-feature-settings: "kern" 1, "liga" 1;
  -webkit-font-smoothing: antialiased;
  font-weight: 450;
}

/* ── Header ── */

html.admin-root[data-admin-page="operator"] .topbar {
  background: var(--ed-canvas);
  border-bottom: 1px solid var(--ed-line);
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .topbar-inner {
  max-width: none;
  min-height: var(--ed-topbar);
  padding: 0 24px;
}

html.admin-root[data-admin-page="operator"] .ed-wordmark {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

html.admin-root[data-admin-page="operator"] .ed-wordmark > div {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

html.admin-root[data-admin-page="operator"] .ed-wordmark__mark {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 650;
  letter-spacing: 0.28em;
  text-indent: 0.28em;
  line-height: 1;
  color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .brand-sub {
  margin: 0;
  font-size: var(--ed-micro);
  font-weight: 500;
  letter-spacing: var(--ed-track-label);
  text-indent: var(--ed-track-label);
  text-transform: uppercase;
  color: var(--ed-faint);
  line-height: 1;
}

html.admin-root[data-admin-page="operator"] .top-actions {
  gap: 22px;
}

html.admin-root[data-admin-page="operator"] .top-actions .btn.btn-ghost {
  min-height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--ed-mute) !important;
  font-size: var(--ed-micro) !important;
  font-weight: 550 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html.admin-root[data-admin-page="operator"] .top-actions .btn.btn-ghost:hover {
  color: var(--ed-ink) !important;
  background: transparent !important;
}

/* ── Gate ── */

html.admin-root[data-admin-page="operator"] .admin-access-screen {
  background: var(--ed-paper);
  min-height: calc(100dvh - var(--ed-topbar));
  padding: 8vh 40px 12vh;
  align-items: flex-start;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__center {
  width: min(100%, 420px);
  margin: 0 0 0 max(0px, calc((100% - 420px) * 0.18));
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__panel {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__intro {
  margin: 0 0 40px;
  padding: 0 0 32px;
  border-bottom: 1px solid var(--ed-line);
  text-align: left;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__eyebrow {
  margin: 0 0 22px;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.22em;
  text-indent: 0.22em;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__eyebrow::after {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  margin-top: 20px;
  background: var(--ed-ink);
  opacity: 0.28;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__intro h1 {
  margin: 0 0 16px;
  font-size: var(--ed-display);
  font-weight: 540;
  letter-spacing: var(--ed-track-display);
  line-height: 1.12;
  color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__lead,
html.admin-root[data-admin-page="operator"] .admin-access-screen__text,
html.admin-root[data-admin-page="operator"] .admin-access-gate__text {
  max-width: 34em;
  margin: 0;
  text-align: left;
  font-size: var(--ed-body);
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.7;
  color: var(--ed-mute);
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__lead a,
html.admin-root[data-admin-page="operator"] .admin-access-gate__text a {
  color: var(--ed-ink);
  font-weight: 500;
  text-underline-offset: 3px;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__label,
html.admin-root[data-admin-page="operator"] .admin-access-gate__label {
  margin-bottom: 8px;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: var(--ed-track-label);
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__email,
html.admin-root[data-admin-page="operator"] .admin-access-gate__email,
html.admin-root[data-admin-page="operator"] .admin-access-screen__actor {
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid var(--ed-line);
  border-radius: 0;
  background: transparent;
  font-size: var(--ed-ui);
  font-weight: 500;
  text-align: left;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__input,
html.admin-root[data-admin-page="operator"] .admin-access-gate__input {
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ed-line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  min-height: 48px;
  font-size: 0.9375rem !important;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__input:focus,
html.admin-root[data-admin-page="operator"] .admin-access-gate__input:focus {
  border-bottom-color: var(--ed-ink) !important;
  box-shadow: none !important;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__actions,
html.admin-root[data-admin-page="operator"] .admin-access-gate__actions {
  margin-top: 32px;
  gap: 12px;
}

html.admin-root[data-admin-page="operator"] .admin-access-screen__actions .btn,
html.admin-root[data-admin-page="operator"] .admin-access-gate__actions .btn {
  flex: 1 1 160px;
  min-height: 48px !important;
  padding: 0 18px !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 0.6875rem !important;
}

/* ── Shell ── */

html.admin-root[data-admin-page="operator"] .admin-page {
  padding: 0;
  max-width: none;
}

html.admin-root[data-admin-page="operator"] .admin-page.container {
  padding-left: 0;
  padding-right: 0;
}

html.admin-root[data-admin-page="operator"] .admin-layout {
  grid-template-columns: var(--ed-sidebar) minmax(0, 1fr);
  gap: 0;
  min-height: calc(100dvh - var(--ed-topbar));
  align-items: stretch;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar {
  position: sticky;
  top: var(--ed-topbar);
  align-self: start;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: none;
  height: calc(100dvh - var(--ed-topbar));
  max-height: calc(100dvh - var(--ed-topbar));
  min-height: 0;
  overflow: hidden;
  padding: 28px 18px 14px 24px;
  border: 0;
  border-right: 1px solid var(--ed-line);
  background: var(--ed-canvas);
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-bottom: 8px;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-dock {
  margin-top: 0;
  padding-top: 8px;
  border-top: 1px solid var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-content {
  min-height: calc(100dvh - var(--ed-topbar)) !important;
  padding: 28px 24px 56px !important;
  border: 0 !important;
  background: var(--ed-paper) !important;
  box-shadow: none !important;
}

html.admin-root[data-admin-page="operator"] .admin-nav-block {
  padding: 0 0 22px;
}

html.admin-root[data-admin-page="operator"] .admin-nav-block + .admin-nav-block {
  margin-top: 6px;
  padding-top: 22px;
  border-top: 1px solid var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-side-title {
  margin: 0 8px 12px;
  padding: 0;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: var(--ed-track-label);
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-tabs {
  gap: 0;
}

html.admin-root[data-admin-page="operator"] .admin-tab,
html.admin-root[data-admin-page="operator"] .admin-tab.btn {
  padding: 7px 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  font-size: var(--ed-ui) !important;
  font-weight: 400 !important;
  letter-spacing: -0.012em;
  color: var(--ed-mute) !important;
}

html.admin-root[data-admin-page="operator"] .admin-tab.btn:hover:not(.active) {
  background: transparent !important;
  color: var(--ed-ink) !important;
}

html.admin-root[data-admin-page="operator"] .admin-tab.btn.active {
  background: transparent !important;
  color: var(--ed-ink) !important;
  font-weight: 600 !important;
  box-shadow: inset 1.5px 0 0 var(--ed-ink) !important;
  padding-left: 7px !important;
}

html.admin-root[data-admin-page="operator"] .admin-tab.admin-tab--sub {
  font-size: 0.75rem !important;
}

html.admin-root[data-admin-page="operator"] .admin-tab.admin-tab--sub.active {
  box-shadow: inset 1.5px 0 0 var(--ed-ink) !important;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-foot {
  margin-top: 8px;
  padding-top: 22px;
  border-top: 1px solid var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .space-launcher--rail {
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--ed-line);
  background: transparent;
  color: var(--ed-ink);
  box-shadow: none;
  animation: none;
  opacity: 1;
  transform: none;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .space-launcher--rail:hover {
  border-color: var(--ed-ink);
  background: transparent;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-version {
  margin-top: 0;
  padding: 6px 2px 0;
  border-top: 0;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-version__num {
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-version__credit {
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-collapse-rail {
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--ed-line);
  border-radius: 0;
  background: transparent;
  color: var(--ed-ink);
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-collapse-rail:hover {
  border-color: var(--ed-ink);
  background: transparent;
  transform: none;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-collapse-rail:focus-visible {
  outline: 1px solid var(--ed-ink);
  outline-offset: 3px;
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-collapse-rail__eyebrow {
  letter-spacing: 0.14em;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-sidebar .sidebar-collapse-rail__glyph {
  border-radius: 0;
  color: var(--ed-ink);
  background: var(--ed-wash);
  border-color: var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-layout.is-sidebar-collapsed {
  grid-template-columns: 0 minmax(0, 1fr);
}

html.admin-root[data-admin-page="operator"] .admin-layout.is-sidebar-collapsed .admin-sidebar {
  visibility: hidden;
  pointer-events: none;
  overflow: hidden;
  width: 0;
  min-width: 0;
  padding: 0;
  border: 0;
}

html.admin-root[data-admin-page="operator"] .sidebar-expand-chip {
  border-radius: 0;
  border-color: var(--ed-line);
  background: var(--ed-ink);
  color: #fff;
  box-shadow: none;
  backdrop-filter: none;
}

html.admin-root[data-admin-page="operator"] .sidebar-expand-chip:hover {
  border-color: #000;
}

html.admin-root[data-admin-page="operator"] .sidebar-expand-chip:focus-visible {
  outline: 1px solid var(--ed-ink);
  outline-offset: 3px;
}

html.admin-root[data-admin-page="operator"] .sidebar-expand-chip__glyph {
  border: 0;
  border-radius: 0;
  color: #fff;
  background: transparent;
}

/* ── Type in workspace ── */

html.admin-root[data-admin-page="operator"] .admin-masthead {
  margin: 0 0 36px;
  padding: 0 0 24px;
  border-bottom: 1px solid var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-masthead__kicker {
  margin-bottom: 10px;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: var(--ed-track-label);
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-masthead h2,
html.admin-root[data-admin-page="operator"] .admin-tab-panel > h2,
html.admin-root[data-admin-page="operator"] .admin-content > .admin-tab-panel:not(.hidden) > h2 {
  font-size: var(--ed-title);
  font-weight: 540;
  letter-spacing: var(--ed-track-title);
  line-height: 1.2;
  color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .admin-masthead .muted {
  margin-top: 10px;
  max-width: 38rem;
  font-size: var(--ed-body);
  font-weight: 400;
  line-height: 1.65;
  color: var(--ed-mute);
}

/* ── Controls ── */

html.admin-root[data-admin-page="operator"] .btn {
  border-radius: 0;
  font-weight: 550;
  letter-spacing: 0.01em;
  transition:
    border-color var(--ed-dur) var(--ed-ease),
    background-color var(--ed-dur) var(--ed-ease),
    color var(--ed-dur) var(--ed-ease);
}

html.admin-root[data-admin-page="operator"] .btn-primary {
  letter-spacing: 0.04em !important;
}

html.admin-root[data-admin-page="operator"] .btn-ghost {
  background: transparent !important;
  border-color: var(--ed-line-strong) !important;
  color: var(--ed-ink) !important;
}

html.admin-root[data-admin-page="operator"] .btn-ghost:hover:not(:disabled) {
  background: transparent !important;
  border-color: var(--ed-ink) !important;
}

html.admin-root[data-admin-page="operator"] .btn:focus-visible {
  outline: 1px solid var(--ed-ink);
  outline-offset: 3px;
}

html.admin-root[data-admin-page="operator"] input[type="text"],
html.admin-root[data-admin-page="operator"] input[type="search"],
html.admin-root[data-admin-page="operator"] input[type="email"],
html.admin-root[data-admin-page="operator"] input[type="password"],
html.admin-root[data-admin-page="operator"] input[type="number"],
html.admin-root[data-admin-page="operator"] select,
html.admin-root[data-admin-page="operator"] textarea {
  border-radius: 0 !important;
  min-height: var(--ed-control);
  padding: 8px 10px !important;
  font-weight: 400 !important;
}

html.admin-root[data-admin-page="operator"] input:focus,
html.admin-root[data-admin-page="operator"] select:focus,
html.admin-root[data-admin-page="operator"] textarea:focus {
  border-color: var(--ed-ink) !important;
  box-shadow: none !important;
}

html.admin-root[data-admin-page="operator"] .admin-card,
html.admin-root[data-admin-page="operator"] .admin-action-tile,
html.admin-root[data-admin-page="operator"] .panel {
  border-radius: 0 !important;
  background: var(--ed-canvas) !important;
  box-shadow: none !important;
}

html.admin-root[data-admin-page="operator"] .admin-empty {
  border-style: solid !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 36px 8px !important;
  text-align: left;
}

html.admin-root[data-admin-page="operator"] .pill {
  border-radius: 0;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent !important;
}

html.admin-root[data-admin-page="operator"] table {
  font-variant-numeric: tabular-nums;
}

html.admin-root[data-admin-page="operator"] thead th,
html.admin-root[data-admin-page="operator"] .admin-table thead th {
  font-size: var(--ed-micro) !important;
  font-weight: 550 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ed-faint) !important;
  background: transparent !important;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-table {
  width: max-content !important;
  min-width: 100%;
  table-layout: auto !important;
}

html.admin-root[data-admin-page="operator"] .admin-content,
html.admin-root[data-admin-page="operator"] .admin-tab-panel {
  overflow-x: auto;
}

html.admin-root[data-admin-page="operator"] .admin-content:has(#tab-products:not(.hidden)),
html.admin-root[data-admin-page="operator"] #tab-products {
  overflow: visible;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap {
  overflow-x: scroll;
  scrollbar-gutter: stable;
  scrollbar-width: auto;
  scrollbar-color: rgba(26, 27, 29, 0.38) var(--ed-wash);
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap,
html.admin-root[data-admin-page="operator"] .admin-tab-panel:not(#tab-products):not(#tab-dashboard) {
  cursor: grab;
}

html.admin-root[data-admin-page="operator"] #tab-dashboard,
html.admin-root[data-admin-page="operator"] #tab-dashboard .admin-dash,
html.admin-root[data-admin-page="operator"] #tab-dashboard .admin-dash-kpi,
html.admin-root[data-admin-page="operator"] #tab-dashboard .admin-dash-chart-card,
html.admin-root[data-admin-page="operator"] #tab-dashboard .admin-dash-rank-card {
  cursor: default;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap {
  border-radius: 0;
  border-color: var(--ed-line);
  background: var(--ed-canvas);
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll.is-panning,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap.is-panning,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll.is-panning,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll.is-panning,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap.is-panning,
html.admin-root[data-admin-page="operator"] .admin-tab-panel.is-panning {
  cursor: grabbing;
  user-select: none;
}

html.admin-root[data-admin-page="operator"] .admin-content::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .admin-tab-panel::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll::-webkit-scrollbar,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap::-webkit-scrollbar {
  height: 12px;
}

html.admin-root[data-admin-page="operator"] .admin-content::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .admin-tab-panel::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll::-webkit-scrollbar-track,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap::-webkit-scrollbar-track {
  background: var(--ed-wash);
}

html.admin-root[data-admin-page="operator"] .admin-content::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .admin-tab-panel::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .admin-order-erp-scroll::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .admin-member-table-wrap::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .admin-discount-scroll::-webkit-scrollbar-thumb,
html.admin-root[data-admin-page="operator"] .admin-col-spec-wrap::-webkit-scrollbar-thumb {
  background: rgba(26, 27, 29, 0.32);
  border: 2px solid var(--ed-wash);
}

html.admin-root[data-admin-page="operator"] .admin-tab-panel table {
  width: max-content;
  min-width: 100%;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-table thead th,
html.admin-root[data-admin-page="operator"] .admin-order-erp-table tbody td {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-scroll--cash-receipt {
  overflow-x: auto;
  max-width: 100%;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt {
  width: max-content !important;
  min-width: max-content !important;
  max-width: none !important;
  table-layout: auto !important;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt thead th,
html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt tbody td {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  overflow: visible !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt [class*="col--"] {
  width: auto !important;
  min-width: max-content !important;
  max-width: none !important;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt .admin-order-erp-col--id .admin-order-erp-mono,
html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-order-erp-table--cash-receipt .admin-cash-receipt-col--crid .admin-order-erp-mono {
  max-width: none !important;
  overflow: visible !important;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-cash-receipt-order-actions {
  display: inline-flex;
  width: auto;
  gap: 6px;
}

html.admin-root[data-admin-page="operator"] #tab-cash-receipt .admin-cash-receipt-order-actions .btn {
  width: auto;
  min-height: 28px !important;
  height: auto;
  padding: 0 8px !important;
  font-size: 0.75rem;
}

html.admin-root[data-admin-page="operator"] .admin-order-erp-table thead th {
  font-size: 0.6875rem !important;
  font-weight: 550 !important;
  color: var(--ed-faint) !important;
  background: var(--ed-canvas) !important;
  box-shadow: none;
}

html.admin-root[data-admin-page="operator"] .admin-order-controls {
  background: var(--ed-canvas) !important;
  border-color: var(--ed-line) !important;
  border-radius: 0;
}

/* ── Dashboard ── */

html.admin-root[data-admin-page="operator"] .occupancy-dash {
  --admin-surface: var(--ed-canvas);
  --admin-surface-muted: var(--ed-paper);
  --admin-border: var(--ed-line);
  --admin-border-strong: var(--ed-line-strong);
  --admin-ink: var(--ed-ink);
  --admin-text: var(--ed-ink);
  --admin-text-secondary: var(--ed-mute);
  --admin-muted: var(--ed-faint);
  --admin-accent: var(--ed-ink);
  --admin-accent-hover: #000;
  --admin-nav-active-bg: transparent;
  --admin-nav-active-ink: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-card,
html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-kpi {
  border-radius: 0 !important;
  background: var(--ed-canvas);
  padding: 20px 20px 18px;
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-kpis {
  gap: 1px;
  background: var(--ed-line);
  border: 1px solid var(--ed-line);
  margin-bottom: 28px;
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-kpi {
  border: 0;
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-kpi__lab {
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-kpi__val {
  margin-top: 10px;
  font-size: 1.5rem;
  font-weight: 520;
  letter-spacing: var(--ed-track-title);
  font-variant-numeric: tabular-nums;
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-seg {
  border-radius: 0;
  gap: 0;
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-seg .btn.is-on {
  background: transparent;
  color: var(--ed-ink);
  box-shadow: inset 0 -1.5px 0 var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-masthead h2,
html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-traffic-head h2 {
  font-size: var(--ed-title);
  font-weight: 540;
  letter-spacing: var(--ed-track-title);
}

html.admin-root[data-admin-page="operator"] .occupancy-dash .admin-masthead__kicker {
  letter-spacing: var(--ed-track-label);
  text-transform: uppercase;
}

/* ── Admin surfaces (inline radius · sage leftovers) ── */

html.admin-root[data-admin-page="operator"] .admin-sidebar-link {
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .admin-sidebar-link:hover,
html.admin-root[data-admin-page="operator"] .admin-sidebar-link.active {
  color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .admin-card,
html.admin-root[data-admin-page="operator"] .admin-card:hover,
html.admin-root[data-admin-page="operator"] .admin-product-item,
html.admin-root[data-admin-page="operator"] .admin-product-editor,
html.admin-root[data-admin-page="operator"] .admin-member-card,
html.admin-root[data-admin-page="operator"] .admin-empty,
html.admin-root[data-admin-page="operator"] .admin-dash-chart-card,
html.admin-root[data-admin-page="operator"] .admin-dash-rank-track {
  border-radius: 0 !important;
  box-shadow: none !important;
}

html.admin-root[data-admin-page="operator"] .admin-card:hover {
  border-color: var(--ed-line-strong);
}

html.admin-root[data-admin-page="operator"] .admin-order-grid input,
html.admin-root[data-admin-page="operator"] .admin-product-grid input,
html.admin-root[data-admin-page="operator"] .admin-product-grid textarea,
html.admin-root[data-admin-page="operator"] .admin-brand-preset-select {
  border-radius: 0 !important;
}

html.admin-root[data-admin-page="operator"] .pill,
html.admin-root[data-admin-page="operator"] .admin-member-revoked-pill {
  border-radius: 0 !important;
  background: var(--ed-wash) !important;
  color: var(--ed-mute) !important;
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html.admin-root[data-admin-page="operator"] .admin-product-item {
  background: var(--ed-canvas);
  border-color: var(--ed-line);
}

html.admin-root[data-admin-page="operator"] .admin-product-item:hover,
html.admin-root[data-admin-page="operator"] .admin-product-item.is-on {
  border-color: var(--ed-ink);
  background: var(--ed-canvas);
}

html.admin-root[data-admin-page="operator"] .admin-product-editor {
  background: var(--ed-paper);
  border-color: var(--ed-line);
}

html.admin-root[data-admin-page="operator"] input[type="checkbox"],
html.admin-root[data-admin-page="operator"] input[type="radio"] {
  accent-color: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .admin-dash-rank-fill {
  background: var(--ed-ink);
}

html.admin-root[data-admin-page="operator"] .admin-dash-rank-track {
  background: var(--ed-wash);
  height: 2px;
}

html.admin-root[data-admin-page="operator"] .admin-dash-chart-card {
  border: 1px solid var(--ed-line);
  background: var(--ed-canvas);
}

html.admin-root[data-admin-page="operator"] .admin-dash-chart-card__title {
  font-size: var(--ed-micro);
  font-weight: 550;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ed-faint);
}

html.admin-root[data-admin-page="operator"] .settings-brand-row,
html.admin-root[data-admin-page="operator"] .settings-company-row,
html.admin-root[data-admin-page="operator"] .settings-brand-table-scroll,
html.admin-root[data-admin-page="operator"] .settings-brand-logo-preview-wrap,
html.admin-root[data-admin-page="operator"] .settings-brand-band-banner-preview-wrap {
  border-radius: 0;
}

html.admin-root[data-admin-page="operator"] .mall-notice-card,
html.admin-root[data-admin-page="operator"] .mall-notice-editor,
html.admin-root[data-admin-page="operator"] .hero-banner-card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* 상품 등록 — 검색·상품 편집 바 · 왼쪽 목록은 스크롤해도 톱바 아래에 남음 */
html.admin-root[data-admin-page="operator"] #tab-products {
  --admin-product-chrome-h: 7.5rem;
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-chrome {
  position: sticky;
  top: var(--ed-topbar);
  z-index: 8;
  margin: 0 -8px 10px;
  padding: 8px 8px 10px;
  background: var(--ed-paper);
  border-bottom: 1px solid var(--ed-line);
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-chrome .admin-section-label {
  margin: 0 0 8px;
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-toolbar-hint {
  margin: 6px 0 0;
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-split {
  align-items: start;
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-list {
  position: sticky;
  top: calc(var(--ed-topbar) + var(--admin-product-chrome-h, 7.5rem));
  align-self: start;
  z-index: 7;
  max-height: calc(100dvh - var(--ed-topbar) - var(--admin-product-chrome-h, 7.5rem) - 24px);
  background: var(--ed-canvas) !important;
}

@media (max-width: 980px) {
  html.admin-root[data-admin-page="operator"] #tab-products .admin-product-chrome,
  html.admin-root[data-admin-page="operator"] #tab-products .admin-product-list {
    position: static;
  }

  html.admin-root[data-admin-page="operator"] #tab-products .admin-product-list {
    max-height: min(50vh, 480px);
  }
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-form {
  padding-bottom: 88px;
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-form__actions {
  position: fixed;
  left: 50%;
  right: auto;
  bottom: max(20px, env(safe-area-inset-bottom));
  z-index: 39;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  width: max-content;
  max-width: calc(100vw - 48px);
  margin: 0;
  padding: 4px;
  background: var(--ed-paper);
  border: 1px solid var(--ed-line);
  transform: translateX(-50%);
}

html.admin-root[data-admin-page="operator"] #tab-products .admin-product-form__actions .btn {
  min-height: 36px;
}
