/* Every theme owns its visual identity; action colors are semantic across themes. */
html[data-crm-theme]{--action-alt:#f97316;--action-alt-hover:#ea580c;--action-alt-ink:#172334;--action-secondary:#243b60;--action-secondary-hover:#172b49;--action-soft:#edf2fa;--action-disabled:#d5ddea;--action-disabled-ink:#526174}
html[data-crm-theme="emerald"]{--action-alt:#0f766e;--action-alt-hover:#115e59;--action-alt-ink:#fff;--action-secondary:#064e3b;--action-secondary-hover:#043b2d;--action-soft:#edf5f1;--action-disabled:#d1e1d9;--action-disabled-ink:#435f53}
html[data-crm-theme="solar"]{--action-alt:#172554;--action-alt-hover:#101b3e;--action-alt-ink:#fff;--action-secondary:#7c2d12;--action-secondary-hover:#63230e;--action-soft:#fff3e8;--action-disabled:#ead8c9;--action-disabled-ink:#705442}
html[data-crm-theme="violet"]{--action-alt:#4338ca;--action-alt-hover:#3730a3;--action-alt-ink:#fff;--action-secondary:#4c1d95;--action-secondary-hover:#3b1775;--action-soft:#f3effa;--action-disabled:#dfd7ee;--action-disabled-ink:#625174}
html[data-crm-theme="red"]{--action-alt:#334155;--action-alt-hover:#1e293b;--action-alt-ink:#fff;--action-secondary:#7f1d1d;--action-secondary-hover:#651717;--action-soft:#faf0f0;--action-disabled:#ead6d6;--action-disabled-ink:#705050}
/* Visual hierarchy verified on the real CRM pages. Neutral surfaces, deliberate color. */
html[data-crm-theme]{--theme-tint:#f1f3f6!important;--theme-canvas:#f5f6f8!important;--theme-line:#d9e0e8!important;--theme-muted:#526174;--theme-shadow:0 4px 16px rgba(23,35,52,.045)}
html[data-crm-theme] body.crm-app #sidebar .sidebar-menu a.active,
html[data-crm-theme] body.crm-app #sidebar .sidebar-menu a.active:hover{background:var(--theme-primary)!important;color:#fff!important;border-color:var(--theme-primary)!important;box-shadow:none!important}
html[data-crm-theme] body.crm-app #sidebar .sidebar-menu a.active :is(span,i,svg){color:#fff!important}
html[data-crm-theme] body.crm-app #sidebar .sidebar-menu-toggle.active{background:#fff!important;color:var(--theme-ink)!important;border-color:transparent!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.crm-kpi-card,.db-kpi,.adm-card,.adm-panel,.db-panel,.funil-botao){box-shadow:var(--theme-shadow)!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.crm-kpi-card__label,.crm-kpi-card__footer-label,.db-kpi__label,.crm-brand__eyebrow,.admin-nav-group-label){color:#526174!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.crm-kpi-card__icon,.db-kpi__icon){background:var(--theme-primary)!important;color:#fff!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.crm-kpi-card__icon,.db-kpi__icon) :is(i,svg){color:#fff!important}
html[data-crm-theme] body.crm-app .status-summary-card[aria-pressed="true"]{background:#fff!important;border-color:var(--theme-primary)!important;box-shadow:inset 0 3px 0 var(--theme-primary)!important}
html[data-crm-theme] body.crm-app :is(.crm-kpi-card,.funil-botao)[aria-pressed="false"]{background:#fff!important}
html[data-crm-theme] body.crm-app :is([data-status-summary="reprovado"],[data-status-summary="perdido"],.crm-kpi-card:has(.fa-triangle-exclamation)) .crm-kpi-card__icon{background:#b91c1c!important;color:#fff!important}
html[data-crm-theme] body.crm-app :is([data-status-summary="negociacao"],[data-summary="em_rotacao"],.db-kpi--money) :is(.crm-kpi-card__icon,.db-kpi__icon){background:#f97316!important;color:#172334!important}
html[data-crm-theme] body.crm-app :is([data-status-summary="negociacao"],[data-summary="em_rotacao"],.db-kpi--money) :is(.crm-kpi-card__icon,.db-kpi__icon) :is(i,svg){color:#172334!important}
/* Quiet secondary actions. Orange is reserved for a positive alternative, never Cancel. */
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn.btn-secondary,.crm-btn.crm-btn--secondary,.fin-btn.fin-btn--secondary,.btn-outline-secondary,.btn-cancel,.btn-cancel-custom,.eng-eixo-reset){background:#fff!important;color:#334155!important;border:1px solid #b8c3d1!important;box-shadow:none!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4) :is(.btn-outline-danger,.eng-eixo-remove){background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important;box-shadow:none!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4) :is(.btn-outline-primary,.eng-eixo-add){background:var(--theme-primary)!important;color:#fff!important;border-color:var(--theme-primary)!important;box-shadow:none!important}
html[data-crm-theme] body.page-propostas .pp-btn-toolbar--servico{background:#f97316!important;color:#172334!important;border-color:#f97316!important;box-shadow:none!important}
html[data-crm-theme] body.page-propostas .pp-btn-toolbar--lucro{background:#fff!important;color:#334155!important;border:1px solid #b8c3d1!important;box-shadow:none!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.modal-close,.crm-modal__close,.agenda-modal__close):hover{background:#e5e9ef!important;color:#172334!important;border-color:#b8c3d1!important}
/* Form fields are white; readonly fields are distinguishable without flooding the form. */
html[data-crm-theme] body.admin-app.adm-v4 :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]):not([type="submit"]),select,textarea),
html[data-crm-theme] body.page-propostas #modalProposta .form-group :is(input,select,textarea){background:#fff!important;color:#172334!important;border:1px solid #c4cdd9!important;box-shadow:none!important}
html[data-crm-theme] body.admin-app.adm-v4 :is(input[readonly],input:disabled,select:disabled,textarea[readonly]),
html[data-crm-theme] body.page-propostas #modalProposta .form-group :is(input[readonly],input:disabled){background:#f1f3f6!important;color:#526174!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(input,textarea)::placeholder{color:#64748b!important;opacity:1}
html[data-crm-theme] body.admin-app.adm-v4 :is(.adm-card__head,.adm-panel__head,.admin-sidebar-footer){background:#f8f9fb!important;border-color:#d9e0e8!important}
html[data-crm-theme] body.admin-app.adm-v4 :is(.adm-card label,.adm-panel label){color:#334155!important}
html[data-crm-theme] body.admin-app.adm-v4 .adm-overview-hero{background:#172b49!important;box-shadow:none!important}
html[data-crm-theme] body.admin-app.adm-v4 .adm-overview-hero :is(h2,p){color:#fff!important}
html[data-crm-theme] body.admin-app.adm-v4 .admin-main{background:#f5f6f8!important}
/* Dashboard funnel: each solid fill has its own readable foreground. */
html[data-crm-theme] body.page-dashboard .db-panel__body--funnel{background:#fff!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage{filter:none!important;background:#e8edf3!important;color:#172334!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage--2{background:#f97316!important;color:#172334!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage--3{background:#b91c1c!important;color:#fff!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage--4{background:var(--theme-primary)!important;color:#fff!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage--5{background:var(--theme-hover)!important;color:#fff!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage--6{background:#172b49!important;color:#fff!important}
html[data-crm-theme] body.page-dashboard .db-funnel__stage :is(span,strong,i){color:inherit!important}
html[data-crm-theme] body.page-dashboard .db-funnel__metric{background:#f5f6f8!important}
html[data-crm-theme] body.page-propostas #modalProposta .modal-content{background:#f5f6f8!important}
html[data-crm-theme] body:is(.crm-app,.admin-app) :is(.crm-modal__header,.modal-header,.agenda-modal__head){background:#fff!important}
/* Small labels need the same readable contrast as body copy. */
html[data-crm-theme] body.crm-app :is(.user-header-details p,.user-header-chevron,.db-brand__eyebrow,.db-field label,.funil-botao-label,.funil-botao-label-footer,.text-slate-400,.text-slate-500){color:#526174!important}
html[data-crm-theme] body.crm-app .crm-kpi-card__footer-value{color:#334155!important}
html[data-crm-theme] body.admin-app.adm-v4 :is(.admin-nav-label,.admin-search-trigger__label,.form-hint,.admin-sidebar-footer p){color:#526174!important}
html[data-crm-theme] body.page-propostas .funil-botao .funil-botao-icon{background:var(--theme-primary)!important;color:#fff!important}
html[data-crm-theme] body.page-propostas .funil-botao .funil-botao-icon i{color:#fff!important}
html[data-crm-theme] body.page-propostas .btn-action.btn-delete.crm-btn{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important}
html[data-crm-theme] body.page-propostas .btn-action.btn-view.crm-btn{background:var(--theme-primary)!important;color:#fff!important;border-color:var(--theme-primary)!important}
html[data-crm-theme] body.page-propostas .btn-action.btn-discount.crm-btn{background:#f97316!important;color:#172334!important;border-color:#f97316!important}
html[data-crm-theme] body.page-propostas .btn-action.btn-pdf.crm-btn{background:#fff!important;color:#334155!important;border-color:#b8c3d1!important}
html[data-crm-theme] body.page-propostas .btn-action.crm-btn i{color:inherit!important}
/* Action contract: palette follows the selected theme, not a fixed Zuri orange. */
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn.btn-secondary,.crm-btn.crm-btn--secondary,.fin-btn.fin-btn--secondary,.fin-btn-secondary,.btn-outline-secondary,.eng-eixo-reset,.btn-action.btn-pdf.crm-btn,.pp-btn-toolbar--lucro){background:var(--action-secondary)!important;border-color:var(--action-secondary)!important;color:#fff!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn.btn-secondary,.crm-btn.crm-btn--secondary,.fin-btn.fin-btn--secondary,.fin-btn-secondary,.btn-outline-secondary,.eng-eixo-reset,.btn-action.btn-pdf.crm-btn,.pp-btn-toolbar--lucro):hover{background:var(--action-secondary-hover)!important;border-color:var(--action-secondary-hover)!important;color:#fff!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.pp-btn-toolbar--servico,.btn-action.btn-discount.crm-btn){background:var(--action-alt)!important;border-color:var(--action-alt)!important;color:var(--action-alt-ink)!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.pp-btn-toolbar--servico,.btn-action.btn-discount.crm-btn):hover{background:var(--action-alt-hover)!important;border-color:var(--action-alt-hover)!important;color:var(--action-alt-ink)!important}
html[data-crm-theme] body.crm-app :is([data-status-summary="negociacao"],[data-summary="em_rotacao"],.db-kpi--money) :is(.crm-kpi-card__icon,.db-kpi__icon),
html[data-crm-theme] body.page-dashboard .db-funnel__stage--2{background:var(--action-alt)!important;color:var(--action-alt-ink)!important}
html[data-crm-theme] body.crm-app :is([data-status-summary="negociacao"],[data-summary="em_rotacao"],.db-kpi--money) :is(.crm-kpi-card__icon,.db-kpi__icon) :is(i,svg){color:var(--action-alt-ink)!important}
html[data-crm-theme] body.admin-app.adm-v4 .adm-overview-hero,
html[data-crm-theme] body.page-dashboard .db-funnel__stage--6{background:var(--action-secondary)!important;color:#fff!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn-cancel,.btn-cancel-custom,.crm-btn--ghost){background:#fff!important;color:var(--theme-primary)!important;border-color:var(--theme-primary)!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn-cancel,.btn-cancel-custom,.crm-btn--ghost):hover{background:var(--action-soft)!important;color:var(--theme-hover)!important;border-color:var(--theme-hover)!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(.btn-primary,.btn-save,.crm-btn--primary,.btn-outline-primary,.eng-eixo-add,.btn-action.btn-view.crm-btn):hover{background:var(--theme-hover)!important;border-color:var(--theme-hover)!important;color:#fff!important}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(button,.btn,.crm-btn):focus-visible{outline:3px solid var(--theme-primary)!important;outline-offset:3px}
html[data-crm-theme] body:is(.crm-app,.admin-app.adm-v4,.auth-page) :is(button,.btn,.crm-btn):disabled{background:var(--action-disabled)!important;border-color:var(--action-disabled)!important;color:var(--action-disabled-ink)!important;opacity:1!important;box-shadow:none!important}
/* Shared button geometry. Navigation, radio cards and calendar cells keep their layout. */
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.btn,.crm-btn,.fin-btn,.agenda-btn,.btn-save,.btn-cancel,.btn-submit-custom,.btn-cancel-custom,.pp-btn-toolbar,.adm-btn-save){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;padding:10px 16px!important;border-width:1px!important;border-style:solid!important;border-radius:10px!important;font-family:inherit!important;font-size:13px!important;font-weight:600!important;line-height:20px!important;text-decoration:none!important;text-shadow:none!important;box-shadow:none!important;background-image:none!important;transition:background-color .15s ease,border-color .15s ease,color .15s ease!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.btn,.crm-btn,.fin-btn,.agenda-btn,.btn-save,.btn-cancel,.btn-submit-custom,.btn-cancel-custom,.pp-btn-toolbar,.adm-btn-save):is(:hover,:active,:focus){box-shadow:none!important;filter:none!important;transform:none!important;text-shadow:none!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.btn-sm,.crm-btn--sm,.fin-btn--sm){min-height:34px!important;padding:6px 12px!important;font-size:12px!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.crm-btn--icon,.btn-action,.modal-close,.crm-modal__close,.agenda-modal__close,.eng-ficha-modal__close){display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;border-radius:10px!important;box-shadow:none!important;flex-shrink:0}
/* No luminous halo: one restrained dark shadow, no colored glow or blur on the panel. */
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.modal-container,.modal-content,.crm-modal,.crm-modal__panel,.crm-modal__dialog,.financing-modal-panel,.agenda-modal__card,.eng-ficha-modal,.pc-modal,.crm-popup){box-shadow:0 16px 48px rgba(15,23,42,.18)!important;filter:none!important;backdrop-filter:none!important;border:1px solid #d9e0e8!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.modal-icon,.modal-header,.modal-footer,.modal-actions,.modal-actions-inline){box-shadow:none!important;filter:none!important;text-shadow:none!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.modal-container,.modal-content,.crm-modal,.agenda-modal__card) :is(input,select,textarea):focus{box-shadow:none!important;outline:2px solid var(--theme-primary)!important;outline-offset:2px}
/* Explicit action semantics take precedence over legacy primary/secondary classes. */
html[data-crm-theme] [data-crm-action-color]{--button-solid:#fff;--button-hover:#f1f4f8;--button-ink:#334155;--button-border:#cbd3df}
html[data-crm-theme] [data-crm-action-color="confirm"]{--button-solid:#203f70;--button-hover:#172f55;--button-ink:#fff;--button-border:#203f70}
html[data-crm-theme] [data-crm-action-color="create"]{--button-solid:#c6530c;--button-hover:#a44209;--button-ink:#fff;--button-border:#c6530c}
html[data-crm-theme] [data-crm-action-color="danger"]{--button-solid:#b4232c;--button-hover:#901c23;--button-ink:#fff;--button-border:#b4232c}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) [data-crm-action-color][data-crm-action-color]:not(:disabled):not([aria-disabled="true"]){background:var(--button-solid)!important;background-image:none!important;border:1px solid var(--button-border)!important;color:var(--button-ink)!important;box-shadow:none!important;text-shadow:none!important;border-radius:8px!important;font-weight:600!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) [data-crm-action-color][data-crm-action-color]:not(:disabled):not([aria-disabled="true"]):is(:hover,:active){background:var(--button-hover)!important;border-color:var(--button-border)!important;color:var(--button-ink)!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) [data-crm-action-color][data-crm-action-color] :is(i,svg,span){color:inherit!important}
/* Repeated row controls stay quiet; color does not compete with customer data. */
html[data-crm-theme] body.crm-app table [data-crm-action-color]{--button-solid:#fff;--button-hover:#edf2f8;--button-ink:#34547b;--button-border:#d5dce6}
html[data-crm-theme] body.crm-app table [data-crm-action-color="danger"]{--button-solid:#fff;--button-hover:#fff0f0;--button-ink:#b4232c;--button-border:#e5cbd0}
html[data-crm-theme] body.crm-app table [data-crm-action-color="create"]{--button-ink:#a44209;--button-hover:#fff4e9}
html[data-crm-theme] body.crm-app table :is(.btn-action,.crm-btn--icon)[data-crm-action-color]{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;border-radius:7px!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.pp-btn-toolbar,.btn,.crm-btn,.fin-btn,.agenda-btn,.btn-save,.btn-cancel){min-height:40px!important;border-radius:8px!important;padding:9px 14px!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.btn-sm,.crm-btn--sm){min-height:32px!important;padding:5px 10px!important}
html[data-crm-theme] body:is(.crm-app,.admin-app,.auth-page) :is(.crm-btn--icon,.btn-action,.modal-close,.crm-modal__close){padding:0!important}
