/* Module compatibility for the neutral ElevenLabs shell in both themes.
   Application chrome is normalized. Status colors, charts, media,
   document canvases and user-selected colors retain their own palettes. */
:root[data-bs-theme] body {
  --input-color: var(--dt-field-bg);
  --card-bg: var(--dt-surface);
  --falcon-light: var(--dt-surface);
  --falcon-card-bg: var(--dt-surface);
  --falcon-input-bg: var(--dt-field-bg);
  --falcon-popover-bg: var(--dt-overlay);
  --bs-body-bg: var(--dt-app);
  --bs-secondary-bg: var(--dt-surface-2);
  --bs-tertiary-bg: var(--dt-surface-3);
  --bs-emphasis-color: var(--dt-text);
  --bs-secondary-color: var(--dt-muted);
}
:root[data-bs-theme="dark"] body { --bs-secondary-rgb: 163, 163, 163; }
:root[data-bs-theme="dark"] body :is(
  #akicontenidonormal, #sa_page, #sa_nav_dialog, #overviewClasico, #daliaHome, .aag, .ai-agent-editor
) {
  --input-color: var(--dt-field-bg) !important;
  --card-bg: var(--dt-surface) !important;
  --bg-2: var(--dt-surface) !important;
  --bg-3: var(--dt-surface-2) !important;
  --nav-bg: var(--dt-sidebar) !important;
  --aag-surface: var(--dt-surface) !important;
  --aag-surface2: var(--dt-surface-2) !important;
  --aivs-bg: var(--dt-app) !important;
  --aivs-surface: var(--dt-surface) !important;
  --aivs-surface-2: var(--dt-surface-2) !important;
  --aivs-surface-3: var(--dt-surface-3) !important;
  --aivc-bg: var(--dt-app) !important;
  --aivc-panel: var(--dt-surface) !important;
  --ams-bg: var(--dt-app) !important;
  --ams-surface: var(--dt-surface) !important;
  --ams-surface-2: var(--dt-surface-2) !important;
  --ams-surface-3: var(--dt-surface-3) !important;
  --wz-card: var(--dt-surface) !important;
  --el-shell-bg: var(--dt-app) !important;
  --el-stage-bg: var(--dt-surface) !important;
  --el-card-stone: var(--dt-surface-2) !important;
  --el-dock-bg: var(--dt-surface-3) !important;
  --ovc-chip-bg: var(--dt-surface-2) !important;
  --ovc-input-bg: var(--dt-field-bg) !important;
}
:root[data-bs-theme="dark"] body #akicontenidonormal :is(
  .card, .bg-white, .bg-light, .bg-body, .bg-primary-subtle, .bg-light-primary,
  .grid.box .grid-body, .rpt-perpage-menu, .rpt-add-col-th, .rpt-addcol-popover,
  .sg-card, .sg-price, .fbads-card, .fbads-connect-box
) {
  background-color: var(--dt-surface) !important;
  color: var(--dt-text);
  border-color: var(--dt-border) !important;
}
:root[data-bs-theme="dark"] body #akicontenidonormal :is(
  .chats-rail, .grid.box.blue .grid-title, .inbox-markall-banner,
  .sg-stat-indigo, .sg-stat-blue, .wfc-card__icon--blue, .wfc-card__icon--indigo
) { background: var(--dt-surface-2) !important; color: var(--dt-text) !important; }

/* Local primary buttons previously inverted text ink into a white surface. */
:root[data-bs-theme="dark"] body :is(
  .bu-workspace .btn-primary, .bu-primary-action, .bu-btn-active, #billingusage_noplan .btn,
  #overviewClasico .ovd-ask-go, #sa_page #sa_chat_go,
  .chats-icon-btn--primary, .cfgmail-bar__btn, .cfgmail-btn, .ws-input-group__btn,
  .pn-inline-controls .pn-btn--primary, .ei-button.ei-primary,
  .aivs-empty button, .aivs-tts-action.primary, #callDetailsApp #cdBtnApply,
  #sa_nav_dialog .sa-nav-btn.is-pri, #sa_page .sa-wz-btn.dark,
  .aivc-panel-button, .aivc-transport .aivc-icon-btn[aria-pressed="true"],
  .aag-btn-use-tpl, .aag-big-conic-callbtn, .aag-prv-send-btn, .aag-btn-dark-pill,
  .bm .btn-primary, #overviewClasico .el-btn-ink, #overviewClasico .ovd-ap-btn.dark,
  .amsc-play-btn, .el-tpl-use-btn, .el-aset-btn-primary, .el-aset-apply-btn,
  .el-prv-ctrl-btn.primary, .el-dock-pill-btn.call,
  .ovd-refresh-btn, #salesn-root .salesn-pop .salesn-btn.primary,
  #costUsageApp .btn-primary, .el-cfg-send, .el-cfg-catpill.is-active,
  .aag-panel__btn--primary, .ams-generation-submit, .aivs-generate,
  .ovc-submit-cta, .ovc-arch-watch, .el-arch-send, .el-cta-main, .el-play-pill,
  #liveCallToggleBtn, .el-arch-watch, .el-studio-orb-call-btn,
  .el-studio-inline-send, .el-tpl-cat-btn.active
) {
  background: var(--el-module-button-bg, var(--dt-cta)) !important;
  border-color: transparent !important;
  color: var(--dt-cta-fg) !important;
  box-shadow: none !important;
}
/* Inline controls generated by older modules can still carry literal white. */
:root[data-bs-theme="dark"] body #akicontenidonormal :is(button, a.btn):not([class*="swatch"]):not([class*="color"]):not(:where(.btn-light, .btn-white, .btn-secondary, .btn-outline-secondary, .btn-outline-primary, .btn-outline-dark, .btn-default)):is(
  [style*="background:#fff"], [style*="background: #fff"],
  [style*="background-color:#fff"], [style*="background-color: #fff"]
) { background: var(--el-module-button-bg, var(--dt-cta)) !important; color: var(--dt-cta-fg) !important; border-color: transparent !important; }

/* Search wrappers own the focus boundary; inner fields never add another box. */
@media (forced-colors: none) {
  :root[data-bs-theme] body :is(
    [class*="search"], [class*="searchbox"], [class*="search-box"]
  ):focus-within {
    outline: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
  }
  :root[data-bs-theme] body :is(
    input[type="search"], input[class*="search"],
    [class*="search"] input:not([type="checkbox"]):not([type="radio"])
  ):is(:focus, :focus-visible) {
    outline: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
  }
}

:root[data-bs-theme="dark"] body :is(button, a.btn):hover:not(:disabled) {
  --el-module-button-bg: var(--dt-cta-hover);
}
:root[data-bs-theme="dark"] body #akicontenidonormal :is(
  .sg-stat:hover, .sg-refresh-btn, .fbads-mapping-item:hover,
  .sg-card-badge, .fbads-card-badge, .fbads-map-fb-type, .el-wf-cond-pill
) { background: var(--dt-surface-2) !important; color: var(--dt-text) !important; }
:root[data-bs-theme="dark"] body #akicontenidonormal :is(.sg-tool-divider, .fbads-settings-divider) { background: var(--dt-border) !important; }

:root[data-bs-theme] body .ams-player-thumb { background-color: var(--dt-surface-2) !important; }

/* Drawers and period selectors also exist in the light theme. Keep selected
   periods distinct instead of painting every period as a primary button. */
:root[data-bs-theme] body .fixblockiz {
  background: var(--dt-overlay);
  color: var(--dt-text);
  border-color: var(--dt-border);
}
:root[data-bs-theme] body .fixblockiztit {
  background: var(--dt-surface-2);
  color: var(--dt-text);
  border-bottom: 1px solid var(--dt-border);
}
:root[data-bs-theme] body #akicontenidonormal .ovd-period-bar button {
  background: var(--dt-surface) !important;
  color: var(--dt-muted) !important;
  border-color: var(--dt-border-strong) !important;
}
:root[data-bs-theme] body #akicontenidonormal .ovd-period-bar button:hover {
  background: var(--dt-hover) !important;
  color: var(--dt-text) !important;
}
:root[data-bs-theme] body #akicontenidonormal .ovd-period-bar button.active {
  background: var(--dt-cta) !important;
  color: var(--dt-cta-fg) !important;
}

/* Domain registration lives in a portal under body, outside the module host. */
:root[data-bs-theme] body #domainsregister-modal {
  --dreg-accent: var(--dt-cta);
  --dreg-accent-hover: var(--dt-cta-hover);
  --dreg-accent-soft: var(--dt-active);
  --dreg-accent-border: var(--dt-border-strong);
  --dreg-accent-text: var(--dt-text);
  --dreg-brand: var(--dt-text);
  --dreg-on-accent: var(--dt-cta-fg);
  --dreg-toggle-track: var(--dt-surface-3);
  --dreg-toggle-border: var(--dt-border-strong);
  --dreg-toggle-knob: var(--dt-muted);
}
:root[data-bs-theme] body #domainsregister-modal .dreg-svc:has(input:checked) {
  background: var(--dt-active);
  border-color: var(--dt-border-strong);
}
:root[data-bs-theme] body .pn3-step-activo > .pn3-step-cab .pn3-step-num {
  background: var(--dt-cta);
  color: var(--dt-cta-fg);
  border-color: var(--dt-border-strong);
}
:root[data-bs-theme] body .se-btn--primary {
  background: var(--dt-cta);
  color: var(--dt-cta-fg);
  border-color: var(--dt-border-strong);
}
:root[data-bs-theme] body .se-btn--primary:hover { background: var(--dt-cta-hover); }

/* Presentation only: account verification keeps its existing flow and states. */
:root[data-bs-theme] body .ovd-verify-tour {
  background: var(--dt-overlay);
  color: var(--dt-text);
}
:root[data-bs-theme] body :is(.ovd-vt-panel, .ovd-vt-face, .ovd-verify-tour-icon, .ovd-vt-step .num) {
  background: var(--dt-surface-2);
  border-color: var(--dt-border);
}
:root[data-bs-theme] body :is(.ovd-verify-tour-body h6, .ovd-vt-success h6, .ovd-vt-panel label, .ovd-verify-tour-icon i) { color: var(--dt-text); }
:root[data-bs-theme] body :is(.ovd-verify-tour-body p, .ovd-vt-success p, .ovd-verify-tour-footer, .ovd-vt-step, .ovd-vt-status .info) { color: var(--dt-muted); }
:root[data-bs-theme] body :is(.ovd-vt-credits, .ovd-vt-status .ok, .ovd-vt-success i:not(.warn)) { color: var(--dt-success); }
:root[data-bs-theme] body .ovd-vt-status .ko { color: var(--dt-danger); }
:root[data-bs-theme] body .ovd-vt-success i.warn { color: var(--dt-warning); }
:root[data-bs-theme] body .ovd-verify-tour-badge { color: var(--dt-success); background: color-mix(in srgb, var(--dt-success) 12%, transparent); }
:root[data-bs-theme] body .ovd-vt-step { border-color: var(--dt-border-strong); }
:root[data-bs-theme] body .ovd-vt-step.is-on { color: var(--dt-text); border-color: var(--dt-focus); }
:root[data-bs-theme] body .ovd-vt-step.is-on .num { background: var(--dt-active); color: var(--dt-text); }
:root[data-bs-theme] body .ovd-vt-step.is-done { color: var(--dt-success); border-color: var(--dt-success); }
:root[data-bs-theme] body .ovd-vt-step.is-done .num { color: var(--dt-success); background: color-mix(in srgb, var(--dt-success) 12%, transparent); }
:root[data-bs-theme] body .ovd-vt-btn {
  background: var(--dt-cta);
  color: var(--dt-cta-fg);
}
:root[data-bs-theme] body .ovd-vt-btn:hover:not(:disabled) { background: var(--dt-cta-hover); }
:root[data-bs-theme] body .ovd-vt-btn.ghost { background: var(--dt-surface-2); color: var(--dt-text); border-color: var(--dt-border-strong); }


/* Shared presentation adapters for legacy renderers, including markup generated
   by the table, modal and select engines. Only visual properties are normalized. */
:root[data-bs-theme] body :is(.body-wrapper, .body-wrapper > .container-fluid, #akicontenidonormal, .module, .module__content, .py-container) {
 background-color:var(--dt-app) !important; color:var(--dt-text); border:0; box-shadow:none;
}
:root[data-bs-theme] body #akicontenidonormal { border-radius:0; }
:root[data-bs-theme] body :is(.app-header, .left-sidebar) { background-color:var(--dt-app) !important; border-color:transparent !important; box-shadow:none !important; }
:root[data-bs-theme] body :is(.card, .dui-card, .dui-stat-card, .dui-table-shell, .dui-surface,
 .ai-card, .aag-panel, .aag-card, .v2_card, .v2_topbar, .v2_month_block, .py-stat-card,
 .sa-card, .sa-wz-card, .sa-config-sections, .sg-card, .fbads-card, .cs-card,
 .ce-card, .pn-card, .el-stone-card, .hairline-card, .corner-glow-card) {
 background-color:var(--dt-surface); color:var(--dt-text); border:0 !important;
 border-radius:var(--dt-radius-lg); box-shadow:none !important;
}
:root[data-bs-theme] body :is(.card-header, .card-footer,
 .ai-card-header, .v2_card_header, .sa-config-section, .dui-tabs-underline) { border-color:transparent !important; box-shadow:none; }
:root[data-bs-theme] body :is(.dropdown-menu, .dui-select__dropdown, .dui-dropdown__menu, .select2-dropdown,
 .choices__list--dropdown, .choices__list[aria-expanded], .dts-dropdown-menu,
 .sb-switch-pop, .sb-section-picker, .sb-more-popover, .sb-el-cmd-modal):not(:where(.dui-select__dropdown--clean)) {
 background:var(--dt-overlay) !important; color:var(--dt-text); border:0 !important;
 border-radius:var(--dt-radius-lg); box-shadow:var(--dt-pop-shadow) !important;
}
/* Controls have their own surface on both the canvas and cards. Never infer a
   field's background from a partial list of its possible parent containers. */
:root[data-bs-theme] body :is(.btn, .dui-button, .sa-wz-btn, .sa-b,
 .el-studio-btn-ghost, .el-studio-publish-btn, .aag-btn-dark-pill, .aag-btn-use-tpl) {
 border-color:transparent !important; border-radius:var(--dt-radius) !important;
 box-shadow:none !important;
}
:root[data-bs-theme] body :is(.btn-primary, .btn-dark, .dui-button--primary, .sa-wz-btn.dark,
 .ai-btn-primary, .el-studio-publish-btn, .aag-btn-use-tpl, .aag-big-conic-callbtn) {
 background:var(--dt-cta) !important; color:var(--dt-cta-fg) !important;
}
:root[data-bs-theme] body :is(.btn-primary, .btn-dark, .dui-button--primary, .sa-wz-btn.dark,
 .ai-btn-primary, .el-studio-publish-btn, .aag-btn-use-tpl, .aag-big-conic-callbtn):hover:not(:disabled):not(.disabled) {
 background:var(--dt-cta-hover) !important;
}
:root[data-bs-theme] body :is(.btn-outline-secondary, .btn-outline-primary, .btn-outline-dark,
 .btn-light, .btn-white, .btn-secondary, .btn-default, .dui-button:not(.dui-button--primary):not(.dui-button--quiet),
 .sa-wz-btn:not(.dark), .ai-btn-secondary, .ai-btn-glass, .el-studio-btn-ghost) {
 background:var(--dt-field-bg) !important; color:var(--dt-text) !important;
}
:root[data-bs-theme] body :is(.btn-outline-secondary, .btn-outline-primary, .btn-outline-dark,
 .btn-light, .btn-white, .btn-secondary, .btn-default, .dui-button:not(.dui-button--primary):not(.dui-button--quiet),
 .sa-wz-btn:not(.dark), .ai-btn-secondary, .ai-btn-glass, .el-studio-btn-ghost):hover:not(:disabled):not(.disabled) {
 background:var(--dt-field-hover) !important;
}
:root[data-bs-theme] body :is(.btn-danger, .btn-outline-danger) { --dt-button-bg:var(--dt-chip-danger); --dt-button-fg:var(--dt-chip-danger-fg); }
:root[data-bs-theme] body :is(.btn-success, .btn-outline-success) { --dt-button-bg:var(--dt-chip-success); --dt-button-fg:var(--dt-chip-success-fg); }
:root[data-bs-theme] body :is(.btn-warning, .btn-outline-warning) { --dt-button-bg:var(--dt-chip-warning); --dt-button-fg:var(--dt-chip-warning-fg); }
:root[data-bs-theme] body :is(.btn-info, .btn-outline-info) { --dt-button-bg:var(--dt-chip-channel); --dt-button-fg:var(--dt-chip-channel-fg); }
:root[data-bs-theme] body :is(.btn-danger, .btn-outline-danger, .btn-success, .btn-outline-success,
 .btn-warning, .btn-outline-warning, .btn-info, .btn-outline-info) {
 background:var(--dt-button-bg) !important; color:var(--dt-button-fg) !important;
}
:root[data-bs-theme] body :is(.btn-danger, .btn-outline-danger, .btn-success, .btn-outline-success,
 .btn-warning, .btn-outline-warning, .btn-info, .btn-outline-info):hover:not(:disabled):not(.disabled) {
 background:color-mix(in srgb, var(--dt-button-fg) 10%, var(--dt-button-bg)) !important;
}
:root[data-bs-theme] body :is(.form-control, .form-select, .ai-input, .ai-select, .ai-textarea,
 .dui-select__trigger, .select2-selection, .choices__inner, .dui-field,
 :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]), select, textarea)) {
 border:0 !important; box-shadow:none !important; color:var(--dt-text) !important;
 background-color:var(--dt-field-surface, var(--dt-field-bg)) !important; border-radius:var(--dt-control-radius);
}
:root[data-bs-theme] body :is(input, textarea)::placeholder {
 color:var(--dt-muted) !important; opacity:1;
}
:root[data-bs-theme] body :is(.dt-search-field, .dui-dt-search, .actionbar__search,
 .pn-service-search, .sb-picker-searchbox, .salesn-search, .aivs-search,
 .aivs-avatar-search, .aivs-voice-search, .aivs-tts-history-search, .vp-search,
 .ai-search-box, .ai-lang-search, .el-tpl-search-box, .inbox-search-wrapper) {
 background:var(--dt-field-bg); border:0 !important; border-radius:var(--dt-control-radius); box-shadow:none !important;
}
:root[data-bs-theme] body :is(.dt-search-field, .dui-dt-search, .actionbar__search,
 .pn-service-search, .sb-picker-searchbox, .salesn-search, .aivs-search,
 .aivs-avatar-search, .aivs-voice-search, .aivs-tts-history-search, .vp-search,
 .ai-search-box, .ai-lang-search, .el-tpl-search-box, .inbox-search-wrapper):focus-within {
 background:var(--dt-field-hover);
}
:root[data-bs-theme] body :is(.dt-search-field, .dui-dt-search, .actionbar__search,
 .pn-service-search, .sb-picker-searchbox, .salesn-search, .aivs-search,
 .aivs-avatar-search, .aivs-voice-search, .aivs-tts-history-search, .vp-search,
 .ai-search-box, .ai-lang-search, .el-tpl-search-box, .inbox-search-wrapper,
 .sb-el-cmd-search, .dui-select__search-wrap, .select2-search--dropdown,
 .choices__inner, .choices__list--dropdown, li.menusearchmarcc)
 :is(input, select) { background:transparent !important; border:0 !important; box-shadow:none !important; }
:root[data-bs-theme] body :is(.dui-segmented, .dui-seg, .sa-seg, .aivs-tabs, .ai-tabs) { border:0 !important; box-shadow:none; }
:root[data-bs-theme] body :is(.dui-segmented__btn, .dui-seg__opt, .sa-seg button):is(.active, .is-active, [aria-selected="true"]) {
 border-color:transparent !important; background:var(--dt-surface); color:var(--dt-text); box-shadow:none;
}
/* Preserve semantic colors and the error/focus affordances without permanent frames. */
:root[data-bs-theme] body .alert-warning { background:var(--dt-chip-warning) !important; color:var(--dt-chip-warning-fg) !important; border:0 !important; }
:root[data-bs-theme] body .alert-danger { background:var(--dt-chip-danger) !important; color:var(--dt-chip-danger-fg) !important; border:0 !important; }
:root[data-bs-theme] body .alert-success { background:var(--dt-chip-success) !important; color:var(--dt-chip-success-fg) !important; border:0 !important; }
 :root[data-bs-theme] body :is(button, [role="button"], [tabindex]):not(:where(.dui-tabs-underline__tab, .ai-tab, .el-aset-subtab)):focus-visible {
 outline:2px solid var(--dt-focus) !important; outline-offset:-2px;
}
:root[data-bs-theme] body :is(input, select, textarea).is-invalid,
:root[data-bs-theme] body :is(input, select, textarea).invalid,
:root[data-bs-theme] body :is(input, select, textarea)[aria-invalid="true"],
:root[data-bs-theme] body .was-validated :is(input, select, textarea):invalid {
 box-shadow:inset 0 0 0 1px var(--dt-danger) !important;
}
@media (forced-colors: none) {
 :root[data-bs-theme] body :is(.form-control, .form-select, .ai-input, .ai-select, .ai-textarea, .dui-select__trigger, .dui-field,
 :where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]), select, textarea)):not(:where(.is-invalid, .invalid, [aria-invalid="true"], .was-validated :invalid)):focus-visible {
  --dt-field-surface:var(--dt-field-hover);
  outline:0 !important; box-shadow:none !important;
 }
}
@media (forced-colors: active) {
 :root[data-bs-theme] body :is(.card, .dui-card, .dui-surface, .modal-content,
 .dropdown-menu, .dui-select__trigger, .form-control, .form-select, .btn) { border:1px solid CanvasText !important; }
 :root[data-bs-theme] body :is(input, select, textarea, button, [role="button"], [tabindex]):focus-visible { outline:2px solid Highlight !important; }
}
