/*
 * Evento + Prestador: one palette, including guest operations and portalled components.
 * Load after panel-theme-presets.css. Only presentation belongs here: do not
 * change display/position, preview artwork, QR codes, brand logos or statuses.
 */

body.admin-body[data-panel-theme][data-theme-mode] {
  --panel-bg: var(--admin-bg);
  --panel-surface: var(--admin-card);
  --panel-soft: var(--panel-theme-surface-soft);
  --panel-input: var(--panel-theme-input);
  --panel-text: var(--admin-text);
  --panel-muted: var(--admin-muted);
  --panel-border: var(--admin-border);
  --panel-accent: var(--admin-primary);
  --panel-accent-strong: var(--admin-primary-strong);
  --panel-on-accent: var(--admin-on-primary);
  --panel-nav: var(--admin-sidebar);
  --panel-nav-soft: var(--admin-sidebar-soft);

  /* The consolidated admin UI used its own fixed blue palette. */
  --cx-navy-950: var(--panel-nav);
  --cx-navy-900: var(--panel-text);
  --cx-navy-800: var(--panel-nav-soft);
  --cx-blue-700: var(--panel-accent);
  --cx-blue-600: var(--panel-accent);
  --cx-blue-500: var(--panel-accent);
  --cx-coral-500: var(--admin-coral);
  --cx-orange-500: var(--admin-orange);
  --cx-mint-500: var(--admin-mint);
  --cx-yellow-400: var(--admin-gold);
  --cx-surface: var(--panel-surface);
  --cx-surface-soft: var(--panel-soft);
  --cx-surface-muted: var(--panel-soft);
  --cx-page: var(--panel-bg);
  --cx-text: var(--panel-text);
  --cx-muted: var(--panel-muted);
  --cx-subtle: var(--panel-muted);
  --cx-border: var(--panel-border);
  --cx-border-strong: var(--panel-border);
  --cx-info: var(--panel-accent);
  --cx-ring: 0 0 0 3px color-mix(in srgb, var(--panel-accent) 24%, transparent);
  --cx-gradient-blue: var(--panel-action-gradient);
  --cx-gradient-hero: var(--panel-hero-gradient);
  --cx-gradient-brand: var(--panel-decoration-gradient);
  --admin-brand-gradient: var(--panel-decoration-gradient);
  --admin-brand-gradient-vertical: linear-gradient(180deg, var(--panel-accent), var(--admin-mint));
  --admin-active-bg: color-mix(in srgb, var(--panel-accent) 24%, transparent);
  --admin-active-border: color-mix(in srgb, var(--panel-accent) 52%, transparent);
  background: var(--panel-bg) !important;
}

body.provider-portal-body[data-panel-theme][data-theme-mode] {
  --panel-bg: var(--provider-bg);
  --panel-surface: var(--provider-card);
  --panel-soft: var(--provider-soft);
  --panel-input: var(--provider-input);
  --panel-text: var(--provider-text);
  --panel-muted: var(--provider-muted);
  --panel-border: var(--provider-border);
  --panel-accent: var(--provider-blue);
  --panel-accent-strong: var(--provider-blue-dark);
  --panel-on-accent: var(--provider-on-accent);
  --panel-nav: color-mix(in srgb, var(--provider-blue) 24%, black);
  --panel-nav-soft: color-mix(in srgb, var(--provider-blue) 34%, black);
}

body.guest-operations[data-panel-theme][data-theme-mode] {
  --ops-neutral: var(--ops-muted);
  --ops-neutral-bg: var(--ops-soft);
  --panel-bg: var(--ops-bg);
  --panel-surface: var(--ops-panel);
  --panel-soft: var(--ops-soft);
  --panel-input: var(--ops-panel);
  --panel-text: var(--ops-ink);
  --panel-muted: var(--ops-muted);
  --panel-border: var(--ops-border);
  --panel-accent: var(--ops-accent);
  --panel-accent-strong: color-mix(in srgb, var(--ops-accent) 82%, black);
  --panel-on-accent: var(--ops-on-accent);
  --panel-nav: color-mix(in srgb, var(--ops-accent) 24%, black);
  --panel-nav-soft: color-mix(in srgb, var(--ops-accent) 34%, black);
}

body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] {
  --panel-tint: color-mix(in srgb, var(--panel-accent) 9%, var(--panel-surface));
  --panel-accent-ink: var(--panel-accent);
  --panel-selected-border: color-mix(in srgb, var(--panel-accent) 48%, var(--panel-border));
  --panel-action-gradient: linear-gradient(135deg, var(--panel-accent), var(--panel-accent-strong));
  --panel-hero-gradient: linear-gradient(125deg, var(--panel-nav), var(--panel-nav-soft));
  --panel-decoration-gradient: linear-gradient(90deg, var(--panel-accent), color-mix(in srgb, var(--panel-accent) 58%, var(--panel-surface)));
  --panel-on-hero: #ffffff;
  --panel-hero-muted: rgba(255, 255, 255, .82);
  --panel-danger: #c22949;
  --cx-ux-blue: var(--panel-accent-ink);
  --cx-ux-blue-deep: var(--panel-nav);
  --cx-ux-ink: var(--panel-text);
  --cx-ux-muted: var(--panel-muted);
  --cx-ux-line: var(--panel-border);
  --cx-ux-soft: var(--panel-soft);
  --cx-ux-surface: var(--panel-surface);
  --cx-ux-shadow: 0 18px 44px color-mix(in srgb, var(--panel-nav) 11%, transparent);
  --celebrax-loading-blue: var(--panel-accent);
  --celebrax-loading-navy: var(--panel-text);
  --celebrax-loading-coral: var(--panel-accent-strong);
  --celebrax-loading-mint: var(--panel-accent);
  --celebrax-loading-text: var(--panel-muted);
  color: var(--panel-text);
  accent-color: var(--panel-accent);
}

body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode="dark"] {
  --panel-danger: #ff8fa5;
}

body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode="light"] {
  /* A darker ink keeps small links readable on tinted Sálvia/Oceano cards. */
  --panel-accent-ink: color-mix(in srgb, var(--panel-accent) 82%, black);
}

/* Shared native controls, including dialogs mounted outside the main view. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  input:where(:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="hidden"]):not([type="submit"]):not([type="button"])),
  select, textarea
) {
  background-color: var(--panel-input) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
  caret-color: var(--panel-accent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(input, textarea)::placeholder {
  color: var(--panel-muted) !important;
  opacity: 1;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(input, select, textarea):focus {
  border-color: var(--panel-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--panel-accent) 18%, transparent) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(input, select, textarea)[aria-invalid="true"] {
  border-color: var(--panel-danger) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--panel-danger) 18%, transparent) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] input:where([type="file"], [type="range"]) {
  background-color: var(--panel-input) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] input[type="file"]::file-selector-button {
  background: var(--panel-tint);
  border-color: var(--panel-selected-border);
  color: var(--panel-accent-ink);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(button, a, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--panel-accent) !important;
  outline-offset: 3px;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(input[type="checkbox"], input[type="radio"], input[type="range"]) {
  accent-color: var(--panel-accent) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] select option {
  background: var(--panel-surface);
  color: var(--panel-text);
}

/* Event chrome: higher specificity than the old consolidated/dark sheets. */
body.admin-body[data-panel-theme][data-theme-mode] #adminSidebar.sidebar {
  background: var(--panel-hero-gradient) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .sidebar-menu a.active {
  background: color-mix(in srgb, var(--panel-accent) 26%, transparent) !important;
  border-color: var(--panel-selected-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .sidebar-menu a svg { color: inherit; }
body.admin-body[data-panel-theme][data-theme-mode] .admin-header {
  background: color-mix(in srgb, var(--panel-surface) 94%, transparent) !important;
  border-color: var(--panel-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .admin-header::after { background: var(--panel-decoration-gradient); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-mini-countdown, .admin-user-button, .admin-user-dropdown, .admin-theme-option, .account-2fa-button) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-mini-countdown strong, .admin-header-eyebrow) { color: var(--panel-accent-ink) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-theme-option[aria-checked="true"], .admin-user-button:hover) { border-color: var(--panel-accent) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.switch, .settings-switch, .agenda-switch) input:checked + .slider,
body.admin-body[data-panel-theme][data-theme-mode] .admin-switch input:checked + span {
  background: var(--panel-accent) !important;
}

/* Cards, filters, tables and all existing modal layouts keep their geometry. */
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .stat-card, .chart-container, .admin-chart-card, .table-container, .table-actions,
  .admin-panel-card, .settings-card, .settings-panel, .settings-accordion, .settings-accordion-header,
  .settings-card-intro, .settings-switch-row, .switch-row, .story-divider-switch-row,
  .event-settings-card, .rsvp-settings-card, .admin-context-settings-card, .admin-context-settings-heading,
  .gift-panel, .gift-panel-toggle, .gift-admin-header, .pix-admin-card, .mp-admin-card, .theme-settings-card,
  .agenda-form-card, .agenda-list-card, .agenda-list-header, .agenda-accordion-toggle, .agenda-item-card,
  .admin-budget-panel, .admin-budget-filters, .admin-budget-card, .admin-budget-stat, .admin-budget-modal-card,
  .admin-pagination, .gift-contributions-pagination, .admin-modal-card, .admin-user-modal-dialog,
  .admin-confirm-modal, .sellable-confirm-card, .gift-status-confirm-content, .gift-contribution-confirm-content,
  .admin-addons-hero, .admin-addons-plan-pill, .admin-addon-card, .audit-toolbar,
  .share-studio, .share-panel-card, .share-qr-card, .share-tip-card, .share-qr-customizer,
  .admin-partner-card, .admin-partner-modal-card, .community-opportunity-dialog,
  .admin-tutorial-card
) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .settings-tabs-header, .agenda-view-tabs, .admin-dashboard-tabs, .admin-chart-empty,
  .admin-permission-grid label, .rsvp-summary-grid > div, .gift-status-grid > div,
  .agenda-countdown-card, .agenda-countdown-number, .agenda-golden-day-card,
  .audit-change-row, .share-studio-grid, .share-link-box, .share-download-btn,
  .share-studio-header
) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-table, .admin-budget-table, .audit-table-container) th {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-muted) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-table, .admin-budget-table, .audit-table-container) td {
  border-color: var(--panel-border) !important;
  color: var(--panel-text);
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-table, .admin-budget-table) tbody tr:hover { background: var(--panel-tint) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .stat-card .stat-icon, .admin-dashboard-tab-icon, .admin-chart-period, .audit-action-label,
  .admin-partner-opportunity-link
) {
  background: var(--panel-tint) !important;
  border-color: var(--panel-selected-border) !important;
  color: var(--panel-accent-ink) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .stat-card::after { background: var(--panel-accent); }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .audit-change-details summary, .agenda-countdown-kicker, .agenda-eyebrow,
  .admin-budget-kicker, .admin-partners-kicker, .admin-tutorials-kicker
) { color: var(--panel-accent-ink) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .agenda-countdown-card h3, .agenda-countdown-card strong, .agenda-golden-day-card h3,
  .gift-admin-header h3, .settings-card-intro h3, .audit-user-cell strong, .audit-change-row strong
) { color: var(--panel-text) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .agenda-countdown-card p, .agenda-countdown-card span, .agenda-golden-day-card p,
  .gift-admin-header p, .settings-card-intro p, .audit-toolbar small, .audit-user-cell small
) { color: var(--panel-muted) !important; }

/* Buttons: use the palette's paired foreground, also on bright dark accents. */
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .btn-primary, .rsvp-details-btn, .rsvp-latest-details-btn, .admin-addon-primary,
  .sellable-btn.primary, .gift-status-confirm-activate, .settings-tab.active,
  .agenda-view-tabs button.active, .admin-budget-primary, .admin-partners-tab.is-active,
  .admin-partner-open, .admin-partner-contact.is-chat, .community-primary,
  .event-live-button.is-blue, .event-live-section-tab.is-active
) {
  background: var(--panel-action-gradient) !important;
  border-color: var(--panel-accent) !important;
  color: var(--panel-on-accent) !important;
  box-shadow: none;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .btn-secondary, .admin-budget-secondary, .community-ghost, .community-chat-attach,
  .admin-partner-contact:not(.is-chat):not(.is-whatsapp), .share-download-btn
) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-accent-ink) !important;
}

/* Local module palettes must be bound at their roots, not only on body. */
body.admin-body[data-panel-theme][data-theme-mode] :is(.community-shell, .community-chat-shell, .community-dialog) {
  --community-primary: var(--panel-accent);
  --community-primary-dark: var(--panel-accent-strong);
  --community-ink: var(--panel-text);
  --community-muted: var(--panel-muted);
  --community-line: var(--panel-border);
  --community-surface: var(--panel-surface);
  --community-soft: var(--panel-soft);
  --community-card: var(--panel-surface);
}
body.admin-body[data-panel-theme][data-theme-mode] #view-share {
  --share-primary: var(--panel-accent);
  --share-secondary: var(--admin-mint);
  --share-soft: var(--panel-soft);
  --share-ink: var(--panel-text);
  --share-muted: var(--panel-muted);
  /* --share-event-* intentionally stays owned by the public artwork. */
}
body.admin-body[data-panel-theme][data-theme-mode] .invitation-studio-root {
  --invite-navy: var(--panel-nav);
  --invite-blue: var(--panel-accent);
  --invite-coral: var(--admin-coral);
  --invite-orange: var(--admin-orange);
  --invite-mint: var(--admin-mint);
  --invite-surface: var(--panel-surface);
  --invite-soft: var(--panel-soft);
  --invite-border: var(--panel-border);
  --invite-text: var(--panel-text);
  --invite-muted: var(--panel-muted);
}
body.admin-body[data-panel-theme][data-theme-mode] .event-library-admin-root {
  --library-blue: var(--panel-accent);
  --library-navy: var(--panel-nav);
  --library-mint: var(--admin-mint);
  --library-coral: var(--admin-coral);
  --library-surface: var(--panel-surface);
  --library-soft: var(--panel-soft);
  --library-border: var(--panel-border);
  --library-text: var(--panel-text);
  --library-muted: var(--panel-muted);
}
body.admin-body[data-panel-theme][data-theme-mode] .event-live-admin {
  --event-live-primary: var(--panel-accent);
  --event-live-text: var(--panel-text);
  --event-live-muted: var(--panel-muted);
  --event-live-border: var(--panel-border);
  --event-live-card: var(--panel-surface);
  --event-live-soft: var(--panel-soft);
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .admin-dashboard-overview, .sellable-publication-hero, .event-live-admin-hero
) { background: var(--panel-hero-gradient) !important; border-color: var(--panel-selected-border) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .admin-dashboard-overview, .sellable-publication-hero, .event-live-admin-hero
) :is(h3, strong) { color: var(--panel-on-hero) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .admin-dashboard-overview-copy > p, .admin-dashboard-kicker,
  .sellable-publication-hero p, .event-live-admin-hero p, .event-live-admin-kicker
) { color: var(--panel-hero-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .event-live-button.is-primary { background: var(--panel-surface); color: var(--panel-accent-ink); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.community-hero, .community-comment-bubble, .community-person-card) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.community-hero h3, .community-field > span, .community-post-body p, .community-comment-bubble p) { color: var(--panel-text); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.community-hero p, .community-post-author small) { color: var(--panel-muted); }
body.admin-body[data-panel-theme][data-theme-mode] .community-chat-header { background: var(--panel-hero-gradient); }
body.admin-body[data-panel-theme][data-theme-mode] .community-chat-header :is(strong, small) { color: var(--panel-on-hero) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.community-topic, .community-chat-message.is-own) {
  background: var(--panel-tint);
  color: var(--panel-accent-ink);
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.agenda-calendar-day, .agenda-calendar-weekday) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .agenda-calendar-day.is-muted { background: var(--panel-soft) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .agenda-calendar-event:not(.important) {
  background: var(--panel-tint) !important;
  color: var(--panel-accent-ink) !important;
}

/* Mobile card tables keep the same palette as their desktop counterpart. */
body.admin-body[data-panel-theme][data-theme-mode] table[data-mobile-table="cards"] tbody tr {
  background: var(--panel-surface);
  border-color: var(--panel-border);
}
body.admin-body[data-panel-theme][data-theme-mode] table[data-mobile-table="cards"] td {
  color: var(--panel-text) !important;
  border-color: var(--panel-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] table[data-mobile-table="cards"] td::before,
body.admin-body[data-panel-theme][data-theme-mode] table[data-mobile-table="cards"] small { color: var(--panel-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] table[data-mobile-table="cards"] a:not([class]) { color: var(--panel-accent-ink); }

/* Dashboard filters, budget details, invitation controls and the library. */
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .dashboard-period-toolbar, .admin-budget-hero, .admin-budget-modal-header,
  .admin-budget-form, .admin-budget-form-actions, .admin-budget-empty, .admin-budget-loading,
  .admin-budget-expense-table-wrap, .admin-budget-import-drop,
  .invitation-category-tabs, .invitation-template-card, .invitation-reset-btn,
  .invitation-format-options button, .invitation-text-actions button, .invitation-reset-position-btn,
  .event-library-admin-title-fields, .event-library-admin-album,
  .admin-tutorial-featured-card, .admin-tutorial-modal-card, .admin-tutorial-modal-header,
  .admin-tutorial-modal-close, .admin-tutorial-filter,
  .celebrax-public-text-section, .celebrax-public-text-field
) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .dashboard-period-option, .admin-budget-filter-search, .admin-budget-payment-row:not(.is-paid),
  .admin-budget-detail-section, .admin-budget-dynamic-row, .admin-budget-expense-details > td,
  .admin-budget-contract-progress, .admin-budget-progress, .admin-budget-row-progress > div,
  .admin-budget-contract-progress-bar, .admin-budget-import-start,
  .invitation-upload-card, .invitation-custom-text-card, .invitation-canvas-shell,
  .invitation-share-bar, .event-library-admin-guide > div > span,
  .event-library-admin-album-number, .admin-tutorials-hero, .admin-tutorial-step,
  .admin-tutorials-empty, .admin-tutorials-loading, .gift-image-fallback, .gift-image-dropzone,
  .celebrax-public-text-editor-hero, .celebrax-public-text-mode,
  .celebrax-public-text-section-header, .celebrax-public-text-search-wrap
) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .invitation-format-options button.active, .invitation-category-tabs button.active,
  .invitation-add-text-btn, .invitation-qr-toggle, .invitation-text-drag-note,
  .admin-budget-category-badge, .admin-budget-category-control button,
  .admin-budget-form-total, .admin-budget-partial-balance,
  .event-library-admin-limit-notice, .event-library-admin-integration-status.is-action,
  .event-library-admin-add, .admin-tutorial-filter.is-active, .admin-tutorial-meta span,
  .celebrax-public-text-mode button.active,
  .celebrax-open-public-site, .celebrax-public-text-actions button, .celebrax-section-suggestion,
  .celebrax-text-inline-action, .celebrax-public-text-status:not([data-tone="success"])
) {
  background: var(--panel-tint) !important;
  border-color: var(--panel-selected-border) !important;
  color: var(--panel-accent-ink) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .dashboard-period-option.is-active, .dashboard-period-option[aria-pressed="true"],
  .admin-dashboard-tabs button.is-active, .invitation-btn.primary,
  .invitation-share-actions button:first-child, .invitation-share-heading > span,
  .invitation-upload-icon, .event-library-admin-drive-control button,
  .event-library-admin-save, .admin-tutorial-open,
  .community-tabs button.is-active
),
body.admin-body[data-panel-theme][data-theme-mode] .admin-tutorial-step::before {
  background: var(--panel-action-gradient) !important;
  border-color: var(--panel-accent) !important;
  color: var(--panel-on-accent) !important;
  box-shadow: none;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .dashboard-period-copy strong, .gift-image-preview strong,
  .celebrax-public-text-editor-hero h4, .celebrax-public-text-section-header h5,
  .celebrax-public-text-field label, .celebrax-public-text-search-wrap label
) { color: var(--panel-text) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .dashboard-period-copy span, .gift-image-preview small,
  .celebrax-public-text-editor-hero p, .celebrax-public-text-section-header span, .celebrax-public-text-help
) { color: var(--panel-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .admin-budget-import-drop > svg, .admin-budget-import-preview > header > span,
  .admin-budget-import-status:not(.is-error) strong, .admin-tutorials-section-kicker,
  .event-library-admin-integration-status > button
) { color: var(--panel-accent-ink) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-budget-expense-table, .admin-budget-import-table) th {
  background: var(--panel-soft);
  border-color: var(--panel-border);
  color: var(--panel-text);
}
body.admin-body[data-panel-theme][data-theme-mode] .admin-budget-expense-row:hover td { background: var(--panel-tint); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.invitation-studio-hero, .event-library-admin-hero) { background: var(--panel-hero-gradient) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .event-library-admin-hero::before { background: var(--panel-decoration-gradient); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.invitation-studio-kicker, .event-library-admin-kicker) { color: var(--panel-hero-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-tutorial-featured-media, .admin-tutorial-card-media).is-placeholder { background: var(--panel-hero-gradient); }

/* Primary button children must not inherit a legacy blanket dark span rule. */
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .btn-primary, .rsvp-details-btn, .admin-addon-primary, .sellable-btn.primary,
  .settings-tab.active, .agenda-view-tabs button.active, .admin-dashboard-tabs button.is-active,
  .admin-budget-primary, .admin-partners-tab.is-active, .admin-partner-open,
  .event-live-section-tab.is-active, .event-live-button.is-blue, .invitation-btn.primary,
  .event-library-admin-save, .admin-tutorial-open, .community-primary
) :is(span, strong, small, svg, i) { color: inherit !important; }
body.admin-body[data-panel-theme][data-theme-mode] .admin-dashboard-tabs button.is-active .admin-dashboard-tab-icon { background: transparent !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.event-live-card-heading > strong, .event-live-button.is-soft) { color: var(--panel-accent-ink); }
body.admin-body[data-panel-theme][data-theme-mode] .gift-image-dropzone:is(:hover, .is-dragging) { background: var(--panel-tint); border-color: var(--panel-accent); }
body.admin-body[data-panel-theme][data-theme-mode] :is(.event-live-admin-hero, .invitation-studio-hero, .event-library-admin-hero) :is(.event-live-phase, .event-library-admin-plan) { color: var(--panel-on-hero) !important; }

/* Provider modules used to redeclare these variables with fixed dark blues. */
html[data-theme][data-theme-preset] body.provider-portal-body :is(
  .provider-operations-toolbar, .provider-operation-metric, .provider-operations-panel,
  .provider-operation-modal > article, .provider-intelligence-metric, .provider-intelligence-panel
) {
  --provider-surface: var(--panel-surface);
  --provider-soft: var(--panel-soft);
  --provider-input: var(--panel-input);
  --provider-border: var(--panel-border);
  --provider-muted: var(--panel-muted);
  --provider-text: var(--panel-text);
  color: var(--panel-text);
}
html[data-theme][data-theme-preset] body.provider-portal-body .provider-contract-builder {
  --pcb-blue: var(--panel-accent);
  --pcb-blue-soft: var(--panel-tint);
  --pcb-card: var(--panel-surface);
  --pcb-bg: var(--panel-bg);
  --pcb-soft: var(--panel-soft);
  --pcb-border: var(--panel-border);
  --pcb-text: var(--panel-text);
  --pcb-muted: var(--panel-muted);
}
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-sidebar { background: var(--panel-hero-gradient) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-sidebar-nav button[data-provider-view].active {
  background: var(--panel-action-gradient) !important;
  border-color: var(--panel-accent) !important;
  color: var(--panel-on-accent) !important;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-primary, .provider-primary-button, .provider-upload-button,
  .provider-settings-tabs button.active, .provider-contract-actions .is-primary,
  .provider-opportunities-filters button.is-active, .provider-opportunity-actions button.is-primary,
  .provider-community-actions > .is-chat, .provider-community-comments form button,
  .provider-community-source > button:not(.community-generate-quote), .provider-community-chat form button,
  .pcb-topbar nav button.active, .pcb-builder-actions .is-primary, .pcb-card-actions .is-primary
) {
  background: var(--panel-action-gradient) !important;
  border-color: var(--panel-accent) !important;
  color: var(--panel-on-accent) !important;
  box-shadow: none;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-auth-card, .provider-app-card, .provider-theme-popover, .provider-user-dropdown,
  .provider-settings-card, .provider-settings-tabs, .provider-operation-modal > article,
  .provider-community-identity, .provider-community-composer, .provider-community-post,
  .provider-community-profile-card, .provider-community-reaction > span
) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-intro-note, .provider-community-hero, .provider-community-source,
  .provider-community-comments > article > div, .provider-community-actions > button:not(.is-chat),
  .provider-community-reaction > button, .provider-community-conversation-list > button,
  .provider-community-messages article, .provider-community-profile-card dl div,
  .provider-settings-status, .provider-whatsapp-preferences label, .provider-settings-locked,
  .provider-settings-actions .provider-secondary, .provider-intelligence-action
) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-community-messages article.is-own, .provider-community-conversation-list > button.is-active,
  .provider-community-avatar, .provider-community-menu-badge, .provider-settings-message:not(.is-error)
) {
  background: var(--panel-tint) !important;
  border-color: var(--panel-selected-border) !important;
  color: var(--panel-accent-ink) !important;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-kicker, .provider-agenda-item time, .provider-intelligence-agenda time,
  .provider-intelligence-funnel b, .provider-receipt-card a,
  .provider-contract-financial-card header span:first-child,
  .provider-settings-card a, .provider-settings-form legend,
  .provider-contract-builder .pcb-setup-error button
) { color: var(--panel-accent-ink) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-community-identity small, .provider-community-post > header small,
  .provider-community-stats, .provider-community-messages time,
  .provider-community-source small, .provider-community-source p,
  .provider-community-chat > header small, .provider-community-conversation-list > button small,
  .provider-community-profile-copy p, .provider-community-profile-copy > small, .provider-community-profile-card dt,
  .provider-settings-tabs button:not(.active), .provider-settings-card p,
  .provider-settings-status span, .provider-settings-status small, .provider-settings-form small
) { color: var(--panel-muted) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-operation-metric.is-closed::before,
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-chart-filter.is-contracts_closed::before { background: var(--panel-accent); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-chart-series.is-contracts_closed { color: var(--panel-accent-ink); }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-commercial-metric.is-conversation, .provider-intelligence-metric.is-contracts) {
  --provider-metric-color: var(--panel-accent);
  --metric-tone: var(--panel-accent);
}
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-dashboard-chart .grid { stroke: var(--panel-border); }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-dashboard-chart circle, .provider-chart-series circle) { fill: var(--panel-surface); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-commercial-metric.is-opportunity {
  background: var(--panel-tint);
  border-color: var(--panel-selected-border);
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-signature-review > a, .provider-review-document) {
  background: var(--panel-tint);
  border-color: var(--panel-selected-border);
  color: var(--panel-accent-ink);
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-signature-history a, .provider-installment-list a) { color: var(--panel-accent-ink); }
body.provider-portal-body[data-panel-theme][data-theme-mode="dark"] :is(
  .provider-signature-review.is-pending_review, .provider-signature-review.is-changes_requested,
  .provider-signature-review.is-approved, .provider-payment-plan.is-needs_attention
) { background: var(--panel-soft); }

body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-affiliate-visibility, .provider-affiliate-position-help,
  .provider-affiliate-visibility label, .provider-social-share, .provider-affiliate-position-help button
) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-affiliate-metric span, .provider-affiliate-breakdown span,
  .provider-affiliate-position-help span, .provider-affiliate-chart-empty
) { color: var(--panel-muted) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .provider-affiliate-empty-icon, .provider-affiliate-coupon-badge,
  .provider-tutorial-filters button.active, .provider-team-invite-brand
),
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-tutorial-step::before { background: var(--panel-action-gradient); color: var(--panel-on-accent); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-affiliate-format-picker button.is-active small { color: inherit !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-affiliate-bars i.is-click, .provider-affiliate-chart-legend i.is-click) { background: var(--panel-accent); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-affiliate-metric.is-click { border-top-color: var(--panel-accent) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-tutorial-featured-card { background: var(--panel-hero-gradient); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-tutorial-featured-card :is(p, small) { color: var(--panel-hero-muted); }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-tutorial-featured-card button, .provider-tutorial-card button) {
  background: var(--panel-surface);
  color: var(--panel-accent-ink);
}

/* Conversations/support are shared by both portals, not by the owner panel. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :where(
  .portal-chat-shell, .portal-chat-shell *, .portal-chat-dialog, .portal-chat-dialog *,
  .portal-support-shell, .portal-support-shell *, .portal-chat-charge-card
) {
  --portal-chat-surface: var(--panel-surface);
  --portal-chat-soft: var(--panel-soft);
  --portal-chat-input: var(--panel-input);
  --portal-chat-border: var(--panel-border);
  --portal-chat-text: var(--panel-text);
  --portal-chat-muted: var(--panel-muted);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-shell, .portal-chat-conversation-header, .portal-chat-composer,
  .portal-chat-document, .portal-chat-dialog, .portal-chat-message:not(.is-own),
  .portal-chat-help-actions a:not(.is-whatsapp), .portal-chat-help-actions button,
  .portal-chat-attachment-card, .portal-chat-charge-card, .portal-support-shell > section
) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-list, .portal-chat-messages, .portal-chat-list button,
  .portal-chat-list .portal-chat-group-toggle, .portal-chat-attachment-icon,
  .portal-chat-help-symbol, .portal-chat-contract-review:not(.is-pending):not(.is-changes):not(.is-approved)
) {
  background: var(--panel-soft) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-message.is-own, .portal-support-messages article.is-own,
  .portal-chat-list button.is-active, .portal-chat-attach, .portal-chat-company-tag,
  .portal-chat-document-heading > span, .portal-chat-document-actions .is-document,
  .portal-chat-pix-grid [data-portal-copy-value]
) {
  background: var(--panel-tint) !important;
  border-color: var(--panel-selected-border) !important;
  color: var(--panel-accent-ink) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-launcher, .portal-chat-composer > button:not(.portal-chat-attach),
  .portal-chat-charge-actions button, .portal-chat-charge-actions a,
  .portal-chat-pix-grid [data-portal-copy-value]:last-child,
  .portal-support-layout > aside .is-new, .portal-support-form .is-primary, .portal-support-composer button,
  .portal-chat-dialog-actions .is-primary, .account-2fa-dialog footer .is-primary
) {
  background: var(--panel-action-gradient) !important;
  border-color: var(--panel-accent) !important;
  color: var(--panel-on-accent) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(.portal-chat-header, .portal-support-shell > section > header, .portal-chat-identity-avatar) {
  background: var(--panel-hero-gradient) !important;
  color: var(--panel-on-hero) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-help-hub h3, .portal-chat-document-heading > strong, .portal-chat-document-total strong
) { color: var(--panel-text) !important; }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-help-hub > p, .portal-chat-help-actions small, .portal-chat-conversation-copy small,
  .portal-chat-document-meta small, .portal-chat-document-meta time, .portal-chat-document-validity,
  .portal-chat-document-total span, .portal-chat-message time, .portal-chat-contract-review p
) { color: var(--panel-muted) !important; }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(
  .portal-chat-help-hub > small, .portal-chat-charge-card header small,
  .portal-support-layout > aside [data-support-ticket-id] span
) { color: var(--panel-accent-ink) !important; }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .portal-support-layout > aside [data-support-ticket-id].active {
  border-color: var(--panel-accent);
  box-shadow: inset 4px 0 var(--panel-accent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .portal-support-form-intro { border-color: var(--panel-accent); }

/* Language controls inherit the panel; SVG flags and palette swatches do not. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(.language-trigger, .language-menu, .account-2fa-button, .account-2fa-dialog, .account-2fa-secret) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .account-2fa-dialog p { color: var(--panel-muted); }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(.portal-chat-launcher, .portal-chat-header, .portal-support-shell > section > header) :is(span, strong, small) { color: inherit !important; }

/* Onboarding and shared feedback have their own legacy palette as well. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(.celebrax-ux-toast, .celebrax-ux-empty) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
  color: var(--panel-text) !important;
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-ux-empty button {
  background: var(--panel-accent);
  color: var(--panel-on-accent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-ux-field-error { color: var(--panel-danger); }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-journey {
  background: linear-gradient(135deg, var(--panel-surface), var(--panel-soft)) !important;
  border-color: var(--panel-border) !important;
  box-shadow: 0 16px 38px color-mix(in srgb, var(--panel-nav) 8%, transparent);
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.celebrax-ux-step, .celebrax-ux-collapse) {
  background: var(--panel-surface) !important;
  border-color: var(--panel-border) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-step.is-complete {
  background: color-mix(in srgb, var(--cx-ux-mint) 10%, var(--panel-surface)) !important;
  border-color: color-mix(in srgb, var(--cx-ux-mint) 32%, var(--panel-border)) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.celebrax-ux-journey h3, .celebrax-ux-step strong, .celebrax-ux-collapse) { color: var(--panel-text) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.celebrax-ux-journey-header p, .celebrax-ux-progress-row, .celebrax-ux-step small) { color: var(--panel-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-step:not(.is-complete) .celebrax-ux-step-index {
  background: var(--panel-tint);
  color: var(--panel-accent-ink) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-progress-row progress { background: var(--panel-border); }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-progress-row progress::-webkit-progress-bar { background: var(--panel-border); }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-progress-row progress::-webkit-progress-value { background: var(--panel-action-gradient); }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-progress-row progress::-moz-progress-bar { background: var(--panel-action-gradient); }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-next { background: var(--panel-hero-gradient) !important; color: var(--panel-on-hero) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-next strong { color: var(--panel-on-hero) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-next :is(small, .celebrax-ux-next-label) { color: var(--panel-hero-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-next button {
  background: var(--panel-surface);
  color: var(--panel-accent-ink) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-collapse::after { color: var(--panel-text) !important; }
@media (max-width: 720px) {
  /* Keep the existing icon-only mobile collapse control. */
  body.admin-body[data-panel-theme][data-theme-mode] .celebrax-ux-collapse { color: transparent !important; }
}

/* Loading is decoration, not a status: it follows the selected palette. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading { background: var(--panel-bg); }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading::before { background: var(--panel-decoration-gradient); }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading::after {
  border-color: var(--panel-border);
  box-shadow: 0 0 0 48px color-mix(in srgb, var(--panel-accent) 3%, transparent), 0 0 0 104px color-mix(in srgb, var(--panel-accent) 2%, transparent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading-card {
  background: var(--panel-surface);
  border-color: var(--panel-border);
  box-shadow: 0 28px 90px color-mix(in srgb, var(--panel-nav) 13%, transparent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading-spinner {
  background: conic-gradient(var(--panel-accent), var(--panel-soft), var(--panel-accent-strong), var(--panel-accent));
  box-shadow: 0 14px 32px color-mix(in srgb, var(--panel-accent) 18%, transparent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading-spinner::before {
  background: var(--panel-surface);
  box-shadow: inset 0 0 0 1px var(--panel-border);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-global-loading-spinner::after {
  background: var(--panel-accent);
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--panel-accent) 8%, transparent);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-standard-loading-text::before,
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-inline-loading::before {
  border-color: var(--panel-border);
  border-top-color: var(--panel-accent);
  border-right-color: var(--panel-accent-strong);
}

/* Upload affordances are themed; the actual image/QR/document remains intact. */
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-image-drop-feedback {
  background: var(--panel-soft);
  border-color: var(--panel-selected-border);
}
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-image-drop-feedback:not(.is-error):not(.is-success) { color: var(--panel-text); }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-image-drop-hint svg { color: var(--panel-accent-ink) !important; }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-image-drop-hint small { color: var(--panel-muted) !important; }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-image-drop-target.is-image-dragover {
  outline-color: var(--panel-accent) !important;
  background-color: var(--panel-tint) !important;
  box-shadow: 0 0 0 7px color-mix(in srgb, var(--panel-accent) 9%, transparent) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-context-settings-badge, .invitation-upload-copy em) {
  background: var(--panel-tint) !important;
  color: var(--panel-accent-ink) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .admin-context-settings-card p, .admin-context-settings-card small,
  .settings-card small, .settings-panel small, .settings-card-intro p, .settings-accordion-header small,
  .admin-tutorials-search svg
) { color: var(--panel-muted) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-table code, .agenda-section-kicker, .agenda-accordion-toggle small) { color: var(--panel-accent-ink) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(.admin-budget-ghost, .event-library-admin-empty, .invitation-studio-hero, .event-library-admin-hero) { border-color: var(--panel-border) !important; }
body.admin-body[data-panel-theme][data-theme-mode] :is(
  .share-social-btn, .invitation-share-actions button:not(:first-child):not(:nth-child(2)),
  .invitation-image-actions button:not(:last-child)
) { background: var(--panel-surface) !important; border-color: var(--panel-border) !important; }
body.admin-body[data-panel-theme][data-theme-mode] .invitation-image-actions button:last-child {
  background: color-mix(in srgb, var(--panel-danger) 9%, var(--panel-surface)) !important;
  border-color: color-mix(in srgb, var(--panel-danger) 32%, var(--panel-border)) !important;
  color: var(--panel-danger) !important;
}
body.admin-body[data-panel-theme][data-theme-mode] .invitation-template-badge { background: var(--panel-nav); color: var(--panel-on-hero) !important; }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.provider-nav-section-label, .provider-nav-section) { color: var(--panel-hero-muted); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-document-total { background: var(--panel-hero-gradient); color: var(--panel-on-hero); }
body.provider-portal-body[data-panel-theme][data-theme-mode] .provider-document-total :is(span, strong) { color: inherit; }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(
  .pcb-auto-data, .pcb-step-heading > span, .pcb-auto-data > span, .pcb-builder-actions .is-secondary,
  .provider-opportunity-status[data-status="quote_sent"], .provider-opportunity-status[data-status="negotiation"],
  .provider-opportunity-status[data-status="in_contact"]
) { background: var(--panel-tint); border-color: var(--panel-selected-border); color: var(--panel-accent-ink); }
body.provider-portal-body[data-panel-theme][data-theme-mode] :is(.pcb-status[data-status="draft"], .provider-status-pill.is-draft) { background: var(--panel-soft); color: var(--panel-muted); }
body.guest-operations[data-panel-theme][data-theme-mode] .guest-brand { color: var(--panel-text); }
body.guest-operations[data-panel-theme][data-theme-mode] .guest-final-source { color: var(--panel-muted); }
body.guest-operations[data-panel-theme][data-theme-mode] .guest-portaria-upsell { border-color: var(--panel-selected-border); }
body.guest-operations[data-panel-theme][data-theme-mode] .guest-toast { background: var(--panel-nav); color: var(--panel-on-hero); }
body.guest-operations[data-panel-theme][data-theme-mode] .portaria-login-help { background: var(--panel-soft); border-color: var(--panel-border); }
body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] .celebrax-language-switcher { color: var(--panel-text); }

@media (forced-colors: active) {
  body:is(.admin-body, .provider-portal-body, .guest-operations)[data-panel-theme][data-theme-mode] :is(button, a, input, select, textarea, summary):focus-visible { outline-color: Highlight !important; }
}
