:root{--app-accent:#f5b5c5;--app-primary:#7b2940;--app-primary-dark:#5f1f32;--app-secondary:#6c757d;--app-success:#198754;--app-warning:#b86b00;--app-danger:#b42318;--app-info:#0b7285;--app-background:#fbf7f8;--app-surface:#ffffff;--app-text:#38272c;--app-muted:#78656a;--app-border:#eadde1;--app-sidebar-bg:#5f1f32;--app-sidebar-text:#f9e8ed;--app-sidebar-icon:#f5b5c5;--app-sidebar-active-text:#ffffff;--app-sidebar-active:#9c3d5a;--app-radius:12px}
html,body{background:var(--app-background);color:var(--app-text)}
body,.wrapper,.admin-main-content,.bg-light{background-color:var(--app-background)!important;color:var(--app-text)}
.card,.modal-content,.dropdown-menu,.offcanvas,.list-group-item,.bg-white{background-color:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.card-header,.card-footer,.modal-header,.modal-footer{background-color:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.text-muted,.form-text{color:var(--app-muted)!important}
.border,.border-top,.border-bottom,.border-start,.border-end,hr{border-color:var(--app-border)!important}
.form-control,.form-select,.input-group-text,.page-link{background-color:var(--app-surface);color:var(--app-text);border-color:var(--app-border)}
.form-control:focus,.form-select:focus{background-color:var(--app-surface);color:var(--app-text);border-color:var(--app-primary);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--app-primary) 20%,transparent)}
.form-control::placeholder{color:var(--app-muted)}
.table{--cui-table-color:var(--app-text);--cui-table-bg:var(--app-surface);--cui-table-border-color:var(--app-border);--bs-table-color:var(--app-text);--bs-table-bg:var(--app-surface);--bs-table-border-color:var(--app-border)}
.table-striped{--bs-table-striped-bg:color-mix(in srgb,var(--app-primary) 5%,var(--app-surface));--cui-table-striped-bg:color-mix(in srgb,var(--app-primary) 5%,var(--app-surface))}
.btn-primary{--cui-btn-bg:var(--app-primary);--cui-btn-border-color:var(--app-primary);--cui-btn-hover-bg:var(--app-primary-dark);--cui-btn-hover-border-color:var(--app-primary-dark);--bs-btn-bg:var(--app-primary);--bs-btn-border-color:var(--app-primary);--bs-btn-hover-bg:var(--app-primary-dark);--bs-btn-hover-border-color:var(--app-primary-dark)}
.btn-outline-primary{--cui-btn-color:var(--app-primary);--cui-btn-border-color:var(--app-primary);--cui-btn-hover-bg:var(--app-primary);--cui-btn-hover-border-color:var(--app-primary);--bs-btn-color:var(--app-primary);--bs-btn-border-color:var(--app-primary);--bs-btn-hover-bg:var(--app-primary);--bs-btn-hover-border-color:var(--app-primary)}
.bg-primary{background-color:var(--app-primary)!important}.text-primary{color:var(--app-primary)!important}.border-primary{border-color:var(--app-primary)!important}
.bg-success{background-color:var(--app-success)!important}.bg-warning{background-color:var(--app-warning)!important}.bg-danger{background-color:var(--app-danger)!important}.bg-info{background-color:var(--app-info)!important}
.card,.btn,.form-control,.form-select,.alert,.modal-content,.dropdown-menu{border-radius:var(--app-radius)}
#sidebar.admin-sidebar-clean,.admin-sidebar-clean{background:var(--app-sidebar-bg)!important;color:var(--app-sidebar-text)!important}
#sidebar.admin-sidebar-clean .nav-link,#sidebar.admin-sidebar-clean .nav-title,#sidebar.admin-sidebar-clean .sidebar-brand,.admin-sidebar-clean .nav-link{color:var(--app-sidebar-text)!important}
#sidebar.admin-sidebar-clean .nav-link.active,.admin-sidebar-clean .nav-link.active{background:var(--app-sidebar-active)!important;color:var(--app-sidebar-active-text)!important}
#sidebar.admin-sidebar-clean .nav-link:hover,.admin-sidebar-clean .nav-link:hover{background:color-mix(in srgb,var(--app-sidebar-active) 72%,var(--app-sidebar-bg))!important;color:var(--app-sidebar-active-text)!important}
.sidebar-toggler,.header,.admin-header-clean{background-color:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
a{color:var(--app-primary)}
.alert-success{background:color-mix(in srgb,var(--app-success) 16%,var(--app-surface));color:var(--app-text);border-color:var(--app-success)}
.alert-warning{background:color-mix(in srgb,var(--app-warning) 16%,var(--app-surface));color:var(--app-text);border-color:var(--app-warning)}
.alert-danger{background:color-mix(in srgb,var(--app-danger) 16%,var(--app-surface));color:var(--app-text);border-color:var(--app-danger)}
.alert-info{background:color-mix(in srgb,var(--app-info) 16%,var(--app-surface));color:var(--app-text);border-color:var(--app-info)}
#sidebar.admin-sidebar-clean .admin-sidebar-bottom{background:var(--app-sidebar-bg)!important;border-top-color:color-mix(in srgb,var(--app-sidebar-text) 18%,transparent)!important;color:var(--app-sidebar-text)!important}
#sidebar.admin-sidebar-clean .admin-sidebar-bottom .admin-sidebar-collapse-toggle,#sidebar.admin-sidebar-clean .admin-sidebar-bottom .sidebar-toggler{background:transparent!important;color:var(--app-sidebar-text)!important;border-color:transparent!important;box-shadow:none!important}
#sidebar.admin-sidebar-clean .admin-sidebar-bottom .admin-sidebar-collapse-toggle:hover,#sidebar.admin-sidebar-clean .admin-sidebar-bottom .admin-sidebar-collapse-toggle:focus,#sidebar.admin-sidebar-clean .admin-sidebar-bottom .sidebar-toggler:hover,#sidebar.admin-sidebar-clean .admin-sidebar-bottom .sidebar-toggler:focus{background:color-mix(in srgb,var(--app-sidebar-text) 15%,var(--app-sidebar-bg))!important;color:var(--app-sidebar-text)!important}
/* 18.3.2: componentes primários seguem integralmente a identidade ativa. */
.btn-primary{background-color:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.show{background-color:var(--app-primary-dark)!important;border-color:var(--app-primary-dark)!important;color:#fff!important}
.btn-outline-primary{background-color:transparent!important;border-color:var(--app-primary)!important;color:var(--app-primary)!important}
.btn-outline-primary:hover,.btn-outline-primary:focus,.btn-outline-primary:active{background-color:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}

/* 18.3.3: cada tema possui cores próprias para ícones e estado ativo do menu. */
#sidebar.admin-sidebar-clean .nav-icon,#sidebar.admin-sidebar-clean .admin-menu-icon .nav-icon,.admin-sidebar-clean .nav-icon{color:var(--app-sidebar-icon)!important;opacity:1!important}
#sidebar.admin-sidebar-clean .nav-link.active .nav-icon,#sidebar.admin-sidebar-clean .nav-link.active .admin-menu-icon .nav-icon,#sidebar.admin-sidebar-clean .nav-link:hover .nav-icon{color:var(--app-sidebar-active-text)!important}
#sidebar.admin-sidebar-clean .nav-link.active,#sidebar.admin-sidebar-clean .nav-link.active .admin-menu-text{color:var(--app-sidebar-active-text)!important}


/* 18.3.4: flyout do menu recolhido acompanha integralmente a identidade ativa. */
.admin-sidebar-flyout{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.admin-sidebar-flyout-title{color:var(--app-primary)!important;border-bottom-color:var(--app-border)!important}
.admin-sidebar-flyout .nav-link{color:var(--app-text)!important}
.admin-sidebar-flyout .nav-icon{color:var(--app-primary)!important}
.admin-sidebar-flyout .nav-link:hover,.admin-sidebar-flyout .nav-link:focus{background:color-mix(in srgb,var(--app-sidebar-active) 14%,var(--app-surface))!important;color:var(--app-primary)!important}
.admin-sidebar-flyout .nav-link.active{background:color-mix(in srgb,var(--app-sidebar-active) 22%,var(--app-surface))!important;color:var(--app-primary)!important;box-shadow:inset 3px 0 0 var(--app-primary)!important}
.admin-sidebar-flyout .nav-link.active .nav-icon{color:var(--app-primary)!important}
#sidebar.admin-sidebar-clean.sidebar-narrow .admin-menu-group-toggle.admin-flyout-open{background:color-mix(in srgb,var(--app-sidebar-active) 82%,var(--app-sidebar-bg))!important;box-shadow:inset 3px 0 0 var(--app-sidebar-icon)!important}


/* 18.3.5 — Auditoria geral de tema: elimina heranças visuais fixas do Ateliê. */
:root{
  --app-accent-soft:color-mix(in srgb,var(--app-accent) 16%,var(--app-surface));
  --app-primary-soft:color-mix(in srgb,var(--app-primary) 12%,var(--app-surface));
  --app-shadow-color:color-mix(in srgb,var(--app-primary) 14%,transparent);
}
::selection{background:var(--app-accent);color:var(--app-sidebar-active-text)}
a:hover,.link-primary:hover{color:var(--app-primary-dark)}
.form-check-input:checked,.form-check-input[type=checkbox]:indeterminate{background-color:var(--app-primary)!important;border-color:var(--app-primary)!important}
.form-check-input:focus,.form-range:focus::-webkit-slider-thumb{border-color:var(--app-accent)!important;box-shadow:0 0 0 .2rem color-mix(in srgb,var(--app-accent) 24%,transparent)!important}
.nav-tabs .nav-link.active,.nav-pills .nav-link.active,.pagination .page-item.active .page-link{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}
.nav-tabs .nav-link:hover,.nav-pills .nav-link:hover,.page-link:hover{color:var(--app-primary)!important;background:var(--app-primary-soft)!important;border-color:var(--app-border)!important}
.progress-bar{background-color:var(--app-primary)!important}.badge.bg-primary,.badge.text-bg-primary{background-color:var(--app-primary)!important;color:#fff!important}
.dropdown-item.active,.dropdown-item:active,.list-group-item.active{background-color:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}
.dropdown-item:hover,.list-group-item-action:hover{background:var(--app-primary-soft)!important;color:var(--app-text)!important}
.accordion-button:not(.collapsed){background:var(--app-primary-soft)!important;color:var(--app-primary)!important;box-shadow:inset 0 -1px 0 var(--app-border)!important}
.accordion-button:focus{border-color:var(--app-accent)!important;box-shadow:0 0 0 .2rem color-mix(in srgb,var(--app-accent) 22%,transparent)!important}

/* Componentes premium e Dashboard passam a consumir exclusivamente tokens do tema. */
.dashboard-smart{
  --ds-wine:var(--app-primary)!important;--ds-wine-dark:var(--app-primary-dark)!important;--ds-pink:var(--app-accent)!important;
  --ds-bg:var(--app-background)!important;--ds-border:var(--app-border)!important;--ds-text:var(--app-text)!important;--ds-muted:var(--app-muted)!important;
  background:var(--app-background)!important;color:var(--app-text)!important
}
:root{
  --premium-wine:var(--app-primary)!important;--premium-wine-dark:var(--app-primary-dark)!important;--premium-rose:var(--app-accent-soft)!important;
  --premium-bg:var(--app-background)!important;--premium-card:var(--app-surface)!important;--premium-border:var(--app-border)!important;
  --premium-text:var(--app-text)!important;--premium-muted:var(--app-muted)!important;
  --premium-shadow:0 10px 28px var(--app-shadow-color)!important;--premium-shadow-hover:0 16px 36px color-mix(in srgb,var(--app-primary) 20%,transparent)!important
}
.dashboard-smart,.ic-page,.ci-page{background:var(--app-background)!important;color:var(--app-text)!important}
.dashboard-premium-hero,.ic-hero,.ci-hero,.ic-box,.ci-box,.ic-assistant,.ic-executive-card,.dashboard-panel,.dashboard-forecast,.dashboard-action-line,
.ic-summary>article,.ic-kpis>article,.ic-marketing-kpis>article,.ic-marketing-kpis-compact>article,.ic-season-kpis-compact>article,.ci-cards>article{
  background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important
}
.dashboard-premium-hero-icon,.ic-assistant-icon,.ic-module-nav a.active,.ic-filter .btn,.ci-filter .btn{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}
.dashboard-premium-badges span,.ic-module-nav,.ic-tabs,.ci-tabs,.ic-filter,.ci-filter{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.ic-module-nav a:hover,.ic-tabs button:hover,.ci-tabs button:hover{background:var(--app-primary-soft)!important;color:var(--app-primary)!important}
.ic-page .table thead th,.ci-page .table thead th{background:var(--app-primary-soft)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.ic-page .table tbody td,.ci-page .table tbody td{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.dashboard-agenda-card,.dashboard-panel,.dashboard-health-item,.dashboard-commitment,.dashboard-pending,.dashboard-shortcut{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.dashboard-agenda-card:hover,.dashboard-health-item:hover,.dashboard-commitment:hover,.dashboard-shortcut:hover{background:var(--app-primary-soft)!important;border-color:var(--app-accent)!important}
.dashboard-agenda-card>i:first-child,.dashboard-panel-icon,.dashboard-icon-link,.dashboard-health-item>i{background:var(--app-accent-soft)!important;color:var(--app-primary)!important}
.dashboard-kicker,.dashboard-text-link,.dashboard-subtitle-row a,.ic-kicker,.ci-kicker{color:var(--app-primary)!important}

/* Flyout recolhido: accent exclusivo de cada tema, sem rosa herdado. */
.admin-sidebar-flyout-title,.admin-sidebar-flyout .nav-icon{color:var(--app-accent)!important}
.admin-sidebar-flyout .nav-link:hover,.admin-sidebar-flyout .nav-link:focus{background:color-mix(in srgb,var(--app-accent) 16%,var(--app-surface))!important;color:var(--app-primary)!important}
.admin-sidebar-flyout .nav-link.active{background:color-mix(in srgb,var(--app-accent) 24%,var(--app-surface))!important;color:var(--app-primary)!important;box-shadow:inset 3px 0 0 var(--app-accent)!important}
.admin-sidebar-flyout .nav-link.active .nav-icon{color:var(--app-primary)!important}
#sidebar.admin-sidebar-clean.sidebar-narrow .admin-menu-group-toggle.admin-flyout-open{box-shadow:inset 3px 0 0 var(--app-accent)!important}


/* Pontos legados encontrados pela varredura de cores da aplicação administrativa. */
.admin-menu-badge{background:var(--app-accent-soft)!important;color:var(--app-primary)!important}
.admin-image-lightbox-close{color:var(--app-primary)!important}
.identity-file-card .file-icon{background:var(--app-accent-soft)!important;color:var(--app-primary)!important}

/* Agenda e calendários: identidade visual sem alterar cores semânticas de status. */
.agenda-tab.active,.agenda-side-head,.agenda-day-today{background:linear-gradient(135deg,var(--app-primary),var(--app-primary-dark))!important;color:#fff!important}
.agenda-nav-btn,.agenda-period-title,.agenda-kpi strong,.agenda-weekdays span,.agenda-side-time,.agenda-side-main em,.agenda-list-day-title strong,.agenda-order-total,.agenda-modal .modal-title,.agenda-modal-order-side strong,.agenda-modal-empty strong{color:var(--app-primary)!important}
.agenda-nav-btn,.agenda-date-form input,.agenda-side-panel,.agenda-list-day,.agenda-modal-order{border-color:var(--app-border)!important}
.agenda-nav-btn:hover,.agenda-day:hover,.agenda-side-order:hover,.agenda-order:hover,.agenda-side-empty,.agenda-modal-empty{background:var(--app-primary-soft)!important;color:var(--app-text)!important}
.agenda-order-badge{background:var(--app-primary)!important;box-shadow:0 8px 18px var(--app-shadow-color)!important}
.agenda-day-has-orders{background:linear-gradient(145deg,var(--app-surface),var(--app-primary-soft))!important}
.agenda-day-has-orders::before{border-color:color-mix(in srgb,var(--app-accent) 42%,transparent)!important}
.agenda-day-selected{background:linear-gradient(145deg,var(--app-accent-soft),var(--app-surface))!important;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--app-accent) 28%,transparent)!important}
.agenda-day-selected .agenda-day-number{color:var(--app-primary)!important}
.agenda-legend-v36,.agenda-weekdays{background:var(--app-primary-soft)!important;border-color:var(--app-border)!important;color:var(--app-text)!important}
.legend-dot.today,.legend-dot.orders{background:var(--app-primary)!important}.legend-dot.selected{background:var(--app-accent-soft)!important;border-color:var(--app-accent)!important}
.agenda-side-order,.agenda-order{border-left-color:var(--app-primary)!important}.agenda-modal .modal-header{background:var(--app-primary-soft)!important;border-color:var(--app-border)!important}

/* Inteligência Comercial antiga: converte a marca fixa em tokens dinâmicos. */
.ic-page{background:var(--app-background)!important;color:var(--app-text)!important}
.ic-hero,.ic-assistant,.ic-summary article,.ic-kpis article,.ic-box,.ic-season-cards article,.ic-marketing-kpis article,.ic-forecast-card,.ic-forecast-split section,.ic-note,.ic-recommendations article{background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.ic-kicker,.ic-assistant-icon,.ic-card-icon.real,.ic-card-icon.total,.ic-card-icon.trust,.ic-card-icon.estimate,.ic-note i,.ic-explain-bar>i,.ic-section-heading span,.ic-marketing-kpis article>i{color:var(--app-primary)!important}
.ic-filter .btn-primary,.ic-tabs button.active,.ic-progress i,.ic-affinity i,.ic-legend-note i.real{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}
.ic-tabs button:hover:not(.active),.ic-assistant-head,.ic-explain-bar,.ic-chart-summary>div{background:var(--app-primary-soft)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}
.ic-assistant-icon,.ic-card-icon.real,.ic-card-icon.total,.ic-card-icon.trust,.ic-card-icon.estimate,.ic-marketing-kpis article>i{background:var(--app-accent-soft)!important}

/* 18.3.8 - indicador ativo integralmente temático */
#sidebar.admin-sidebar-clean .admin-menu-group-items .nav-link.active::before,
#sidebar.admin-sidebar-clean .admin-sidebar-organizada .nav-group-items .nav-link.active::before,
#sidebar.admin-sidebar-clean .nav-link.active::before{
 background:var(--app-sidebar-active,var(--app-primary))!important;
 border-color:var(--app-sidebar-active,var(--app-primary))!important;
 box-shadow:0 0 8px color-mix(in srgb,var(--app-sidebar-active,var(--app-primary)) 42%,transparent)!important;
}
#sidebar.admin-sidebar-clean .admin-menu-group-items .nav-link.active::after,
#sidebar.admin-sidebar-clean .admin-sidebar-organizada .nav-group-items .nav-link.active::after{
 border-color:var(--app-sidebar-active,var(--app-primary))!important;
 color:var(--app-sidebar-active,var(--app-primary))!important;
}

/* 18.3.12 - filtros de Inteligência já nascem no estado definitivo, sem flash visual. */
.ic-filter .ic-custom[hidden]{display:none!important}

/* v18.3.23 - O tema administrativo não estiliza o menu lateral público. */

/* v18.3.33 - Marca do menu e páginas de autenticação acompanham o tema ativo. */
#sidebar.admin-sidebar-clean .admin-sidebar-brand{
  background:linear-gradient(
    145deg,
    color-mix(in srgb,var(--app-accent) 34%,var(--app-surface)),
    color-mix(in srgb,var(--app-primary) 18%,var(--app-surface))
  )!important;
  border-bottom-color:color-mix(in srgb,var(--app-sidebar-text) 18%,transparent)!important;
}
#sidebar.admin-sidebar-clean .admin-sidebar-brand .sidebar-brand-narrow{
  background:color-mix(in srgb,var(--app-accent) 28%,var(--app-surface))!important;
}

.login-modern-page{
  background:
    radial-gradient(circle at 15% 15%,color-mix(in srgb,var(--app-accent) 28%,transparent),transparent 32%),
    radial-gradient(circle at 88% 85%,color-mix(in srgb,var(--app-primary) 18%,transparent),transparent 34%),
    linear-gradient(135deg,var(--app-background) 0%,var(--app-primary-soft) 52%,color-mix(in srgb,var(--app-accent) 18%,var(--app-background)) 100%)!important;
  color:var(--app-text)!important;
}
.login-modern-decoration-one{background:color-mix(in srgb,var(--app-surface) 62%,transparent)!important}
.login-modern-decoration-two{background:color-mix(in srgb,var(--app-primary) 10%,transparent)!important}
.login-modern-card,.login-recovery-card{
  background:color-mix(in srgb,var(--app-surface) 94%,transparent)!important;
  border-color:color-mix(in srgb,var(--app-border) 72%,transparent)!important;
  box-shadow:0 24px 60px color-mix(in srgb,var(--app-primary) 16%,transparent)!important;
}
.login-modern-form-panel{background:color-mix(in srgb,var(--app-surface) 96%,transparent)!important}
.login-modern-heading h1,.login-modern-field label{color:var(--app-text)!important}
.login-modern-heading p,.login-modern-footer-note{color:var(--app-muted)!important}
.login-modern-kicker,.login-modern-label-row a,.login-modern-input-icon,
.login-modern-footer-note .icon,.login-recovery-back,.login-modern-public-return{
  color:var(--app-primary)!important;
}
.login-modern-input-wrap .form-control{
  background:color-mix(in srgb,var(--app-surface) 94%,var(--app-background))!important;
  border-color:var(--app-border)!important;
  color:var(--app-text)!important;
}
.login-modern-input-wrap .form-control::placeholder{color:var(--app-muted)!important}
.login-modern-input-wrap .form-control:focus{
  background:var(--app-surface)!important;
  border-color:var(--app-primary)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--app-primary) 14%,transparent)!important;
}
.login-modern-password-toggle{color:var(--app-muted)!important}
.login-modern-password-toggle:hover{
  background:var(--app-primary-soft)!important;
  color:var(--app-primary)!important;
}
.login-submit-btn,.login-modern-submit{
  background:linear-gradient(135deg,var(--app-primary),var(--app-primary-dark))!important;
  border-color:var(--app-primary)!important;
  box-shadow:0 14px 28px color-mix(in srgb,var(--app-primary) 24%,transparent)!important;
}
.login-submit-btn:hover,.login-submit-btn:focus,.login-submit-btn:active,
.login-modern-submit:hover,.login-modern-submit:focus{
  background:linear-gradient(135deg,var(--app-primary-dark),var(--app-primary))!important;
  border-color:var(--app-primary-dark)!important;
  box-shadow:0 17px 32px color-mix(in srgb,var(--app-primary) 30%,transparent)!important;
}
.login-modern-showcase{
  background:linear-gradient(160deg,var(--app-primary-dark) 0%,var(--app-primary) 56%,color-mix(in srgb,var(--app-primary) 72%,var(--app-accent)) 100%)!important;
}
.login-modern-site-link:hover{color:var(--app-primary)!important}
