/* Tenant admin shell: override legacy admin.css light-only surfaces. */
body.admin-page .admin-layout {
  background: transparent;
}

body.admin-page .admin-sidebar {
  background: var(--surface);
  border-right: 1px solid var(--border);
}

body.admin-page .admin-sidebar__header {
  border-bottom: 1px solid var(--border);
}

body.admin-page .admin-sidebar__footer {
  border-top: 1px solid var(--border);
}

body.admin-page .admin-sidebar__nav,
body.admin-page .admin-sidebar__footer {
  background: transparent;
}

body.admin-page .admin-sidebar.open {
  background: var(--surface);
}

body.admin-page .admin-hero {
  background: var(--surface);
}

body.admin-page .admin-hero::before {
  background: none;
}

body.admin-page .admin-hero__meta-card {
  background: linear-gradient(
    160deg,
    rgba(var(--surface-rgb, 255, 255, 255), 0.94),
    rgba(var(--surface-2-rgb, 241, 244, 250), 0.9)
  );
  border: 1px solid var(--border);
  box-shadow: var(--ui-shadow-card, 0 12px 30px rgba(0, 0, 0, 0.32));
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

body.admin-page .admin-hero__meta-card p,
body.admin-page .admin-hero__meta-card span {
  color: var(--muted);
}

body.admin-page .admin-hero__meta-card strong {
  color: var(--text-strong);
}

body.admin-page .ai-showcase {
  box-shadow: var(--ui-shadow-soft), inset 0 1px 0 rgba(var(--text-rgb), 0.06);
}

body.admin-page .ai-showcase__details {
  background: rgba(var(--surface-rgb), 0.6);
  border-color: var(--border);
}

body.admin-page .ai-showcase__details[open] {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page .ai-showcase__summary:hover {
  background: rgba(var(--surface-rgb), 0.5);
}

body.admin-page .ai-feature-card:hover {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page .ai-chat__send-btn {
  color: var(--btn-primary-text, var(--text-strong));
}

/* SECTION C: Base card/section surfaces (admin.css overrides). */
body.admin-page .admin-section__body {
  background: var(--surface);
  border-top: 1px solid var(--border);
  box-shadow: none;
}

body.admin-page .admin-section__body::before {
  background: none;
}

.admin-page .container-custom {
  background: var(--surface);
}

.admin-page .container-custom::before {
  background: none;
  opacity: 0;
}

html[data-theme="dark"] .admin-page .container-custom,
html[data-theme-effective="dark"] .admin-page .container-custom {
  box-shadow: none;
  border: 1px solid var(--border);
}

html[data-theme="dark"] .admin-page .container-custom:hover,
html[data-theme-effective="dark"] .admin-page .container-custom:hover {
  box-shadow: none;
}

body.admin-page .category-section {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page .category-section.container-custom::before {
  background: none;
  opacity: 0;
}

/* Restaurant profile “enhancements”: tokenise light-only cards (form controls handled in SECTION B). */
body.admin-page #section-restaurant-profile .admin-section__body {
  background: linear-gradient(160deg, var(--surface) 0%, var(--surface-2) 100%);
  border: 1px solid var(--border);
}

body.admin-page #section-restaurant-profile .admin-section__body > div:first-child {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page #section-restaurant-profile .admin-section__body > div:first-child h2,
body.admin-page #section-restaurant-profile #profilePreviewCard strong,
body.admin-page #section-restaurant-profile #profileLiveContent label,
body.admin-page .profile-status-chip__label,
body.admin-page #section-restaurant-profile #profileSaveStatus {
  color: var(--text);
}

body.admin-page #section-restaurant-profile .admin-section__body > div:first-child p,
body.admin-page #section-restaurant-profile #profilePreviewMeta,
body.admin-page .profile-status-chip__sub,
body.admin-page #section-restaurant-profile #profileUpdatedRelative {
  color: var(--muted);
}

body.admin-page .profile-surface,
body.admin-page #section-restaurant-profile #restaurantProfileSurface,
body.admin-page .profile-preview-card,
body.admin-page #section-restaurant-profile #profilePreviewCard,
body.admin-page .profile-live-content > *,
body.admin-page #section-restaurant-profile #profileLiveContent > * {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page .profile-status-chip,
body.admin-page #section-restaurant-profile #profileStatusChip {
  background: rgba(var(--surface-2-rgb), 0.92);
  border-color: var(--border);
}

body.admin-page .profile-status-chip::before,
body.admin-page #section-restaurant-profile #profileStatusChip::before {
  background: var(--success);
  box-shadow: 0 0 0 6px rgba(var(--success-rgb), 0.16);
}

body.admin-page .profile-status-chip[data-state="loading"],
body.admin-page #section-restaurant-profile #profileStatusChip[data-state="loading"] {
  border-color: rgba(var(--warning-rgb), 0.55);
}

body.admin-page .profile-status-chip[data-state="loading"]::before,
body.admin-page #section-restaurant-profile #profileStatusChip[data-state="loading"]::before {
  background: var(--warning);
  box-shadow: 0 0 0 6px rgba(var(--warning-rgb), 0.16);
}

body.admin-page .profile-status-chip[data-state="error"]::before,
body.admin-page #section-restaurant-profile #profileStatusChip[data-state="error"]::before {
  background: var(--danger);
  box-shadow: 0 0 0 6px rgba(var(--danger-rgb), 0.22);
}

body.admin-page #section-restaurant-profile #profileStatusChip button {
  border-color: var(--border);
  background: var(--surface);
  color: var(--primary);
}

body.admin-page #section-restaurant-profile #profileStatusChip button:hover,
body.admin-page #section-restaurant-profile #profileStatusChip button:focus-visible {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

#view-settings .subscription-countdown {
  background: var(--surface);
  border-color: var(--border);
  box-shadow: var(--shadow);
}

#view-settings .subscription-countdown__label,
#view-settings .subscription-countdown__detail {
  color: var(--muted);
}

#view-settings .subscription-countdown__value {
  color: var(--text-strong);
}

/* Settings view: align panel + accordion cards to dark surfaces. */
#view-settings .settings-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
}

#view-settings .settings-panel__eyebrow {
  color: var(--muted);
}

#view-settings .settings-panel__header h2 {
  color: var(--text-strong);
}

#view-settings .settings-panel__lead {
  color: var(--muted);
}

#view-settings .admin-section {
  background: var(--ui-surface);
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow-card);
}

#view-settings .admin-section__summary {
  background: transparent;
  border-bottom: 0;
}

#view-settings .admin-section[open] .admin-section__summary,
#view-settings .admin-section__summary--static,
#view-settings .admin-section--static .admin-section__summary {
  background: rgba(67, 56, 202, 0.03);
}

#view-settings .admin-section__body {
  background: var(--ui-surface);
  border-top: 1px solid var(--ui-border);
}

#view-settings .admin-section__body .card {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  box-shadow: none;
}

#view-settings .admin-section__body .card-body,
#view-settings .admin-section__body p,
#view-settings .admin-section__body .text-muted {
  color: var(--text);
}

#view-settings .admin-section__body .text-muted {
  color: var(--muted) !important;
}

/* Quick nav tiles: border-only, no fill/glow. */
.admin-page .admin-quick-nav {
  background: transparent;
  box-shadow: none;
  border: none;
}

.admin-page .admin-nav-btn {
  background: transparent;
  box-shadow: none;
  border: none;
  color: var(--muted);
}

.admin-page .admin-nav-btn--tile {
  border: none;
}

.admin-page .admin-nav-btn--tile .admin-nav-btn__icon {
  background: #1c1c1d;
}

.admin-page .admin-nav-btn__icon {
  background: #1c1c1d !important;
  border: none !important;
  color: var(--muted) !important;
}

/* Light mode: give quick-nav tiles a light surface instead of dark blocks. */
html[data-theme="light"] .admin-page .admin-nav-btn__icon,
html[data-theme-effective="light"] .admin-page .admin-nav-btn__icon {
  background: var(--surface-2) !important;
  border: 1px solid var(--border) !important;
  color: var(--text) !important;
  box-shadow: none !important;
}

html[data-theme="light"] .admin-page .admin-nav-btn__label,
html[data-theme-effective="light"] .admin-page .admin-nav-btn__label,
html[data-theme="light"] .admin-page .admin-nav-btn__desc,
html[data-theme-effective="light"] .admin-page .admin-nav-btn__desc {
  color: var(--text-strong);
}

html[data-theme="light"] .admin-page .admin-nav-btn:hover,
html[data-theme-effective="light"] .admin-page .admin-nav-btn:hover,
html[data-theme="light"] .admin-page .admin-nav-btn:focus-visible,
html[data-theme-effective="light"] .admin-page .admin-nav-btn:focus-visible {
  background: rgba(var(--surface-rgb), 0.85);
  border: 1px solid rgba(var(--text-rgb), 0.12);
}

/* Remove outline border from info popover trigger pill. */
.admin-page .info-popover-trigger {
  border: none;
  box-shadow: none;
  background: transparent;
}

.admin-page .admin-session-meta {
  background: rgba(var(--surface-rgb), 0.06);
  border: 1px solid var(--border);
}

html[data-theme="dark"] .admin-page .admin-session-meta,
html[data-theme-effective="dark"] .admin-page .admin-session-meta {
  background: rgba(var(--surface-rgb), 0.22);
  border: 1px solid rgba(var(--text-rgb), 0.22);
}

html[data-theme="dark"] .admin-page .admin-session-meta__chip strong,
html[data-theme-effective="dark"] .admin-page .admin-session-meta__chip strong {
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .admin-session-meta__chip span,
html[data-theme-effective="dark"] .admin-page .admin-session-meta__chip span {
  color: var(--muted);
}

html[data-theme="dark"] .admin-page .admin-session-meta__logout button,
html[data-theme-effective="dark"] .admin-page .admin-session-meta__logout button {
  background: var(--surface-2);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .admin-session-meta__logout button:hover,
html[data-theme-effective="dark"] .admin-page .admin-session-meta__logout button:hover,
html[data-theme="dark"] .admin-page .admin-session-meta__logout button:focus-visible,
html[data-theme-effective="dark"] .admin-page .admin-session-meta__logout button:focus-visible {
  background: rgba(var(--surface-rgb), 0.9);
  color: var(--text-strong);
  border-color: rgba(var(--text-rgb), 0.28);
}

/* Drafts / saved sessions: align with dark surfaces. */
html[data-theme="dark"] .admin-page #ocr-drafts-container,
html[data-theme-effective="dark"] .admin-page #ocr-drafts-container {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .drafts-shell,
html[data-theme-effective="dark"] .admin-page .drafts-shell {
  background: var(--surface);
}

html[data-theme="dark"] .admin-page .draft-card,
html[data-theme-effective="dark"] .admin-page .draft-card {
  background: var(--surface-2);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .draft-card__title,
html[data-theme-effective="dark"] .admin-page .draft-card__title {
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .draft-card__eyebrow,
html[data-theme-effective="dark"] .admin-page .draft-card__eyebrow,
html[data-theme="dark"] .admin-page .draft-card__meta,
html[data-theme-effective="dark"] .admin-page .draft-card__meta {
  color: var(--muted);
}

html[data-theme="dark"] .admin-page .draft-card .btn-outline-danger,
html[data-theme-effective="dark"] .admin-page .draft-card .btn-outline-danger {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text);
  opacity: 1;
}

html[data-theme="dark"] .admin-page .draft-card .btn-outline-danger:hover,
html[data-theme-effective="dark"] .admin-page .draft-card .btn-outline-danger:hover,
html[data-theme="dark"] .admin-page .draft-card .btn-outline-danger:focus-visible,
html[data-theme-effective="dark"] .admin-page .draft-card .btn-outline-danger:focus-visible {
  background: var(--surface-2);
  border-color: rgba(var(--text-rgb), 0.22);
  color: var(--text-strong);
}

/* Category list (taxonomy) dark mode: remove light gradients/glows. */
html[data-theme="dark"] .admin-page .category-section,
html[data-theme-effective="dark"] .admin-page .category-section {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .category-section.container-custom::before,
html[data-theme-effective="dark"] .admin-page .category-section.container-custom::before {
  background: none;
  opacity: 0;
}

html[data-theme="dark"] .admin-page .category-section.container-custom:hover,
html[data-theme-effective="dark"] .admin-page .category-section.container-custom:hover {
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .category-section #category-list .list-group-item,
html[data-theme-effective="dark"] .admin-page .category-section #category-list .list-group-item {
  background: var(--surface-2);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .category-section #category-list .category-list__item,
html[data-theme-effective="dark"] .admin-page .category-section #category-list .category-list__item {
  border-color: var(--border);
}

html[data-theme="dark"] .admin-page .category-section #category-list .category-list__actions .btn,
html[data-theme-effective="dark"] .admin-page .category-section #category-list .category-list__actions .btn {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .category-section #category-list .category-list__actions .btn:hover,
html[data-theme-effective="dark"] .admin-page .category-section #category-list .category-list__actions .btn:hover,
html[data-theme="dark"] .admin-page .category-section #category-list .category-list__actions .btn:focus-visible,
html[data-theme-effective="dark"] .admin-page .category-section #category-list .category-list__actions .btn:focus-visible {
  background: var(--surface-2);
  border-color: rgba(var(--text-rgb), 0.22);
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .category-card,
html[data-theme-effective="dark"] .admin-page .category-card {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .category-card__item,
html[data-theme-effective="dark"] .admin-page .category-card__item {
  background: var(--surface-2);
  border: 1px solid var(--border);
  box-shadow: none;
}

/* Deleted items / archive panels: dark, flat surfaces and buttons. */
html[data-theme="dark"] .admin-page .deleted-items-panel__content,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__content {
  background: var(--surface);
}

html[data-theme="dark"] .admin-page .deleted-items-panel,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel {
  background: transparent;
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-items-panel__body,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__body {
  background: transparent;
}

html[data-theme="dark"] .admin-page .deleted-items-stat,
html[data-theme-effective="dark"] .admin-page .deleted-items-stat {
  background: var(--surface-2);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-items-stat strong,
html[data-theme-effective="dark"] .admin-page .deleted-items-stat strong {
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .deleted-items-stat__label,
html[data-theme-effective="dark"] .admin-page .deleted-items-stat__label,
html[data-theme="dark"] .admin-page .deleted-items-stat__hint,
html[data-theme-effective="dark"] .admin-page .deleted-items-stat__hint {
  color: var(--muted);
}

html[data-theme="dark"] .admin-page .deleted-items-refresh,
html[data-theme-effective="dark"] .admin-page .deleted-items-refresh {
  background: var(--primary);
  color: var(--primary-contrast, #0b1220);
  box-shadow: none;
  border: 1px solid rgba(var(--primary-rgb), 0.65);
}

html[data-theme="dark"] .admin-page .deleted-items-refresh:hover:not([disabled]),
html[data-theme-effective="dark"] .admin-page .deleted-items-refresh:hover:not([disabled]),
html[data-theme="dark"] .admin-page .deleted-items-refresh:focus-visible,
html[data-theme-effective="dark"] .admin-page .deleted-items-refresh:focus-visible {
  background: var(--accent-strong);
  color: var(--primary-contrast, #0b1220);
  box-shadow: none;
  border-color: rgba(var(--primary-rgb), 0.75);
}

html[data-theme="dark"] .admin-page .deleted-items-secondary,
html[data-theme-effective="dark"] .admin-page .deleted-items-secondary {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-items-secondary:hover,
html[data-theme-effective="dark"] .admin-page .deleted-items-secondary:hover,
html[data-theme="dark"] .admin-page .deleted-items-secondary:focus-visible,
html[data-theme-effective="dark"] .admin-page .deleted-items-secondary:focus-visible {
  background: rgba(var(--surface-rgb), 0.9);
  color: var(--text-strong);
  border-color: rgba(var(--text-rgb), 0.22);
  box-shadow: none;
}

/* Archived cards block: dark surfaces and subdued stats/buttons. */
html[data-theme="dark"] .admin-page .deleted-items-panel__header,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__header,
html[data-theme="dark"] .admin-page .deleted-items-panel__body,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__body {
  background: transparent;
}

html[data-theme="dark"] .admin-page .deleted-items-panel__controls button,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__controls button,
html[data-theme="dark"] .admin-page .deleted-items-panel__bulk button,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__bulk button {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-items-panel__controls button:hover,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__controls button:hover,
html[data-theme="dark"] .admin-page .deleted-items-panel__controls button:focus-visible,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__controls button:focus-visible,
html[data-theme="dark"] .admin-page .deleted-items-panel__bulk button:hover,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__bulk button:hover,
html[data-theme="dark"] .admin-page .deleted-items-panel__bulk button:focus-visible,
html[data-theme-effective="dark"] .admin-page .deleted-items-panel__bulk button:focus-visible {
  background: rgba(var(--surface-rgb), 0.9);
  border-color: rgba(var(--text-rgb), 0.22);
  color: var(--text-strong);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-items-grid,
html[data-theme-effective="dark"] .admin-page .deleted-items-grid {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--ui-radius-lg);
  padding: 0;
}

html[data-theme="dark"] .admin-page .deleted-items-grid .deleted-items__title,
html[data-theme-effective="dark"] .admin-page .deleted-items-grid .deleted-items__title,
html[data-theme="dark"] .admin-page .deleted-items-grid .deleted-items__number,
html[data-theme-effective="dark"] .admin-page .deleted-items-grid .deleted-items__number {
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .deleted-items-grid .deleted-items__ingredients,
html[data-theme-effective="dark"] .admin-page .deleted-items-grid .deleted-items__ingredients,
html[data-theme="dark"] .admin-page .deleted-items-grid .deleted-items__ingredients--muted,
html[data-theme-effective="dark"] .admin-page .deleted-items-grid .deleted-items__ingredients--muted {
  color: var(--muted);
}

/* Trash/Archive item cards */
html[data-theme="dark"] .admin-page .deleted-item-card,
html[data-theme-effective="dark"] .admin-page .deleted-item-card {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .deleted-item-card__label,
html[data-theme-effective="dark"] .admin-page .deleted-item-card__label {
  color: var(--muted);
}

html[data-theme="dark"] .admin-page .deleted-items__number,
html[data-theme-effective="dark"] .admin-page .deleted-items__number,
html[data-theme="dark"] .admin-page .deleted-items__title,
html[data-theme-effective="dark"] .admin-page .deleted-items__title {
  color: var(--text-strong);
}

html[data-theme="dark"] .admin-page .deleted-items__ingredients,
html[data-theme-effective="dark"] .admin-page .deleted-items__ingredients,
html[data-theme="dark"] .admin-page .deleted-items__ingredients--muted,
html[data-theme-effective="dark"] .admin-page .deleted-items__ingredients--muted {
  color: var(--muted);
}

html[data-theme="dark"] .admin-page .deleted-size-chip,
html[data-theme-effective="dark"] .admin-page .deleted-size-chip {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
}

html[data-theme="dark"] .admin-page .deleted-item-thumb,
html[data-theme-effective="dark"] .admin-page .deleted-item-thumb {
  background: var(--surface-2);
  border: 1px solid var(--border);
}

/* Info popover: dark-friendly, no page dimming, raised z-index. */
.admin-page .info-popover {
  background: var(--surface-2);
  border: 1px solid var(--border);
  box-shadow: 0 14px 40px rgba(var(--text-rgb, 15, 23, 42), 0.28);
  z-index: 10000;
}

/* Specific: menu importer info popover stays above form but below globals. */
.admin-page #menuImporterInfo {
  z-index: 1000;
}

.admin-page .info-popover::before {
  background: var(--surface-2);
  border-left: 1px solid var(--border);
  border-top: 1px solid var(--border);
}

.admin-page .info-popover__header {
  border-color: var(--border);
}

.admin-page .info-popover__header span,
.admin-page .info-popover__list li {
  color: var(--text);
}

.admin-page .info-popover__list li::before {
  background: var(--primary);
  opacity: 0.8;
}

/* Prevent clipping behind the new item section container. */
.admin-page #section-new-item .container-custom {
  overflow: visible;
}

/* Menu importer status bar: dark-mode surface and border */
html[data-theme="dark"] .admin-page .menu-importer__status-bar,
html[data-theme-effective="dark"] .admin-page .menu-importer__status-bar {
  background: var(--surface-2);
  border: 1px dashed var(--border);
}

html[data-theme="dark"] .admin-page .menu-importer__loader-dot,
html[data-theme-effective="dark"] .admin-page .menu-importer__loader-dot {
  background: var(--primary);
}

.admin-page .info-popover__close {
  color: var(--muted);
}

.admin-page .info-popover__close:hover {
  background: rgba(var(--text-rgb), 0.06);
  color: var(--text-strong);
}

.admin-page .admin-nav-btn:hover,
.admin-page .admin-nav-btn:focus-visible {
  background: rgba(var(--text-rgb), 0.06);
  box-shadow: none;
  border: none;
  transform: none;
  color: var(--text-strong);
}

.admin-page .admin-nav-btn:hover .admin-nav-btn__icon,
.admin-page .admin-nav-btn:focus-visible .admin-nav-btn__icon,
.admin-page .admin-nav-btn:hover .admin-nav-btn__label,
.admin-page .admin-nav-btn:focus-visible .admin-nav-btn__label {
  color: var(--text-strong);
}

.admin-page .admin-nav-btn__label {
  color: var(--muted);
}

.admin-page .admin-nav-btn__desc {
  color: var(--muted);
}

.admin-page .admin-nav-btn--accent,
.admin-page .admin-nav-btn--active {
  background: transparent;
  border: none;
  box-shadow: none;
  color: var(--muted);
}

.admin-page .admin-nav-btn--accent .admin-nav-btn__icon,
.admin-page .admin-nav-btn--active .admin-nav-btn__icon {
  background: transparent;
  color: var(--muted);
}

.admin-page .admin-nav-btn--accent .admin-nav-btn__desc,
.admin-page .admin-nav-btn--active .admin-nav-btn__desc {
  color: var(--muted);
}

/* SECTION B: Restaurant profile form controls (admin.css overrides). */
body.admin-page #section-restaurant-profile #profileLiveContent input[type="text"],
body.admin-page #section-restaurant-profile #profileLiveContent input[type="email"],
body.admin-page #section-restaurant-profile #profileLiveContent input[type="url"],
body.admin-page #section-restaurant-profile #profileLiveContent select,
body.admin-page #section-restaurant-profile #profileLiveContent textarea {
  border-color: var(--border);
  background: var(--surface-2);
  color: var(--text);
  caret-color: var(--text);
}

body.admin-page #section-restaurant-profile #profileLiveContent input[type="text"]::placeholder,
body.admin-page #section-restaurant-profile #profileLiveContent input[type="email"]::placeholder,
body.admin-page #section-restaurant-profile #profileLiveContent input[type="url"]::placeholder,
body.admin-page #section-restaurant-profile #profileLiveContent textarea::placeholder {
  color: var(--muted);
  opacity: 0.8;
}

body.admin-page #section-restaurant-profile #profileLiveContent input:not([type="checkbox"]):focus,
body.admin-page #section-restaurant-profile #profileLiveContent select:focus,
body.admin-page #section-restaurant-profile #profileLiveContent textarea:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-restaurant-profile #profileLiveContent input:disabled,
body.admin-page #section-restaurant-profile #profileLiveContent select:disabled,
body.admin-page #section-restaurant-profile #profileLiveContent textarea:disabled {
  background: rgba(var(--text-rgb), 0.06);
  border-color: rgba(var(--text-rgb), 0.18);
  color: var(--muted);
}

body.admin-page #section-restaurant-profile #profileLiveContent input:-webkit-autofill,
body.admin-page #section-restaurant-profile #profileLiveContent textarea:-webkit-autofill {
  -webkit-text-fill-color: var(--text);
  box-shadow: 0 0 0 1000px var(--surface-2) inset;
  caret-color: var(--text);
  border-color: rgba(var(--primary-rgb), 0.35);
}

body.admin-page #section-restaurant-profile #profileLiveContent input[type="checkbox"] {
  accent-color: var(--primary);
}

body.admin-page #section-restaurant-profile #profileLiveContent button {
  border-color: var(--border);
  background: var(--surface);
  color: var(--text);
}

body.admin-page #section-restaurant-profile #profileLiveContent button:hover,
body.admin-page #section-restaurant-profile #profileLiveContent button:focus-visible {
  border-color: rgba(var(--primary-rgb), 0.55);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-restaurant-profile #profileLiveContent button:disabled {
  background: rgba(var(--text-rgb), 0.06);
  border-color: rgba(var(--text-rgb), 0.18);
  color: var(--muted);
}

body.admin-page #section-restaurant-profile #profileLiveContent p,
body.admin-page #section-restaurant-profile #logoStudio > p,
body.admin-page #section-restaurant-profile #profile-logo-status,
body.admin-page #section-restaurant-profile #showcaseGalleryStatus,
body.admin-page #section-restaurant-profile #showcaseEmptyState {
  color: var(--muted);
}

body.admin-page #section-restaurant-profile #profileLiveContent h3,
body.admin-page #section-restaurant-profile #profileLiveContent h4,
body.admin-page #section-restaurant-profile #showcaseHero > div > div {
  color: var(--text);
}

body.admin-page #section-restaurant-profile #showcaseGallery {
  background: rgba(var(--surface-2-rgb), 0.7);
  border-color: rgba(var(--text-rgb), 0.22);
}

body.admin-page #section-restaurant-profile #showcaseHero {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: rgba(var(--text-rgb), 0.22);
}

body.admin-page #section-restaurant-profile #showcaseHero img {
  border-color: rgba(var(--text-rgb), 0.22);
}

body.admin-page #section-restaurant-profile #showcaseGalleryList article {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.92);
}

body.admin-page #section-restaurant-profile #showcaseGalleryList article > div:first-child img {
  border-color: rgba(var(--text-rgb), 0.22);
}

body.admin-page #section-restaurant-profile #showcaseGalleryList article > div:first-child > div {
  color: var(--text);
}

body.admin-page #section-restaurant-profile #showcaseGalleryList article.is-drag-over,
body.admin-page #section-restaurant-profile #showcaseHero.is-drag-over {
  outline-color: rgba(var(--primary-rgb), 0.8);
}

body.admin-page #section-restaurant-profile #showcaseUploadInput {
  border-color: var(--border);
  background: var(--surface);
  color: var(--text);
  box-shadow: none;
}

body.admin-page #section-restaurant-profile #showcaseUploadInput::file-selector-button {
  color: var(--primary);
}

body.admin-page #section-restaurant-profile #showcaseUploadInput:hover,
body.admin-page #section-restaurant-profile #showcaseUploadInput:focus-visible {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-restaurant-profile #logoDropZone,
body.admin-page #section-restaurant-profile .logo-dropzone {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-2-rgb), 0.72);
  color: var(--muted);
}

body.admin-page #section-restaurant-profile #logoDropZone:focus-visible,
body.admin-page #section-restaurant-profile .logo-dropzone:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

body.admin-page #section-restaurant-profile #logoDropZone:hover,
body.admin-page #section-restaurant-profile .logo-dropzone:hover {
  border-color: rgba(var(--primary-rgb), 0.7);
  background: rgba(var(--surface-2-rgb), 0.9);
  color: var(--text);
}

body.admin-page #section-restaurant-profile #logoDropZone.is-dragging,
body.admin-page #section-restaurant-profile .logo-dropzone.is-dragging {
  border-color: rgba(var(--primary-rgb), 0.8);
  background: rgba(var(--primary-rgb), 0.12);
}

body.admin-page #section-restaurant-profile #profileLogoPreview {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: rgba(var(--text-rgb), 0.22);
  box-shadow: none;
}

body.admin-page #section-restaurant-profile #savedLogoGalleryList > div {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.92);
}

body.admin-page #section-restaurant-profile #savedLogoGalleryList img {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-2-rgb), 0.82);
}

body.admin-page #section-restaurant-profile #profileSkeleton p {
  background: rgba(var(--surface-2-rgb), 0.7);
  color: var(--muted);
}

body.admin-page #section-restaurant-profile #profileSkeleton .profile-skeleton__line {
  background: linear-gradient(
    90deg,
    rgba(var(--surface-2-rgb), 0.72) 0%,
    rgba(var(--surface-rgb), 0.92) 50%,
    rgba(var(--surface-2-rgb), 0.72) 100%
  );
}

/* SECTION B: Bootstrap modal form controls (admin.css overrides). */
body.admin-page:not(.admin-orders-page) .modal-body .form-control,
body.admin-page:not(.admin-orders-page) .modal-body .form-select {
  border-color: var(--border);
  background: var(--surface-2);
  color: var(--text);
  caret-color: var(--text);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control::placeholder {
  color: var(--muted);
  opacity: 0.8;
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control:focus,
body.admin-page:not(.admin-orders-page) .modal-body .form-select:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control:disabled,
body.admin-page:not(.admin-orders-page) .modal-body .form-select:disabled {
  background: rgba(var(--text-rgb), 0.06);
  border-color: rgba(var(--text-rgb), 0.18);
  color: var(--muted);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control.is-invalid,
body.admin-page:not(.admin-orders-page) .modal-body .form-select.is-invalid {
  border-color: rgba(var(--danger-rgb), 0.7);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control.is-invalid:focus,
body.admin-page:not(.admin-orders-page) .modal-body .form-select.is-invalid:focus {
  box-shadow: 0 0 0 3px rgba(var(--danger-rgb), 0.22);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control.is-valid,
body.admin-page:not(.admin-orders-page) .modal-body .form-select.is-valid {
  border-color: rgba(var(--success-rgb), 0.65);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-control.is-valid:focus,
body.admin-page:not(.admin-orders-page) .modal-body .form-select.is-valid:focus {
  box-shadow: 0 0 0 3px rgba(var(--success-rgb), 0.22);
}

body.admin-page:not(.admin-orders-page) .modal-body .form-text {
  color: var(--muted);
}

body.admin-page:not(.admin-orders-page) .modal-body input:-webkit-autofill,
body.admin-page:not(.admin-orders-page) .modal-body textarea:-webkit-autofill {
  -webkit-text-fill-color: var(--text);
  box-shadow: 0 0 0 1000px var(--surface-2) inset;
  caret-color: var(--text);
  border-color: rgba(var(--primary-rgb), 0.35);
}

/* OCR drafts list: tokenise remaining light-only timeline surfaces. */
body.admin-page .drafts-shell {
  background: var(--surface);
}

body.admin-page .drafts-toolbar {
  background: rgba(var(--surface-2-rgb), 0.82);
}

body.admin-page .drafts-toolbar__info p {
  color: var(--muted);
}

body.admin-page .draft-card {
  background: linear-gradient(
    145deg,
    rgba(var(--surface-rgb), 0.98),
    rgba(var(--surface-2-rgb), 0.92)
  );
}

body.admin-page .drafts-loading-overlay {
  background: rgba(var(--surface-rgb), 0.92);
}

body.admin-page .drafts-loading-overlay__inner {
  background: var(--surface);
}

/* SECTION E: Voice assistant + OCR modals (token overrides). */
body.admin-page .ai-assistant__clarification {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: var(--border);
  box-shadow: inset 0 1px 0 rgba(var(--text-rgb), 0.06);
}

body.admin-page .ai-assistant__clarification-field {
  background: rgba(var(--surface-2-rgb), 0.78);
  border-color: var(--border);
}

body.admin-page .ai-assistant__clarification-value {
  color: var(--primary);
}

body.admin-page .ai-assistant__plan-step {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: var(--border);
}

body.admin-page .ai-assistant__plan-step[data-status="done"] {
  border-color: rgba(var(--success-rgb), 0.6);
}

body.admin-page .ai-assistant__plan-step[data-status="pending"],
body.admin-page .ai-assistant__plan-step[data-status="blocked"] {
  border-color: rgba(var(--warning-rgb), 0.6);
}

body.admin-page .ai-assistant__plan-step[data-status="failed"] {
  border-color: rgba(var(--danger-rgb), 0.6);
}

body.admin-page .ai-assistant__plan-detail {
  color: var(--muted);
}

body.admin-page .ai-assistant__modal-status[data-state="processing"] {
  background: rgba(var(--warning-rgb), 0.12);
  border-color: rgba(var(--warning-rgb), 0.35);
  color: var(--text);
}

body.admin-page .ai-assistant__modal-status[data-state="processing"]::before {
  border-color: rgba(var(--warning-rgb), 0.85);
  border-top-color: transparent;
}

body.admin-page .ai-assistant__modal-status[data-state="error"] {
  background: rgba(var(--danger-rgb), 0.12);
  border-color: rgba(var(--danger-rgb), 0.35);
  color: var(--text);
}

body.admin-page .ai-assistant__modal-status[data-state="error"]::before {
  border-color: rgba(var(--danger-rgb), 0.85);
  border-top-color: transparent;
}

body.admin-page .ocr-import-modal .modal-header {
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.08), rgba(var(--surface-rgb), 0.96));
  border-color: var(--border);
}

body.admin-page .ocr-import-modal .modal-title {
  color: var(--text);
}

body.admin-page .ocr-import-modal__hint {
  color: var(--muted);
}

body.admin-page .ocr-import-modal .modal-body {
  background: rgba(var(--surface-2-rgb), 0.7);
}

body.admin-page .ocr-import-modal .modal-footer {
  background: rgba(var(--surface-2-rgb), 0.82);
  border-color: var(--border);
}

body.admin-page .draft-card--empty {
  background: rgba(var(--surface-2-rgb), 0.7);
  border-color: var(--border);
}

body.admin-page .ocr-category-card {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page .ocr-import-modal .category-card {
  background: linear-gradient(
    180deg,
    rgba(var(--surface-rgb), 0.98),
    rgba(var(--surface-2-rgb), 0.92)
  );
  border-color: var(--border);
  box-shadow: none;
}

body.admin-page .ocr-import-modal .category-card__chevron {
  background: rgba(var(--primary-rgb), 0.12);
}

body.admin-page .ocr-import-modal .category-card__item {
  background: rgba(var(--surface-rgb), 0.96);
  border-color: var(--border);
  box-shadow: none;
}

body.admin-page .ocr-import-modal .category-card__thumb {
  background: rgba(var(--surface-rgb), 0.96);
  border-color: var(--border);
}

body.admin-page .ocr-item {
  background: rgba(var(--surface-rgb), 0.9);
  border-color: rgba(var(--text-rgb), 0.2);
}

body.admin-page .ocr-meta,
body.admin-page .ocr-import-empty,
body.admin-page .ocr-import-meta-banner__meta {
  color: var(--muted);
}

body.admin-page .ocr-import-meta {
  color: var(--warning);
}

body.admin-page .ocr-badge {
  background: rgba(var(--primary-rgb), 0.12);
  color: var(--primary);
}

body.admin-page .ocr-badge--warn {
  background: rgba(var(--warning-rgb), 0.14);
  color: var(--warning);
}

body.admin-page .ocr-chip {
  background: rgba(var(--primary-rgb), 0.12);
  color: var(--primary);
}

body.admin-page .ocr-warnings-details {
  background: rgba(var(--warning-rgb), 0.12);
  border-color: rgba(var(--warning-rgb), 0.25);
}

body.admin-page .ocr-warnings-details summary {
  color: var(--text);
}

body.admin-page .ocr-preview-category h5,
body.admin-page .ocr-import-meta-banner__title {
  color: var(--text);
}

body.admin-page .ocr-import-meta-banner {
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.12), rgba(var(--surface-rgb), 0.92));
  border-color: var(--border);
}

body.admin-page .ocr-low-confidence input,
body.admin-page .ocr-low-confidence textarea {
  border-color: rgba(var(--warning-rgb), 0.72) !important;
  background: rgba(var(--warning-rgb), 0.12);
}

body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input {
  background-color: rgba(var(--surface-rgb), 0.95);
  border-color: rgba(var(--text-rgb), 0.22);
  box-shadow: inset 0 0 0 1px rgba(var(--text-rgb), 0.08);
}

body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input:checked,
body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input.is-checked {
  background-color: var(--primary);
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(var(--primary-rgb), 0.22);
}

body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input:indeterminate,
body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input.is-indeterminate {
  background-color: rgba(var(--primary-rgb), 0.16);
  border-color: rgba(var(--primary-rgb), 0.55);
  box-shadow: inset 0 0 0 2px rgba(var(--primary-rgb), 0.12);
}

body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input:indeterminate::after,
body.admin-page .ocr-import-bulk-toolbar .ocr-select-all-btn__check .form-check-input.is-indeterminate::after {
  background: rgba(var(--primary-rgb), 0.95);
}

/* Index (admin dashboard): tokenise remaining light-only tiles */
body.admin-page .payment-settings__option {
  border-color: var(--border);
  background: var(--surface);
}

body.admin-page .payment-settings__option:hover {
  border-color: rgba(var(--primary-rgb), 0.35);
}

body.admin-page .payment-settings__icon {
  background: linear-gradient(
    135deg,
    rgba(var(--surface-2-rgb), 0.9),
    rgba(var(--surface-rgb), 0.65)
  );
  border: 1px solid var(--border);
}

body.admin-page .payment-settings__title {
  color: var(--text);
}

body.admin-page .payment-settings__desc {
  color: var(--muted);
}

body.admin-page .payment-settings__status--error {
  color: var(--danger);
}

body.admin-page .payment-settings__status--dirty {
  color: var(--warning);
}

body.admin-page .discounts-dirty-flag {
  background: rgba(var(--warning-rgb), 0.16);
  color: var(--warning);
  box-shadow: inset 0 0 0 1px rgba(var(--warning-rgb), 0.35);
}

/* SECTION B: Discounts module forms + validation states (admin.css overrides). */
body.admin-page #section-discounts .discounts-quick-actions__hint,
body.admin-page #section-discounts .discounts-empty,
body.admin-page #section-discounts .discount-rule-card__hint,
body.admin-page #section-discounts .discounts-preview__label,
body.admin-page #section-discounts .discounts-preview__note,
body.admin-page #section-discounts .discount-item-picker__meta,
body.admin-page #section-discounts .discount-item-picker__empty {
  color: var(--muted);
}

body.admin-page #section-discounts .discounts-alert {
  background: rgba(var(--danger-rgb), 0.12);
  border-color: rgba(var(--danger-rgb), 0.35);
  color: var(--text);
}

body.admin-page #section-discounts .discount-rule-card {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: var(--border);
  box-shadow: none;
}

body.admin-page #section-discounts .discount-rule-card__eyebrow {
  color: var(--muted);
}

body.admin-page #section-discounts .discount-rule-card__toggle {
  color: var(--text);
}

body.admin-page #section-discounts .discount-rule-card__remove {
  border-color: var(--border);
  background: var(--surface);
  color: var(--danger);
}

body.admin-page #section-discounts .discount-rule-card__remove:hover,
body.admin-page #section-discounts .discount-rule-card__remove:focus-visible {
  border-color: rgba(var(--danger-rgb), 0.55);
  background: rgba(var(--danger-rgb), 0.1);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-discounts .discount-rule-card__chip {
  background: rgba(var(--primary-rgb), 0.14);
  color: var(--primary);
}

body.admin-page #section-discounts .discount-rule-card__chip--muted {
  background: rgba(var(--surface-2-rgb), 0.7);
  color: var(--muted);
  border-color: rgba(var(--text-rgb), 0.22);
}

body.admin-page #section-discounts .discount-item-picker {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.92);
}

body.admin-page #section-discounts .discount-item-picker__search {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-2-rgb), 0.7);
  color: var(--text);
}

body.admin-page #section-discounts .discount-item-picker__search i {
  color: var(--muted);
}

body.admin-page #section-discounts .discount-item-picker__search input {
  color: var(--text);
}

body.admin-page #section-discounts .discount-item-picker__search:focus-within {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-discounts .discount-item-picker__search input:focus {
  outline: none;
  box-shadow: none;
}

body.admin-page #section-discounts .discount-item-picker__actions .btn.btn-light {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.92);
  color: var(--text);
}

body.admin-page #section-discounts .discount-item-picker__actions .btn.btn-light:hover,
body.admin-page #section-discounts .discount-item-picker__actions .btn.btn-light:focus-visible {
  border-color: rgba(var(--primary-rgb), 0.35);
  background: rgba(var(--surface-2-rgb), 0.9);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-discounts .discount-item-picker__actions .btn.btn-light:disabled {
  background: rgba(var(--text-rgb), 0.06);
  border-color: rgba(var(--text-rgb), 0.18);
  color: var(--muted);
}

body.admin-page #section-discounts .discount-item-picker__list {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-2-rgb), 0.62);
}

body.admin-page #section-discounts .discount-item-picker__row {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: transparent;
}

body.admin-page #section-discounts .discount-item-picker__row:hover {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-2-rgb), 0.82);
}

body.admin-page #section-discounts .discount-item-picker__row:focus-within {
  border-color: rgba(var(--primary-rgb), 0.6);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-discounts .discount-item-picker__label {
  color: var(--text);
}

body.admin-page #section-discounts .discounts-preview {
  border-color: rgba(var(--text-rgb), 0.22);
  background: rgba(var(--surface-rgb), 0.92);
}

body.admin-page #section-discounts .discounts-preview__badge {
  background: rgba(var(--primary-rgb), 0.14);
  color: var(--primary);
}

body.admin-page #section-discounts .discounts-preview__badge--active {
  background: var(--primary);
  color: var(--primary-contrast);
}

body.admin-page #section-discounts .discounts-preview__meta {
  color: var(--text);
}

body.admin-page #section-discounts .discount-rule-card .form-control,
body.admin-page #section-discounts .discount-rule-card .form-select {
  border-color: var(--border);
  background: var(--surface-2);
  color: var(--text);
  caret-color: var(--text);
}

body.admin-page #section-discounts .discount-rule-card .form-control:focus,
body.admin-page #section-discounts .discount-rule-card .form-select:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-discounts .discount-rule-card .form-control:disabled,
body.admin-page #section-discounts .discount-rule-card .form-select:disabled {
  background: rgba(var(--text-rgb), 0.06);
  border-color: rgba(var(--text-rgb), 0.18);
  color: var(--muted);
}

body.admin-page #section-discounts .discount-rule-card .form-control.is-invalid,
body.admin-page #section-discounts .discount-rule-card .form-select.is-invalid {
  border-color: rgba(var(--danger-rgb), 0.7);
}

body.admin-page #section-discounts .discount-rule-card .form-control.is-invalid:focus,
body.admin-page #section-discounts .discount-rule-card .form-select.is-invalid:focus {
  box-shadow: 0 0 0 3px rgba(var(--danger-rgb), 0.22);
}

body.admin-page #section-discounts .discount-rule-card .form-control.is-valid,
body.admin-page #section-discounts .discount-rule-card .form-select.is-valid {
  border-color: rgba(var(--success-rgb), 0.65);
}

body.admin-page #section-discounts .discount-rule-card .form-control.is-valid:focus,
body.admin-page #section-discounts .discount-rule-card .form-select.is-valid:focus {
  box-shadow: 0 0 0 3px rgba(var(--success-rgb), 0.22);
}

body.admin-page #section-discounts .form-text {
  color: var(--muted);
}

body.admin-page #section-discounts input:-webkit-autofill,
body.admin-page #section-discounts textarea:-webkit-autofill {
  -webkit-text-fill-color: var(--text);
  box-shadow: 0 0 0 1000px var(--surface-2) inset;
  caret-color: var(--text);
  border-color: rgba(var(--primary-rgb), 0.35);
}

html[data-theme-effective="dark"] body.admin-page .payment-settings__icon img {
  filter: invert(1) saturate(0) brightness(1.15);
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) body.admin-page .payment-settings__icon img {
    filter: invert(1) saturate(0) brightness(1.15);
  }
}

/* SECTION A: Data requests module token mapping (admin.css overrides). */
body.admin-page #section-data-requests {
  --dsr-text: var(--text);
  --dsr-muted: var(--muted);
  --dsr-border: var(--border);
  --dsr-strong-border: var(--border);
  --dsr-bg: var(--surface);
  --dsr-bg-muted: var(--surface-2);
  --dsr-accent: var(--primary);
  --dsr-accent-2: var(--success);
  --dsr-danger: var(--danger);
  --dsr-shadow: var(--ui-shadow-card);
  --dsr-font: var(--font-sans);
}

body.admin-page #section-data-requests .dsr-status-card:not(.dsr-status-card--warn):not(.dsr-status-card--tip) {
  background: linear-gradient(
    145deg,
    rgba(var(--primary-rgb), 0.12),
    rgba(var(--surface-rgb), 0.96)
  );
}

body.admin-page #section-data-requests .dsr-card {
  background: linear-gradient(
    160deg,
    rgba(var(--surface-rgb), 0.98),
    rgba(var(--surface-2-rgb), 0.94)
  );
}

body.admin-page #section-data-requests .dsr-action-card {
  background: linear-gradient(
    150deg,
    rgba(var(--primary-rgb), 0.12),
    rgba(var(--surface-rgb), 0.94)
  );
  box-shadow: inset 0 1px 0 rgba(var(--text-rgb), 0.06);
}

body.admin-page #section-data-requests .dsr-table-shell {
  box-shadow: inset 0 1px 0 rgba(var(--text-rgb), 0.06), var(--dsr-shadow);
}

body.admin-page #section-data-requests .form-control:focus,
body.admin-page #section-data-requests .form-select:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-data-requests input:-webkit-autofill,
body.admin-page #section-data-requests input:-webkit-autofill:hover,
body.admin-page #section-data-requests input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--text);
  box-shadow: 0 0 0 1000px var(--surface-2) inset;
  caret-color: var(--text);
  border-color: rgba(var(--primary-rgb), 0.35);
}

/* SECTION D: Tables/Lists + prep cards (admin.css overrides). */
body.admin-page #section-pickup-times .container-custom table,
body.admin-page #section-delivery-times .container-custom table {
  background: var(--surface);
  border-color: var(--border);
}

body.admin-page #section-pickup-times .container-custom table thead th,
body.admin-page #section-delivery-times .container-custom table thead th {
  background: rgba(var(--primary-rgb), 0.12);
  color: var(--muted);
}

body.admin-page #section-pickup-times .container-custom table th,
body.admin-page #section-pickup-times .container-custom table td,
body.admin-page #section-delivery-times .container-custom table th,
body.admin-page #section-delivery-times .container-custom table td {
  border-color: var(--border);
  color: var(--text);
}

body.admin-page #section-pickup-times .container-custom table tbody tr:hover td,
body.admin-page #section-delivery-times .container-custom table tbody tr:hover td {
  background: rgba(var(--primary-rgb), 0.06);
}

body.admin-page #section-pickup-times .form-control,
body.admin-page #section-delivery-times .form-control,
body.admin-page #section-prep-times .form-control {
  border-color: var(--border);
  background: var(--surface-2);
  color: var(--text);
  caret-color: var(--text);
}

body.admin-page #section-pickup-times .form-control:focus,
body.admin-page #section-delivery-times .form-control:focus,
body.admin-page #section-prep-times .form-control:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-page #section-pickup-times .auto-save-hint,
body.admin-page #section-delivery-times .auto-save-hint {
  color: var(--muted);
}

body.admin-page #section-prep-times .prep-card {
  border-color: var(--border);
  background: var(--surface);
  color: var(--text);
}

@media (max-width: 640px) {
  body.admin-page #section-pickup-times .container-custom table tr,
  body.admin-page #section-delivery-times .container-custom table tr {
    border-color: var(--border);
    background: var(--surface);
  }

  body.admin-page #section-pickup-times .container-custom table td::before,
  body.admin-page #section-delivery-times .container-custom table td::before {
    color: var(--muted);
  }
}

/* Orders: align bespoke highlights with theme tokens (keep layout untouched) */
.admin-orders-page {
  --orders-card-border: var(--ui-border);
  --orders-card-shadow: var(--ui-shadow-card);
  --orders-pickup-color: var(--warning);
  --orders-delivery-color: var(--success);
  --orders-highlight: rgba(var(--danger-rgb), 0.16);
  --orders-surface: rgba(var(--surface-rgb), 0.92);
}

.admin-orders-page .admin-hero--orders::after {
  background:
    radial-gradient(circle at 22% 18%, rgba(var(--ui-primary-rgb), 0.18), transparent 55%),
    radial-gradient(circle at 80% 0%, rgba(var(--success-rgb), 0.14), transparent 45%);
}

.admin-orders-page .orders-alert-panel {
  background: linear-gradient(
    135deg,
    rgba(var(--warning-rgb), 0.12),
    rgba(var(--surface-rgb), 0.96)
  );
}

.admin-orders-page .orders-nav {
  border-color: var(--ui-border);
  background:
    radial-gradient(circle at 12% 12%, rgba(var(--ui-primary-rgb), 0.08), transparent 32%),
    radial-gradient(circle at 82% 4%, rgba(var(--success-rgb), 0.08), transparent 34%),
    rgba(var(--surface-rgb), 0.92);
  box-shadow: var(--ui-shadow-card);
}

.admin-orders-page .orders-nav-btn {
  border-color: var(--ui-border);
  background: linear-gradient(180deg, var(--ui-surface), var(--ui-surface-muted));
}

.admin-orders-page .orders-lane--delivery {
  border-color: rgba(var(--success-rgb), 0.35);
  background: linear-gradient(145deg, rgba(var(--success-rgb), 0.12), var(--orders-surface));
}

.admin-orders-page .orders-lane--pickup {
  border-color: rgba(var(--warning-rgb), 0.35);
  background: linear-gradient(145deg, rgba(var(--warning-rgb), 0.14), var(--orders-surface));
}

.admin-orders-page .orders-lane__empty {
  background: rgba(var(--surface-rgb), 0.55);
}

.admin-orders-page .order-card {
  background: linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), var(--orders-surface));
}

.admin-orders-page .order-card__pill--payment {
  background: rgba(var(--surface-2-rgb), 0.72);
}

.admin-orders-page .order-card__pill--cash,
.admin-orders-page .order-card__pill--discount {
  background: rgba(var(--success-rgb), 0.14);
  color: var(--success);
  border-color: rgba(var(--success-rgb), 0.35);
}

.admin-orders-page .order-card__pill--card {
  background: rgba(var(--primary-rgb), 0.14);
  color: var(--primary);
  border-color: rgba(var(--primary-rgb), 0.35);
}

.admin-orders-page .order-card--cancelled::before {
  background: rgba(var(--surface-rgb), 0.9);
  border-color: rgba(var(--danger-rgb), 0.8);
  color: rgba(var(--danger-rgb), 0.92);
}

.admin-orders-page .order-card--highlight::before {
  background: var(--surface);
  color: var(--danger);
}

html[data-theme-effective="dark"] .admin-orders-page .orders-lane__title img {
  filter: invert(1) saturate(0) brightness(1.15);
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) .admin-orders-page .orders-lane__title img {
    filter: invert(1) saturate(0) brightness(1.15);
  }
}

/* Orders: tokenise remaining settings cards + overlays (minimal, no layout changes). */
.admin-orders-page .orders-customer-cancel {
  background:
    radial-gradient(circle at 14% 10%, rgba(var(--warning-rgb), 0.12), transparent 40%),
    radial-gradient(circle at 86% 6%, rgba(var(--ui-primary-rgb), 0.08), transparent 42%),
    linear-gradient(160deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
  border-color: var(--ui-border);
  box-shadow: var(--ui-shadow-card);
}

.admin-orders-page .orders-customer-cancel .container-custom__eyebrow,
.admin-orders-page .orders-customer-cancel .container-custom__lead {
  color: var(--muted);
}

.admin-orders-page .orders-customer-cancel h2 {
  color: var(--text);
}

.admin-orders-page .orders-customer-cancel .container-custom__body {
  background: rgba(var(--surface-rgb), 0.7);
  border: 1px solid var(--border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-customer-cancel .form-label {
  color: var(--text);
}

.admin-orders-page .orders-customer-cancel .form-text {
  color: var(--muted);
}

.admin-orders-page .orders-customer-cancel .form-select,
.admin-orders-page .orders-customer-cancel .form-control {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.82);
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-customer-cancel .form-select:focus,
.admin-orders-page .orders-customer-cancel .form-control:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

.admin-orders-page .orders-customer-cancel #customerOrderPolicySave {
  background: linear-gradient(135deg, var(--primary), var(--accent-strong));
  box-shadow: 0 18px 36px rgba(var(--primary-rgb), 0.22);
}

.admin-orders-page .orders-sound-mode {
  --mode-accent: var(--primary);
  --mode-accent-2: var(--accent-strong);
  --mode-radial: rgba(var(--primary-rgb), 0.12);
  --mode-icon-bg: rgba(var(--primary-rgb), 0.12);
  --mode-icon-color: var(--primary);
  --mode-pill-bg: rgba(var(--primary-rgb), 0.08);
  --mode-pill-border: rgba(var(--primary-rgb), 0.18);
  --mode-thumb-shadow: rgba(var(--primary-rgb), 0.26);
  --mode-option: var(--text);
  --mode-option-active: var(--primary-contrast);
  --mode-option-hover: var(--primary);
}

.admin-orders-page .orders-sound-mode--cancel {
  --mode-accent: var(--danger);
  --mode-accent-2: var(--warning);
  --mode-radial: rgba(var(--danger-rgb), 0.12);
  --mode-icon-bg: rgba(var(--danger-rgb), 0.15);
  --mode-icon-color: var(--danger);
  --mode-pill-bg: rgba(var(--danger-rgb), 0.08);
  --mode-pill-border: rgba(var(--danger-rgb), 0.2);
  --mode-thumb-shadow: rgba(var(--danger-rgb), 0.26);
  --mode-option: var(--text);
  --mode-option-active: var(--primary-contrast);
  --mode-option-hover: var(--danger);
  --settings-badge-bg: rgba(var(--danger-rgb), 0.18);
  --settings-badge-color: var(--danger);
}

.admin-orders-page .orders-sound-mode-card {
  border-color: var(--border);
  background:
    radial-gradient(circle at 15% 30%, var(--mode-radial), transparent 45%),
    linear-gradient(180deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-sound-mode-card__icon {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-sound-mode-card__title {
  color: var(--text);
}

.admin-orders-page .orders-sound-mode--cancel {
  background:
    radial-gradient(circle at 10% 10%, rgba(var(--danger-rgb), 0.12), transparent 40%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-sound-mode--cancel .orders-sound-mode__thumb {
  box-shadow: 0 10px 20px var(--mode-thumb-shadow);
}

.admin-orders-page .orders-sound-settings {
  background:
    radial-gradient(circle at 12% 10%, rgba(var(--primary-rgb), 0.14), transparent 40%),
    radial-gradient(circle at 86% 6%, rgba(var(--success-rgb), 0.12), transparent 42%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
  border-color: var(--border);
  box-shadow: var(--shadow);
  color: var(--text);
}

.admin-orders-page .orders-sound-settings--cancel {
  background:
    radial-gradient(circle at 12% 10%, rgba(var(--danger-rgb), 0.16), transparent 40%),
    radial-gradient(circle at 86% 6%, rgba(var(--warning-rgb), 0.14), transparent 42%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
  box-shadow: var(--shadow);
}

.admin-orders-page .orders-sound-settings__badge {
  background: linear-gradient(135deg, var(--primary), var(--accent-strong));
  color: var(--primary-contrast);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 12px 30px rgba(var(--primary-rgb), 0.28);
}

.admin-orders-page .orders-sound-settings__badge--cancel {
  background: linear-gradient(135deg, var(--danger), var(--warning));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 12px 30px rgba(var(--danger-rgb), 0.25);
}

.admin-orders-page .orders-sound-settings__close {
  background: rgba(var(--surface-2-rgb), 0.72);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: none;
}

.admin-orders-page .orders-sound-settings__close:hover,
.admin-orders-page .orders-sound-settings__close:focus-visible {
  transform: none;
  background: rgba(var(--surface-2-rgb), 0.88);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
}

.admin-orders-page .orders-board::before {
  background:
    radial-gradient(circle at 18% 18%, rgba(var(--ui-primary-rgb), 0.12), transparent 60%),
    radial-gradient(circle at 80% -10%, rgba(var(--success-rgb), 0.16), transparent 55%);
}

.admin-orders-page .orders-board__body {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: var(--border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-board__meta {
  background: rgba(var(--surface-rgb), 0.92);
  border-color: var(--border);
}

.admin-orders-page .orders-board__hint {
  color: var(--text);
}

.admin-orders-page .orders-nav-btn.btn--cancel-sound-active {
  background:
    radial-gradient(circle at 18% 10%, rgba(var(--danger-rgb), 0.12), transparent 42%),
    linear-gradient(180deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-sound-tile--cancel .orders-nav-btn,
.admin-orders-page .orders-nav-btn--cancel,
.admin-orders-page .orders-nav button.admin-nav-btn {
  background: linear-gradient(180deg, var(--ui-surface), var(--ui-surface-muted));
}

.admin-orders-page .orders-callout {
  background:
    radial-gradient(circle at 18% 10%, rgba(var(--danger-rgb), 0.16), transparent 42%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-callout.btn--cancel-sound-active {
  background:
    radial-gradient(circle at 18% 10%, rgba(var(--danger-rgb), 0.22), transparent 42%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-callout__icon {
  color: var(--danger);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-nav-btn__pill,
.admin-orders-page .orders-callout__pill {
  color: var(--danger);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .admin-nav-btn__eyebrow {
  color: rgba(var(--danger-rgb), 0.82);
}

.admin-orders-page .orders-settings-badge {
  background: var(--settings-badge-bg, rgba(var(--surface-2-rgb), 0.72));
  color: var(--settings-badge-color, var(--text));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 20px rgba(0, 0, 0, 0.18);
}

.admin-orders-page .orders-nav-btn--action {
  --settings-badge-color: var(--primary);
}

.admin-orders-page .orders-nav-btn--action .admin-nav-btn__icon {
  color: var(--primary);
}

.admin-orders-page .orders-nav-btn--danger {
  --settings-badge-color: var(--danger);
}

.admin-orders-page .orders-nav-btn.btn--sound-active {
  --settings-badge-color: var(--success);
}

.admin-orders-page .orders-nav-btn.btn--cancel-sound-active {
  --settings-badge-color: var(--danger);
}

.admin-orders-page .orders-nav-btn .admin-nav-btn__icon {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-settings-gear {
  color: var(--muted);
}

.admin-orders-page .orders-settings-gear:hover,
.admin-orders-page .orders-settings-gear:focus-visible {
  transform: none;
}

.admin-orders-page .orders-settings-gear:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

.admin-orders-page .orders-nav-btn:not(.orders-callout):hover,
.admin-orders-page .orders-nav-btn:not(.orders-callout):focus-visible {
  border-color: rgba(var(--primary-rgb), 0.4);
  box-shadow: 0 18px 40px rgba(var(--primary-rgb), 0.15);
}

.admin-orders-page .orders-nav-btn--danger .admin-nav-btn__icon,
.admin-orders-page .orders-nav-btn.btn--cancel-sound-active .admin-nav-btn__icon {
  color: var(--danger);
}

.admin-orders-page .orders-nav-btn.btn--sound-active .admin-nav-btn__icon {
  color: var(--success);
}

html[data-theme-effective="dark"] .admin-orders-page .orders-lane {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 18px 40px rgba(0, 0, 0, 0.35);
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme="light"]) .admin-orders-page .orders-lane {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 18px 40px rgba(0, 0, 0, 0.35);
  }
}

.admin-orders-page .orders-printer-card {
  --printer-accent: var(--primary);
  --printer-accent-2: var(--accent-strong);
  --printer-ink: var(--text);
  --settings-badge-bg: rgba(var(--primary-rgb), 0.14);
  --settings-badge-color: var(--primary);
  background:
    radial-gradient(circle at 18% 12%, rgba(var(--primary-rgb), 0.14), transparent 38%),
    radial-gradient(circle at 80% 0%, rgba(var(--success-rgb), 0.12), transparent 35%),
    linear-gradient(145deg, rgba(var(--surface-rgb), 0.98), rgba(var(--surface-2-rgb), 0.92));
}

.admin-orders-page .orders-printer-card--inactive {
  background:
    radial-gradient(circle at 18% 12%, rgba(var(--primary-rgb), 0.08), transparent 38%),
    radial-gradient(circle at 80% 0%, rgba(var(--success-rgb), 0.08), transparent 35%),
    linear-gradient(145deg, rgba(var(--surface-2-rgb), 0.92), rgba(var(--surface-rgb), 0.96));
  border-color: var(--border);
}

.admin-orders-page .orders-printer-card__icon {
  background: linear-gradient(
    135deg,
    rgba(var(--primary-rgb), 0.16),
    rgba(var(--success-rgb), 0.14)
  );
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 12px 26px rgba(0, 0, 0, 0.18);
}

.admin-orders-page .orders-printer-card__title,
.admin-orders-page .orders-printer-card .form-label {
  color: var(--text);
}

.admin-orders-page #printerStatus::before {
  background: var(--success);
  box-shadow: 0 0 0 6px rgba(var(--success-rgb), 0.12);
}

.admin-orders-page #printerStatus[data-tone="error"] {
  color: var(--danger);
}

.admin-orders-page #printerStatus[data-tone="error"]::before {
  background: var(--danger);
  box-shadow: 0 0 0 6px rgba(var(--danger-rgb), 0.14);
}

.admin-orders-page #printerStatus[data-tone="muted"] {
  color: var(--muted);
}

.admin-orders-page #printerStatus[data-tone="muted"]::before {
  background: rgba(var(--text-rgb), 0.28);
  box-shadow: 0 0 0 6px rgba(var(--text-rgb), 0.08);
}

.admin-orders-page .orders-printer-card__switch {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.78);
  color: var(--text);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-printer-card__switch:hover {
  border-color: rgba(var(--primary-rgb), 0.5);
  box-shadow: 0 16px 36px rgba(var(--primary-rgb), 0.12);
}

.admin-orders-page .orders-printer-card__switch input {
  border-color: var(--border);
  background: var(--surface);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.admin-orders-page .orders-printer-card__switch input:checked {
  background: linear-gradient(135deg, var(--printer-accent), var(--printer-accent-2));
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: 0 8px 22px rgba(var(--primary-rgb), 0.22);
}

.admin-orders-page .orders-printer-card__switch input:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

.admin-orders-page .orders-printer-card__switch input:checked + span {
  color: var(--text);
}

.admin-orders-page .orders-printer-card .form-control {
  border-color: var(--border);
  background: rgba(var(--surface-rgb), 0.82);
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-printer-card .form-control:focus {
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
  transform: none;
}

.admin-orders-page .orders-printer-card .form-control::placeholder {
  color: var(--muted);
}

.admin-orders-page .orders-printer-card__actions .btn-primary {
  background: linear-gradient(135deg, var(--primary), var(--accent-strong));
  color: var(--primary-contrast);
  box-shadow: 0 12px 30px rgba(var(--primary-rgb), 0.28);
}

.admin-orders-page .orders-printer-card__actions .btn-primary:hover,
.admin-orders-page .orders-printer-card__actions .btn-primary:focus-visible {
  transform: none;
  box-shadow: 0 16px 36px rgba(var(--primary-rgb), 0.32);
}

.admin-orders-page .orders-printer-card__actions .btn-secondary {
  background: rgba(var(--surface-2-rgb), 0.72);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .orders-printer-card__actions .btn-secondary:hover,
.admin-orders-page .orders-printer-card__actions .btn-secondary:focus-visible {
  transform: none;
  background: rgba(var(--surface-2-rgb), 0.88);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
}

.admin-orders-page .btn-ghost,
.admin-orders-page .btn-chip {
  background: rgba(var(--surface-2-rgb), 0.72);
  border-color: var(--border);
  color: var(--text);
}

.admin-orders-page .btn-ghost:hover,
.admin-orders-page .btn-chip:hover {
  background: rgba(var(--surface-2-rgb), 0.88);
}

.admin-orders-page .order-total-row--meta {
  background: rgba(var(--surface-2-rgb), 0.62);
  border-color: var(--border);
}

.admin-orders-page .order-total-row--surcharge strong {
  color: var(--warning);
}

.admin-orders-page .order-total-row--discount strong {
  color: var(--success);
}

.admin-orders-page .empty-state {
  background: rgba(var(--surface-rgb), 0.55);
}

.admin-orders-page .modal {
  background: var(--surface);
  color: var(--text);
  box-shadow: var(--orders-card-shadow), 0 0 0 1px var(--border);
}

.admin-orders-page .modal-close {
  background: rgba(var(--surface-2-rgb), 0.72);
  color: var(--text);
  border: 1px solid var(--border);
}

.admin-orders-page .modal-close:hover,
.admin-orders-page .modal-close:focus-visible {
  background: rgba(var(--surface-2-rgb), 0.88);
}

.admin-orders-page .order-timeline,
.admin-orders-page .order-panel {
  background: var(--surface);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .order-meta-card {
  background: rgba(var(--surface-rgb), 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.admin-orders-page .order-panel--customer {
  background: linear-gradient(180deg, rgba(var(--surface-rgb), 0.96) 0%, rgba(var(--surface-2-rgb), 0.9) 90%);
}

.admin-orders-page .order-chip--ghost {
  background: rgba(var(--surface-2-rgb), 0.72);
  color: var(--muted);
}

.admin-orders-page .daily-feedback {
  background: rgba(0, 0, 0, 0.45);
}

.admin-orders-page .daily-feedback__panel {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.admin-orders-page .daily-feedback__textarea {
  background: var(--input-bg);
  color: var(--text);
  border-color: var(--border);
}

.admin-orders-page .daily-feedback__textarea:focus {
  outline: none;
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

.admin-orders-page .daily-feedback__textarea::placeholder {
  color: var(--muted);
}

/* Tenant admin auth pages: keep markup minimal, consume theme_b tokens/components. */
body.admin-auth-page {
  --auth-page-pad: clamp(16px, 4vw, 28px);
  min-height: 100vh;
  min-height: 100svh;
  min-height: 100dvh;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--auth-page-pad) + env(safe-area-inset-top, 0px))
    calc(var(--auth-page-pad) + env(safe-area-inset-right, 0px))
    calc(var(--auth-page-pad) + env(safe-area-inset-bottom, 0px) + 12px)
    calc(var(--auth-page-pad) + env(safe-area-inset-left, 0px));
  background:
    radial-gradient(circle at 22% -10%, rgba(var(--primary-rgb), 0.12), transparent 55%),
    var(--bg);
  color: var(--text);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

body.admin-auth-page *,
body.admin-auth-page *::before,
body.admin-auth-page *::after {
  box-sizing: border-box;
}

body.admin-auth-page .login-shell,
body.admin-auth-page .reset-shell {
  width: min(520px, 100%);
  background: var(--surface);
  border-radius: 20px;
  border: 1px solid var(--border);
  padding: clamp(22px, 5vw, 32px);
  box-shadow: var(--ui-shadow-card);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

body.admin-auth-page .login-shell {
  width: min(420px, 100%);
}

body.admin-auth-page h1 {
  margin: 0;
  font-size: clamp(24px, 4.6vw, 30px);
  line-height: var(--font-line-tight);
}

body.admin-auth-page p {
  margin: 0;
  color: var(--muted);
  line-height: var(--font-line-relaxed);
}

body.admin-auth-page .eyebrow {
  font-size: var(--font-size-0);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.admin-auth-page label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
}

body.admin-auth-page .form-field {
  margin-bottom: 18px;
}

body.admin-auth-page input[type="email"],
body.admin-auth-page input[type="password"] {
  width: 100%;
  padding: 13px 12px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: var(--surface-2);
  color: var(--text);
  font-size: 16px;
  line-height: var(--font-line-base);
  caret-color: var(--text);
}

body.admin-auth-page input[type="email"]:focus,
body.admin-auth-page input[type="password"]:focus {
  outline: none;
  border-color: rgba(var(--primary-rgb), 0.7);
  box-shadow: var(--focus-ring);
}

body.admin-auth-page input:-webkit-autofill {
  -webkit-text-fill-color: var(--text);
  box-shadow: 0 0 0 1000px var(--surface-2) inset;
  caret-color: var(--text);
  border-color: rgba(var(--primary-rgb), 0.35);
}

body.admin-auth-page button[type="submit"] {
  width: 100%;
  padding: 15px 16px;
  border-radius: 12px;
  border: none;
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  margin-top: 6px;
  background: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  transition: transform 0.15s ease, box-shadow 0.2s ease, filter 0.2s ease;
  line-height: 1.4;
  min-height: 48px;
  box-shadow: 0 16px 34px rgba(var(--ui-primary-rgb), 0.22);
}

body.admin-auth-page button[type="submit"]:hover {
  box-shadow: 0 18px 40px rgba(var(--ui-primary-rgb), 0.26);
  filter: brightness(1.02);
}

body.admin-auth-page button[type="submit"]:active {
  transform: translateY(1px);
}

body.admin-auth-page .alert {
  border-radius: 12px;
  padding: 14px;
  margin: 0 0 18px;
  font-size: 0.95rem;
  word-break: break-word;
  overflow-wrap: anywhere;
  border: 1px solid var(--border);
  background: rgba(var(--surface-rgb), 0.9);
  color: var(--text);
}

body.admin-auth-page .alert.info {
  border-color: rgba(var(--primary-rgb), 0.28);
  background: rgba(var(--primary-rgb), 0.1);
}

body.admin-auth-page .alert.error {
  border-color: rgba(var(--danger-rgb), 0.32);
  background: rgba(var(--danger-rgb), 0.1);
}

body.admin-auth-page .links,
body.admin-auth-page .login-meta {
  display: grid;
  gap: 12px;
  font-size: 1rem;
}

body.admin-auth-page .login-meta {
  margin-top: 10px;
  font-size: 0.9rem;
  color: var(--muted);
  line-height: var(--font-line-relaxed);
}

body.admin-auth-page .links a,
body.admin-auth-page .login-meta a {
  color: var(--primary);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(var(--primary-rgb), 0.08);
  border: 1px solid rgba(var(--primary-rgb), 0.22);
  font-weight: 600;
  min-height: 48px;
  width: 100%;
}

body.admin-auth-page .links a:hover,
body.admin-auth-page .login-meta a:hover {
  background: rgba(var(--primary-rgb), 0.12);
  border-color: rgba(var(--primary-rgb), 0.3);
}

body.admin-auth-page .links a:focus-visible,
body.admin-auth-page .login-meta a:focus-visible {
  outline: none;
  border-color: rgba(var(--primary-rgb), 0.55);
  box-shadow: var(--focus-ring);
}

@media (max-height: 720px) {
  body.admin-auth-page {
    align-items: flex-start;
  }

  body.admin-auth-page .login-shell,
  body.admin-auth-page .reset-shell {
    margin-top: clamp(12px, 6vh, 28px);
  }
}

/* Feedback launcher + daily feedback prompt: tokenized for dashboard/orders (Dark Mode safe). */
body.admin-page .feedback-launcher__button {
  background: linear-gradient(135deg, var(--primary), var(--accent-strong));
  color: var(--btn-primary-text, var(--text-strong));
  border: 1px solid rgba(var(--primary-rgb), 0.45);
  box-shadow: 0 14px 32px rgba(var(--primary-rgb), 0.28);
}

body.admin-page .feedback-launcher__video-btn img {
  filter: none;
  opacity: 0.85;
}

body.admin-page .feedback-launcher__button:hover,
body.admin-page .feedback-launcher__button:focus-visible {
  box-shadow: 0 16px 36px rgba(var(--primary-rgb), 0.34);
}

body.admin-page .feedback-launcher__button:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

body.admin-page .feedback-launcher__arrow {
  border-top-color: rgba(var(--primary-rgb), 0.88);
  filter: drop-shadow(0 8px 18px rgba(var(--primary-rgb), 0.28));
}

body.admin-page .feedback-launcher__hint {
  background: rgba(var(--surface-rgb), 0.94);
  color: var(--text);
  border-color: var(--border);
  box-shadow: var(--shadow, 0 18px 46px rgba(0, 0, 0, 0.24));
}

body.admin-page .feedback-launcher__hint::after {
  border-left-color: rgba(var(--surface-rgb), 0.94);
  border-top-color: rgba(var(--surface-rgb), 0.94);
  border-right-color: rgba(var(--surface-rgb), 0.94);
}

:dir(rtl) body.admin-page .feedback-launcher__hint::after {
  border-right-color: rgba(var(--surface-rgb), 0.94);
}

body.admin-page .feedback-launcher__hint-dismiss {
  background: rgba(var(--surface-2-rgb), 0.75);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

body.admin-page .feedback-launcher__hint-dismiss:hover,
body.admin-page .feedback-launcher__hint-dismiss:focus-visible {
  background: rgba(var(--surface-2-rgb), 0.9);
  transform: translateY(-1px);
}

body.admin-page .feedback-launcher__hint-dismiss:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

body.admin-page .daily-feedback {
  background: rgba(var(--bg-rgb), 0.62);
}

body.admin-page .daily-feedback__panel {
  background: var(--surface);
  color: var(--text);
  border-color: var(--border);
  box-shadow: var(--ui-shadow-card, 0 12px 30px rgba(0, 0, 0, 0.32));
}

body.admin-page .daily-feedback__textarea {
  background: var(--surface-2);
  border-color: var(--border);
  color: var(--text);
  caret-color: var(--text);
}

body.admin-page .daily-feedback__textarea::placeholder {
  color: var(--muted);
}

body.admin-page .daily-feedback .btn-chip {
  background: rgba(var(--surface-2-rgb), 0.72);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

body.admin-page .daily-feedback .btn-chip:hover {
  background: rgba(var(--surface-2-rgb), 0.9);
}

html[data-theme-effective="dark"] .feedback-launcher__button,
html[data-theme="dark"] .feedback-launcher__button {
  color: var(--text-strong);
  border-color: rgba(var(--primary-rgb), 0.5);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.45);
}

html[data-theme-effective="dark"] .orders-alert-bell,
html[data-theme="dark"] .orders-alert-bell,
html[data-theme-effective="dark"] .orders-nav-bell,
html[data-theme="dark"] .orders-nav-bell {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

html[data-theme-effective="dark"] .orders-alert-bell__icon,
html[data-theme="dark"] .orders-alert-bell__icon {
  background: rgba(var(--surface-rgb), 0.85);
  color: var(--text-strong);
}

html[data-theme-effective="dark"] .orders-alert-bell__count,
html[data-theme="dark"] .orders-alert-bell__count {
  color: var(--text-strong);
}

/* Dark Mode text contrast: soften bright whites for body text and status helpers. */
html[data-theme-effective="dark"] .toast-message,
html[data-theme="dark"] .toast-message {
  background: rgba(var(--surface-rgb), 0.92);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: 0 18px 32px rgba(0, 0, 0, 0.55);
}

html[data-theme-effective="dark"] .toast-message--success,
html[data-theme="dark"] .toast-message--success {
  background: var(--surface);
  border-color: var(--border);
  color: var(--text);
}

html[data-theme-effective="dark"] .toast-message--error,
html[data-theme="dark"] .toast-message--error {
  background: var(--surface);
  border-color: var(--border);
  color: var(--text);
}

html[data-theme-effective="dark"] .toast-message--info,
html[data-theme="dark"] .toast-message--info {
  background: var(--surface);
  border-color: var(--border);
  color: var(--text);
}

html[data-theme-effective="dark"] .admin-orders-page .orders-sound-settings__badge,
html[data-theme="dark"] .admin-orders-page .orders-sound-settings__badge {
  background: var(--surface-2);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme-effective="dark"] .admin-orders-page .legend-pill,
html[data-theme="dark"] .admin-orders-page .legend-pill {
  color: var(--text-strong);
}

html[data-theme-effective="dark"] .admin-orders-page .orders-printer-card__switch input::after,
html[data-theme="dark"] .admin-orders-page .orders-printer-card__switch input::after {
  color: var(--text-strong);
}

html[data-theme-effective="dark"] .admin-page .menu-importer-card__stat,
html[data-theme="dark"] .admin-page .menu-importer-card__stat {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

html[data-theme-effective="dark"] .admin-page .menu-importer__step-number,
html[data-theme="dark"] .admin-page .menu-importer__step-number {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
}

/* Flatten accent glows across admin pages (all scopes). */
body.admin-page {
  background: var(--bg);
}

body.admin-auth-page {
  background: var(--bg);
}

body.admin-page .ocr-import-modal .modal-header,
body.admin-page .ocr-import-modal .category-card,
body.admin-page .ocr-import-modal .ocr-import-meta-banner,
body.admin-page #section-data-requests .dsr-status-card:not(.dsr-status-card--warn):not(.dsr-status-card--tip),
body.admin-page #section-data-requests .dsr-card,
body.admin-page #section-data-requests .dsr-action-card {
  background: var(--surface);
  background-image: none;
}

.admin-orders-page .admin-hero--orders::after,
.admin-orders-page .orders-board::before {
  background: none;
}

.admin-orders-page .orders-alert-panel,
.admin-orders-page .orders-nav,
.admin-orders-page .orders-lane--delivery,
.admin-orders-page .orders-lane--pickup,
.admin-orders-page .orders-customer-cancel,
.admin-orders-page .orders-sound-mode-card,
.admin-orders-page .orders-sound-mode--cancel,
.admin-orders-page .orders-sound-settings,
.admin-orders-page .orders-sound-settings--cancel,
.admin-orders-page .orders-callout,
.admin-orders-page .orders-callout.btn--cancel-sound-active {
  background: var(--surface);
  background-image: none;
}

.admin-orders-page .orders-nav,
.admin-orders-page .orders-nav-btn,
.admin-orders-page .orders-nav-btn.btn--cancel-sound-active,
.admin-orders-page .orders-nav button.admin-nav-btn {
  border-color: var(--border);
  background: var(--surface-2);
  background-image: none;
}

.admin-orders-page .orders-sound-mode,
.admin-orders-page .orders-sound-mode--cancel {
  --mode-radial: transparent;
  --mode-icon-bg: var(--surface-2);
  --mode-pill-bg: var(--surface-2);
  --mode-pill-border: var(--border);
  --mode-thumb-shadow: none;
}

.admin-orders-page .orders-sound-settings__badge {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

.admin-orders-page .orders-printer-card,
.admin-orders-page .orders-printer-card--inactive {
  background: var(--surface);
  background-image: none;
}

.admin-orders-page .orders-printer-card__icon {
  background: var(--surface-2);
  background-image: none;
}

.admin-orders-page .orders-nav-btn.btn--cancel-sound-active,
.admin-orders-page .orders-callout.btn--cancel-sound-active {
  background: var(--surface-2);
  background-image: none;
}

.admin-page .menu-importer-card__stat,
.admin-page .menu-importer__step-number {
  background: var(--surface-2);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: none;
}

.toast-message--info,
.toast-message.toast-message--info {
  background: var(--surface);
  border-color: var(--border);
  color: var(--text);
}

/* Dark mode: flatten CTAs and controls (no gradients or glow). */
html[data-theme="dark"] .admin-page .btn,
html[data-theme-effective="dark"] .admin-page .btn {
  background: var(--surface-2);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: none;
  text-shadow: none;
}

html[data-theme="dark"] .admin-page .btn:hover,
html[data-theme-effective="dark"] .admin-page .btn:hover,
html[data-theme="dark"] .admin-page .btn:focus-visible,
html[data-theme-effective="dark"] .admin-page .btn:focus-visible {
  background: rgba(var(--surface-rgb), 0.92);
  color: var(--text-strong);
  border-color: rgba(var(--text-rgb), 0.22);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-primary,
html[data-theme-effective="dark"] .admin-page .btn-primary,
html[data-theme="dark"] .admin-orders-btn,
html[data-theme-effective="dark"] .admin-orders-btn {
  background: var(--primary);
  color: var(--primary-contrast, #0b1220);
  border: 1px solid rgba(var(--primary-rgb), 0.6);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-primary:hover,
html[data-theme-effective="dark"] .admin-page .btn-primary:hover,
html[data-theme="dark"] .admin-page .btn-primary:focus-visible,
html[data-theme-effective="dark"] .admin-page .btn-primary:focus-visible,
html[data-theme="dark"] .admin-orders-btn:hover,
html[data-theme-effective="dark"] .admin-orders-btn:hover,
html[data-theme="dark"] .admin-orders-btn:focus-visible,
html[data-theme-effective="dark"] .admin-orders-btn:focus-visible {
  background: var(--accent-strong);
  color: var(--primary-contrast, #0b1220);
  border-color: rgba(var(--primary-rgb), 0.75);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-outline-primary,
html[data-theme-effective="dark"] .admin-page .btn-outline-primary {
  background: rgba(var(--primary-rgb), 0.08);
  color: var(--primary);
  border: 1px solid rgba(var(--primary-rgb), 0.55);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-outline-primary:hover,
html[data-theme-effective="dark"] .admin-page .btn-outline-primary:hover,
html[data-theme="dark"] .admin-page .btn-outline-primary:focus-visible,
html[data-theme-effective="dark"] .admin-page .btn-outline-primary:focus-visible {
  background: rgba(var(--primary-rgb), 0.14);
  color: var(--primary);
  border-color: rgba(var(--primary-rgb), 0.75);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-outline-secondary,
html[data-theme-effective="dark"] .admin-page .btn-outline-secondary,
html[data-theme="dark"] .admin-page .btn-secondary,
html[data-theme-effective="dark"] .admin-page .btn-secondary {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
  box-shadow: none;
}

html[data-theme="dark"] .admin-page .btn-outline-secondary:hover,
html[data-theme-effective="dark"] .admin-page .btn-outline-secondary:hover,
html[data-theme="dark"] .admin-page .btn-outline-secondary:focus-visible,
html[data-theme-effective="dark"] .admin-page .btn-outline-secondary:focus-visible,
html[data-theme="dark"] .admin-page .btn-secondary:hover,
html[data-theme-effective="dark"] .admin-page .btn-secondary:hover,
html[data-theme="dark"] .admin-page .btn-secondary:focus-visible,
html[data-theme-effective="dark"] .admin-page .btn-secondary:focus-visible {
  background: var(--surface-2);
  color: var(--text-strong);
  border-color: rgba(var(--text-rgb), 0.22);
  box-shadow: none;
}

/* Feedback launcher: remove neon look in dark mode. */
html[data-theme="dark"] .feedback-launcher__button,
html[data-theme-effective="dark"] .feedback-launcher__button {
  background: var(--primary);
  color: var(--primary-contrast, #0b1220);
  box-shadow: none;
  border: 1px solid rgba(var(--primary-rgb), 0.55);
}

html[data-theme="dark"] .feedback-launcher__button:hover,
html[data-theme-effective="dark"] .feedback-launcher__button:hover {
  background: var(--accent-strong);
  color: var(--primary-contrast, #0b1220);
  box-shadow: none;
}

html[data-theme="dark"] .feedback-launcher__arrow,
html[data-theme-effective="dark"] .feedback-launcher__arrow {
  border-top-color: var(--primary);
  filter: none;
  animation: none;
}

/* jQuery UI sliders: dark, flat track and handles. */
html[data-theme="dark"] .admin-page .ui-slider,
html[data-theme-effective="dark"] .admin-page .ui-slider {
  background: rgba(var(--surface-2-rgb), 0.9) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
  border-radius: 999px;
}

html[data-theme="dark"] .admin-page .ui-slider-range,
html[data-theme-effective="dark"] .admin-page .ui-slider-range {
  background: var(--primary) !important;
  border-radius: 999px;
}

html[data-theme="dark"] .admin-page .ui-slider-handle,
html[data-theme-effective="dark"] .admin-page .ui-slider-handle {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  box-shadow: none !important;
  width: 18px;
  height: 18px;
  border-radius: 10px;
}
