/*
 * =============================================================
 *  MODERN BASE — Projeto Safe Room
 *  Arquivo do: Dev Arquiteto (Sênior)
 *  Escopo: página, navbar e sidebar flutuante
 *  Regra: NÃO alterar padding/margin de layout, NÃO alterar
 *         width/height/display — somente propriedades cosméticas
 *
 *  Design tokens estão em modern-variables.css
 * =============================================================
 */


/* -------------------------------------------------------------
   2. BASE — Página e tipografia global
   ------------------------------------------------------------- */
body {
    font-family: var(--font-family) !important;
    font-size: var(--font-size-base) !important;
    color: var(--color-text) !important;
    background-color: var(--color-bg-page) !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    overflow-x: hidden !important;
    min-height: 100vh !important;
}

html {
    overflow-x: hidden !important;
}

/* Conteúdo principal da página */
.be-content {
    background-color: var(--color-bg-page) !important;
}

.be-wrapper {
    background-color: var(--color-bg-page) !important;
}


/* -------------------------------------------------------------
   3. NAVBAR SUPERIOR (be-top-header)
   ------------------------------------------------------------- */

.be-top-header {
    background-color: var(--color-primary) !important;
    border-bottom: none !important;
    box-shadow: 0 2px 8px var(--color-black-alpha-15) !important;
    display: none !important; /* Lockdown Sniper V9 */
}

/* Logo */
.be-top-header .navbar-brand {
    opacity: 1 !important;
}

/* Ícone de toggle do menu lateral */
.be-top-header .be-toggle-left-sidebar .icon {
    color: var(--color-white-alpha-85) !important;
}
.be-top-header .be-toggle-left-sidebar:hover .icon {
    color: var(--color-bg-white) !important;
}

/* Título da página */
.be-top-header .page-title {
    color: var(--color-white-alpha-90) !important;
    font-size: var(--font-size-base) !important;
    font-weight: var(--font-weight-medium) !important;
}

/* Ícones do navbar direito */
.be-top-header .be-icons-nav .nav-link .icon,
.be-top-header .be-icons-nav .nav-link i {
    color: var(--color-white-alpha-85) !important;
}
.be-top-header .be-icons-nav .nav-link:hover .icon,
.be-top-header .be-icons-nav .nav-link:hover i {
    color: var(--color-bg-white) !important;
}

i {
    margin: 0 4px !important;
}

/* Nome do usuário */
.be-top-header .be-user-nav .user-name {
    color: var(--color-white-alpha-90) !important;
}

/* Dropdown do usuário — avatar */
.be-top-header .be-user-nav .nav-link img {
    border: 2px solid var(--color-white-alpha-30) !important;
    border-radius: var(--radius-pill) !important;
}

/* Dropdown menu */
.be-top-header .dropdown-menu {
    border-radius: var(--radius-lg) !important;
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--shadow-lg) !important;
    overflow: hidden !important;
}

.be-top-header .dropdown-menu .dropdown-item {
    font-size: var(--font-size-base) !important;
    color: var(--color-text) !important;
    transition: var(--transition-fast) !important;
}

.be-top-header .dropdown-menu .dropdown-item:hover {
    background-color: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
}


/* -------------------------------------------------------------
   4. SIDEBAR FLUTUANTE MODERNA (be-left-sidebar)
   ------------------------------------------------------------- */

/* Container principal — efeito card flutuante */
.be-left-sidebar {
    background-color: var(--color-bg-white) !important;
    border-right: none !important;
    box-shadow: var(--shadow-float) !important;
}

/* Wrapper interno */
.be-left-sidebar .left-sidebar-wrapper {
    background-color: transparent !important;
    border-right: none !important;
}

/* Toggle link "Menu" — esconder texto, manter funcionalidade */
.be-left-sidebar .left-sidebar-toggle {
    color: var(--color-text-muted) !important;
    font-size: var(--font-size-sm) !important;
    font-weight: var(--font-weight-medium) !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid var(--color-border) !important;
    padding: 12px 16px !important;
    display: block !important;
}

/* Área de scroll da sidebar */
.be-left-sidebar .left-sidebar-scroll {
    background-color: transparent !important;
}

/* Conteúdo da sidebar */
.be-left-sidebar .left-sidebar-content {
    background-color: transparent !important;
    padding-top: 0 !important;
}


/* -------------------------------------------------------------
   5. ITENS DO MENU (seletores de hRenderMenu)
   ------------------------------------------------------------- */

/* Lista principal */
.be-left-sidebar .sidebar-elements {
    padding: 6px 0 !important;
}

/* Item de menu */
.be-left-sidebar .sidebar-elements > li {
    margin: 1px 0 !important;
    border-bottom: none !important;
}

/* Reset do container do item pra não empurrar coisas para longe */
.be-left-sidebar .sidebar-elements li:not(.divider) {
    margin: 0 !important;
    padding: 0 !important;
}

/* Link do item */
.be-left-sidebar .sidebar-elements li > a {
    color: var(--color-text-muted) !important;
    font-family: var(--font-family) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    border-radius: var(--radius-lg) !important;
    margin: 1px 4px !important; /* Espremendo para os links gigantes couberem */
    padding: 8px 8px !important; /* Mesma coisa, afinal a pílula já tem borda arredondada */
    transition: var(--transition-base) !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
}

/* Permitir flex-grow pro texto empurrar a seta (chevron) pra direita e truncar textos gigantes ex: Editar Parametrização */
.be-left-sidebar .sidebar-elements li > a span {
    flex: 1 !important;
    font-size: 13px !important;
    color: inherit !important;
    margin-left: 8px !important; /* de 10px pra 8px tira um fôlegozinho extra entre icone e texto */
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: normal !important;
    opacity: 1;
    transition: opacity 0.18s ease 0.14s !important; /* 0.14s = delay para aparecer quase no fim da expansão */
}

/* Ícone do item */
.be-left-sidebar .sidebar-elements li > a .icon {
    color: var(--color-text-muted) !important;
    font-size: 18px !important;
    opacity: 0.65 !important;
    width: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: var(--transition-fast) !important;
}

/* Hover no item */
.be-left-sidebar .sidebar-elements li > a:hover {
    background-color: var(--color-accent-light) !important;
    color: var(--color-accent) !important;
}
.be-left-sidebar .sidebar-elements li > a:hover .icon {
    color: var(--color-accent) !important;
    opacity: 1 !important;
}

/* Hover sub-menus e elementos filhos */
.be-left-sidebar .sidebar-elements li > ul > li > a:hover {
    background-color: var(--color-accent-light) !important;
    color: var(--color-accent) !important;
}

/* Item ATIVO - Fundo da pílula (APENAS NO 'A') */
.be-left-sidebar .sidebar-elements li.active > a {
    background-color: var(--color-accent-light) !important;
    border-radius: var(--radius-lg) !important;
    border-right: 3px solid var(--color-accent) !important;
}

/* Item ATIVO - Cor do texto e ícones interna (TODOS) */
.be-left-sidebar .sidebar-elements li.active > a,
.be-left-sidebar .sidebar-elements li.active > a span,
.be-left-sidebar .sidebar-elements li.active > a .icon {
    color: var(--color-accent) !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}

/* Seta do item com sub-menu (parent) */
.be-left-sidebar .sidebar-elements li.parent > a {
    min-height: 0 !important; /* Beagle legacy kill */
    height: auto !important;
}
.be-left-sidebar .sidebar-elements li.parent > a::after {
    font-family: 'remixicon' !important;
    content: "\EA6E" !important; /* ri-arrow-right-s-line */
    color: var(--color-text-muted) !important;
    transition: var(--transition-base) !important;
    font-size: 18px !important;
    margin-right: -4px !important;
    display: flex !important;
    align-items: center !important;
}
.be-left-sidebar .sidebar-elements li.parent.open > a::after {
    content: "\EA4E" !important; /* ri-arrow-down-s-line */
    color: var(--color-primary) !important;
}

/* Esconder a as abominações da seta ESQUERDA (Beagle nativo) que duplica a nossa nova direita */
.be-left-sidebar .sidebar-elements li.parent > a::before,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.parent > a::before,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements .sub-menu.visible li.parent > a::before {
    display: none !important;
}

/* EXTIRPAR COMPLETAMENTE O FUNDO E AS BORDAS DOS SUBMENUS DO BEAGLE */
.be-left-sidebar .sidebar-elements > li ul {
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    background-color: transparent !important;
    background: transparent !important;
}

/* Sub-menu ativo genérico e descendentes (limpeza de estilos legados caso injetados) */
.be-left-sidebar .sidebar-elements .sub-menu ul,
.be-left-sidebar .sidebar-elements .sub-menu .nav-items,
.be-left-sidebar .sidebar-elements .sub-menu .be-scroller,
.be-left-sidebar .sidebar-elements .sub-menu .content {
    background-color: transparent !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Sub-menu (O "Card" cinza claro recuado) - Definido nativamente para que a animação slideDown() do jQuery funcione com margem e padding suaves */
.be-left-sidebar .sidebar-elements .sub-menu {
    background-color: var(--color-bg-hover) !important; /* Override fundo escuro original do Beagle */
    border-radius: var(--radius-lg) !important;
    margin: 4px 8px 8px 14px; /* IMPORTANTE: SEM !important para o jQuery slideDown() animar suavemente a abertura */
    padding: 6px 0;           /* IMPORTANTE: SEM !important para o jQuery slideDown() animar suavemente a abertura */
    box-shadow: 0 2px 6px var(--color-black-alpha-02) !important;
}

/* Link interno do sub-menu (idêntico ao menu principal, mas um pouco contido) */
.be-left-sidebar .sidebar-elements .sub-menu li,
.be-left-sidebar .sidebar-elements .sub-menu li > a {
    background-color: transparent !important;
    background: transparent !important;
}

.be-left-sidebar .sidebar-elements .sub-menu li > a {
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: var(--color-text-muted) !important;
    font-weight: 400 !important;
    border-radius: var(--radius-md) !important;
    margin: 2px 4px !important; /* Margem da pílula contra a parede do card muito menor: apenas 4px em cada lado = ganho de 8px */
    padding: 8px 10px 8px 16px !important; /* Padding left de 16px garante indentação visual em relação ao menu pai */
    display: flex !important;
    align-items: center !important;
}
.be-left-sidebar .sidebar-elements .sub-menu li > a .icon {
    font-size: 16px !important; /* Ícone 1px menor */
    margin-right: 12px !important;
}

/* Hover do item interno: Fundo azul leve no link */
.be-left-sidebar .sidebar-elements .sub-menu li > a:hover {
    background-color: var(--color-accent-light) !important;
}
.be-left-sidebar .sidebar-elements .sub-menu li > a:hover,
.be-left-sidebar .sidebar-elements .sub-menu li > a:hover span,
.be-left-sidebar .sidebar-elements .sub-menu li > a:hover .icon {
    color: var(--color-accent) !important;
    opacity: 1 !important;
}

/* Sub-menu ativo (herda do conceito da pilula pai) */
.be-left-sidebar .sidebar-elements .sub-menu li.active > a {
    background-color: var(--color-accent-light) !important;
    /* Sem a borda direita dura aqui dentro do card pra ficar mais suave */
}
.be-left-sidebar .sidebar-elements .sub-menu li.active > a,
.be-left-sidebar .sidebar-elements .sub-menu li.active > a span,
.be-left-sidebar .sidebar-elements .sub-menu li.active > a .icon {
    color: var(--color-accent) !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}

/* Divisor do menu */
.be-left-sidebar .dropdown-divider {
    border-color: var(--color-border) !important;
    margin: 8px 16px !important;
}


/* -------------------------------------------------------------
   6. LAYOUT GLOBAL — Remoção do header e card flutuante
   Motivo: Transformar layout header+sidebar em sidebar card flutuante
   ------------------------------------------------------------- */

/* Sincronizado Sniper V11 — Estabilização de Grid e Proximidade */
.be-wrapper {
    min-height: 100vh !important;
    padding-top: 0 !important;
}

.be-content {
    margin-top: 0 !important;
    padding: var(--sniper-gutter) !important; /* Respiro unificado 20px */
    transition: margin-left 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
    background-color: var(--color-bg-page) !important;
}

/* Top bar fixo mobile: hambúrguer + logo + nome da empresa.
   Sempre oculto — só exibido em breakpoint mobile. */
.be-mobile-topbar {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 52px;
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    align-items: center;
    padding: 0 14px;
    z-index: 1061;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    gap: 4px;
}

/* Brand (logo + nome) clonado para dentro do top bar */
.mobile-topbar-brand {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 6px;
    flex: 1;
    min-width: 0;
    text-decoration: none !important;
    width: auto !important;
}
.mobile-topbar-brand .custom-logo {
    width: 26px !important;
    height: 26px !important;
    max-width: 26px !important;
    max-height: 26px !important;
    object-fit: contain;
    display: block !important;
    border-radius: 4px;
    flex-shrink: 0;
}
.mobile-topbar-brand .sidebar-company-name {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--color-title) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    opacity: 1 !important;
    max-width: none !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    line-height: 1.2 !important;
}

/* Mobile: sidebar full-screen, conteúdo ocupa 100% da largura. */
@media (max-width: 767px) {

    /* Top bar visível + empurra conteúdo para baixo */
    .be-mobile-topbar {
        display: flex;
    }
    .be-content,
    .be-collapsible-sidebar-collapsed .be-content,
    .be-sidebar-collapsed .be-content {
        margin-left: 0 !important;
        padding: 12px !important;
        padding-top: 64px !important;
    }

    /* Botão hamburger — vive dentro do top bar, não flutua */
    .be-mobile-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 8px;
        background: transparent;
        border: none;
        cursor: pointer;
        color: var(--color-primary);
        font-size: 22px;
        padding: 0;
        transition: background-color 0.15s ease;
        flex-shrink: 0;
    }
    .be-mobile-toggle:hover,
    .be-mobile-toggle:focus {
        background: rgba(26, 86, 219, 0.08);
        outline: none;
    }

    /* Sidebar ocupa 100% da viewport */
    .be-left-sidebar {
        transform: translateX(-110%) !important;
        transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
        width: 100vw !important;
        z-index: 1060 !important;
    }

    /* Wrapper interno: 3-class selector ganha sobre a regra desktop de 2 classes
       independente de ordem no arquivo, mesmo com !important igual.
       padding-top: 52px evita que o conteúdo fique escondido atrás do topbar fixo. */
    .be-wrapper .be-left-sidebar .left-sidebar-wrapper {
        margin: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        height: 100vh !important;
        width: 100% !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding-top: 52px !important;
    }

    /* Esconde logo+empresa da sidebar no mobile (aparecem no topbar) */
    .be-wrapper .be-left-sidebar .be-navbar-header {
        display: none !important;
    }

    /* Sidebar visível quando aberta */
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar {
        transform: translateX(0) !important;
    }

    /* Overlay escuro atrás da sidebar */
    .be-mobile-overlay {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.45);
        z-index: 1059;
        cursor: pointer;
    }
    .be-wrapper.be-mobile-sidebar-open .be-mobile-overlay {
        display: block;
    }

    /* Esconde o toggle bolinha de desktop no mobile */
    .be-left-sidebar > .be-toggle-left-sidebar {
        display: none !important;
    }

    /* Pesquisar não funciona bem no mobile — ocultar */
    .be-left-sidebar .sidebar-search-wrapper {
        display: none !important;
    }

    /* Sidebar expandida no mobile (nunca colapsada visualmente) */
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar .sidebar-elements li > a span {
        opacity: 1 !important;
        max-width: 260px !important;
        pointer-events: auto !important;
        font-size: 14px !important;
    }
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar .sidebar-elements li > a {
        justify-content: flex-start !important;
        padding: 12px 16px !important;
        margin: 2px 10px !important;
        min-height: 44px !important; /* touch target mínimo iOS/Android */
    }
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar .sidebar-elements li > a i,
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar .sidebar-elements li > a .icon {
        font-size: 20px !important;
        width: 24px !important;
        min-width: 24px !important;
    }
    .be-wrapper.be-mobile-sidebar-open .be-left-sidebar .sidebar-elements li.category-title {
        opacity: 1 !important;
        max-width: none !important;
        padding: 16px 20px 6px !important;
        font-size: 11px !important;
    }
    .be-wrapper.be-mobile-sidebar-open .sidebar-search-button {
        margin: 8px 12px !important;
        padding: 10px 14px !important;
    }
    .be-wrapper.be-mobile-sidebar-open .sidebar-search-button .text {
        opacity: 1 !important;
        max-width: 260px !important;
        font-size: 14px !important;
    }
    /* Footer nav (notificações + avatar) — maior no mobile */
    .be-wrapper.be-mobile-sidebar-open .sidebar-footer-nav {
        padding: 12px 10px !important;
    }
}

/* Desktop: esconde elementos exclusivos do mobile */
@media (min-width: 768px) {
    .be-mobile-topbar  { display: none !important; }
    .be-mobile-toggle  { display: none !important; }
    .be-mobile-overlay { display: none !important; }
}

/* Sidebar Colapsada */
.be-collapsible-sidebar-collapsed .be-content,
.be-sidebar-collapsed .be-content {
    margin-left: 60px !important;
}

.main-content {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}


@supports selector(.main-content:has(.card.card-table)) {
    .main-content:has(.card.card-table .table-responsive),
    .main-content:has(.card.card-table table) {
        height: calc(100vh - (var(--sniper-gutter) * 2)) !important;
        min-height: calc(100vh - (var(--sniper-gutter) * 2)) !important;
        max-height: calc(100vh - (var(--sniper-gutter) * 2)) !important;
        overflow: hidden !important;
    }

    .main-content > .row:has(.card.card-table .table-responsive),
    .main-content > .row:has(.card.card-table table) {
        flex: 1 1 auto !important;
        min-height: 0 !important;
    }

    .main-content > .row:has(.card.card-table .table-responsive) > [class*="col-"],
    .main-content > .row:has(.card.card-table table) > [class*="col-"] {
        display: flex !important;
        flex-direction: column !important;
        min-height: 0 !important;
    }

    .main-content .card.card-table:has(.table-responsive),
    .main-content .card.card-table:has(table) {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        margin-bottom: 0 !important;
    }

    .main-content .card.card-table:has(.table-responsive) > form,
    .main-content .card.card-table:has(table) > form {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
    }

    .main-content .card.card-table:has(.table-responsive) > form > .row,
    .main-content .card.card-table:has(table) > form > .row {
        flex-shrink: 0 !important;
    }

    /* Motivo: limitar card-body por altura calculada em runtime para
       preservar border-radius do card e evitar estouro no fim da viewport. */
    .main-content .card.card-table:has(.table-responsive) > .card-body,
    .main-content .card.card-table:has(.table-responsive) > form > .card-body,
    .main-content .card.card-table:has(table) > .card-body,
    .main-content .card.card-table:has(table) > form > .card-body {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: var(--card-table-body-max-height, none) !important;
        overflow: hidden !important;
    }

    .main-content .card.card-table .table-responsive {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: 100% !important;
        overflow: auto !important;
    }

    .main-content:has(.j_frm_simulator_product_selling) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .main-content > .row:has(.j_frm_simulator_product_selling) {
        flex: 0 0 auto !important;
        min-height: auto !important;
    }

    .main-content > .row:has(.j_frm_simulator_product_selling) > [class*="col-"] {
        display: block !important;
        min-height: auto !important;
    }

    .main-content .card.card-table--product-selling,
    .main-content .card.card-table--product-selling > form.j_frm_simulator_product_selling,
    .main-content .card.card-table--product-selling > form.j_frm_simulator_product_selling > .card-body {
        display: block !important;
        flex: none !important;
        min-height: auto !important;
        max-height: none !important;
    }

    .main-content .card.card-table--product-selling > form.j_frm_simulator_product_selling > .card-body {
        overflow: visible !important;
    }
}

/* Motivo: a tela de visualizacao de negocio tem tabelas internas e precisava
   manter scroll vertical da pagina, sem herdar o lock de viewport das listagens.
*/
body .main-content:has(.page-head:has(.j_card_title_span)) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) > .row {
    flex: 0 0 auto !important;
    min-height: 0 !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(table),
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.table-responsive) {
    display: block !important;
    flex: none !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table > .card-body,
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table > form > .card-body {
    max-height: none !important;
    overflow: visible !important;
}

/* Motivo: modernizar card-header/toolbar de listagens com filtro e
   reposicionar "Ações em massa" para a faixa superior. */
.card.card-table .modern-card-header {
    border-bottom: 1px solid var(--color-border) !important;
    border-top-left-radius: var(--radius-xl) !important;
    border-top-right-radius: var(--radius-xl) !important;
    padding: 14px 16px !important;
}

.card.card-table .modern-card-header .modern-toolbar-row {
    margin: 0 !important;
    align-items: flex-end !important;
    gap: 10px !important;
}

.card.card-table .modern-card-header .modern-toolbar-row > [class*="col-"] {
    padding-left: 4px !important;
    padding-right: 4px !important;
    margin-bottom: 0 !important;
}

.card.card-table .modern-card-header .form-group {
    margin-bottom: 0 !important;
}

.card.card-table .modern-card-header .form-group label {
    font-size: var(--font-size-sm) !important;
    font-weight: var(--font-weight-semibold) !important;
    color: var(--color-text-strong) !important;
    margin-bottom: 6px !important;
}

.card.card-table .modern-toolbar-search-col {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    white-space: nowrap !important;
}

.card.card-table .modern-toolbar-icon-btn {
    min-height: 38px !important;
    min-width: 38px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.card.card-table .modern-toolbar-icon-btn .icon,
.card.card-table .modern-toolbar-icon-btn i {
    font-size: 16px !important;
    margin-right: 0 !important;
}

.card.card-table .modern-toolbar-actions-col {
    margin-left: auto !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-end !important;
}

.card.card-table .modern-toolbar-bulk-select {
    min-height: 38px !important;
    min-width: 168px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    padding: 0 12px !important;
    background-color: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    box-shadow: none !important;
}

.card.card-table .modern-toolbar-bulk-select:disabled {
    background-color: var(--color-bg-hover) !important;
    color: var(--color-text-muted) !important;
}

@media (max-width: 767px) {
    .card.card-table .modern-card-header .modern-toolbar-row {
        gap: 8px !important;
    }

    .card.card-table .modern-toolbar-actions-col {
        width: 100% !important;
        justify-content: flex-start !important;
        margin-left: 0 !important;
    }

    .card.card-table .modern-toolbar-bulk-select {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* Reset de sticky para garantir alinhamento perfeito no zoom original.
*/
.card-filter-dashboard {
    z-index: 1020 !important;
    overflow: visible !important;
    margin-bottom: var(--sniper-gap) !important;
}


/* Cabeçalho de Página (Title / Breadcrumbs) */
.page-head {
    /* [4C-IA | 2026-05-07 | css-18 | UI-MODERN]
     * Motivo: aplicar globalmente o header compacto, sem depender da tela de produtos da simulacao.
     */
    margin-bottom: 12px !important;
    flex-shrink: 0 !important; /* Estabilidade Sniper V10 no zoom */
}

.page-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.page-head > .float-left {
    float: none !important;
    min-width: 0 !important;
}

.page-head > .page-head-actions {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.page-head > .j_header_links {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.page-head > .j_header_links .btn {
    float: none !important;
    margin-left: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: var(--font-size-md) !important;
    padding: 8px 12px !important;
    line-height: 1.2 !important;
    min-height: 38px !important;
}

.page-head > .j_header_links .btn .icon {
    font-size: 16px !important;
}

.page-head > .btn.float-right,
.page-head > a.btn.float-right,
.page-head > .float-right {
    float: none !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.page-head > .clearfix {
    display: none !important;
}

.page-head > .btn,
.page-head > a.btn,
.page-head > .float-right .btn,
.page-head > .page-head-actions .btn {
    font-size: var(--font-size-md) !important;
    padding: 8px 12px !important;
    line-height: 1.2 !important;
    min-height: 38px !important;
}

.page-head > .page-head-actions .btn {
    margin-left: 0 !important;
}

.page-head > .btn .icon,
.page-head > a.btn .icon,
.page-head > .float-right .btn .icon,
.page-head > .page-head-actions .btn .icon {
    font-size: 16px !important;
}

.page-head .page-head-title {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    line-height: 1.15 !important;
}

.page-head .page-head-nav {
    padding: 0 !important;
    margin: 1px 0 0 !important;
    line-height: 1.15 !important;
}

.page-head .breadcrumb-item {
    font-size: 12px !important;
    line-height: 1.15 !important;
}

.page-head .breadcrumb-item + .breadcrumb-item {
    padding-left: 6px !important;
}

.page-head .breadcrumb-item + .breadcrumb-item::before {
    padding-right: 6px !important;
}

body .page-head.page-head--product-selling > .row {
    margin: 0 0 0 auto !important;
    width: auto !important;
}

body .page-head.page-head--product-selling > .row > .col-md-12 {
    padding: 0 !important;
}

body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin-top: 0 !important;
}

body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block .clearfix,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 .clearfix {
    display: none !important;
}

body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block .btn.btn-sm,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 .btn.btn-sm,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block .dropdown > .btn.btn-sm,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 .dropdown > .btn.btn-sm {
    font-size: 15px !important;
    padding: 10px 18px !important;
    min-height: 42px !important;
    line-height: 1.2 !important;
}

body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block .btn.btn-sm .icon,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 .btn.btn-sm .icon,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block .btn.btn-sm i,
body .page-head.page-head--product-selling > .row > .col-md-12 > .d-block.mt-2 .btn.btn-sm i {
    font-size: 15px !important;
}

/* Sidebar outer base */
.be-left-sidebar {
    background: transparent !important;
    border-right: none !important;
    box-shadow: none !important;
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    height: 100vh !important;
    overflow: visible !important;
    z-index: 1040 !important;
    transition: width 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body .be-content .dropdown-menu,
body .main-content .dropdown-menu,
body .j-new-sale-dropdown .dropdown-menu {
    z-index: 1065 !important;
}

body .j-new-sale-dropdown {
    position: relative !important;
}

body .j-new-sale-dropdown.show .dropdown-menu,
body .j-new-sale-dropdown .dropdown-menu.show,
body .j-new-sale-dropdown .j-new-sale-dropdown-menu.show {
    min-width: 220px !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    margin-top: 0.125rem !important;
    border-radius: var(--radius-lg) !important;
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--shadow-lg) !important;
}

/* Remover os rastros do Beagle (pseudo-elementos geradores de linha) */
.be-wrapper.be-fixed-sidebar .be-left-sidebar::before,
.be-left-sidebar::before {
    display: none !important;
}

/* Wrapper — card flutuante (afastado das bordas).
   Motivo: overflow:hidden cortava dropdowns e tooltips que precisam sair do card.
   border-radius continua funcionando independentemente do overflow. */
.be-left-sidebar .left-sidebar-wrapper {
    border-radius: var(--radius-lg) !important;
    background-color: var(--color-bg-white) !important;
    box-shadow: var(--shadow-float) !important;
    overflow: visible !important; /* Era hidden — impedia dropdowns/tooltips de sair do card */
    height: calc(100vh - 32px) !important;
    margin: 16px 12px 16px 16px !important;
    width: auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.be-left-sidebar .left-sidebar-spacer {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 0% !important;
    height: auto !important;
    overflow: hidden !important; /* Contem apenas o scroll interno — não afeta o footer */
    position: relative !important;
}

.be-left-sidebar .left-sidebar-scroll {
    flex: 1 1 auto !important;
    height: 100% !important;
    overflow-y: auto !important;
    padding-bottom: 20px !important;
    width: 100% !important;
}

/* Ocultar perf-scrollbar (a "linha invisível" / pípula na direita), e customizar scrollbar nativa Webkit */
.be-left-sidebar .ps__rail-y,
.be-left-sidebar .ps__rail-x {
    display: none !important;
}

.be-left-sidebar .left-sidebar-scroll::-webkit-scrollbar {
    width: 5px;
}
.be-left-sidebar .left-sidebar-scroll::-webkit-scrollbar-track {
    background: transparent;
}
.be-left-sidebar .left-sidebar-scroll::-webkit-scrollbar-thumb {
    background: var(--color-border);
    border-radius: 4px;
}

/* --- PESQUISA FALSO-INPUT --- */
.sidebar-search-wrapper {
    padding: 0 16px 12px;
    margin-top: 10px;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--color-border-soft) !important;
}
.sidebar-search-button {
    background-color: var(--color-bg-hover) !important;
    border-radius: var(--radius-lg) !important;
    display: flex !important;
    align-items: center !important;
    padding: 8px 12px !important;
    cursor: pointer !important;
    color: var(--color-text-muted) !important;
    transition: var(--transition-fast) !important;
}
.sidebar-search-button:hover {
    background-color: var(--color-accent-light) !important;
}
.sidebar-search-button:hover .icon,
.sidebar-search-button:hover .text {
    color: var(--color-accent) !important;
    opacity: 1 !important;
}
.sidebar-search-button .icon {
    font-size: 18px !important;
    margin-right: 12px !important;
    opacity: 0.8 !important;
}
.sidebar-search-button .text {
    font-size: 13px !important;
    font-weight: 400 !important;
}

/* Esconde o link "MENU ▼" do Beagle */
.be-left-sidebar .left-sidebar-toggle {
    display: none !important;
}

/* Ícone toggle: expandida = <, colapsada = > */
.be-left-sidebar .be-toggle-left-sidebar .icon {
    display: inline-flex !important;
    align-items: center !important;
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.be-left-sidebar .be-toggle-left-sidebar .icon::before {
    font-family: 'remixicon' !important;
    content: "\EA60" !important; /* ri-arrow-left-s-line — expanda */
}
.be-collapsible-sidebar-collapsed .be-left-sidebar .be-toggle-left-sidebar .icon {
    transform: rotate(180deg) !important;
}


/* -------------------------------------------------------------
   7. LOGO E TOGGLE BUBBLE NA SIDEBAR (movido pelo modern-base.js)
   Motivo: logo prependTo .left-sidebar-wrapper; toggle appendTo .be-left-sidebar
   ------------------------------------------------------------- */

/* Área do logo — dentro do card, no topo */
.be-left-sidebar .be-navbar-header {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 16px 14px 12px !important;
    border-bottom: none !important;
    min-height: 56px !important;
}

.be-left-sidebar .be-navbar-header .navbar-brand {
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-start !important;
}

.be-left-sidebar .be-navbar-header .navbar-brand img {
    max-height: 36px !important;
    width: auto !important;
    display: block !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Logo quando COLAPSADA — Repassado para regra de colapso global. */

/* Toggle bubble — filho direto do .be-left-sidebar, posicionado na borda direita.
   Motivo: Posicionamento ajustado para não conflitar com a margem do wrapper */
.be-left-sidebar > .be-toggle-left-sidebar {
    position: absolute !important;
    top: 24px !important;
    right: -2px !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background-color: var(--color-bg-white) !important;
    box-shadow: 0 2px 8px var(--color-black-alpha-15) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--color-text-muted) !important;
    font-size: 16px !important;
    padding: 0 !important;
    cursor: pointer !important;
    transition: var(--transition-fast) !important;
    z-index: 1050 !important; /* Bumped to prevent blocks */
    text-decoration: none !important;
}
.be-left-sidebar > .be-toggle-left-sidebar:hover {
    color: var(--color-primary) !important;
    box-shadow: 0 3px 12px var(--color-black-alpha-20) !important;
}

/* Itens do scroll — padding-bottom repassado para definição do scrollbar */


/* -------------------------------------------------------------
   8. RODAPÉ DA SIDEBAR — avatar, notificações, busca
      (movido pelo modern-base.js — filho direto do .be-left-sidebar)
   Motivo: appendTo .be-left-sidebar via JS — integrado visualmente ao fundo do card
   ------------------------------------------------------------- */

/* Remove a seta/caret que o Bootstrap injeta via ::after em .dropdown-toggle no footer */
.sidebar-footer-nav .dropdown-toggle::after,
.sidebar-footer-nav .dropdown-toggle::before {
    display: none !important;
}

/* Footer — fundo da sidebar, continuação visual do card */
.be-left-sidebar .left-sidebar-wrapper > .sidebar-footer-nav {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-around !important;
    padding: 12px 8px !important;
    border-top: 1px solid var(--color-border) !important;
    background-color: var(--color-bg-white) !important;
    border-radius: 0 0 var(--radius-lg) var(--radius-lg) !important;
    box-shadow: none !important;
    z-index: 5 !important;
    flex-shrink: 0 !important;
}

/* Remove o estilo de lista horizontal do Bootstrap */
.sidebar-footer-nav .nav {
    flex-direction: row !important;
    align-items: center !important;
}

/* Links do rodapé — padrão "pill card" idêntico ao Figma de referência:
   fundo cinza neutro por padrão, azul clarinho quando ativo/hover */
.sidebar-footer-nav .nav-link {
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 3px !important;
    color: var(--color-text-muted) !important;
    background-color: var(--color-bg-hover) !important;
    border-radius: var(--radius-md) !important;
    border: 1px solid transparent !important;
    transition: var(--transition-fast) !important;
}
.sidebar-footer-nav .nav-link:hover {
    color: var(--color-accent) !important;
    background-color: var(--color-accent-light) !important;
    /* Borda azul leve, mesma intensidade do menu */
    border-color: var(--color-accent-alpha-35) !important;
}
/* Dropdown aberto: Bootstrap adiciona .show no <li> pai, por isso usamos li.show > .nav-link */
.sidebar-footer-nav li.show > .nav-link,
.sidebar-footer-nav .nav-link.active {
    color: var(--color-accent) !important;
    background-color: var(--color-accent-light) !important;
    border-color: var(--color-accent-alpha-35) !important;
}

/* Ícones do rodapé */
.sidebar-footer-nav .nav-link .icon,
.sidebar-footer-nav .nav-link i {
    color: inherit !important;
    font-size: 20px !important;
    margin: 0 !important;
}

/* Avatar no rodapé */
.sidebar-footer-nav .nav-link img {
    width: 28px !important;
    height: 28px !important;
    border-radius: var(--radius-pill) !important;
    border: 2px solid var(--color-border) !important;
    object-fit: cover !important;
}

/* Nome do usuário — esconde no rodapé (espaço curto) */
.sidebar-footer-nav .user-name {
    display: none !important;
}

/* Dropdown do avatar/notificações no rodapé — abre acima e fora do card
   Nota: posicionamento final feito via Popper.js (boundary:viewport) no modern-base.js */
.sidebar-footer-nav .dropdown-menu {
    border-radius: var(--radius-lg) !important;
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--shadow-lg) !important;
    overflow: hidden !important;
    margin-bottom: 8px !important;
    z-index: 9999 !important; /* Acima de qualquer elemento da sidebar */
}

.sidebar-footer-nav .dropdown-menu .dropdown-item {
    font-size: var(--font-size-base) !important;
    color: var(--color-text) !important;
    transition: var(--transition-fast) !important;
}
.sidebar-footer-nav .dropdown-menu .dropdown-item:hover {
    background-color: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
}

/* Notificações — dropdown abre pra cima */
.sidebar-footer-nav .be-notifications {
    bottom: 100% !important;
    top: auto !important;
    left: -60px !important;
    right: auto !important;
    margin-bottom: 8px !important;
}

/* -------------------------------------------------------------
   9. SIDEBAR COLAPSADA — Ajustes do card e footer
   Motivo: Abertura para 80px e reajuste da logo/toggle para evitar corte.
   ------------------------------------------------------------- */
.be-collapsible-sidebar-collapsed .be-left-sidebar {
    width: 80px !important;
}

.be-collapsible-sidebar-collapsed .be-content {
    margin-left: 96px !important;
    transition: margin-left 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.be-collapsible-sidebar-collapsed .be-left-sidebar .left-sidebar-wrapper {
    margin: 16px 8px !important;
}

.be-collapsible-sidebar-collapsed .be-left-sidebar .be-navbar-header {
    padding: 24px 4px 12px 4px !important;
    justify-content: center !important;
}

/* gap: 0 remove o espaço residual do 10px inline-style quando company-name some,
   garantindo que o logo fique exatamente centralizado. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .be-navbar-header .navbar-brand {
    max-width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    overflow: hidden !important;
    gap: 0 !important;
}

.be-collapsible-sidebar-collapsed .be-left-sidebar .be-navbar-header .navbar-brand img {
    max-width: 48px !important;
    max-height: 38px !important;
    object-fit: contain !important;
}

/* Sidebar Search em Modo Colapsado (Vira Bolinha) */
.be-collapsible-sidebar-collapsed .sidebar-search-wrapper {
    padding: 0 !important;
    margin: 8px 0 0 0 !important;
    display: flex !important;
    justify-content: center !important;
    border-bottom: 1px solid var(--color-border-soft) !important; /* Adiciona a divisória também no colapsado */
}
.be-collapsible-sidebar-collapsed .sidebar-search-button {
    background-color: transparent !important;
    padding: 0 !important;
    margin: 4px 14px 12px 14px !important; /* Mais perto do fundo */
    aspect-ratio: 1 !important;
    border-radius: var(--radius-pill) !important;
    justify-content: center !important;
    height: 36px !important;
}
.be-collapsible-sidebar-collapsed .sidebar-search-button .text {
    display: none !important;
}
.be-collapsible-sidebar-collapsed .sidebar-search-button .icon {
    margin: 0 !important;
    font-size: 22px !important;
}

/* Centraliza os ícones do menu principal */
/* Padding e margin VERTICAIS idênticos ao estado expandido (8px / 1px).
   Só o horizontal muda — zero movimento no eixo Y durante a transição.
   aspect-ratio removido: não é transicionável, causa snap imediato. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li > a {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 8px 0 !important;
    margin: 1px 8px !important;
    border-radius: var(--radius-pill) !important;
    text-align: center !important;
}
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li > a .icon {
    margin: 0 !important;
    width: auto !important;
    font-size: 18px !important;
    opacity: 0.7 !important;
}
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li > a span {
    opacity: 0 !important;
    pointer-events: none !important;
    /* transition sem delay: some rápido ao fechar, aparece devagar ao abrir */
    transition: opacity 0.05s ease 0s !important;
}

/* No modo colapsado, o active volta a ser uma pílula central normal.
   margin-right igual ao base (8px) para o ícone ficar centralizado como os outros. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.active > a {
    background-color: var(--color-accent-light) !important;
    border-radius: var(--radius-pill) !important;
    border-right: none !important;
    padding-right: 0 !important;
}

/* Ajusta a bolinha para não ficar sobre a logo no pequeno */
.be-collapsible-sidebar-collapsed .be-left-sidebar > .be-toggle-left-sidebar {
    right: -6px !important;
    top: 24px !important;
    box-shadow: 0 4px 12px var(--color-black-alpha-20) !important;
}

/* Nao exibe NENHUMA SETA SE QUER lateral com o menu minimizado (cleaner look) */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.parent > a::after {
    display: none !important;
}

.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-footer-nav {
    flex-direction: column !important;
    padding: 12px 4px !important;
}

.be-collapsible-sidebar-collapsed .sidebar-footer-nav .nav {
    flex-direction: column !important;
    width: 100% !important;
}

.be-collapsible-sidebar-collapsed .sidebar-footer-nav .nav-item {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

.be-collapsible-sidebar-collapsed .sidebar-footer-nav .nav-link {
    padding: 8px 0 !important;
    margin: 4px 0 !important;
    justify-content: center !important;
    width: 100% !important;
    display: flex !important;
}

/* -------------------------------------------------------------
   10. TÍTULOS DE CATEGORIA E NOME DA EMPRESA
   ------------------------------------------------------------- */
.be-left-sidebar .sidebar-elements li.category-title {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--color-text-category-muted) !important;
    padding: 18px 20px 6px 24px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    pointer-events: none !important;
    background: transparent !important;
    border: none !important;
    /* Fade-in com delay após expansão completa */
    opacity: 1;
    transition: opacity 0.18s ease 0.14s !important;
}

/* Só opacity — height e padding preservados para não causar accordion no eixo Y.
   max-width: 0 + overflow: hidden esconde o texto sem colapsar a altura. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.category-title {
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.05s ease 0s !important;
    max-width: 0 !important;
    overflow: hidden !important;
}
/* 4 classes (> 3 da regra expandida) garante que esta regra sempre vence.
   max-width: 0 + overflow: hidden + opacity: 0 esconde sem display:none. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .be-navbar-header .sidebar-company-name {
    display: none !important;
}

/* Estado expandido: nome visível, quebra em até 2 linhas para nomes longos.
   display:block + overflow:hidden + line-clamp evita altura infinita. */
.be-left-sidebar .be-navbar-header .sidebar-company-name {
    display: block !important;
    color: var(--color-text) !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    max-width: none !important;
    overflow: hidden !important;
    white-space: normal !important;
    word-break: break-word !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

/* Submenus flutuantes (Pop-out) no modo colapsado.
   Segue o Blueprint do menu de perfil: flutuante, gradiente e sombra profunda. */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements > li > ul.visible {
    left: 88px !important;
    z-index: 2000 !important;
    width: 280px !important;
    padding: 8px 0 !important;
    height: auto !important;
    min-height: 0 !important;
    bottom: auto !important;
    background-color: var(--color-bg-white) !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-black-alpha-12) !important;
    box-shadow: var(--shadow-float) !important;
}

/* RESET NUCLEAR V22 - SUPRESSÃO INTELIGENTE (:HAS) & FLOW SNIPER (7825) */

.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements > li.open > ul.visible,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible {
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 40px) !important;
    flex: none !important;
    box-sizing: border-box !important;
    position: fixed !important; 
    left: 60px !important; 
    top: auto !important; 
    margin-left: 20px !important; 
    width: 280px !important;
    z-index: 5000 !important;
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateY(-120px) !important; 
    animation: modernFadeInUp 0.1s ease-out !important;
}

/* SUPRESSÃO INTELIGENTE (:has): Se houver um menu aberto, matamos os tooltips (7825) */
/* Esta regra captura os tooltips injetados no final do body pelo Beagle/Bootstrap */
body:has(.be-collapsible-sidebar-collapsed li.open) .tooltip,
body:has(.be-collapsible-sidebar-collapsed li.open) .tooltip.show,
body:has(.be-collapsible-sidebar-collapsed li.open) .tooltip.bs-tooltip-right {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Fallback para navegadores sem suporte total a :has */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.open ~ .tooltip,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li.open + .tooltip {
    display: none !important;
}

/* GARANTIR FLUXO INTERNO VISÍVEL */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .be-scroller,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .be-scroller .content,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items {
    display: block !important;
    height: auto !important;
    position: relative !important;
    overflow: visible !important;
    width: 100% !important;
}

/* Título Sniper Clean */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .title {
    padding: 16px 20px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    color: var(--color-primary) !important;
    border-bottom: 1px solid var(--color-black-alpha-05) !important;
    margin-bottom: 8px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    opacity: 0.6 !important;
    text-align: left !important;
    flex-shrink: 0 !important;
}

/* Links internos - ALINHADOS À ESQUERDA (7801) */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li a {
    padding: 10px 18px !important;
    margin: 1px 10px !important;
    font-size: 14px !important;
    color: var(--color-text-neutral-strong) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important; /* Alinhamento profissional */
    text-align: left !important;
    width: calc(100% - 20px) !important;
    height: 40px !important;
    border-radius: 4px !important;
    transition: all 0.1s ease !important;
    text-decoration: none !important;
}

/* Hover/Active - SINCRONIZAÇÃO AZUL TOTAL */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li a:hover,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li.active > a {
    background-color: var(--color-accent-light) !important;
    color: var(--color-accent) !important;
}

/* Ícones Sniper - Sincronização Ativa */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li a i,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li a .icon {
    font-size: 18px !important;
    color: var(--color-text-neutral-soft) !important;
    width: 24px !important;
    text-align: center !important;
    flex-shrink: 0 !important;
    opacity: 0.7 !important;
    margin-right: 12px !important;
}

.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li.active > a i,
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li.active > a .icon {
    color: var(--color-accent) !important;
    opacity: 1 !important;
}

/* Labels */
.be-collapsible-sidebar-collapsed .be-left-sidebar .sidebar-elements li ul.visible .nav-items li a span {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-align: left !important;
}
 .sidebar-elements li ul.visible .nav-items li a span {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* -------------------------------------------------------------
/* Consome os tokens de --tooltip-* definidos em modern-variables.css. */
.tooltip.modern-tooltip {
    opacity: 0;
    transition: opacity 0.15s ease-in-out;
}
.tooltip.modern-tooltip.show {
    opacity: 1 !important;
}
.tooltip.modern-tooltip .tooltip-inner {
    background-color: var(--tooltip-bg) !important;
    color: var(--tooltip-color) !important;
    font-family: var(--font-family) !important;
    font-size: var(--tooltip-font-size) !important;
    font-weight: var(--font-weight-medium) !important;
    border: none !important;
    box-shadow: var(--tooltip-shadow) !important;
    border-radius: var(--tooltip-radius) !important;
    padding: var(--tooltip-padding) !important;
    white-space: nowrap !important;
}
/* Seta do tooltip — cor grafite, apontando para o ícone */
.tooltip.modern-tooltip.bs-tooltip-right .arrow::before,
.tooltip.modern-tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before {
    border-right-color: var(--tooltip-bg) !important;
}


/* -------------------------------------------------------------
   PAINEL DE NOTIFICAÇÕES (.be-notifications) — Override moderno
   ------------------------------------------------------------- */
.sidebar-footer-nav .be-notifications.dropdown-menu {
    width: 280px !important;
    min-width: 280px !important;
    max-height: 420px !important;
    padding: 0 !important;
}
/* Blueprint de Alta Fidelidade (Baseado no layout aprovado pelo usuário). 
   Inclui Gradiente Premium, Sombras em Camadas e Animações. */

@keyframes modernFadeInUp {
    from {
        opacity: 0;
        transform: translateY(12px) !important;
    }
    to {
        opacity: 1;
        transform: translateY(0) !important;
    }
}

@keyframes modernShake {
    0%, 100% { transform: rotate(0); }
    15%, 45%, 75% { transform: rotate(-12deg); }
    30%, 60%, 90% { transform: rotate(12deg); }
}

@keyframes modernMarquee {
    0% { transform: translateX(0); }
    30% { transform: translateX(0); }
    100% { transform: translateX(calc(-100% + 240px)); }
}


@keyframes modernContextSlide {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}


/* CONTAINER MESTRE (Blueprint Usuário - SUPER RESET) */
.sidebar-footer-nav .be-notifications.dropdown-menu,
.sidebar-footer-nav .be-user-nav .dropdown-menu {
    position: absolute !important;
    bottom: 20px !important; /* Fixa no rodapé, abrindo para cima */
    top: auto !important;
    left: calc(100% + 12px) !important; /* Força o Pop-out à direita da sidebar c/ respiro */
    right: auto !important;
    
    border-radius: 12px !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
    box-shadow:
        0 4px 8px var(--color-black-alpha-05),
        0 8px 20px var(--color-black-alpha-15),
        0 16px 40px var(--color-primary-glow-alpha-10) !important;
    overflow: hidden !important;
    z-index: 2000 !important; /* Garante que fique acima de tudo */
    padding: 0 !important;
    width: 340px !important;
    min-width: 340px !important;
    max-height: none !important; /* Limite agora é aplicado na lista, não no modal */
    display: none; /* Bootstrap controla via .show */
    border: 1px solid var(--color-black-alpha-08) !important;
    
    /* Reset radical de herenças e Popper.js */
    margin: 0 !important;
    transform: none !important;
    float: none !important;
}

/* Em mobile, resetar para centralizado */
@media (max-width: 767px) {
    .sidebar-footer-nav .be-notifications.dropdown-menu,
    .sidebar-footer-nav .be-user-nav .dropdown-menu {
        left: 16px !important;
        right: 16px !important;
        width: calc(100vw - 32px) !important;
    }
}

.sidebar-footer-nav .dropdown.show .dropdown-menu {
    display: block !important;
    animation: modernFadeInUp 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Scrollbar Custom (Blueprint) */
.sidebar-footer-nav .be-notifications .list {
    max-height: 280px !important; /* Exibe ~4 itens e uma 'dica' do próximo */
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border-bottom: 1px solid var(--color-black-alpha-02) !important;
}

.sidebar-footer-nav .be-notifications .be-scroller {
    height: auto !important;
    overflow: visible !important;
    max-height: none !important;
}

.sidebar-footer-nav .be-notifications .list::-webkit-scrollbar {
    width: 4px !important;
}
.sidebar-footer-nav .be-notifications .list::-webkit-scrollbar-thumb {
    background: var(--color-black-alpha-10) !important;
    border-radius: 10px !important;
}
.sidebar-footer-nav .be-notifications .list::-webkit-scrollbar-thumb:hover {
    background: var(--color-black-alpha-20) !important;
}

/* NOTIFICAÇÕES: Cabeçalho (Design Ultra-Minimalista) */
.sidebar-footer-nav .be-notifications .title {
    display: flex !important;
    padding: 16px 20px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    background: transparent !important; /* Remove background p/ visual limpo */
    border-bottom: 1px solid var(--color-black-alpha-05) !important;
    border-left: none !important; /* Remove traço lateral do header */
    justify-content: space-between !important;
    align-items: center !important;
    color: var(--color-primary) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.sidebar-footer-nav .be-notifications .title .badge {
    background-color: var(--color-primary) !important;
    color: var(--color-bg-white) !important;
    font-size: 11px !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    -webkit-font-smoothing: antialiased !important;
    line-height: 1 !important;
}

/* NOTIFICAÇÕES: Lista e Itens (Blueprint) */
.sidebar-footer-nav .be-notifications .list {
    max-height: 320px !important;
    overflow-y: auto !important;
}

.sidebar-footer-nav .be-notifications .notification {
    border-bottom: 1px solid var(--color-border-soft-alt) !important;
    background-color: transparent !important; /* Remove background padrão */
    transition: background 0.25s ease !important;
}

.sidebar-footer-nav .be-notifications .notification a {
    padding: 16px 20px !important;
    display: block !important;
    text-decoration: none !important;
}

.sidebar-footer-nav .be-notifications .notification .notification-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    overflow: hidden !important;
}

.sidebar-footer-nav .be-notifications .notification .text {
    font-weight: 400 !important;
    color: var(--color-text-neutral-strong) !important;
    font-size: 0.93rem !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    white-space: nowrap !important;
    display: block !important;
    width: max-content !important;
    transition: color 0.3s ease !important;
}

.be-icons-nav > li.dropdown .dropdown-menu .footer a {
    border-top: none !important;
}

/* Hover Azulado Premium (Vibrante) */
.sidebar-footer-nav .be-notifications .notification:hover,
.sidebar-footer-nav .be-notifications .notification a.dropdown-item:hover,
.sidebar-footer-nav .be-notifications .notification a.dropdown-item:focus {
    background-color: var(--color-accent-light) !important; /* Azul celeste saturado */
}

/* Animação Marquee no Hover: Desliza p/ esquerda revelando o contexto */
.sidebar-footer-nav .be-notifications .notification:hover .text {
    color: var(--color-primary) !important;
    animation: none !important;
    transform: translateX(2px) !important;
}

/* Unread (Design Ultra-Minimalista - Sem traço) */
.sidebar-footer-nav .be-notifications .notification.notification-unread {
    background-color: transparent !important;
    border-left: none !important; /* Remove traço lateral conforme solicitado */
    position: relative !important;
}

.sidebar-footer-nav .be-notifications .notification.notification-unread a:after {
    display: none !important; /* Remove a bolinha azul */
}

.sidebar-footer-nav .be-notifications .notification:hover a:after {
    display: none !important;
}

/* NOTIFICAÇÕES: Rodapé (Blueprint c/ Hover Azulado) */
.sidebar-footer-nav .be-notifications .footer {
    background: transparent !important; /* Sempre transparente p/ visual orgânico */
    border-top: 1px solid var(--color-black-alpha-04) !important;
    text-align: center !important;
    padding: 14px !important;
    transition: var(--transition-base) !important;
}

/* ALERTAS E ESTADOS (Notificações) */
.custom_shake {
    display: inline-block !important;
    animation: modernShake 0.6s cubic-bezier(.36,.07,.19,.97) both infinite !important;
    transform-origin: top center !important;
    color: var(--color-danger) !important;
}

.alert { 
    margin-top: 24px !important;
}

.sidebar-footer-nav .nav-link {
    position: relative !important;
}

.sidebar-footer-nav .indicator {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    width: 10px !important;
    height: 10px !important;
    background-color: var(--color-danger) !important;
    border: 2px solid var(--color-bg-white) !important;
    border-radius: 50% !important;
    display: block !important;
    z-index: 10 !important;
}

.sidebar-footer-nav .be-notifications .footer:hover {
    background-color: var(--color-accent-light) !important; /* Azul celeste saturado */
    color: var(--color-primary) !important;
}

.sidebar-footer-nav .be-notifications .footer a,
.sidebar-footer-nav .be-notifications .footer a:hover {
    color: var(--color-primary) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    font-size: 13px !important;
    background: transparent !important; /* Remove background branco fantasma */
    border: none !important;
    display: block !important;
}

/* Motivo: polir o painel de notificações para ficar mais legível e menos "legado".
*/
.sidebar-footer-nav .be-notifications.dropdown-menu {
    width: 320px !important;
    min-width: 320px !important;
    border-radius: 16px !important;
    border: 1px solid var(--color-black-alpha-08) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
    box-shadow:
        0 8px 18px var(--color-black-alpha-08),
        0 20px 50px var(--color-black-alpha-12) !important;
}

body .form-control {
    height: auto;
    padding: 6px 8px;
}

.sidebar-footer-nav .be-notifications .title {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    padding: 15px 18px !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    backdrop-filter: blur(6px) !important;
}

.sidebar-footer-nav .be-notifications .title .badge {
    box-shadow: 0 4px 10px var(--color-primary-glow-alpha-10) !important;
}

.sidebar-footer-nav .be-notifications .list {
    max-height: 330px !important;
    padding: 6px 0 !important;
}

.sidebar-footer-nav .be-notifications .notification {
    position: relative !important;
}

.sidebar-footer-nav .be-notifications .notification a {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 14px 18px !important;
}

.sidebar-footer-nav .be-notifications .notification .notification-info {
    min-width: 0 !important;
}

.sidebar-footer-nav .be-notifications .notification .text {
    white-space: normal !important;
    width: auto !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.sidebar-footer-nav .be-notifications .notification .notification-info small,
.sidebar-footer-nav .be-notifications .notification .notification-info .small {
    color: var(--color-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.sidebar-footer-nav .be-notifications .notification.notification-unread {
    background: linear-gradient(90deg, var(--color-accent-light) 0%, transparent 78%) !important;
}

.sidebar-footer-nav .be-notifications .notification.notification-unread::before {
    content: "" !important;
    position: absolute !important;
    left: 14px !important;
    top: 18px !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: var(--color-accent) !important;
    box-shadow: 0 0 0 4px var(--color-accent-alpha-15) !important;
}

.sidebar-footer-nav .be-notifications .notification.notification-unread a {
    padding-left: 28px !important;
}

.sidebar-footer-nav .be-notifications .notification:hover,
.sidebar-footer-nav .be-notifications .notification a.dropdown-item:hover,
.sidebar-footer-nav .be-notifications .notification a.dropdown-item:focus {
    background-color: var(--color-accent-light) !important;
}

.sidebar-footer-nav .be-notifications .footer {
    position: sticky !important;
    bottom: 0 !important;
    padding: 12px 14px !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    backdrop-filter: blur(6px) !important;
}

.sidebar-footer-nav .be-notifications .footer a,
.sidebar-footer-nav .be-notifications .footer a:hover {
    display: inline-flex !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px 12px !important;
    border-radius: var(--radius-pill) !important;
    background: var(--color-bg-hover) !important;
}

/* PERFIL (USER INFO - Refino Individual) */
.sidebar-footer-nav .be-user-nav .user-info {
    display: none !important; /* Remove header vazio p/ visual orgânico */
}

.sidebar-footer-nav .be-user-nav .dropdown-item {
    padding: 12px 20px !important;
    color: var(--color-text-neutral-strong) !important;
    font-size: 0.93rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    transition: all 0.2s ease !important;
}

.sidebar-footer-nav .be-user-nav .dropdown-item .icon {
    font-size: 18px !important;
    color: var(--color-text-muted) !important;
    width: 20px !important;
    text-align: center !important;
}

/* Hover Sutil (Igual ao Menu) */
.sidebar-footer-nav .be-user-nav .dropdown-item:hover {
    background-color: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
}

.sidebar-footer-nav .be-user-nav .dropdown-item:hover .icon {
    color: var(--color-primary) !important;
}

/* Botão SAIR: Destaque em Vermelho */
.sidebar-footer-nav .be-user-nav .dropdown-item:last-child,
.sidebar-footer-nav .be-user-nav .dropdown-item:last-child .icon {
    color: var(--color-danger) !important;
}

.sidebar-footer-nav .be-user-nav .dropdown-item:last-child:hover {
    background-color: var(--color-danger-alpha-08) !important; /* Vermelho ultra suave no hover */
}

/* Mobile: adaptar largura */
@media (max-width: 767px) {
    .sidebar-footer-nav .be-notifications.dropdown-menu {
        width: calc(100vw - 32px) !important;
        min-width: 0 !important;
    }
}

/*BOTÕES MODERNOS (OVERRIDE GLOBAL)*/


body .btn {
    font-family: var(--font-family) !important;
    font-size: var(--font-size-base) !important;
    font-weight: var(--font-weight-medium) !important;
    border-radius: var(--radius-lg) !important;
    border-width: 1px !important;
    border-style: solid !important;
    letter-spacing: 0.01em !important;
    display: flex;
    align-items: center;
    color: var(--color-bg-white) !important;
    box-shadow: 0 2px 8px var(--color-slate-shadow-08) !important;
    transition:
        transform 0.18s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease,
        background-color 0.2s ease,
        color 0.2s ease !important;
}

body .btn:hover,
body .btn:focus {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 18px var(--color-slate-shadow-14) !important;
}

body .btn:active,
body .btn.active,
body .show > .btn.dropdown-toggle {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px var(--color-slate-shadow-08) !important;
}

body .btn:focus,
body .btn.focus {
    outline: none !important;
    box-shadow:
        0 0 0 3px var(--color-focus-ring-primary),
        0 8px 18px var(--color-slate-shadow-12) !important;
}

body .btn.disabled,
body .btn:disabled {
    box-shadow: none !important;
    opacity: 0.6 !important;
    transform: none !important;
}

body .btn i:not(:last-child),
body .btn .icon:not(:last-child) {
    margin-right: 6px !important;
}

body .btn-block-floating-close,
body .sniper-modal-iframe-close button,
body .custom_calculator_modal_close button,
body .custom_iframe_modal_close button,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button,
body .custom_notifications_modal_header button,
body .modal-header .close,
body button.close,
body .j_add_tag_container_close {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-muted) !important;
    border: 1px solid var(--color-border-soft) !important;
    box-shadow: none !important;
    text-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: 500 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    gap: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    transform: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}

body .btn-block-floating-close:hover,
body .btn-block-floating-close:focus,
body .btn-block-floating-close:active,
body .sniper-modal-iframe-close button:hover,
body .sniper-modal-iframe-close button:focus,
body .sniper-modal-iframe-close button:active,
body .custom_calculator_modal_close button:hover,
body .custom_calculator_modal_close button:focus,
body .custom_calculator_modal_close button:active,
body .custom_iframe_modal_close button:hover,
body .custom_iframe_modal_close button:focus,
body .custom_iframe_modal_close button:active,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button:hover,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button:focus,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button:active,
body .custom_notifications_modal_header button:hover,
body .custom_notifications_modal_header button:focus,
body .custom_notifications_modal_header button:active,
body .modal-header .close:hover,
body .modal-header .close:focus,
body .modal-header .close:active,
body button.close:hover,
body button.close:focus,
body button.close:active,
body .j_add_tag_container_close:hover,
body .j_add_tag_container_close:focus,
body .j_add_tag_container_close:active {
    background: var(--color-bg-hover) !important;
    color: var(--color-text-strong) !important;
    border-color: var(--color-border) !important;
    box-shadow: none !important;
    transform: none !important;
    outline: none !important;
    opacity: 1 !important;
}

body .btn-block-floating-close .mdi,
body .sniper-modal-iframe-close button .mdi,
body .custom_calculator_modal_close button .mdi,
body .custom_iframe_modal_close button .mdi,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button .mdi,
body .custom_notifications_modal_header button .mdi,
body .modal-header .close .mdi,
body .modal-header .close span,
body button.close .mdi,
body button.close span,
body .j_add_tag_container_close .mdi,
body .j_add_tag_container_close i,
body .j_add_tag_container_close .mdi::before {
    font-size: 18px !important;
    line-height: 1 !important;
    color: var(--color-text-muted) !important;
    -webkit-text-fill-color: var(--color-text-muted) !important;
    margin: 0 !important;
    opacity: 1 !important;
}

body .btn-primary,
body .btn-info {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
    border-color: var(--color-accent-mid) !important;
}

body .btn-primary:hover,
body .btn-primary:focus,
body .btn-info:hover,
body .btn-info:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-primary-hover), var(--color-accent-mid)) !important;
    border-color: var(--color-primary-hover) !important;
}

body .btn-secondary,
body .btn-default,
body .btn-light,
body .btn-secundary {
    color: var(--color-text-strong) !important;
    background: linear-gradient(135deg, var(--color-btn-secondary-start), var(--color-btn-secondary-end)) !important;
    border-color: var(--color-border-input) !important;
}

body .btn-secondary:hover,
body .btn-secondary:focus,
body .btn-default:hover,
body .btn-default:focus,
body .btn-light:hover,
body .btn-light:focus,
body .btn-secundary:hover,
body .btn-secundary:focus {
    color: var(--color-primary) !important;
    background: linear-gradient(135deg, var(--color-btn-secondary-hover-start), var(--color-btn-secondary-hover-end)) !important;
    border-color: var(--color-primary-light) !important;
}

body .btn-group > .btn.btn-secondary.dropdown-toggle,
body .btn-group > .btn.btn-default.dropdown-toggle,
body .btn-group > .btn.btn-light.dropdown-toggle,
body .btn-group > .btn.btn-secundary.dropdown-toggle,
body .dropdown > .btn.btn-secondary.dropdown-toggle,
body .dropdown > .btn.btn-default.dropdown-toggle,
body .dropdown > .btn.btn-light.dropdown-toggle,
body .show > .btn-group > .btn.btn-secondary.dropdown-toggle,
body .show > .btn-group > .btn.btn-default.dropdown-toggle,
body .show > .btn-group > .btn.btn-light.dropdown-toggle {
    min-height: 32px !important;
    padding: 6px 12px !important;
    border-radius: var(--radius-pill) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    border: 1px solid var(--color-border-soft) !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    transform: none !important;
    gap: 4px !important;
}

body .btn-group > .btn.btn-xs.btn-secondary.dropdown-toggle,
body .btn-group > .btn.btn-xs.btn-default.dropdown-toggle,
body .btn-group > .btn.btn-xs.btn-light.dropdown-toggle {
    min-height: 26px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
}

body .btn-group > .btn.btn-sm.btn-secondary.dropdown-toggle,
body .btn-group > .btn.btn-sm.btn-default.dropdown-toggle,
body .btn-group > .btn.btn-sm.btn-light.dropdown-toggle,
body .dropdown > .btn.btn-sm.btn-secondary.dropdown-toggle {
    min-height: 30px !important;
    padding: 5px 11px !important;
    font-size: 12px !important;
}

body .btn-group > .btn.btn-secondary.dropdown-toggle:hover,
body .btn-group > .btn.btn-secondary.dropdown-toggle:focus,
body .btn-group > .btn.btn-secondary.dropdown-toggle:active,
body .btn-group > .btn.btn-default.dropdown-toggle:hover,
body .btn-group > .btn.btn-default.dropdown-toggle:focus,
body .btn-group > .btn.btn-default.dropdown-toggle:active,
body .btn-group > .btn.btn-light.dropdown-toggle:hover,
body .btn-group > .btn.btn-light.dropdown-toggle:focus,
body .btn-group > .btn.btn-light.dropdown-toggle:active,
body .btn-group > .btn.btn-secundary.dropdown-toggle:hover,
body .btn-group > .btn.btn-secundary.dropdown-toggle:focus,
body .btn-group > .btn.btn-secundary.dropdown-toggle:active,
body .dropdown > .btn.btn-secondary.dropdown-toggle:hover,
body .dropdown > .btn.btn-secondary.dropdown-toggle:focus,
body .dropdown > .btn.btn-secondary.dropdown-toggle:active,
body .dropdown > .btn.btn-default.dropdown-toggle:hover,
body .dropdown > .btn.btn-default.dropdown-toggle:focus,
body .dropdown > .btn.btn-light.dropdown-toggle:hover,
body .dropdown > .btn.btn-light.dropdown-toggle:focus,
body .show > .btn-group > .btn.btn-secondary.dropdown-toggle,
body .show > .btn-group > .btn.btn-default.dropdown-toggle,
body .show > .btn-group > .btn.btn-light.dropdown-toggle {
    background: var(--color-bg-hover) !important;
    color: var(--color-text-strong) !important;
    border-color: var(--color-border) !important;
    box-shadow: none !important;
    transform: none !important;
    outline: none !important;
}

body .btn-group > .btn.btn-secondary.dropdown-toggle::after,
body .btn-group > .btn.btn-default.dropdown-toggle::after,
body .btn-group > .btn.btn-light.dropdown-toggle::after,
body .dropdown > .btn.btn-secondary.dropdown-toggle::after,
body .dropdown > .btn.btn-default.dropdown-toggle::after,
body .dropdown > .btn.btn-light.dropdown-toggle::after {
    display: none !important;
}

body .btn-group > .btn.dropdown-toggle .icon-dropdown,
body .btn-group > .btn.dropdown-toggle .mdi-chevron-down,
body .dropdown > .btn.dropdown-toggle .icon-dropdown,
body .dropdown > .btn.dropdown-toggle .mdi-chevron-down {
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
    margin: 0 0 0 4px !important;
    opacity: 0.85 !important;
}

body .btn-group > .btn.btn-xs.dropdown-toggle .icon-dropdown,
body .btn-group > .btn.btn-xs.dropdown-toggle .mdi-chevron-down {
    font-size: 12px !important;
    margin-left: 3px !important;
}

body .btn-primary-alt {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-primary-hover), var(--color-accent-mid)) !important;
    border-color: var(--color-primary-hover) !important;
}

body .btn-primary-alt:hover,
body .btn-primary-alt:focus,
body .btn-primary-alt:active,
body .btn-primary-alt.active,
body .show > .btn-primary-alt.dropdown-toggle {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-hover)) !important;
    border-color: var(--color-primary) !important;
}

body .btn-purple {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-btn-purple-start), var(--color-btn-purple-end)) !important;
    border-color: var(--color-btn-purple-start) !important;
}

body .btn-purple:hover,
body .btn-purple:focus,
body .btn-purple:active,
body .btn-purple.active,
body .show > .btn-purple.dropdown-toggle {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-btn-purple-hover-start), var(--color-btn-purple-hover-end)) !important;
    border-color: var(--color-btn-purple-hover-start) !important;
}

body .btn-success {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success-soft) !important;
}

body .btn-success:hover,
body .btn-success:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-success), var(--color-green)) !important;
    border-color: var(--color-success) !important;
}

body .btn-danger {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-danger-soft), var(--color-danger)) !important;
    border-color: var(--color-danger-soft) !important;
}

body .btn-danger:hover,
body .btn-danger:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-danger), var(--color-danger-strong)) !important;
    border-color: var(--color-danger) !important;
}

body .btn-warning {
    color: var(--color-text) !important;
    background: linear-gradient(135deg, var(--color-warning), var(--color-warning-soft)) !important;
    border-color: var(--color-warning-soft) !important;
}

body .btn-warning:hover,
body .btn-warning:focus {
    color: var(--color-text) !important;
    background: linear-gradient(135deg, var(--color-warning-soft), var(--color-warning)) !important;
    border-color: var(--color-warning-soft) !important;
}

body .btn-dark {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-btn-dark-start), var(--color-btn-dark-end)) !important;
    border-color: var(--color-btn-dark-start) !important;
}

body .btn-dark:hover,
body .btn-dark:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-btn-dark-hover-start), var(--color-btn-dark-hover-end)) !important;
    border-color: var(--color-btn-dark-hover-start) !important;
}

body .btn-grey,
body .btn-gray {
    color: var(--color-text-strong) !important;
    background: linear-gradient(135deg, var(--color-btn-gray-start), var(--color-btn-gray-end)) !important;
    border-color: var(--color-btn-gray-border) !important;
}

body .btn-grey:hover,
body .btn-grey:focus,
body .btn-gray:hover,
body .btn-gray:focus {
    color: var(--color-text-strong) !important;
    background: linear-gradient(135deg, var(--color-btn-gray-hover-start), var(--color-btn-gray-hover-end)) !important;
    border-color: var(--color-btn-gray-hover-border) !important;
}

body .btn-outline-primary {
    color: var(--color-accent-mid) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-accent-mid) !important;
}

body .btn-outline-primary:hover,
body .btn-outline-primary:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
    border-color: var(--color-accent-mid) !important;
}

body .btn-outline-secondary {
    color: var(--color-text-light) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-border-input) !important;
}

body .btn-outline-secondary:hover,
body .btn-outline-secondary:focus {
    color: var(--color-primary) !important;
    background: var(--color-bg-hover) !important;
    border-color: var(--color-primary-light) !important;
}

body .btn-outline-success {
    color: var(--color-success) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-success) !important;
}

body .btn-outline-success:hover,
body .btn-outline-success:focus {
    color: var(--color-bg-white) !important;
    background: var(--color-success) !important;
    border-color: var(--color-success) !important;
}

body .btn-outline-danger {
    color: var(--color-danger) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-danger) !important;
}

body .btn-outline-danger:hover,
body .btn-outline-danger:focus {
    color: var(--color-bg-white) !important;
    background: var(--color-danger) !important;
    border-color: var(--color-danger) !important;
}

body .btn-outline-warning {
    color: var(--color-warning-soft) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-warning-soft) !important;
}

body .btn-outline-warning:hover,
body .btn-outline-warning:focus {
    color: var(--color-text) !important;
    background: var(--color-warning) !important;
    border-color: var(--color-warning-soft) !important;
}

body .btn-outline-info {
    color: var(--color-accent) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-accent) !important;
}

body .btn-outline-info:hover,
body .btn-outline-info:focus {
    color: var(--color-bg-white) !important;
    background: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
}

body .btn-outline-dark {
    color: var(--color-text-strong) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-btn-dark-start) !important;
}

body .btn-outline-dark:hover,
body .btn-outline-dark:focus {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-btn-dark-start), var(--color-btn-dark-end)) !important;
    border-color: var(--color-btn-dark-start) !important;
}

body .btn-outline-grey,
body .btn-outline-gray {
    color: var(--color-text-muted) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-btn-gray-end) !important;
}

body .btn-outline-grey:hover,
body .btn-outline-grey:focus,
body .btn-outline-gray:hover,
body .btn-outline-gray:focus {
    color: var(--color-text-strong) !important;
    background: linear-gradient(135deg, var(--color-btn-outline-gray-hover-start), var(--color-btn-outline-gray-hover-end)) !important;
    border-color: var(--color-btn-gray-hover-border) !important;
}

body .btn-link {
    color: var(--color-accent-mid) !important;
    box-shadow: none !important;
    border-color: transparent !important;
    background: transparent !important;
}

body .btn-link:hover,
body .btn-link:focus {
    color: var(--color-primary) !important;
    text-decoration: underline !important;
    box-shadow: none !important;
    background: transparent !important;
}

body .btn-sm {
    border-radius: var(--radius-md) !important;
}

body .j_frm_simulator > .row:first-of-type .btn.btn-sm,
body .j_frm_simulator > .row:first-of-type .dropdown > .btn.btn-sm,
body .page-head--product-selling .btn.btn-sm,
body .page-head--product-selling .dropdown > .btn.btn-sm {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    min-height: 30px !important;
    height: 30px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    border-radius: var(--radius-md) !important;
    margin-left: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

body .j_frm_simulator > .row:first-of-type .btn.btn-sm .icon,
body .j_frm_simulator > .row:first-of-type .btn.btn-sm i,
body .j_frm_simulator > .row:first-of-type .dropdown > .btn.btn-sm .icon,
body .j_frm_simulator > .row:first-of-type .dropdown > .btn.btn-sm i,
body .page-head--product-selling .btn.btn-sm .icon,
body .page-head--product-selling .btn.btn-sm i {
    font-size: 14px !important;
    line-height: 1 !important;
    margin: 0 !important;
}

body .j_frm_simulator .custom_table_pricing__buttons button,
body .j_frm_simulator .custom_table_pricing__buttons a {
    min-height: 30px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

body .j_frm_simulator .display-heading,
body .j_frm_simulator h2.display-heading,
body .j_frm_simulator h2.display-heading.fs-25px {
    font-size: 18px !important;
    font-weight: 700 !important;
    margin: 8px 0 10px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
}

body .j_frm_simulator .col-md-7 > h2.display-heading[style],
body .j_frm_simulator .col-md-7 > h2.display-heading,
body .j_frm_simulator .col-md-7 h2.display-heading[style*="font-size"] {
    font-size: 18px !important;
    margin-top: 8px !important;
}

body .j_frm_simulator > .row:first-of-type {
    margin-bottom: 28px !important;
    padding-bottom: 4px !important;
}

body .j_frm_simulator > .row:first-of-type + .row {
    margin-top: 0 !important;
    padding-top: 4px !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 8px;
    row-gap: 4px;
    align-items: center;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 {
    margin-top: 0 !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > .clearfix,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .clearfix {
    display: none !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > .float-right,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > a.btn.float-right,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > button.btn.float-right,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .float-right,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > a.btn.float-right,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > button.btn.float-right {
    float: none !important;
    margin-left: 0 !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > * {
    order: 5;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > .btn-danger {
    order: 1;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > .dropdown {
    order: 2;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block:first-of-type > .btn-info {
    order: 3;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > * {
    order: 5;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .j_print_simulation {
    order: 1;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .j_accounting_information {
    order: 2;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .j_btn_diagnose_generate {
    order: 3;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > .j_btn_form_add_cli {
    order: 4;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 {
    order: 10;
    width: auto;
    margin: 0 !important;
    float: none !important;
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
    gap: 4px;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: right !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 .icon,
body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 i {
    font-size: 14px !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 .j_add_obs_simulation {
    font-size: 12px !important;
}

body .j_frm_simulator > .row:first-of-type + .row > [class*="col-"]:first-child,
body .j_frm_simulator > .row:first-of-type + .row > [class*="col-"][style*="margin-top"] {
    margin-top: 0 !important;
}

body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 .j_add_obs_simulation {
    margin-left: 0 !important;
}

@media (max-width: 991.98px) {
    body .j_frm_simulator > .row:first-of-type > .col-md-12 {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 10px;
    }

    body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 {
        justify-content: flex-start !important;
    }

    body .j_frm_simulator > .row:first-of-type > .col-md-12 > .d-block.mt-2 > h4 {
        justify-content: flex-start;
        text-align: left !important;
    }
}

body .j_frm_simulator.j_frm_simulator_product_selling > .row:first-of-type > .col-md-12 {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .product-selling-filter-bar.filter-container {
    display: flex !important;
    align-items: flex-end !important;
    gap: 10px 12px !important;
    margin: 4px 0 14px !important;
    width: 100% !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .product-selling-filter-bar #filter_ctb_bpo {
    margin-right: 0 !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .product-selling-filter-bar #j_add_productDirectSelling {
    position: static !important;
    left: auto !important;
    bottom: auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin-left: 0 !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .product-selling-filter-bar .ps-filter-actions {
    margin-left: auto !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .j_btn_proposal_generate.btn.btn-primary.btn-lg {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 220px !important;
    max-width: 100% !important;
    min-height: 34px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
    line-height: 1 !important;
    border-radius: var(--radius-md) !important;
}

/* Motivo: melhorar o bloco de troca de nome no resumo da simulacao,
   com espacamento entre input e botao de confirmacao + acabamento moderno do CTA.
*/
body .j_frm_simulator .j_plans_and_packages_ctn .input-group {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group > .j_plans_and_packages.form-control {
    flex: 1 1 auto !important;
    width: auto !important;
    min-height: 42px !important;
    padding: 8px 14px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-lg) !important;
    box-shadow: 0 1px 3px var(--color-black-alpha-08) !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group > .j_plans_and_packages.form-control:focus {
    border-color: var(--color-accent-mid) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append {
    display: flex !important;
    align-items: center !important;
    margin-left: 0 !important;
    flex: 0 0 auto !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append > .btn.btn-success {
    min-width: 52px !important;
    height: 42px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    border-width: 0 !important;
    background: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    box-shadow: 0 6px 14px var(--color-black-alpha-12) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    line-height: 1 !important;
    transition: var(--transition-base) !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append > .btn.btn-success:hover,
body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append > .btn.btn-success:focus {
    transform: translateY(-1px);
    box-shadow: 0 9px 20px var(--color-black-alpha-20) !important;
    outline: none !important;
}

body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append > .btn.btn-success i {
    font-size: 18px !important;
    line-height: 1 !important;
}

@media (max-width: 767.98px) {
    body .j_frm_simulator .j_plans_and_packages_ctn .input-group {
        gap: 8px !important;
    }

    body .j_frm_simulator .j_plans_and_packages_ctn .input-group .input-group-append > .btn.btn-success {
        min-width: 48px !important;
        padding: 0 14px !important;
    }
}

/* Motivo: painel lateral direito de "Info. Contabeis" no resumo da simulacao V3.
*/
body .j_accounting_aside_backdrop {
    position: fixed;
    inset: 0;
    z-index: 1040;
    background: var(--color-black-alpha-40, rgba(15, 23, 42, 0.45));
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

body .j_accounting_aside_backdrop.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

body aside.j_accounting_aside#form-bp1 {
    position: fixed;
    top: 0;
    right: 0;
    left: auto;
    z-index: 1050;
    width: min(440px, 92vw);
    height: 100vh;
    max-height: 100vh;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    transform: translateX(105%);
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
}

body aside.j_accounting_aside#form-bp1.is-open {
    transform: translateX(0);
    pointer-events: auto;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-left: 1px solid var(--color-border);
    border-right: 0;
    border-radius: var(--radius-xl) 0 0 var(--radius-xl);
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__header {
    position: relative;
    flex: 0 0 auto;
    min-height: 0;
    margin: 0;
    padding: 6px 14px 2px;
    border: 0;
    background: transparent;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__close {
    position: absolute;
    top: 6px;
    right: 12px;
    margin: 0;
    padding: 0;
    width: 34px;
    height: 34px;
    border: 1px solid var(--color-border-input);
    border-radius: 50%;
    background: var(--color-bg-white);
    color: var(--color-text-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px var(--color-black-alpha-08);
    transition: var(--transition-base);
    cursor: pointer;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__close:hover,
body aside.j_accounting_aside#form-bp1 .j_accounting_aside__close:focus {
    color: var(--color-text-strong);
    border-color: var(--color-accent-mid);
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary);
    outline: none;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__close .mdi {
    font-size: 20px;
    line-height: 1;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 4px 16px 20px;
    overflow: auto;
}

body.j_accounting_aside-open aside.j_accounting_aside#form-bp1 .j_accounting_aside__body {
    padding-bottom: 24px;
}

body.j_accounting_aside-open:has(.j_recalc_bar.is-visible) aside.j_accounting_aside#form-bp1 .j_accounting_aside__body {
    padding-bottom: 108px;
}

body.j_accounting_aside-open {
    overflow: hidden;
    overscroll-behavior: none;
}

body.j_accounting_aside-open aside.j_accounting_aside#form-bp1.is-open,
body.j_accounting_aside-open aside.j_accounting_aside#form-bp1.is-open .j_accounting_aside__body {
    touch-action: pan-y;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

body .modal.j_modal_proposal_choice {
    z-index: 10050 !important;
}

body .modal.j_modal_proposal_choice .modal-dialog {
    max-width: 520px !important;
    width: calc(100% - 32px) !important;
    margin: 1.75rem auto !important;
}

body .modal.j_modal_proposal_choice .modal-content {
    position: relative !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: var(--shadow-xl) !important;
    background: var(--color-bg-white) !important;
}

body .modal.j_modal_proposal_choice .modal-header {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    z-index: 3 !important;
    display: block !important;
}

body .modal.j_modal_proposal_choice .modal-header .close {
    margin: 0 !important;
    float: none !important;
}

body .modal.j_modal_proposal_choice .modal-header .close .mdi,
body .modal.j_modal_proposal_choice .modal-header .close span {
    font-size: 18px !important;
    line-height: 1 !important;
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
}

body .modal.j_modal_proposal_choice .modal-header .close:hover .mdi,
body .modal.j_modal_proposal_choice .modal-header .close:focus .mdi,
body .modal.j_modal_proposal_choice .modal-header .close:hover span,
body .modal.j_modal_proposal_choice .modal-header .close:focus span {
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
}

body .modal.j_modal_proposal_choice .modal-body {
    padding: 30px 24px 16px !important;
}

body .modal.j_modal_proposal_choice .modal-main-icon {
    display: inline-flex !important;
    font-size: 2.4rem !important;
    line-height: 1 !important;
    margin-bottom: 10px !important;
}

body .modal.j_modal_proposal_choice h3 {
    margin: 0 0 8px !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: var(--color-text-strong) !important;
}

body .modal.j_modal_proposal_choice .modal-body > .text-center > p,
body .modal.j_modal_proposal_choice .modal-body p {
    color: var(--color-text-muted) !important;
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
}

body .modal.j_modal_proposal_choice .j_subject_mail {
    border-radius: 12px !important;
}

body .modal.j_modal_proposal_choice input[name="subject_mail"] {
    border-radius: 12px !important;
}

body .modal.j_modal_proposal_choice .modal-footer {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 0 24px 24px !important;
    border-top: 0 !important;
}

body .modal.j_modal_proposal_choice .modal-footer .btn {
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
}

body .modal.j_modal_otp_security .modal-dialog {
    max-width: 400px !important;
    width: calc(100% - 32px) !important;
    margin: 1.75rem auto !important;
}

body .modal.j_modal_otp_security .modal-content {
    position: relative !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: var(--shadow-xl) !important;
    background: var(--color-bg-white) !important;
}

body .modal.j_modal_otp_security .modal-header {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    z-index: 3 !important;
    display: block !important;
}

body .modal.j_modal_otp_security .modal-header .close {
    margin: 0 !important;
    float: none !important;
}

body .modal.j_modal_otp_security .modal-body {
    padding: 30px 24px 24px !important;
}

body .modal.j_modal_otp_security .modal-main-icon {
    display: inline-flex !important;
    font-size: 2.4rem !important;
    line-height: 1 !important;
    margin-bottom: 10px !important;
}

body .modal.j_modal_otp_security h3 {
    margin: 0 0 8px !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: var(--color-text-strong) !important;
}

body .modal.j_modal_otp_security p {
    margin: 0 0 18px !important;
    color: var(--color-text-muted) !important;
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
}

body .modal.j_modal_otp_security #emailInput,
body .modal.j_modal_otp_security #otpCode {
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 12px !important;
    border: 1px solid var(--color-border-input) !important;
    margin: 0 0 16px !important;
    padding: 10px 14px !important;
    font-size: 0.95rem !important;
}

body .modal.j_modal_otp_security .j_modal_otp_security__actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 8px !important;
}

body .modal.j_modal_otp_security #sendOtpBtn,
body .modal.j_modal_otp_security #validateOtpBtn,
body .modal.j_modal_otp_security #cancelOtpBtn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease !important;
}

body .modal.j_modal_otp_security #sendOtpBtn,
body .modal.j_modal_otp_security #validateOtpBtn {
    box-shadow: 0 8px 18px var(--color-black-alpha-08) !important;
}

body .modal.j_modal_otp_security #cancelOtpBtn {
    background: var(--color-bg-white) !important;
    color: var(--color-text-muted) !important;
    border: 1px solid var(--color-border) !important;
}

body .modal.j_modal_otp_security #cancelOtpBtn:hover,
body .modal.j_modal_otp_security #cancelOtpBtn:focus {
    background: var(--color-bg-hover) !important;
    color: var(--color-text-strong) !important;
    border-color: var(--color-border-input) !important;
}

body .modal.j_modal_otp_security #otpSection {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

body .modal.j_modal_otp_security #otpSection.d-none {
    display: none !important;
}

body .modal.j_modal_otp_security #otpMessage {
    min-height: 0 !important;
    font-size: 0.875rem !important;
    line-height: 1.4 !important;
}

body .modal.j_modal_otp_security #resendTimer {
    margin: 0 !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 0 0 10px !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields > .card-header.card-header-divider:first-of-type {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields > .card-header.card-header-divider {
    margin-top: 10px !important;
    margin-bottom: 12px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    background: transparent !important;
    color: var(--color-text-strong) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields > .card-header.card-header-divider .icon {
    color: var(--color-primary) !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields .form-group {
    margin-bottom: 8px !important;
}

body aside.j_accounting_aside#form-bp1 .custom-modal-fields .form-group > label {
    width: 100% !important;
    margin: 0 0 6px !important;
    padding-top: 0 !important;
    color: var(--color-text) !important;
    font-size: 14px !important;
    font-weight: var(--font-weight-medium) !important;
    line-height: 1.2 !important;
}

body aside.j_accounting_aside#form-bp1 .form-control {
    height: auto !important;
    padding: 6px 8px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 14px !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04) !important;
}

body aside.j_accounting_aside#form-bp1 .form-control:focus {
    border-color: var(--color-accent-mid) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
}

body aside.j_accounting_aside#form-bp1 input[type="checkbox"],
body aside.j_accounting_aside#form-bp1 input[type="radio"] {
    width: 16px;
    height: 16px;
    margin-right: 6px;
    accent-color: var(--color-accent-mid);
}

body aside.j_accounting_aside#form-bp1 .custom-control.custom-checkbox.custom-control-inline {
    padding: 0 8px 0 22px !important;
    margin: 0 6px 6px 0 !important;
}

body aside.j_accounting_aside#form-bp1 .custom-control-label {
    color: var(--color-text) !important;
    font-size: 13px !important;
}

body aside.j_accounting_aside#form-bp1 .custom-control-label::before {
    width: 16px !important;
    height: 16px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: 5px !important;
    background: var(--color-bg-white) !important;
    top: 2px !important;
}

body aside.j_accounting_aside#form-bp1 .custom-control-input:checked ~ .custom-control-label::before {
    border-color: var(--color-accent-mid) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
}

body aside.j_accounting_aside#form-bp1 .custom-control-label::after {
    top: 2px !important;
}

body aside.j_accounting_aside#form-bp1 .j_tax_alert {
    margin: 8px 0 0 !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-surface-alt) !important;
    color: var(--color-text) !important;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__body::-webkit-scrollbar {
    width: 7px !important;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__body::-webkit-scrollbar-track {
    background: transparent !important;
}

body aside.j_accounting_aside#form-bp1 .j_accounting_aside__body::-webkit-scrollbar-thumb {
    background: var(--color-border-input) !important;
    border-radius: var(--radius-pill) !important;
}

@media (max-width: 991.98px) {
    body aside.j_accounting_aside#form-bp1 {
        width: min(100vw, 400px);
    }

    body aside.j_accounting_aside#form-bp1 .j_accounting_aside__body {
        padding: 4px 12px 20px;
    }

    body.j_accounting_aside-open:has(.j_recalc_bar.is-visible) aside.j_accounting_aside#form-bp1 .j_accounting_aside__body {
        padding-bottom: 120px;
    }

    body aside.j_accounting_aside#form-bp1 .custom-modal-fields > .card-header.card-header-divider {
        font-size: 18px !important;
    }
}

/* Motivo: modernizar os modais/iframes usados na proposta, no funil e na simulação.
*/
body .custom_calculator_modal.j_proposal_iframe,
body .custom_calculator_modal.j_product_partner_iframe,
body .custom_calculator_modal.j_add_product_iframe,
body .custom_calculator_modal.j_dignose_iframe,
body .custom_iframe_modal.j_criterion_x_plan_iframe,
body .custom_iframe_modal.j_billing_per_ceiling_iframe,
body .sniper-modal-iframe.j_hmodalifrm_iframe,
body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow,
body .sniper-modal-iframe.j_hmodalifrm_contractsheetedit__modl,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customer,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customerv3,
body .sniper-modal-iframe.j_hmodalifrm_proposal_responsiblev3,
body .sniper-modal-iframe.j_dignose_iframe {
    padding: 16px !important;
    background: var(--color-black-alpha-20) !important;
    backdrop-filter: blur(4px) !important;
}

body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_box,
body .custom_iframe_modal.j_criterion_x_plan_iframe .custom_iframe_modal_box,
body .custom_iframe_modal.j_billing_per_ceiling_iframe .custom_iframe_modal_box,
body .sniper-modal-iframe.j_hmodalifrm_iframe .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_contractsheetedit__modl .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customer .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customerv3 .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_responsiblev3 .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_dignose_iframe .sniper-modal-iframe-box {
    width: min(100%, 1440px) !important;
    height: min(calc(100vh - 32px), 920px) !important;
    max-width: 1440px !important;
    max-height: calc(100vh - 32px) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
    box-shadow: var(--shadow-xl) !important;
    overflow: hidden !important;
}

body .sniper-modal-iframe.sniper-modal-iframe-show .sniper-modal-iframe-box,
body .custom_calculator_modal.custom_calculator_modal_show .custom_calculator_modal_box,
body .custom_iframe_modal.custom_iframe_modal_show .custom_iframe_modal_box {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
}

body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_box iframe,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_box iframe,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_box iframe,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_box iframe,
body .custom_iframe_modal.j_criterion_x_plan_iframe .custom_iframe_modal_box iframe,
body .custom_iframe_modal.j_billing_per_ceiling_iframe .custom_iframe_modal_box iframe,
body .sniper-modal-iframe .sniper-modal-iframe-box iframe {
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: var(--color-bg-white) !important;
}

body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_close button:hover,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_close button:hover,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_close button:hover,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_close button:hover,
body .custom_iframe_modal .custom_iframe_modal_close button:hover,
body .sniper-modal-iframe .sniper-modal-iframe-close button:hover,
body .sniper-modal-iframe .custom_calculator_modal_close_alt button:hover,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button:hover,
body .btn-block-floating-close:hover,
body .custom_notifications_modal_header button:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* [4C-IA | 2026-04-28 | css-override | UI-MODERN]
   Motivo: remover o texto "Fechar" dos closes globais, mantendo apenas o X.
*/
body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_close button,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_close button,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_close button,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_close button,
body .custom_iframe_modal .custom_iframe_modal_close button,
body .sniper-modal-iframe .sniper-modal-iframe-close button,
body .sniper-modal-iframe .custom_calculator_modal_close_alt button,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button,
body .btn-block-floating-close,
body .custom_notifications_modal_header button {
    font-size: 0 !important;
    line-height: 0 !important;
    gap: 0 !important;
}

body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_close button .mdi,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_close button .mdi,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_close button .mdi,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_close button .mdi,
body .custom_iframe_modal .custom_iframe_modal_close button .mdi,
body .sniper-modal-iframe .sniper-modal-iframe-close button .mdi,
body .sniper-modal-iframe .custom_calculator_modal_close_alt button .mdi,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button .mdi,
body .btn-block-floating-close .mdi,
body .custom_notifications_modal_header button .mdi {
    font-size: 16px !important;
    line-height: 1 !important;
}

body .custom_calculator_modal.j_proposal_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_product_partner_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_add_product_iframe .custom_calculator_modal_box,
body .custom_calculator_modal.j_dignose_iframe .custom_calculator_modal_box,
body .custom_iframe_modal.j_criterion_x_plan_iframe .custom_iframe_modal_box,
body .custom_iframe_modal.j_billing_per_ceiling_iframe .custom_iframe_modal_box,
body .sniper-modal-iframe.j_hmodalifrm_iframe .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_contractsheetedit__modl .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customer .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_customerv3 .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_hmodalifrm_proposal_responsiblev3 .sniper-modal-iframe-box,
body .sniper-modal-iframe.j_dignose_iframe .sniper-modal-iframe-box {
    position: relative !important;
}

body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow .sniper-modal-iframe-close,
body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow.sniper-modal-stack-buried .sniper-modal-iframe-close {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* [4C-CLAUDE | 2026-06-24 | css-override | PROPOSTA]
   Oculta o X do editor quando o aside/settings-drawer está aberto no iframe V5.
   Classe toggled via postMessage (proposal-v5-editor.js / contract-v5-editor.js). */
body .custom_calculator_modal_close_style.v5-aside-hidden,
body .custom_calculator_modal_close_alt.v5-aside-hidden,
body .sniper-modal-iframe-close.v5-aside-hidden {
    visibility: hidden !important;
    pointer-events: none !important;
    opacity: 0 !important;
    transition: opacity 0.15s ease, visibility 0.15s ease !important;
}

body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow .sniper-modal-iframe-close.sniper-modal-close-hidden,
body .sniper-modal-iframe.j_hmodalifrm_modal__cardshow.sniper-modal-stack-buried .sniper-modal-iframe-close.sniper-modal-close-hidden {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

body .custom_iframe_modal_box .custom_iframe_modal_close,
body .sniper-modal-iframe-box .sniper-modal-iframe-close,
body .sniper-modal-iframe-box .custom_calculator_modal_close,
body .sniper-modal-iframe-box .custom_calculator_modal_close_style,
body .custom_calculator_modal_box .custom_calculator_modal_close,
body .custom_calculator_modal_box .custom_calculator_modal_close_style {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 20070 !important;
}

/* [4C-IA | 2026-05-07 | css-19 | UI-MODERN/IFRAME]
 * Motivo: elevar os closes de iframe acima do modal e do conteudo interno.
 */
body .custom_calculator_modal .custom_calculator_modal_close button,
body .custom_calculator_modal_close_style.custom_calculator_modal_close_alt button,
body .custom_iframe_modal .custom_iframe_modal_close button,
body .sniper-modal-iframe .sniper-modal-iframe-close button {
    z-index: 20080 !important;
}

body .sniper-modal-iframe-box .custom_calculator_modal_close_style.custom_calculator_modal_close_alt,
body .custom_calculator_modal_box .custom_calculator_modal_close_style.custom_calculator_modal_close_alt {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 20070 !important;
}

body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close,
body .sniper-modal-iframe-box > .custom_calculator_modal_close,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 20090 !important;
    pointer-events: none !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
}

body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close button,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style button,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt button,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close button,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close button,
body .sniper-modal-iframe-box > .custom_calculator_modal_close button,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style button,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt button {
    pointer-events: auto !important;
}

body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn.btn-danger,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style .btn.btn-danger,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt .btn.btn-danger,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn.btn-danger,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn.btn-danger,
body .sniper-modal-iframe-box > .custom_calculator_modal_close .btn.btn-danger,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style .btn.btn-danger,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt .btn.btn-danger,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn-block-floating-close,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn-block-floating-close,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn-block-floating-close {
    background: var(--color-bg-white) !important;
    background-image: none !important;
    border: 1px solid var(--color-border-soft) !important;
    color: var(--color-text-muted) !important;
}

body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn.btn-danger .mdi,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn.btn-danger .mdi::before,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style .btn.btn-danger .mdi,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style .btn.btn-danger .mdi::before,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt .btn.btn-danger .mdi,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt .btn.btn-danger .mdi::before,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn.btn-danger .mdi,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn.btn-danger .mdi::before,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn.btn-danger .mdi,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn.btn-danger .mdi::before,
body .sniper-modal-iframe-box > .custom_calculator_modal_close .btn.btn-danger .mdi,
body .sniper-modal-iframe-box > .custom_calculator_modal_close .btn.btn-danger .mdi::before,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style .btn.btn-danger .mdi,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style .btn.btn-danger .mdi::before,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt .btn.btn-danger .mdi,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt .btn.btn-danger .mdi::before,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn-block-floating-close .mdi,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn-block-floating-close .mdi::before,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn-block-floating-close .mdi,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn-block-floating-close .mdi::before,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn-block-floating-close .mdi,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn-block-floating-close .mdi::before {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    color: var(--color-text-muted) !important;
    -webkit-text-fill-color: var(--color-text-muted) !important;
}

body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn.btn-danger:hover,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close .btn.btn-danger:focus,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style .btn.btn-danger:hover,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_style .btn.btn-danger:focus,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt .btn.btn-danger:hover,
body .custom_calculator_modal .custom_calculator_modal_box > .custom_calculator_modal_close_alt .btn.btn-danger:focus,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn.btn-danger:hover,
body .custom_iframe_modal .custom_iframe_modal_box > .custom_iframe_modal_close .btn.btn-danger:focus,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn.btn-danger:hover,
body .sniper-modal-iframe-box > .sniper-modal-iframe-close .btn.btn-danger:focus,
body .sniper-modal-iframe-box > .custom_calculator_modal_close .btn.btn-danger:hover,
body .sniper-modal-iframe-box > .custom_calculator_modal_close .btn.btn-danger:focus,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style .btn.btn-danger:hover,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_style .btn.btn-danger:focus,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt .btn.btn-danger:hover,
body .sniper-modal-iframe-box > .custom_calculator_modal_close_alt .btn.btn-danger:focus {
    background: var(--color-bg-hover) !important;
    background-image: none !important;
    border-color: var(--color-border) !important;
    color: var(--color-text-strong) !important;
}

/* Motivo: modernizar o card de ajustes (lado direito) do resumo da simulacao e alinhar com os cards de planos.*/
body .j_frm_simulator .col-md-5 > .card.card-border-color {
    margin-top: 56px !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: var(--shadow-md) !important;
    overflow: hidden !important;
    position: relative !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details {
    position: relative;
    z-index: 1;
    padding: 18px 16px 16px !important;
    background: transparent !important;
    /* [4C-IA | 2026-05-06 | css-17 | UI-MODERN]
       Motivo: permitir que o card-body do resumo cresca com o conteudo,
       evitando scroll interno na coluna direita da simulacao. */
    height: 100% !important;
    max-height: none !important;
    overflow: visible !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row:first-child,
body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row.mt-4,
body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row.j_obs_simulation__container {
    margin-left: 0 !important;
    margin-right: 0 !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--color-bg-white) !important;
    box-shadow: 0 1px 4px var(--color-black-alpha-04) !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row:first-child {
    padding: 12px 10px 10px !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row.mt-4,
body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details > .row.j_obs_simulation__container {
    margin-top: 12px !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .text-muted.mt-0.mb-0.fs-11px {
    letter-spacing: 0.03em !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details h4.text-primary {
    color: var(--color-primary) !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .custom.table {
    margin-bottom: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 10px !important;
    border: 0 !important;
    background: transparent !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .custom.table tbody td {
    border-top: 1px solid var(--color-border-soft) !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .custom.table tbody tr:first-child td {
    border-top: 0 !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .j_add_product,
body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details .j_btn_obs_simulation {
    font-weight: var(--font-weight-semibold) !important;
}

/* [4C-IA | 2026-05-07 | css-18 | UI-MODERN/SIMULACAO]
   Motivo: compactar a acao de parcelamento separado sem reduzir a area horizontal de clique. */
body .j_set_product_split__alone.btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 22px !important;
    padding: 1px 14px !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-pill) !important;
    background: var(--color-bg-hover) !important;
    color: var(--color-text-muted) !important;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease !important;
}

body .j_set_product_split__alone.btn:hover:not(:disabled) {
    background: var(--color-bg-white) !important;
    border-color: var(--color-border-input) !important;
    box-shadow: 0 1px 4px var(--color-black-alpha-04) !important;
}

body .j_frm_simulator .j_products_ctb .custom.table,
body .j_frm_simulator .j_products_bpo .custom.table,
body .j_frm_simulator .j_split_products_container .custom.table {
    border-collapse: separate !important;
    border-spacing: 0 10px !important;
    background: transparent !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td {
    background: var(--color-bg-white) !important;
    border-top: 1px solid var(--color-border-soft) !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    padding: 12px 10px !important;
    vertical-align: middle !important;
}

body .j_frm_simulator .custom.table.table-striped tbody tr.j_pdt_row:nth-of-type(odd) td:not(.j_pdt),
body .j_frm_simulator .custom.table.table-striped tbody tr.j_pdt_row:nth-of-type(even) td:not(.j_pdt),
body .j_frm_simulator .custom.table.table-hover tbody tr.j_pdt_row:hover td:not(.j_pdt) {
    background: var(--color-bg-white) !important;
}

body .j_frm_simulator .custom.table.table-hover tbody tr.j_pdt_row:hover td:not(.j_pdt) {
    background: #fafbfc !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td.j_pdt {
    width: 3px !important;
    min-width: 3px !important;
    max-width: 3px !important;
    padding: 0 !important;
    border-left: 3px solid #60a5fa !important;
    border-right: 0 !important;
    border-top: 1px solid var(--color-border-soft) !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-lg) 0 0 var(--radius-lg) !important;
    background: rgba(96, 165, 250, 0.08) !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td.j_pdt.j_pdt__isBpo {
    border-left-color: #fb923c !important;
    background: rgba(251, 146, 60, 0.08) !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td.j_pdt.j_pdt__isBoth {
    border-left-color: #f472b6 !important;
    background: rgba(244, 114, 182, 0.08) !important;
}

body .j_frm_simulator .custom.table.table-hover tbody tr.j_pdt_row:hover td.j_pdt {
    background: rgba(96, 165, 250, 0.08) !important;
    border-left-color: #60a5fa !important;
}

body .j_frm_simulator .custom.table.table-hover tbody tr.j_pdt_row:hover td.j_pdt.j_pdt__isBpo {
    background: rgba(251, 146, 60, 0.08) !important;
    border-left-color: #fb923c !important;
}

body .j_frm_simulator .custom.table.table-hover tbody tr.j_pdt_row:hover td.j_pdt.j_pdt__isBoth {
    background: rgba(244, 114, 182, 0.08) !important;
    border-left-color: #f472b6 !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td:first-child + td {
    border-left: 0 !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td:last-child {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row td.j_product_value {
    border-right: 1px solid var(--color-border-soft) !important;
    border-radius: 0 var(--radius-lg) var(--radius-lg) 0 !important;
}

body .j_frm_simulator .custom.table tbody tr.j_pdt_row + tr[style*="display:none"] td,
body .j_frm_simulator .custom.table tbody tr.j_pdt_row + tr[style*="display: none"] td {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
}

body .j_frm_simulator .j_pdt_name {
    font-size: 12px !important;
    font-weight: var(--font-weight-semibold) !important;
    color: var(--color-primary) !important;
    letter-spacing: 0.03em !important;
}

body .j_frm_simulator .j_pdt_row .j_product_value__txt {
    font-size: 15px !important;
    font-weight: var(--font-weight-semibold) !important;
    color: var(--color-text-strong) !important;
}

body .j_frm_simulator .j_pdt_row .j_select_charge_type select,
body .j_frm_simulator .j_pdt_row .j_select_charge_type input {
    border: 1px solid var(--color-border-soft) !important;
    border-radius: 8px !important;
    background: var(--color-bg-white) !important;
}

body .j_frm_simulator.j_frm_simulator_product_selling .j_tbl_products.custom.table {
    border: 0 !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details::-webkit-scrollbar {
    width: 6px !important;
    height: 6px !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details::-webkit-scrollbar-track {
    background: var(--color-bg-white) !important;
}

body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details::-webkit-scrollbar-thumb {
    background: var(--color-border-input) !important;
    border-radius: var(--radius-pill) !important;
}

.j_btn_plan_select { 
    border-radius: var(--radius-lg);
}

body .j_frm_simulator .custom_table_pricing__container,
body .j_frm_simulator .custom_table_pricing__container .custom_table_pricing__two_columns_left,
body .j_frm_simulator .custom_table_pricing__container .custom_table_pricing__two_columns_right,
body .j_frm_simulator .custom_table_pricing__container .list-title,
body .j_frm_simulator .custom_table_pricing__container li:not(.notInPlan),
body .j_frm_simulator .custom_table_pricing__container small,
body .j_frm_simulator .custom_table_pricing__container .pricing-table-price__1,
body .j_frm_simulator .custom_table_pricing__container .pricing-table-price__2,
body .j_frm_simulator .custom_table_pricing__container .pricing-table-price__3,
body .j_frm_simulator .custom_table_pricing__container .value {
    color: var(--plan-text-color, #fff) !important;
}

body .j_frm_simulator .custom_table_pricing__title,
body .j_frm_simulator .custom_table_pricing__container h1.custom_table_pricing__title {
    color: var(--plan-text-color, #fff) !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

body .j_frm_simulator .j_plans__container.has-selection .custom_table_pricing__container:not(.is-selected) {
    opacity: 0.55 !important;
    transform: none !important;
    box-shadow: none !important;
}

body .j_frm_simulator .j_plans__container.has-selection .custom_table_pricing__container.is-selected {
    opacity: 1 !important;
    transform: translateY(-4px) !important;
}

body .j_frm_simulator .custom_table_pricing__container li.notInPlan {
    color: var(--plan-text-muted, rgba(255, 255, 255, 0.72)) !important;
}

@media (max-width: 1199.98px) {
    body .j_frm_simulator .col-md-5 > .card.card-border-color {
        margin-top: 48px !important;
    }
}

@media (max-width: 991.98px) {
    body .j_frm_simulator .col-md-5 > .card.card-border-color {
        margin-top: 20px !important;
    }

    body .j_frm_simulator .col-md-5 > .card.card-border-color > .j_card_details {
        max-height: none;
    }
}

body .btn-lg,
body .btn-xl {
    border-radius: var(--radius-xl) !important;
}

body .btn-xs {
    border-radius: var(--radius-sm) !important;
}

.custom-kanban-root .new_funnel_container {
    margin: 0 12px 8px !important;
}

.custom-kanban-root .new_funnel_container > .col-md-12,
.custom-kanban-root .new_funnel_panel {
    padding: 0 !important;
}

.custom-kanban-root .new_funnel_panel {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 8px 10px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.custom-kanban-root .new_funnel_name_group {
    float: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 1 1 280px !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.custom-kanban-root .new_funnel_name_group label {
    float: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--color-text-muted) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.custom-kanban-root .new_funnel_name_group input {
    float: none !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 160px !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04) !important;
    outline: none !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .new_funnel_name_group input::placeholder {
    color: var(--color-text-neutral-soft) !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.custom-kanban-root .new_funnel_name_group input:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
}

.custom-kanban-root .new_funnel_btn_group {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.custom-kanban-root .new_funnel_btn_group button {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    min-width: 88px !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border-radius: var(--radius-md) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}

.custom-kanban-root .new_funnel_btn_group button .mdi {
    font-size: 14px !important;
    line-height: 1 !important;
}

.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_cancel {
    color: var(--color-text-strong) !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
}

.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_cancel:hover,
.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_cancel:focus {
    color: var(--color-text-strong) !important;
    background: var(--color-bg-hover) !important;
    border-color: var(--color-border) !important;
}

.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_save {
    color: var(--color-bg-white) !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border: 1px solid var(--color-success) !important;
}

.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_save:hover,
.custom-kanban-root .new_funnel_btn_group .new_funnel_btn_save:focus {
    color: var(--color-bg-white) !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success), #1a9f62) !important;
    border-color: var(--color-success) !important;
}

@media (max-width: 575.98px) {
    .custom-kanban-root .new_funnel_panel {
        align-items: stretch !important;
    }

    .custom-kanban-root .new_funnel_name_group {
        flex-basis: 100% !important;
    }

    .custom-kanban-root .new_funnel_btn_group {
        width: 100% !important;
        justify-content: flex-end !important;
    }
}

.custom-kanban-root .funnel_control_container {
    margin-top: 2px !important;
    margin-bottom: 10px !important;
}

.custom-kanban-root .funnel_control_container > .col-md-12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_container {
    margin: 0 12px 8px !important;
    padding: 8px 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 6px 8px !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: none !important;
}

.custom-kanban-root .funnelcontrol_header_item {
    min-width: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_l {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex: 0 1 auto !important;
}

.custom-kanban-root .funnelcontrol_header_item_m {
    flex: 1 1 420px !important;
    min-width: 260px !important;
}

.custom-kanban-root .funnelcontrol_header_item_r {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    flex: 0 1 auto !important;
    margin-left: auto !important;
}

.custom-kanban-root .funnelcontrol_header_item_r .ml-1 {
    margin-left: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_container .btn-space {
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_l > .btn-group,
.custom-kanban-root .funnelcontrol_header_item_r > .btn-group {
    display: inline-flex !important;
    align-items: center !important;
}

.custom-kanban-root .funnelcontrol_header_item_r > .btn,
.custom-kanban-root .funnelcontrol_header_item_r > .btn-group,
.custom-kanban-root .funnelcontrol_header_item_l > .btn,
.custom-kanban-root .funnelcontrol_header_item_l > .btn-group {
    margin: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_m > .row {
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_m > .row.px-5 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_m > .row > [class*="col-"] {
    padding: 0 !important;
}

.custom-kanban-root .funnelcontrol_header_item_m .input-group {
    align-items: center !important;
    gap: 4px !important;
}

.custom-kanban-root .funnelcontrol_header_item_m .input-group-append {
    display: flex !important;
    align-items: center !important;
}

.custom-kanban-root .j_f_globalsearch_outform,
.custom-kanban-root .j_f_period_outform,
.custom-kanban-root .j_f_responsible_outform {
    height: 30px !important;
    padding: 0 10px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 11px !important;
    font-weight: var(--font-weight-medium) !important;
    letter-spacing: 0.01em !important;
    text-transform: uppercase !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04) !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .j_f_globalsearch_outform:focus,
.custom-kanban-root .j_f_period_outform:focus,
.custom-kanban-root .j_f_responsible_outform:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

.custom-kanban-root .j_f_globalsearch_outform {
    min-width: 220px !important;
    flex: 1 1 220px !important;
}

.custom-kanban-root .j_f_period_outform,
.custom-kanban-root .j_f_responsible_outform {
    min-width: 112px !important;
}

.custom-kanban-root .j_f_status_outform {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-neutral-soft) !important;
    box-shadow: none !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .j_f_status_outform:hover {
    border-color: var(--color-border) !important;
    color: var(--color-accent-mid) !important;
    box-shadow: none !important;
}

.custom-kanban-root .j_f_status_outform_win_active {
    border-color: var(--color-success) !important;
    background: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .j_f_status_outform_loss_active {
    border-color: var(--color-danger) !important;
    background: linear-gradient(135deg, var(--color-danger-soft), var(--color-danger)) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-kanban-btn-choice-view-list {
    display: inline-flex !important;
    overflow: hidden !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: none !important;
}

.custom-kanban-root .custom-kanban-btn-choice-view-list .btn {
    border-radius: 0 !important;
    border-width: 0 !important;
    min-width: 32px !important;
    min-height: 30px !important;
    padding: 0 8px !important;
    font-size: 13px !important;
}

.custom-kanban-btn-choice-view-list .btn,
.btn-group .btn{
    margin-bottom: 0px !important;
}

.custom-kanban-root .funnelcontrol_header_item_l > .btn,
.custom-kanban-root .funnelcontrol_header_item_r > .btn,
.custom-kanban-root .funnelcontrol_header_item_r .btn-group > .btn,
.custom-kanban-root .funnelcontrol_header_item_l .btn-group > .btn {
    min-height: 30px !important;
    height: 30px !important;
    padding: 0 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    border-radius: var(--radius-md) !important;
    box-shadow: none !important;
    transform: none !important;
}

.custom-kanban-root .funnelcontrol_header_container .btn .mdi,
.custom-kanban-root .funnelcontrol_header_container .btn .fa,
.custom-kanban-root .funnelcontrol_header_container .btn .icon {
    font-size: 14px !important;
    line-height: 1 !important;
}

.custom-kanban-root .funnelcontrol_header_container .btn:hover,
.custom-kanban-root .funnelcontrol_header_container .btn:focus,
.custom-kanban-root .funnelcontrol_header_container .btn:active,
.custom-kanban-root .funnelcontrol_header_container .show > .btn.dropdown-toggle {
    box-shadow: none !important;
    transform: none !important;
}

.custom-kanban-root .funnelcontrol_header_container .dropdown-menu {
    margin-top: 4px !important;
    padding: 4px 0 !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    box-shadow: none !important;
}

.custom-kanban-root .funnelcontrol_header_container .dropdown-menu .dropdown-item {
    padding: 6px 10px !important;
    font-size: 12px !important;
    color: var(--color-text-strong) !important;
}

.custom-kanban-root .funnelcontrol_header_container .dropdown-menu .dropdown-item:hover,
.custom-kanban-root .funnelcontrol_header_container .dropdown-menu .dropdown-item:focus {
    background: var(--color-bg-hover) !important;
    color: var(--color-text-strong) !important;
}

.custom-kanban-root .custom-kanban-funnel-active {
    max-width: 220px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.custom-kanban-root .custom-kanban-funnel-active-name {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 140px !important;
    display: inline-block !important;
    font-size: 12px !important;
}

.custom-kanban-root .funnelcontrol_header_container .icon-dropdown {
    font-size: 14px !important;
}

@media (max-width: 1199.98px) {
    .custom-kanban-root .funnelcontrol_header_item_m {
        flex-basis: 100% !important;
        min-width: 100% !important;
        order: 3 !important;
    }
}

@media (max-width: 991.98px) {
    .custom-kanban-root .funnelcontrol_header_container {
        padding: 8px !important;
        gap: 6px !important;
    }

    .custom-kanban-root .funnelcontrol_header_item_l,
    .custom-kanban-root .funnelcontrol_header_item_m,
    .custom-kanban-root .funnelcontrol_header_item_r {
        flex: 1 1 100% !important;
        justify-content: flex-start !important;
    }

    .custom-kanban-root .funnelcontrol_header_item_m .input-group {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .custom-kanban-root .j_f_globalsearch_outform {
        min-width: 100% !important;
        flex-basis: 100% !important;
    }

    .custom-kanban-root .funnelcontrol_header_item_m .input-group-append {
        flex: 1 1 180px !important;
    }
}

@media (max-width: 575.98px) {
    .custom-kanban-root .funnelcontrol_header_item_l,
    .custom-kanban-root .funnelcontrol_header_item_r {
        gap: 6px !important;
    }

    .custom-kanban-root .funnelcontrol_header_item_l > .btn,
    .custom-kanban-root .funnelcontrol_header_item_l > .btn-group,
    .custom-kanban-root .funnelcontrol_header_item_r > .btn,
    .custom-kanban-root .funnelcontrol_header_item_r > .btn-group {
        width: 100% !important;
    }

    .custom-kanban-root .custom-kanban-funnel-active {
        max-width: 100% !important;
        justify-content: center !important;
    }
}

.custom-kanban-root .custom-kanban-area {
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md) !important;
    padding: 14px !important;
    overflow: hidden !important;
}

.custom-kanban-root .custom-kanban-container {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    height: calc(100vh - 130px) !important;
    min-height: 430px !important;
    max-height: none !important;
    font-size: var(--font-size-sm) !important;
    line-height: 1.35 !important;
    padding: 10px !important;
    margin: 0 !important;
    background: var(--kanban-board-bg) !important;
    border: 1px solid var(--color-border-soft-alt) !important;
    border-radius: var(--radius-xl) !important;
}

.custom-kanban-root .custom-kanban-container::-webkit-scrollbar {
    height: 8px !important;
}

.custom-kanban-root .custom-kanban-container::-webkit-scrollbar-thumb {
    background: var(--color-btn-gray-end) !important;
    border-radius: var(--radius-pill) !important;
}

.custom-kanban-root .custom-kanban-step {
    position: relative !important;
    flex: 1 0 270px !important;
    min-width: 270px !important;
    max-width: 320px !important;
    height: 100% !important;
    padding: 0 !important;
    margin-right: 0 !important;
    background-repeat: repeat !important;
    border: 1px solid var(--kanban-list-border) !important;
    border-radius: var(--radius-lg) !important;
    overflow: hidden !important;
    box-shadow: 0 10px 22px var(--kanban-list-shadow) !important;
}

.custom-kanban-root .custom-kanban-step .custom-kanban-list-header {
    border-radius: var(--radius-lg) var(--radius-lg) 0 0 !important;
}

.custom-kanban-root .custom-kanban-list {
    border: none !important;
    border-radius: 0 0 var(--radius-lg) var(--radius-lg) !important;
    height: calc(100% - 56px) !important;
    min-width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin-right: 0 !important;
    background: linear-gradient(180deg, var(--kanban-list-bg-start), var(--kanban-list-bg-end)) !important;
    box-shadow: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

.custom-kanban-root .custom-kanban-list.custom-kanban-list-is-loading {
    background-image: linear-gradient(to bottom, var(--color-white-alpha-90) 0%, var(--color-bg-white-25) 38px), linear-gradient(180deg, var(--kanban-list-bg-start), var(--kanban-list-bg-end)) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 38px, 100% 100% !important;
}

.custom-kanban-root .custom-kanban-list::-webkit-scrollbar {
    width: 7px !important;
}

.custom-kanban-root .custom-kanban-list::-webkit-scrollbar-thumb {
    background: var(--color-btn-gray-end) !important;
    border-radius: var(--radius-pill) !important;
}

.custom-kanban-root .custom-kanban-list-header {
    position: relative !important;
    margin: 0 !important;
    height: 56px !important;
    border: none !important;
    border-bottom: 1px solid var(--kanban-header-border) !important;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0 !important;
    box-shadow: inset 0 -1px 0 var(--kanban-header-border) !important;
}

.custom-kanban-root .custom-kanban-list-header:not([style*="background"]) {
    background: linear-gradient(135deg, var(--kanban-header-start), var(--kanban-header-end)) !important;
}

.custom-kanban-root .custom-kanban-list-header-title,
.custom-kanban-root .custom-kanban-list-header-title-np {
    top: 11px !important;
    left: 12px !important;
    width: calc(100% - 24px) !important;
    font-size: 11px !important;
    font-weight: var(--font-weight-semibold) !important;
    letter-spacing: 0.03em !important;
}

.custom-kanban-root .custom-kanban-list-header-title:not([style*="color"]),
.custom-kanban-root .custom-kanban-list-header-title-np:not([style*="color"]) {
    color: var(--kanban-header-text) !important;
}

.custom-kanban-root .custom-kanban-list-header-counter {
    top: 31px !important;
    left: 12px !important;
    width: calc(100% - 24px) !important;
}

.custom-kanban-root .custom-kanban-list-header-counter:not([style*="color"]) {
    color: var(--kanban-header-meta) !important;
}

.custom-kanban-root .custom-kanban-list-header-counter-value,
.custom-kanban-root .custom-kanban-list-header-counter-cards {
    font-size: 9px !important;
    font-weight: var(--font-weight-medium) !important;
}

.custom-kanban-root .custom-kanban-list-header-title-input {
    top: 8px !important;
    left: 8px !important;
    width: calc(100% - 16px) !important;
    border: 1px solid var(--color-border-soft-alt) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
}

.custom-kanban-root .custom-kanban-more-options-col {
    top: 8px !important;
    right: 8px !important;
    width: 22px !important;
    height: 22px !important;
}

.custom-kanban-root .custom-kanban-more-options-col > .btn-group > .btn {
    width: 22px !important;
    height: 22px !important;
    line-height: 20px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    background: var(--color-white-alpha-30) !important;
    color: var(--kanban-header-text) !important;
    border-radius: var(--radius-pill) !important;
}

.custom-kanban-root .custom-kanban-more-options-col > .btn-group > .btn > .icon-dropdown,
.custom-kanban-root .custom-kanban-more-options-card > .btn-group > .btn > .icon-dropdown {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.j_col_container { 
    border-radius: var(--radius-md) !important;
}

.j_add_product, .add_prmtzn_model, .j_change_color{
    border-radius: var(--radius-pill) !important;
}

.custom-kanban-root .custom-kanban-list-card {
    margin: 10px !important;
    padding: 12px 12px 10px !important;
    width: calc(100% - 20px) !important;
    border: 1px solid var(--kanban-card-border) !important;
    border-radius: var(--radius-md) !important;
    background: var(--kanban-card-bg) !important;
    box-shadow: 0 4px 12px var(--kanban-card-shadow) !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .custom-kanban-list-card:hover {
    border-color: var(--kanban-card-border-hover) !important;
    box-shadow: 0 10px 22px var(--kanban-card-shadow-hover) !important;
    transform: translateY(-1px) !important;
}
.custom-kanban-root .custom-kanban-more-options-card .btn-group .btn .icon-dropdown {
    margin: auto !important;
}
.custom-kanban-root .custom-kanban-list-card-title {
    color: var(--kanban-card-title) !important;
    font-size: 11px !important;
    font-weight: var(--font-weight-semibold) !important;
    letter-spacing: 0.02em !important;
    margin-top: 10px !important;
    line-height: 1.35 !important;
}

.custom-kanban-root .custom-kanban-list-card-subtitle,
.custom-kanban-root .custom-kanban-list-card-value,
.custom-kanban-root .custom-kanban-list-card-owner {
    color: var(--kanban-card-subtitle) !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
}

.custom-kanban-root .custom-kanban-list-card-subtitle i,
.custom-kanban-root .custom-kanban-list-card-value i,
.custom-kanban-root .custom-kanban-list-card-owner i,
.custom-kanban-root .custom-kanban-list-card [class*="j_custom_span_desc_more_infos_container__"] i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 12px !important;
    min-width: 12px !important;
    margin-right: 4px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    vertical-align: middle !important;
    text-align: center !important;
}

.custom-kanban-root .custom-kanban-list-card-value {
    display: inline-flex !important;
    align-items: center !important;
}

.custom-kanban-root .custom-kanban-list-card [class*="j_custom_span_desc_more_infos_container__"] > span {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.35 !important;
}

.custom-kanban-root .custom-kanban-list-card-owner hr {
    border-color: var(--color-border-soft-alt) !important;
    margin: 5px 0 !important;
}

.custom-kanban-root .custom-kanban-list-card-id {
    right: 8px !important;
    bottom: 6px !important;
    color: var(--kanban-card-id-text) !important;
    background: var(--kanban-card-id-bg) !important;
    border: 1px solid var(--color-border-soft-alt) !important;
    border-radius: var(--radius-sm) !important;
    padding: 2px 5px !important;
}

.custom-kanban-root .custom-kanban-list-card-activity {
    right: 12px !important;
    width: 20px !important;
    height: 20px !important;
    line-height: 20px !important;
    border-radius: var(--radius-pill) !important;
    color: var(--color-bg-white) !important;
    background: var(--kanban-card-activity-default) !important;
    box-shadow: 0 4px 10px var(--color-black-alpha-12) !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom-kanban-root .custom-kanban-list-card-activity-yellow {
    background: var(--color-warning-soft) !important;
}

.custom-kanban-root .custom-kanban-list-card-activity-red {
    background: var(--color-danger-soft) !important;
}

.custom-kanban-root .custom-kanban-list-card-activity-blue {
    background: var(--color-info-soft) !important;
}

.custom-kanban-root .custom-kanban-list-card-activity-green {
    background: var(--color-success) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-kanban-list-card-tags {
    top: 6px !important;
    left: 6px !important;
    right: 6px !important;
    width: calc(100% - 12px) !important;
    height: 7px !important;
}

.custom-kanban-root .custom-kanban-list-card-tag {
    border-radius: var(--radius-sm) !important;
    box-shadow: 0 1px 2px var(--kanban-card-tag-shadow) !important;
}

.custom-kanban-root .custom-kanban-more-options-card {
    top: 8px !important;
    right: 8px !important;
    width: 22px !important;
    height: 22px !important;
}

.custom-kanban-root .custom-kanban-more-options-card > .btn-group > .btn {
    width: 22px !important;
    height: 22px !important;
    line-height: 20px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--color-border-soft-alt) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-icon-hover) !important;
    border-radius: var(--radius-pill) !important;
    box-shadow: 0 3px 8px var(--color-black-alpha-08) !important;
}

.custom-kanban-root .custom-kanban-more-options-card > .btn-group > .btn > span {
    line-height: 1 !important;
    font-size: 14px !important;
}

.custom-kanban-root .custom-kanban-add-card-button-by-list {
    margin: 10px !important;
    width: calc(100% - 20px) !important;
    padding: 6px !important;
    font-size: 22px !important;
    line-height: 1 !important;
    color: var(--kanban-empty-text) !important;
    background: var(--kanban-empty-bg) !important;
    border: 1px dashed var(--kanban-empty-border) !important;
    border-radius: var(--radius-md) !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .custom-kanban-add-card-button-by-list:hover {
    border-color: var(--color-accent) !important;
    color: var(--color-accent-mid) !important;
    background: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-kanban-list-states {
    padding: 10px !important;
    background: var(--color-bg-surface-alt) !important;
    border-top: 1px solid var(--color-border) !important;
}

.custom-kanban-root .custom-kanban-list-state {
    border: 2px dashed var(--kanban-empty-border) !important;
    color: var(--kanban-empty-text) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--kanban-empty-bg) !important;
}

.custom-kanban-root .custom-kanban-list-state-win {
    border-color: var(--color-success) !important;
    color: var(--color-success) !important;
    background: var(--color-accent-light) !important;
}

.custom-kanban-root .custom-kanban-list-state-loss {
    border-color: var(--color-danger-soft) !important;
    color: var(--color-danger-soft) !important;
    background: var(--color-danger-alpha-08) !important;
}

.custom-kanban-root .j_loading_icon {
    background-color: var(--color-white-alpha-90) !important;
    border: 1px solid var(--color-border-soft-alt) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: 0 4px 12px var(--color-black-alpha-12) !important;
    color: var(--color-text-strong) !important;
}

@media (max-width: 1599.98px) {
    .custom-kanban-root .custom-kanban-container {
        height: calc(100vh - 138px) !important;
    }
}

@media (max-width: 1199.98px) {
    .custom-kanban-root .custom-kanban-area {
        padding: 10px !important;
    }

    .custom-kanban-root .custom-kanban-container {
        height: calc(100vh - 192px) !important;
        min-height: 390px !important;
        gap: 10px !important;
    }

    .custom-kanban-root .custom-kanban-step {
        min-width: 248px !important;
        max-width: 292px !important;
        flex-basis: 248px !important;
    }
}

@media (max-width: 767.98px) {
    .custom-kanban-root .custom-kanban-area {
        padding: 8px !important;
    }

    .custom-kanban-root .custom-kanban-container {
        height: calc(100vh - 236px) !important;
        min-height: 340px !important;
        gap: 8px !important;
    }

    .custom-kanban-root .custom-kanban-step {
        min-width: 232px !important;
        max-width: 274px !important;
        flex-basis: 232px !important;
    }

    .custom-kanban-root .custom-kanban-list-card {
        margin: 8px !important;
        width: calc(100% - 16px) !important;
    }
}

.custom-kanban-root .custom-list-area {
    margin: var(--sniper-gap) 16px 0 !important;
    padding: 14px !important;
    border: 1px solid var(--crm-list-shell-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(160deg, var(--color-bg-white), var(--crm-list-shell-bg)) !important;
    box-shadow: 0 10px 24px var(--crm-list-shell-shadow) !important;
}

.custom-kanban-root .custom-list-area-container {
    overflow-x: auto !important;
    border: 1px solid var(--crm-list-table-border) !important;
    border-radius: var(--radius-lg) !important;
    padding: 12px !important;
    background: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    padding: 10px 12px !important;
    border: 1px solid var(--crm-list-toolbar-border) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--crm-list-toolbar-bg) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .float-left {
    float: none !important;
    margin-right: auto !important;
    color: var(--crm-list-muted-text) !important;
    font-size: var(--font-size-sm) !important;
    font-weight: var(--font-weight-medium) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .float-right {
    float: none !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list {
    min-height: 36px !important;
    margin: 0 !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 14px !important;
    border-radius: var(--radius-md) !important;
    border-width: 1px !important;
    border-style: solid !important;
    font-size: var(--font-size-md) !important;
    font-weight: var(--font-weight-semibold) !important;
    text-decoration: none !important;
    box-shadow: 0 6px 16px var(--crm-list-export-shadow) !important;
    transition: var(--transition-fast) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list[data-type="csv"] {
    border-color: var(--crm-list-export-csv-border) !important;
    background: linear-gradient(135deg, var(--crm-list-export-csv-start), var(--crm-list-export-csv-end)) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list[data-type="xlsx"] {
    border-color: var(--crm-list-export-xlsx-border) !important;
    background: linear-gradient(135deg, var(--crm-list-export-xlsx-start), var(--crm-list-export-xlsx-end)) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list i {
    color: inherit !important;
    font-size: var(--font-size-sm) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 18px var(--crm-list-export-shadow-hover) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list:focus {
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary), 0 8px 18px var(--crm-list-export-shadow-hover) !important;
    color: var(--color-bg-white) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list {
    width: 100% !important;
    min-width: 980px !important;
    margin: 0 !important;
    border: 1px solid var(--crm-list-table-border) !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: var(--radius-lg) !important;
    background: var(--color-bg-white) !important;
    overflow: hidden !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list thead th,
.custom-kanban-root .custom-list-area-container .j_table_crm_list thead td {
    border-top: 0 !important;
    border-bottom: 1px solid var(--crm-list-row-border) !important;
    background: var(--crm-list-head-bg) !important;
    color: var(--crm-list-head-text) !important;
    line-height: 1.25 !important;
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-semibold) !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    padding: 11px 12px !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list thead th:first-child {
    border-top-left-radius: var(--radius-lg) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list thead th:last-child {
    border-top-right-radius: var(--radius-lg) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list thead th a {
    color: inherit !important;
    text-decoration: none !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list thead th a:hover {
    color: var(--color-accent-mid) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody td {
    border-top: 1px solid var(--crm-list-row-border) !important;
    color: var(--crm-list-text) !important;
    font-size: var(--font-size-sm) !important;
    line-height: 1.4 !important;
    padding: 11px 12px !important;
    vertical-align: top !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody tr:nth-child(even) td {
    background: var(--crm-list-row-alt-bg) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody tr:hover td {
    background: var(--crm-list-row-hover-bg) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody td:first-child {
    min-width: 260px !important;
    color: var(--crm-list-text) !important;
    font-weight: var(--font-weight-semibold) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody td:nth-child(2) {
    min-width: 110px !important;
    white-space: nowrap !important;
    font-weight: var(--font-weight-semibold) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list .text-muted,
.custom-kanban-root .custom-list-area-container .j_table_crm_list .d-block.text-muted {
    color: var(--crm-list-muted-text) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list .custom-badge {
    margin: 2px 4px 2px 0 !important;
    padding: 2px 8px !important;
    border-radius: var(--radius-pill) !important;
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-medium) !important;
    box-shadow: 0 2px 6px var(--crm-list-badge-shadow) !important;
}

.custom-kanban-root .custom-list-area-container .j_table_crm_list tbody td.text-center.p-3 {
    border-top: 0 !important;
    padding: 28px 16px !important;
    color: var(--crm-list-empty-text) !important;
    font-size: var(--font-size-md) !important;
    font-weight: var(--font-weight-medium) !important;
    background: linear-gradient(180deg, var(--crm-list-empty-bg), var(--color-bg-white)) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: inset 0 0 0 1px var(--crm-list-empty-border) !important;
}

@media (max-width: 1199.98px) {
    .custom-kanban-root .custom-list-area {
        margin-left: 10px !important;
        margin-right: 10px !important;
        padding: 12px !important;
    }

    .custom-kanban-root .custom-list-area-container {
        padding: 10px !important;
    }

    .custom-kanban-root .custom-list-area-container > .d-block.pb-3 .float-left {
        width: 100% !important;
    }
}

@media (max-width: 767.98px) {
    .custom-kanban-root .custom-list-area {
        margin-left: 8px !important;
        margin-right: 8px !important;
        padding: 10px !important;
        border-radius: var(--radius-lg) !important;
    }

    .custom-kanban-root .custom-list-area-container > .d-block.pb-3 .j_export_funnel_list {
        width: 100% !important;
    }

    .custom-kanban-root .custom-list-area-container .j_table_crm_list {
        min-width: 840px !important;
    }
}

.custom_kanban_filter__container {
    box-sizing: border-box !important;
    width: var(--crm-filter-drawer-width) !important;
    max-width: min(100vw, var(--crm-filter-drawer-width)) !important;
    position: fixed !important;
    top: 0 !important;
    right: calc(-1 * (var(--crm-filter-drawer-width) + var(--crm-filter-drawer-hidden-offset)));
    bottom: 0 !important;
    z-index: var(--crm-filter-drawer-zindex) !important;
    padding: 16px 16px 24px !important;
    overflow: visible !important;
    background: linear-gradient(170deg, var(--crm-filter-drawer-bg-start), var(--crm-filter-drawer-bg-end)) !important;
    border-left: 1px solid var(--crm-filter-drawer-border) !important;
    box-shadow: -14px 0 30px var(--crm-filter-drawer-shadow) !important;
}

.custom_kanban_filter__header {
    position: absolute !important;
    top: 16px !important;
    left: calc((var(--crm-filter-handle-size) + var(--crm-filter-handle-outside-gap)) * -1) !important;
    width: var(--crm-filter-handle-size) !important;
    height: var(--crm-filter-handle-size) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--crm-filter-handle-border) !important;
    border-radius: var(--radius-pill) !important;
    background: linear-gradient(135deg, var(--crm-filter-handle-bg-start), var(--crm-filter-handle-bg-end)) !important;
    box-shadow: 0 8px 20px var(--color-black-alpha-20) !important;
    z-index: 3 !important;
    cursor: pointer !important;
    transition: var(--transition-fast) !important;
}

.custom_kanban_filter__header i {
    color: var(--crm-filter-handle-icon) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: var(--font-weight-semibold) !important;
}

.custom_kanban_filter__header:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px var(--color-black-alpha-20) !important;
}

.custom_kanban_filter__box {
    max-height: calc(100vh - 32px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 2px !important;
}

.custom_kanban_filter__box > form {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.custom_kanban_filter__container .html_percent_conversion,
.custom_kanban_filter__container #filterKanbanAccordion {
    padding: 10px !important;
    border: 1px solid var(--crm-filter-panel-border) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--crm-filter-panel-bg) !important;
    box-shadow: 0 4px 10px var(--color-black-alpha-05) !important;
}

.custom_kanban_filter__container .j_percentconvertion_tab_container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px !important;
    margin-bottom: 8px !important;
    padding: 4px !important;
    border: 1px solid var(--crm-filter-panel-border) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
}

.custom_kanban_filter__container .j_percentconvertion_tab_container_item {
    margin: 0 !important;
    padding: 8px 10px !important;
    border-radius: var(--radius-md) !important;
    color: var(--crm-filter-muted-text) !important;
    font-size: var(--font-size-sm) !important;
    line-height: 1.25 !important;
    font-weight: var(--font-weight-medium) !important;
}

.custom_kanban_filter__container .j_percentconvertion_tab_container_item_active {
    background: var(--crm-filter-tab-active-bg) !important;
    color: var(--crm-filter-text) !important;
    font-weight: var(--font-weight-semibold) !important;
    border-radius: var(--radius-md) !important;
}

.custom_kanban_filter__container .j_percentconvertion_bystep_box::before,
.custom_kanban_filter__container .j_percentconvertion_bywin_box::before,
.custom_kanban_filter__container .j_percentconvertion_bystep_box::after,
.custom_kanban_filter__container .j_percentconvertion_bywin_box::after {
    display: block !important;
    border-bottom-color: var(--crm-filter-panel-bg) !important;
}

.custom_kanban_filter__container .j_percentconvertion_bystep_item,
.custom_kanban_filter__container .j_percentconvertion_bywin_item {
    margin: 0 0 4px 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.custom_kanban_filter__container #filterKanbanAccordion .card {
    border: 1px solid var(--crm-filter-item-border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    box-shadow: 0 4px 10px var(--crm-filter-item-shadow) !important;
}

.custom_kanban_filter__container #filterKanbanAccordion .card + .card {
    margin-top: 8px !important;
}

.custom_kanban_filter__container #filterKanbanAccordion .card-header {
    border-bottom: 1px solid var(--crm-filter-item-border) !important;
    background: var(--color-bg-white) !important;
}

.custom_kanban_filter__container #filterKanbanAccordion .card-body {
    background: var(--crm-filter-panel-bg) !important;
}

.custom_kanban_filter__container #filterKanbanAccordion .form-control {
    border: 1px solid var(--crm-goal-input-border) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--crm-filter-text) !important;
    min-height: 36px !important;
}

.custom_kanban_filter__container .j_submit_filter_from,
.custom_kanban_filter__container .j_btn_refresh {
    min-height: 40px !important;
    margin-top: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}
.custom_kanban_filter__box .j_frm_custom_kanban_filter { 
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

#filterHeadingBusiness, #filterHeadingTags, #filterHeadingSteps {
    visibility: hidden !important;
}

#filterHeadingBusiness button, #filterHeadingTags button, #filterHeadingSteps button {
    color: var(--color-text-light) !important;
    border: none !important;
    visibility: visible !important;
}

.custom_kanban_filter__container .j_btn_refresh {
    border-color: var(--crm-filter-item-border) !important;
    color: var(--crm-filter-text) !important;
    background: var(--color-bg-white) !important;
}

@media (max-width: 575.98px) {
    .custom_kanban_filter__container {
        width: 100vw !important;
        max-width: 100% !important;
        padding: 12px 10px 16px !important;
    }

    .custom_kanban_filter__header {
        left: 8px !important;
        top: 8px !important;
        width: 34px !important;
        height: 34px !important;
    }

    .custom_kanban_filter__box {
        max-height: calc(100vh - 24px) !important;
    }
}

.custom_kanban_goal__container {
    box-sizing: border-box !important;
    width: var(--crm-goal-drawer-width) !important;
    max-width: min(100vw, var(--crm-goal-drawer-width)) !important;
    position: fixed !important;
    top: 0 !important;
    right: calc(-1 * (var(--crm-goal-drawer-width) + var(--crm-goal-drawer-hidden-offset)));
    bottom: 0 !important;
    z-index: var(--crm-goal-drawer-zindex) !important;
    padding: 16px 16px 24px !important;
    overflow: visible !important;
    background: linear-gradient(170deg, var(--crm-goal-drawer-bg-start), var(--crm-goal-drawer-bg-end)) !important;
    border-left: 1px solid var(--crm-goal-drawer-border) !important;
    box-shadow: -14px 0 30px var(--crm-goal-drawer-shadow) !important;
}

.custom_kanban_goal__header {
    position: absolute !important;
    top: 16px !important;
    left: calc((var(--crm-goal-handle-size) + var(--crm-goal-handle-outside-gap)) * -1) !important;
    width: var(--crm-goal-handle-size) !important;
    height: var(--crm-goal-handle-size) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--crm-goal-handle-border) !important;
    border-radius: var(--radius-pill) !important;
    background: linear-gradient(135deg, var(--crm-goal-handle-bg-start), var(--crm-goal-handle-bg-end)) !important;
    box-shadow: 0 8px 20px var(--color-black-alpha-20) !important;
    cursor: pointer !important;
    transition: var(--transition-fast) !important;
}

.custom_kanban_goal__header i {
    color: var(--crm-goal-handle-icon) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: var(--font-weight-semibold) !important;
}

.custom_kanban_goal__header:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 22px var(--color-black-alpha-20) !important;
}

.custom_kanban_goal__filter {
    position: sticky !important;
    top: 2px !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr 36px !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 10px !important;
    border: 1px solid var(--crm-goal-filter-border) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--crm-goal-filter-bg) !important;
    box-shadow: 0 4px 10px var(--color-black-alpha-05) !important;
}

.custom_kanban_goal__container .j_filter_goal_from,
.custom_kanban_goal__container .j_filter_goal_to {
    height: 36px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 1px solid var(--crm-goal-input-border) !important;
    border-radius: var(--radius-md) !important;
    background: var(--crm-goal-input-bg) !important;
    color: var(--crm-goal-input-text) !important;
    font-size: var(--font-size-sm) !important;
    font-weight: var(--font-weight-medium) !important;
    outline: none !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04) !important;
    transition: var(--transition-fast) !important;
}

.custom_kanban_goal__container .j_filter_goal_from:focus,
.custom_kanban_goal__container .j_filter_goal_to:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
}

.custom_kanban_goal__container .j_filter_goal_btn {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    border-radius: var(--radius-md) !important;
    color: var(--color-bg-white) !important;
    background-color: var(--color-accent) !important;
    box-shadow: 0 6px 14px var(--color-primary-glow-alpha-10) !important;
    transition: var(--transition-fast) !important;
}

.custom_kanban_goal__container .j_filter_goal_btn:hover,
.custom_kanban_goal__container .j_filter_goal_btn:focus {
    color: var(--color-bg-white) !important;
    background:  var(--color-accent-mid) !important;
    transform: translateY(-1px) !important;
}

.custom_kanban_goal__box {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 2px !important;
}

.custom_kanban_goal__box:empty::before {
    content: "Nenhuma meta cadastrada para o período selecionado." !important;
    display: block !important;
    width: 100% !important;
    padding: 18px 14px !important;
    border: 1px dashed var(--crm-goal-filter-border) !important;
    border-radius: var(--radius-lg) !important;
    color: var(--crm-goal-empty-text) !important;
    font-size: var(--font-size-sm) !important;
    text-align: center !important;
    background: var(--color-bg-white) !important;
}

.custom_kanban_goal__item {
    flex-basis: 100% !important;
    margin: 0 !important;
    padding: 11px 12px !important;
    border: 1px solid var(--crm-goal-item-border) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--crm-goal-item-bg) !important;
    box-shadow: 0 6px 16px var(--crm-goal-item-shadow) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.custom_kanban_goal__item_title {
    flex-basis: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.custom_kanban_goal__item_title > div:first-child {
    color: var(--crm-goal-title-text) !important;
    font-size: var(--font-size-sm) !important;
    font-weight: var(--font-weight-semibold) !important;
    line-height: 1.35 !important;
}

.custom_kanban_goal__item_title > div:first-child .text-muted {
    color: var(--crm-goal-subtitle-text) !important;
    font-size: var(--font-size-xs) !important;
    letter-spacing: 0.01em !important;
}

.custom_kanban_goal__item_title > div:last-child {
    margin-top: 1px !important;
    padding: 4px 8px !important;
    border: 1px solid var(--crm-goal-metric-border) !important;
    border-radius: var(--radius-pill) !important;
    background: var(--crm-goal-metric-bg) !important;
    color: var(--crm-goal-metric-text) !important;
    font-size: var(--font-size-xs) !important;
    font-weight: var(--font-weight-semibold) !important;
    white-space: nowrap !important;
}

.custom_kanban_goal__item_bar_container {
    flex-basis: 100% !important;
    height: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: var(--radius-pill) !important;
    background: var(--crm-goal-progress-track) !important;
    box-shadow: inset 0 1px 3px var(--color-black-alpha-10) !important;
}

.custom_kanban_goal__item_bar_box {
    height: 12px !important;
    margin: 0 !important;
    padding: 0 6px !important;
    border-radius: var(--radius-pill) !important;
    background: linear-gradient(135deg, var(--crm-goal-progress-fill-start), var(--crm-goal-progress-fill-end)) !important;
    color: var(--crm-goal-progress-text) !important;
    font-size: 9px !important;
    line-height: 12px !important;
    font-weight: var(--font-weight-semibold) !important;
    text-shadow: 0 1px 1px var(--color-black-alpha-20) !important;
}

@media (max-width: 575.98px) {
    .custom_kanban_goal__container {
        top: 0 !important;
        width: 100vw !important;
        max-width: 100% !important;
        padding: 12px 10px 16px !important;
    }

    .custom_kanban_goal__header {
        left: 8px !important;
        top: 8px !important;
        width: 34px !important;
        height: 34px !important;
    }

    .custom_kanban_goal__filter {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
        padding: 8px !important;
    }

    .custom_kanban_goal__container .j_filter_goal_btn {
        width: 100% !important;
    }

    .custom_kanban_goal__item_title {
        flex-wrap: wrap !important;
    }

    .custom_kanban_goal__box {
        max-height: calc(100vh - 112px) !important;
    }

    .custom_kanban_goal__item_title > div:last-child {
        width: 100% !important;
        text-align: center !important;
    }
}

/* -------------------------------------------------------------
   27. PARAMETRIZACAO RAPIDA — ESTILO CENTRALIZADO
   Motivo: migrar estilos modernos de Blade para modern-base.css
   (start/warning/parameterizationStock), mantendo a mesma aparencia.
   ------------------------------------------------------------- */

.prmtz-modern-page .prmtz-modern-head {
    background: linear-gradient(160deg, var(--color-bg-white) 0%, var(--color-bg-page) 100%);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    padding: 14px 26px 14px 10px !important;
    box-shadow: var(--shadow-sm);
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 18px;
}

.prmtz-modern-page .prmtz-modern-head > .float-left {
    float: none !important;
    flex: 1 1 auto;
    min-width: 0;
}

.prmtz-modern-page .prmtz-modern-head > .clearfix {
    display: none;
}

.prmtz-modern-page .prmtz-modern-head .page-head-title {
    margin-bottom: 6px;
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.01em;
}

.prmtz-modern-page .prmtz-modern-reset-link {
    display: inline-block;
    margin-top: 6px;
    padding: 4px 8px;
    border-radius: var(--radius-md);
    background: var(--color-bg-hover);
}

.prmtz-modern-page .prmtz-modern-type-switch {
    float: none !important;
    width: 320px !important;
    max-width: 42%;
    margin-left: 12px;
}

.prmtz-modern-page .prmtz-modern-type-switch .form-group {
    margin-bottom: 0;
    padding: 10px 12px 12px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    box-shadow: var(--shadow-sm);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "label action"
        "select select";
    row-gap: 8px;
    column-gap: 10px;
}

.prmtz-modern-page .prmtz-modern-type-switch .form-group label {
    grid-area: label;
    float: none !important;
    margin: 0;
    font-size: 12px;
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-muted);
    letter-spacing: 0.01em;
    min-width: 0;
}

.prmtz-modern-page .prmtz-modern-type-switch .form-group > a {
    grid-area: action;
    float: none !important;
    align-self: center;
    justify-self: end;
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 2px 10px;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-pill);
    background: var(--color-bg-white);
    color: var(--color-accent);
    font-size: 12px;
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
    margin-left: 8px;
}

.prmtz-modern-page .prmtz-modern-type-switch .form-group > a:hover {
    text-decoration: none;
    background: var(--color-accent-light);
    border-color: var(--color-accent-light);
}

.prmtz-modern-page .prmtz-modern-type-switch #choice_prmtz {
    grid-area: select;
}

.prmtz-modern-page .prmtz-modern-type-switch .form-group > .select2-container {
    grid-area: select;
    width: 100% !important;
}

.prmtz-modern-page .prmtz-modern-type-switch .select2-container--default .select2-selection--single {
    height: 38px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
}

.prmtz-modern-page .prmtz-modern-type-switch .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 36px !important;
    padding-left: 12px !important;
    padding-right: 44px !important;
    color: var(--color-primary) !important;
    font-weight: var(--font-weight-medium);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.prmtz-modern-page .prmtz-modern-type-switch .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 36px !important;
    width: 26px !important;
    right: 8px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.prmtz-modern-page .prmtz-modern-type-switch .select2-container--default .select2-selection--single .select2-selection__clear {
    margin-right: 20px;
    color: var(--color-text-muted);
}


body .wizard.wizard-ux {
    border-radius: var(--radius-xl) !important;
}

body .wizard.wizard-ux .steps-container {
    border-radius: var(--radius-lg) !important; 
    /* [4C-IA | 2026-05-07 | css-18 | UI-MODERN]
     * Motivo: aplicar globalmente o wizard compacto em todo fluxo com wizard-ux.
     */
    padding: 0 !important;
    background: transparent;
    border-bottom: 0;
}

body .wizard.wizard-ux .steps {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-x: auto;
    overflow-y: hidden;
    position: relative;
}

body .wizard.wizard-ux .steps::before {
    content: "";
    position: absolute;
    left: 24px;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    height: 2px;
    border-radius: 999px;
    background: var(--color-border-input);
    opacity: 0.85;
    z-index: 0;
}

body .wizard.wizard-ux .steps > a {
    text-decoration: none !important;
    color: inherit !important;
    display: flex;
    flex: 1 1 0;
    min-width: 0;
}

body .wizard.wizard-ux .steps > a > li {
    width: 100% !important;
}

body .fuelux .wizard.wizard-ux .steps-container > .steps > li,
body .fuelux .wizard.wizard-ux .steps-container > .steps > a > li {
    float: none !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 14px 0 12px !important;
    line-height: 1 !important;
}

body .wizard-info.wizard ul.steps a, 
body .wizard-info.wizard ul.steps a li.active,
body .wizard-info.wizard ul.steps a li.complete{
    height: 36px !important;
}

body .wizard.wizard-ux .steps > li,
body .wizard.wizard-ux .steps > a > li {
    float: none !important;
    flex: 1 1 0;
    min-width: 0;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 14px 0 12px !important;
    line-height: 1 !important;
    margin: 0 !important;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    white-space: nowrap !important;
    font-size: 11px !important;
    font-weight: var(--font-weight-medium) !important;
    color: var(--color-text-muted) !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-pill) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    cursor: pointer !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

body .wizard.wizard-ux .steps li.complete {
    color: var(--color-bg-white) !important;
    border-color: var(--color-info-soft) !important;
    background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-mid) 100%) !important;
}

body .wizard.wizard-ux .steps li.active,
body .wizard.wizard-ux .steps li.active.complete {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-primary-hover) 0%, var(--color-primary) 100%) !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .wizard.wizard-ux .steps li .chevron {
    display: none !important;
}

body .wizard.wizard-ux .steps > li .icon,
body .wizard.wizard-ux .steps > a > li .icon {
    font-size: 11px !important;
    line-height: 1 !important;
}

body .wizard.wizard-ux .steps > li span:not(.chevron),
body .wizard.wizard-ux .steps > a > li span:not(.chevron) {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Motivo: compactar o wizard compartilhado das simulacoes, removendo o card
   branco herdado e enxugando tipografia, altura e padding dos steps.
*/
body .wizard.wizard-ux.simulation-progress-wizard {
    margin-bottom: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body .wizard.wizard-ux.simulation-progress-wizard .steps-container {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body .wizard.wizard-ux.simulation-progress-wizard .steps {
    gap: 10px;
    padding-bottom: 0;
}

body .wizard.wizard-ux.simulation-progress-wizard .steps::before {
    left: 18px;
    right: 18px;
    opacity: 0.65;
}

/* [4C-IA | 2026-05-07 | css-18 | UI-MODERN/SIMULACAO]
 * Motivo: preservar os valores compactos no wizard compartilhado da simulacao.
 */
body .wizard.wizard-ux.simulation-progress-wizard .steps > li,
body .wizard.wizard-ux.simulation-progress-wizard .steps > a > li {
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 14px 0 12px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

body .wizard.wizard-ux.simulation-progress-wizard .steps > li .icon,
body .wizard.wizard-ux.simulation-progress-wizard .steps > a > li .icon {
    font-size: 11px !important;
    line-height: 1 !important;
}

.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > li.active,
.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > a > li.active,
.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > li.active.complete,
.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > a > li.active.complete {
    color: var(--color-bg-white) !important;
    border-color: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
    background-image: none !important;
    background: var(--color-primary) !important;
    box-shadow: var(--shadow-md) !important;
    font-weight: var(--font-weight-semibold) !important;
}

.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > li.complete,
.prmtz-modern-page .wizard.wizard-ux.wizard-info > .steps-container > .steps > a > li.complete {
    color: var(--color-bg-white) !important;
    border-color: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
    background-image: none !important;
    background: var(--color-primary) !important;
    box-shadow: var(--shadow-md) !important;
}

.prmtz-modern-page .prmtz-modern-wizard .step-content {
    padding: 20px 18px 22px;
}

.prmtz-modern-page .prmtz-modern-step-header .wizard-title {
    margin-bottom: 0;
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary);
}


.prmtz-modern-page .prmtz-modern-step-index {
    margin-bottom: 8px;
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.01em;
}


.prmtz-modern-page .prmtz-modern-link-niches-btn {
    padding: 10px !important;
    border-radius: var(--radius-lg) !important;
}


.prmtz-modern-page .prmtzn_percent_toggle {
    width: 100% !important;
    margin-left: 0 !important;
    text-align: left !important;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.prmtz-modern-page .prmtzn_percent_checkbox {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
    cursor: pointer;
}

.prmtz-modern-page .prmtzn_percent_checkbox_input {
    width: 16px;
    height: 16px;
    margin: 0 !important;
    position: static !important;
    accent-color: var(--color-accent);
}

.prmtz-modern-page .prmtzn_percent_label {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
    bottom: 0 !important;
    background: transparent !important;
}

.prmtz-modern-page .j_prmtzn_plans_row {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
    margin-bottom: 20px;
    margin-left: -8px;
    margin-right: -8px;
}

.prmtz-modern-page .j_prmtzn_plans_row > [class*="col-"] {
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 10px;
}

.prmtz-modern-page .j_prmtzn_plans_row > .col-md-4 {
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
}

.prmtz-modern-page .j_prmtzn_plans_row > .j_prmtzn_percent_targets {
    flex: 0 0 66.6667%;
    max-width: 66.6667%;
    margin-top: 0 !important;
}

.prmtz-modern-page .j_prmtzn_percent_targets > .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -8px !important;
    margin-right: -8px !important;
}

.prmtz-modern-page .j_prmtzn_percent_targets > .row > .j_prmtzn_percent_target {
    flex: 0 0 50%;
    max-width: 50%;
    padding-left: 8px !important;
    padding-right: 8px !important;
}

.prmtz-modern-page .j_prmtzn_plans_row .j_container {
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
    padding: 10px 12px 8px;
    min-height: 156px;
    height: 156px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-bg-white);
    box-shadow: var(--shadow-sm);
}

.prmtz-modern-page .j_prmtzn_plans_row .j_container .form-control {
    border-color: var(--color-border-input);
}

.prmtz-modern-page .j_prmtzn_plans_row .j_container .prmtzn_value {
    margin-top: 2px;
}

.prmtz-modern-page .j_prmtzn_plans_row .j_container .j_prmtz_disable_plan {
    margin-top: auto !important;
    padding-top: 8px;
}


.prmtz-modern-page .j_prmtzn_plans_row .j_container .custom-control,
.prmtz-modern-page .j_prmtzn_plans_row .j_container .custom-control-inline {
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: inline-flex;
    align-items: center;
    min-height: 18px;
}

.prmtz-modern-page .j_prmtzn_plans_row .j_container .custom-control-label {
    line-height: 1.2;
}


.prmtz-modern-page .j_prmtzn_percent_targets .form-group.j_container {
    padding-bottom: 8px !important;
}

.prmtz-modern-page .j_prmtzn_percent_targets .j_prmtz_disable_plan {
    margin-top: auto !important;
    padding-bottom: 0 !important;
}


.prmtz-modern-page .j_prmtzn_plans_row .j_container .prmtzn_input_readonly {
    background: var(--color-bg-hover) !important;
    color: var(--color-text-muted) !important;
    border-color: var(--color-border-input) !important;
    cursor: not-allowed;
}

.prmtz-modern-page .j_prmtzn_percent_targets.is-percent-active {
    z-index: auto !important;
}

.prmtz-modern-page .j_prmtzn_percent_targets.is-percent-active::before {
    content: none !important;
}

.prmtz-modern-page .j_prmtzn_percent_targets.is-percent-active .j_prmtzn_percent_target .j_container {
    border-color: #9cc3e6;
    box-shadow: 0 0 0 1px rgba(56, 122, 223, 0.08), var(--shadow-sm);
}

.custom-control { 
    margin-bottom: 0 !important;
}

.prmtz-modern-page .j_container_to_normalize_height {
    margin-top: 10px;
    margin-left: -10px;
    margin-right: -10px;
}

.prmtz-modern-page .j_container_to_normalize_height > .j_col_container {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 14px;
}

.prmtz-modern-page .j_plan_container {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    padding-bottom: 30px;
    position: relative;
    transition: border-color .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.prmtz-modern-page .j_plan_radio_container {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
}

.prmtz-modern-page .j_plan_container .prmtzn_box {
    margin: 6px 0;
    padding: 6px 10px;
    border: 1px solid var(--color-border-input);
    border-left: 3px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-hover);
    box-shadow: none;
}

.prmtz-modern-page .j_plan_container .prmtzn_box .prmtzn_box__input {
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    background: var(--color-bg-white);
}

.prmtz-modern-page .j_plan_container .prmtzn_box .prmtzn_box__actions {
    border-left: 1px solid var(--color-border);
    margin-left: 8px;
    padding-left: 6px;
}

.prmtz-modern-page .j_plan_container.prmtz-plan-selected {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px var(--color-focus-ring-primary), var(--shadow-md);
}

.prmtz-modern-page .j_plan_container.plan-disabled {
    opacity: .62;
    pointer-events: auto;
    cursor: pointer;
}

.prmtz-modern-page .j_plan_container.plan-disabled .prmtzn_container,
.prmtz-modern-page .j_plan_container.plan-disabled .prmtzn_box__head,
.prmtz-modern-page .j_plan_container.plan-disabled .prmtzn_box__foot,
.prmtz-modern-page .j_plan_container.plan-disabled .j_add_item {
    pointer-events: none;
}

.prmtz-modern-page .prmtz-modern-inline-chip {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 10px;
    margin: 0 2px;
    border-radius: var(--radius-pill);
    background: var(--color-success);
    color: var(--color-bg-white);
    font-weight: var(--font-weight-medium);
}

.prmtz-modern-page .prmtz-modern-step-toolbar {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    padding: 10px;
    background: var(--color-bg-white);
}

.prmtz-modern-page .step-pane[data-step="3"] .prmtz-modern-step-toolbar {
    position: relative;
    min-height: 34px;
    padding: 0 !important;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    visibility: hidden;
}

.prmtz-modern-page .step-pane[data-step="3"] .prmtz-modern-step-toolbar .prmtz-modern-add-product-btn {
    position: absolute;
    right: 0;
    top: 0;
    float: none !important;
    visibility: visible;
}

.prmtz-modern-page .prmtz-modern-add-product-btn {
    min-height: 34px;
    font-weight: var(--font-weight-medium);
}

.prmtz-modern-page .prmtz-modern-extras-container {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.prmtz-modern-page .prmtz-modern-extras-title {
    letter-spacing: 0.02em;
    padding-top: 12px;
}

.prmtz-modern-page .prmtzn_container {
    padding: 6px 8px 12px;
}

.prmtz-modern-page .prmtzn_box {
    margin: 4px 0;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-bg-white);
    box-shadow: 0 2px 6px var(--color-black-alpha-02);
    align-items: center;
}

.prmtz-modern-page .prmtzn_box .prmtzn_box__input {
    height: 34px;
    border-color: var(--color-border-input);
    font-size: 12px !important;
}

.prmtz-modern-page .prmtzn_box .prmtzn_box__actions button {
    color: var(--color-text-muted);
    transition: var(--transition-fast);
}

.prmtz-modern-page .prmtzn_box .prmtzn_box__actions button:hover {
    color: var(--color-accent);
}

.prmtz-modern-page .j_group_finish_parameterization_btns {
    margin-top: 22px !important;
    padding-top: 18px !important;
    border-top: 1px solid var(--color-border);
}

/* Motivo: estilos migrados de warning.blade.php */
.prmtz-warning-card {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-lg) !important;
    background: linear-gradient(160deg, var(--color-bg-white) 0%, var(--color-bg-page) 100%) !important;
}

.prmtz-warning-title {
    letter-spacing: 0.02em;
    line-height: 1.3;
}

.prmtz-warning-highlight {
    border: 1px solid var(--color-danger) !important;
    background: var(--color-bg-hover) !important;
    border-radius: var(--radius-lg) !important;
}

.prmtz-warning-note {
    width: 70%;
    float: right;
    border: 1px solid var(--color-danger) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--color-bg-white) !important;
}

.prmtz-warning-action-primary,
.prmtz-warning-action-secondary {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: var(--font-weight-medium) !important;
}

.prmtz-stock-page .prmtz-stock-head {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: var(--color-bg-white);
    box-shadow: var(--shadow-lg) !important;
    padding: 18px 20px !important;
}

.prmtz-stock-page .prmtz-stock-head .page-head-title {
    margin-bottom: 10px;
    font-weight: var(--font-weight-semibold);
}

.prmtz-stock-card {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-lg) !important;
    background: linear-gradient(160deg, var(--color-bg-white) 0%, var(--color-bg-page) 100%) !important;
    overflow: hidden;
}

.prmtz-stock-card .card-body {
    padding: 22px 20px 24px !important;
}

.prmtz-stock-page .prmtz-stock-name-row {
    margin-bottom: 2px;
}

.prmtz-stock-page .prmtz-stock-niches-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin-top: 6px;
}

.prmtz-stock-page .prmtz-stock-niches-main,
.prmtz-stock-page .prmtz-stock-niches-selected-col {
    display: flex;
    flex-direction: column;
}

.prmtz-stock-page .prmtz-stock-niches-header {
    margin-top: 10px !important;
    margin-bottom: 12px !important;
}

.prmtz-stock-selected-panel {
    flex: 1 1 auto;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    border-radius: var(--radius-xl);
    border: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
    padding: 14px 14px 16px !important;
}

.prmtz-stock-page .prmtz-stock-selected-panel .j_niches_selected {
    margin-bottom: 8px;
}

.prmtz-stock-page .prmtz-stock-selected-panel .j_niches_selected:last-child {
    margin-bottom: 0;
}

.prmtz-stock-page .j_niches_group {
    flex: 1 1 auto;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    background: var(--color-bg-white);
    padding: 14px 12px 18px;
    margin-bottom: 10px;
}

.prmtz-stock-page .j_niches_group .j_niches {
    margin-bottom: 8px;
}

.prmtz-stock-page .j_niches_group .j_niches_hr hr {
    margin: 2px 0 12px !important;
}

.prmtz-stock-page .prmtz-stock-submit-row {
    margin-top: 8px;
}

.prmtz-modern-page .j_niches_external_btn_close_only,
.prmtz-modern-page .j_niches_external_btn_close {
    padding: 8px 18px !important;
    min-height: 34px;
    border-radius: var(--radius-lg) !important;
    margin-top: 12px !important;
}

.prmtz-modern-page .j_niches_external_content > .row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.prmtz-modern-page .j_niches_external_content > .row > .col-md-8,
.prmtz-modern-page .j_niches_external_content > .row > .col-md-4 {
    display: flex;
}

.prmtz-modern-page .j_niches_external_content > .row > .col-md-4.mt-4 {
    margin-top: 0 !important;
}

.prmtz-modern-page .j_niches_external_content .j_niches_panel {
    width: 100%;
}


.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center {
    margin-top: 12px;
    padding: 10px 12px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-bg-white);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px 10px;
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center > p {
    flex-basis: 100%;
    color: var(--color-text-light);
    font-weight: var(--font-weight-medium);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button {
    margin: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias {
    width: 132px !important;
    height: 28px;
    padding: 3px;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-pill);
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    box-shadow: var(--shadow-sm);
    transition: var(--transition-base);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos label,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios label,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias label {
    width: 16px;
    height: 16px;
    margin: 0;
    border: 1px solid var(--color-white-alpha-85);
    background: var(--color-bg-white);
    box-shadow: 0 1px 4px var(--color-black-alpha-15);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos label:before,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios label:before,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias label:before {
    line-height: 28px !important;
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.02em;
    color: var(--color-primary);
    text-align: center !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos input[type="checkbox"]:checked + span,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios input[type="checkbox"]:checked + span,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias input[type="checkbox"]:checked + span {
    border-radius: var(--radius-pill);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent-mid) 100%);
    box-shadow: inset 0 0 0 1px var(--color-primary-hover);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos input[type="checkbox"]:checked + span label,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios input[type="checkbox"]:checked + span label,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias input[type="checkbox"]:checked + span label {
    border-color: var(--color-white-alpha-90);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-servicos input[type="checkbox"]:checked + span label:before,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-comercios input[type="checkbox"]:checked + span label:before,
.prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 .d-block.pt-3.text-center .switch-button.switch-button-industrias input[type="checkbox"]:checked + span label:before {
    color: var(--color-bg-white) !important;
    text-align: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_activity__container > .d-block.text-center {
    background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%) !important;
    padding: 12px 14px !important;
    margin: 24px 0 10px 0 !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_activity__container .j_activity__span_name {
    color: var(--color-primary);
    letter-spacing: 0.02em;
}

.prmtz-modern-page .step-pane[data-step="2"] .prmtzn_plans_synced_external_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.prmtz-modern-page .step-pane[data-step="2"] .prmtzn_plans_synced_container {
    flex-basis: 100%;
    margin: 0 0 6px !important;
    font-size: 11px;
    line-height: 1.2;
    color: var(--color-text-muted);
}

.prmtz-modern-page .step-pane[data-step="2"] .prmtzn_plans_synced_container_with_input {
    margin: 0 !important;
    height: auto;
}

.prmtz-modern-page .step-pane[data-step="2"] .prmtzn_plans_synced_box {
    padding: 6px 10px !important;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-pill);
    background: var(--color-bg-white);
    box-shadow: 0 1px 3px var(--color-black-alpha-02);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_activity__container .row .col-md-12 > span {
    float: none !important;
    margin: 4px 0 6px !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_activity__container .col-md-12.d-flex.justify-content-end {
    gap: 8px !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_select_type,
.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_input_value {
    height: 34px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md);
    background: var(--color-bg-white) !important;
    color: var(--color-primary);
    box-sizing: border-box !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_select_type {
    padding: 0 8px;
    margin: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_input_value {
    min-width: 92px;
    padding: 0 10px;
    margin: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_btn_apply {
    border: 1px solid var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-bg-white) !important;
    height: 34px !important;
    width: 34px !important;
    border-radius: var(--radius-md);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_readjustment_btn_clean {
    border: 1px solid var(--color-border-input) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-muted) !important;
    margin: 0 !important;
    height: 34px !important;
    width: 34px !important;
    border-radius: var(--radius-md);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_taxation_container,
.prmtz-modern-page .step-pane[data-step="2"] .j_criterions_extras_master_container .prmtzn_container_external {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    background: var(--color-bg-white) !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_taxation_container .prmtzn_box,
.prmtz-modern-page .step-pane[data-step="2"] .j_criterions_extras_master_container .prmtzn_box {
    margin: 6px 8px;
    border-color: var(--color-border-input);
    background: var(--color-bg-hover);
}

.prmtz-modern-page .step-pane[data-step="2"] .j_criterions_extras_master_container .criterion_extra_input_name {
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    min-height: 34px;
    padding: 6px 10px;
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.mb-5.mt-5.pt-5 {
    margin-top: 26px !important;
    padding-top: 14px !important;
    border-top: 1px solid var(--color-border);
}

.prmtz-modern-page .step-pane[data-step="2"] > .row.mb-5.mt-5.pt-5 > .col-md-4 {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 8px;
    flex-wrap: wrap;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_add_criterion_group_opt {
    margin: 0 !important;
    padding-top: 0 !important;
}

.prmtz-modern-page .step-pane[data-step="2"] .j_order_criterions,
.prmtz-modern-page .step-pane[data-step="2"] .j_order_criterions_finish,
.prmtz-modern-page .step-pane[data-step="2"] .j_add_criterion_group_opt > .btn {
    min-height: 34px;
    border-radius: var(--radius-md);
}

.prmtz-modern-page .add_prmtzn_model,
.prmtz-modern-page .add_prmtzn,
.prmtz-modern-page .add_prmtzn_bottom,
.prmtz-modern-page .calc_prmtzn,
.prmtz-modern-page .change_color_prmtzn,
.prmtz-modern-page .del_prmtzn,
.prmtz-modern-page .j_readjustment_btn_apply,
.prmtz-modern-page .j_readjustment_btn_clean,
.prmtz-modern-page .j_remove_range,
.prmtz-modern-page .j_remove_criterion_extra,
.prmtz-modern-page .prmtzn_box .prmtzn_box__actions button,
.prmtz-modern-page .prmtzn_box .prmtzn_box__actions .dropdown-toggle {
    border-radius: var(--radius-pill) !important;
}

.prmtz-modern-page .calc_prmtzn i {
    display: flex !important;
    align-items: center !important;
    justify-content: center;
    font-size: 12px !important;
}

.prmtzn_plans_synced_external_container { 
    margin-bottom: 12px !important;
}

.j_order_criterions { 
    margin: 0px !important;
}

/* Motivo: modernizar visualmente a etapa de Dores na construcao de persona, mantendo o fluxo legado e sem alterar comportamento funcional.
*/
body .j_pains_persona {
    margin-top: 4px;
}


body .j_pains_persona > .row:first-child > .col-md-12 {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    box-shadow: var(--shadow-sm);
    padding: 14px 16px !important;
    margin-bottom: 4px;
}

body .j_pains_persona > .row > .col-md-7 > h3,
body .j_pains_persona > .row > .col-md-5 > h3 {
    margin: 0 0 12px !important;
    padding: 10px 12px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-bg-white);
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--color-primary);
    font-size: 17px;
    font-weight: var(--font-weight-semibold);
}

body .j_pains_persona > .row > .col-md-7 > h3 .j_add_pain {
    margin-left: auto;
    float: none !important;
    min-height: 30px;
    padding: 4px 14px !important;
    border-radius: var(--radius-pill) !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body .j_pains_persona > .row > .col-md-7 > .card {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md);
}

body .j_pains_persona > .row > .col-md-7 > .card > .card-body {
    padding: 14px !important;
}

body .j_pains_persona .table-responsive.noSwipe {
    overflow: hidden;
    background: var(--color-bg-white);
}

body .j_pains_persona .painList {
    margin-bottom: 0 !important;
}

body .j_pains_persona .painList thead th,
body .j_pains_persona .j_table_category_pain_fmt thead th {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.03em;
    text-transform: uppercase;
    padding: 11px 12px !important;
}

/* Motivo: corrigir repeticao dos icones de ordenacao no header da DataTable de dores.
*/
body .j_pains_persona .painList thead th.sorting,
body .j_solutions_persona .painCategoriesList thead th.sorting,
body .j_solutions_persona table.dataTable thead th.sorting {
    background-image: url("/assets/lib/custom/sort_both.png") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

body .j_pains_persona .painList thead th.sorting_asc,
body .j_solutions_persona .painCategoriesList thead th.sorting_asc,
body .j_solutions_persona table.dataTable thead th.sorting_asc {
    background-image: url("/assets/lib/custom/sort_asc.png") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

body .j_pains_persona .painList thead th.sorting_desc,
body .j_solutions_persona .painCategoriesList thead th.sorting_desc,
body .j_solutions_persona table.dataTable thead th.sorting_desc {
    background-image: url("/assets/lib/custom/sort_desc.png") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

body .j_pains_persona .painList thead th.sorting_asc_disabled,
body .j_solutions_persona .painCategoriesList thead th.sorting_asc_disabled,
body .j_solutions_persona table.dataTable thead th.sorting_asc_disabled {
    background-image: url("/assets/lib/custom/sort_asc_disabled.png") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

body .j_pains_persona .painList thead th.sorting_desc_disabled,
body .j_solutions_persona .painCategoriesList thead th.sorting_desc_disabled,
body .j_solutions_persona table.dataTable thead th.sorting_desc_disabled {
    background-image: url("/assets/lib/custom/sort_desc_disabled.png") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

body .j_pains_persona .painList tbody td,
body .j_pains_persona .j_table_category_pain_fmt tbody td {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    padding: 10px 12px !important;
    vertical-align: middle;
}

body .j_pains_persona .painList tbody tr:last-child td,
body .j_pains_persona .j_table_category_pain_fmt tbody tr:last-child td {
    border-bottom: 0 !important;
}

body .j_pains_persona .painList tbody tr:hover,
body .j_pains_persona .j_table_category_pain_fmt tbody tr:hover {
    background: var(--color-bg-hover);
}

body .j_pains_persona .painList tbody td > label {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: var(--font-weight-medium);
    color: var(--color-primary);
}

body .j_pains_persona .painList .j_persona {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--color-primary);
    cursor: pointer;
}

body .j_pains_persona .painList .dropdown-item.j_modal_update {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--color-border-input);
    padding: 6px 10px;
    color: var(--color-primary);
    font-weight: var(--font-weight-medium);
}

body .j_pains_persona .painList .dropdown-item.j_modal_update:hover {
    text-decoration: none;
    background: var(--color-bg-hover);
    border-color: var(--color-border);
}

body .j_pains_persona .j_table_category_pain_fmt {
    width: 100%;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    background: var(--color-bg-white);
    margin-bottom: 0;
}

body .j_pains_persona .j_table_category_pain_fmt tbody td:first-child {
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold);
}

body .j_pains_persona .j_table_category_pain_fmt tbody td:last-child {
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

body .j_pains_persona .alert.alert-info {
    margin: 8px !important;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%);
    color: var(--color-text-muted);
}

body .j_pains_persona > .row:last-child {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--color-border);
}

body .j_pains_persona > .row:last-child .btn.btn-lg {
    min-width: 180px;
}

body .j_pains_persona + #md-fullWidth .modal-content {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

body .j_pains_persona + #md-fullWidth .modal-header {
    border-bottom: 1px solid var(--color-border) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
}

body .j_pains_persona + #md-fullWidth .modal-header .page-head-title {
    margin-bottom: 0;
    color: var(--color-primary);
    font-size: 18px !important;
    line-height: 1.15 !important;
}

body .j_pains_persona + #md-fullWidth .modal-body {
    background: var(--color-bg-white);
}

body .j_pains_persona + #md-fullWidth .modal-body .j_pain_update .form-group > label,
body .j_pains_persona + #md-fullWidth .modal-body .j_pain_update .d-block {
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

/* Motivo: alinhar o passo de Solucoes ao mesmo padrao visual de Dores e corrigir legibilidade dos botoes de escolha do accordion.
*/
body .j_solutions_persona {
    margin-top: 4px;
}

body .j_solutions_persona > .row:first-child > .col-md-12 {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    box-shadow: var(--shadow-sm);
    padding: 14px 16px !important;
    margin-bottom: 4px;
}

body .j_solutions_persona > .row > .col-md-7 > h3,
body .j_solutions_persona > .row > .col-md-5 > h3 {
    margin: 0 0 12px !important;
    padding: 10px 12px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    background: var(--color-bg-white);
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--color-primary);
    font-size: 17px;
    font-weight: var(--font-weight-semibold);
}

body .j_solutions_persona > .row > .col-md-7 > h3 .j_add_solution {
    margin-left: auto;
    float: none !important;
    min-height: 30px;
    padding: 4px 14px !important;
    border-radius: var(--radius-pill) !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: var(--shadow-md);
    overflow: hidden;
    margin-bottom: 12px !important;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card:last-child {
    margin-bottom: 0 !important;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card > .card-header {
    border: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card > .card-header > .btn {
    width: 100%;
    display: flex !important;
    align-items: center;
    gap: 8px;
    padding: 12px 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: none !important;
    color: var(--color-primary) !important;
    font-weight: var(--font-weight-semibold);
    text-align: left !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: nowrap;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card > .card-header > .btn:hover {
    background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%) !important;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card > .card-header > .btn .mdi-chevron-right {
    color: var(--color-accent) !important;
    transition: transform 0.2s ease;
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card > .card-header > .btn[aria-expanded="true"] .mdi-chevron-right {
    transform: rotate(90deg);
}

body .j_solutions_persona > .row > .col-md-7 > .accordion > .card .collapse .card-body {
    padding: 14px !important;
    border-top: 1px solid var(--color-border-input);
    background: var(--color-bg-white);
}

body .j_solutions_persona .table-responsive.noSwipe {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--color-bg-white);
}

body .j_solutions_persona .painCategoriesList {
    margin-bottom: 0 !important;
}

body .j_solutions_persona .painCategoriesList thead th,
body .j_solutions_persona .j_table_pain_solution_fmt thead th {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.03em;
    text-transform: uppercase;
    padding: 11px 12px !important;
}

body .j_solutions_persona .painCategoriesList tbody td,
body .j_solutions_persona .j_table_pain_solution_fmt tbody td {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    padding: 10px 12px !important;
    vertical-align: middle;
}

body .j_solutions_persona .painCategoriesList tbody tr:last-child td,
body .j_solutions_persona .j_table_pain_solution_fmt tbody tr:last-child td {
    border-bottom: 0 !important;
}

body .j_solutions_persona .painCategoriesList tbody tr:hover,
body .j_solutions_persona .j_table_pain_solution_fmt tbody tr:hover {
    background: var(--color-bg-hover);
}

body .j_solutions_persona .painCategoriesList tbody td > label {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: var(--font-weight-medium);
    color: var(--color-primary);
}

body .j_solutions_persona .painCategoriesList .j_persona {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--color-primary);
    cursor: pointer;
}

body .j_solutions_persona .painCategoriesList .dropdown-item.j_modal_update {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--color-border-input);
    padding: 6px 10px;
    color: var(--color-primary);
    font-weight: var(--font-weight-medium);
}

body .j_solutions_persona .painCategoriesList .dropdown-item.j_modal_update:hover {
    text-decoration: none;
    background: var(--color-bg-hover);
    border-color: var(--color-border);
}

body .j_solutions_persona .j_table_pain_solution_fmt {
    width: 100%;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    background: var(--color-bg-white);
    margin-bottom: 0;
}

body .j_solutions_persona .j_table_pain_solution_fmt tbody td:first-child {
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold);
}

body .j_solutions_persona .j_table_pain_solution_fmt tbody td:last-child {
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

body .j_solutions_persona .alert.alert-info {
    margin: 8px !important;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-lg);
    background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%);
    color: var(--color-text-muted);
}

body .j_solutions_persona > .row:last-child {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--color-border);
}

body .j_solutions_persona > .row:last-child .btn.btn-lg {
    min-width: 180px;
}

body .j_solutions_persona + #md-fullWidth .modal-content {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

body .j_solutions_persona + #md-fullWidth .modal-header {
    border-bottom: 1px solid var(--color-border) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
}

body .j_solutions_persona + #md-fullWidth .modal-header .page-head-title {
    margin-bottom: 0;
    color: var(--color-primary);
    font-size: 18px !important;
    line-height: 1.15 !important;
}

body .j_solutions_persona + #md-fullWidth .modal-body {
    background: var(--color-bg-white);
}

body .j_solutions_persona + #md-fullWidth .modal-body .j_solution_update .form-group > label,
body .j_solutions_persona + #md-fullWidth .modal-body .j_solution_update .d-block {
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

/* Motivo: alinhar o passo de Produtos ao mesmo padrao visual de Dores/Solucoes e garantir legibilidade dos botoes do accordion.
*/
@supports selector(form:has(.j_table_pain_solution_product_fmt)) {
    body form:has(.j_table_pain_solution_product_fmt) {
        margin-top: 4px;
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row:first-child > .col-md-12 {
        border: 1px solid var(--color-border);
        border-radius: var(--radius-lg);
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
        box-shadow: var(--shadow-sm);
        padding: 14px 16px !important;
        margin-bottom: 4px;
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-7 > h3,
    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-5 > h3 {
        margin: 0 0 12px !important;
        padding: 10px 12px;
        border: 1px solid var(--color-border);
        border-radius: var(--radius-lg);
        background: var(--color-bg-white);
        display: flex;
        align-items: center;
        gap: 8px;
        color: var(--color-primary);
        font-size: 17px;
        font-weight: var(--font-weight-semibold);
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-7 > h3 .j_add_product {
        margin-left: auto;
        float: none !important;
        min-height: 30px;
        padding: 4px 14px !important;
        border-radius: var(--radius-pill) !important;
        display: inline-flex;
        align-items: center;
        gap: 6px;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card {
        border: 1px solid var(--color-border) !important;
        border-radius: var(--radius-xl) !important;
        box-shadow: var(--shadow-md);
        overflow: hidden;
        margin-bottom: 12px !important;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card:last-child {
        margin-bottom: 0 !important;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card > .card-header {
        border: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card > .card-header > .btn {
        width: 100%;
        display: flex !important;
        align-items: center;
        gap: 8px;
        padding: 12px 14px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
        box-shadow: none !important;
        color: var(--color-primary) !important;
        font-weight: var(--font-weight-semibold);
        text-align: left !important;
        text-decoration: none !important;
        text-shadow: none !important;
        white-space: nowrap;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card > .card-header > .btn:hover {
        background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%) !important;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card > .card-header > .btn .mdi-chevron-right {
        color: var(--color-accent) !important;
        transition: transform 0.2s ease;
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card > .card-header > .btn[aria-expanded="true"] .mdi-chevron-right {
        transform: rotate(90deg);
    }

    body form:has(.j_table_pain_solution_product_fmt) .accordion > .card .collapse .card-body {
        padding: 14px !important;
        border-top: 1px solid var(--color-border-input);
        background: var(--color-bg-white);
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row:last-child {
        margin-top: 18px;
        padding-top: 16px;
        border-top: 1px solid var(--color-border);
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row:last-child .btn.btn-lg {
        min-width: 180px;
    }

    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-content {
        border: 1px solid var(--color-border) !important;
        border-radius: var(--radius-xl) !important;
        overflow: hidden;
        box-shadow: var(--shadow-lg);
    }

    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-header {
        border-bottom: 1px solid var(--color-border) !important;
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    }

    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-header .page-head-title {
        margin-bottom: 0;
        color: var(--color-primary);
        font-size: 18px !important;
        line-height: 1.15 !important;
    }

    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-body {
        background: var(--color-bg-white);
    }

    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-body .j_product_update .form-group > label,
    body form:has(.j_table_pain_solution_product_fmt) + #md-fullWidth .modal-body .j_product_update .d-block {
        color: var(--color-text-muted);
        font-weight: var(--font-weight-medium);
    }
}

body .productsList,
body .j_table_pain_solution_product_fmt {
    margin-bottom: 0 !important;
}

body .productsList thead th,
body .j_table_pain_solution_product_fmt thead th {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.03em;
    text-transform: uppercase;
    padding: 11px 12px !important;
}

body .productsList tbody td,
body .j_table_pain_solution_product_fmt tbody td {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    padding: 10px 12px !important;
    vertical-align: middle;
}

body .productsList tbody tr:last-child td,
body .j_table_pain_solution_product_fmt tbody tr:last-child td {
    border-bottom: 0 !important;
}

body .productsList tbody tr:hover,
body .j_table_pain_solution_product_fmt tbody tr:hover {
    background: var(--color-bg-hover);
}

body .productsList tbody td > label {
    margin: 0 !important;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--color-primary);
    font-weight: var(--font-weight-medium);
}

body .productsList .j_persona {
    width: 16px;
    height: 16px;
    margin: 0 !important;
    accent-color: var(--color-primary);
    cursor: pointer;
}

body .productsList .dropdown-item.j_modal_update {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--color-border-input);
    padding: 6px 10px;
    color: var(--color-primary);
    font-weight: var(--font-weight-medium);
}

body .productsList .dropdown-item.j_modal_update:hover {
    text-decoration: none;
    background: var(--color-bg-hover);
    border-color: var(--color-border);
}

body .j_table_pain_solution_product_fmt {
    width: 100%;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    background: var(--color-bg-white);
}

body .j_table_pain_solution_product_fmt tbody td:first-child {
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold);
}

body .j_table_pain_solution_product_fmt tbody td:nth-child(2),
body .j_table_pain_solution_product_fmt tbody td:nth-child(3) {
    color: var(--color-text-muted);
    font-weight: var(--font-weight-medium);
}

body .productsList thead th.sorting,
body .productsList thead th.sorting_asc,
body .productsList thead th.sorting_desc,
body .productsList thead th.sorting_asc_disabled,
body .productsList thead th.sorting_desc_disabled {
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
    padding-right: 30px !important;
}

/* Motivo: modernizar a Visao Geral com hierarquia visual e tabelas no mesmo padrao dos passos anteriores.
*/
@supports selector(form:has(.custom-list-card-cell)) {
    body form:has(.custom-list-card-cell) > .row > .col-md-12 > .accordion > .row:first-child > .col-md-12 > .text-muted {
        border: 1px solid var(--color-border);
        border-radius: var(--radius-lg);
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
        box-shadow: var(--shadow-sm);
        padding: 14px 16px !important;
        margin-bottom: 10px !important;
    }

    body form:has(.custom-list-card-cell) h3 {
        margin: 0 0 12px !important;
        padding: 10px 12px;
        border: 1px solid var(--color-border);
        border-radius: var(--radius-lg);
        background: var(--color-bg-white);
        display: flex;
        align-items: center;
        gap: 8px;
        color: var(--color-primary);
        font-size: 17px;
        font-weight: var(--font-weight-semibold);
    }
}

body form:has(.custom-list-card-cell) .custom-list-card-cell {
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
}

body form:has(.custom-list-card-cell) .custom_table_matrix {
    width: 100%;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    background: var(--color-bg-white);
}

body form:has(.custom-list-card-cell) .custom_table_matrix thead th {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%);
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.03em;
    text-transform: uppercase;
    padding: 11px 12px !important;
}

body form:has(.custom-list-card-cell) .custom_table_matrix tbody td {
    border-top: 0 !important;
    border-bottom: 1px solid var(--color-border-input) !important;
    padding: 10px 12px !important;
    vertical-align: middle;
}

body form:has(.custom-list-card-cell) .custom_table_matrix tbody tr:last-child td {
    border-bottom: 0 !important;
}

body form:has(.custom-list-card-cell) .custom_table_matrix tbody tr:hover {
    background: var(--color-bg-hover);
}

body form:has(.custom-list-card-cell) .custom-list-card-tag {
    border: 1px sloid var(--color-border-input) !important;
    border-radius: var(--radius-pill) !important;
    padding: 2px 6px !important;
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary);
}

.leaderline_container {
    margin: 12px !important;
}

.leaderline_item { 
    border-radius: var(--radius-lg) !important;
    padding: 16px !important;
}

body .leaderline_item.leaderline_item_active .leaderline_item__title,
body .leaderline_item.leaderline_item_active .leaderline_item__title span,
body .leaderline_item.leaderline_item_active small,
body .leaderline_item.leaderline_item_active .j_prod_description,
body .leaderline_item.leaderline_item_active .j_prod_description .icon,
body .leaderline_item.leaderline_item_active .j_prod_description .mdi {
    color: var(--color-bg-white) !important;
}

@media (max-width: 991px) {
    body .j_pains_persona > .row > .col-md-7,
    body .j_solutions_persona > .row > .col-md-7,
    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-7,
    body .j_solutions_persona > .row > .col-md-5,
    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-5,
    body .j_pains_persona > .row > .col-md-5 {
        margin-bottom: 14px;
    }

    body .j_pains_persona > .row > .col-md-7 > h3,
    body .j_solutions_persona > .row > .col-md-7 > h3,
    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-7 > h3,
    body .j_solutions_persona > .row > .col-md-5 > h3,
    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-5 > h3,
    body .j_pains_persona > .row > .col-md-5 > h3 {
        font-size: 15px;
        line-height: 1.35;
        display: block;
        padding: 10px;
    }

    body .j_pains_persona > .row > .col-md-7 > h3 .j_add_pain {
        margin-top: 8px;
        margin-left: 0;
    }

    body .j_solutions_persona > .row > .col-md-7 > h3 .j_add_solution {
        margin-top: 8px;
        margin-left: 0;
    }

    body form:has(.j_table_pain_solution_product_fmt) > .row > .col-md-7 > h3 .j_add_product {
        margin-top: 8px;
        margin-left: 0;
    }

    body .j_pains_persona > .row:last-child .col-md-6:first-child,
    body .j_solutions_persona > .row:last-child .col-md-6:first-child,
    body form:has(.j_table_pain_solution_product_fmt) > .row:last-child .col-md-6:first-child,
    body .j_solutions_persona > .row:last-child .col-md-6:last-child,
    body form:has(.j_table_pain_solution_product_fmt) > .row:last-child .col-md-6:last-child,
    body .j_pains_persona > .row:last-child .col-md-6:last-child {
        margin-bottom: 10px;
    }

    body .j_pains_persona > .row:last-child .btn.btn-lg,
    body .j_solutions_persona > .row:last-child .btn.btn-lg,
    body form:has(.j_table_pain_solution_product_fmt) > .row:last-child .btn.btn-lg {
        width: 100%;
        min-width: 0;
        float: none !important;
    }
}

@media (max-width: 991px) {
    .prmtz-modern-page .prmtz-modern-head {
        padding: 12px !important;
        display: block;
    }

    .prmtz-modern-page .prmtz-modern-type-switch {
        width: 100% !important;
        margin-top: 10px;
        margin-left: 0;
        max-width: 100%;
    }

    .prmtz-modern-page .prmtz-modern-type-switch .float-left,
    .prmtz-modern-page .prmtz-modern-type-switch .float-right {
        float: none !important;
        display: block;
        text-align: left;
    }

    .prmtz-modern-page .prmtz-modern-type-switch .float-right {
        margin-top: 6px;
    }

    .prmtz-modern-page .prmtz-modern-type-switch .form-group {
        grid-template-columns: 1fr;
        grid-template-areas:
            "label"
            "action"
            "select";
    }

    .prmtz-modern-page .prmtz-modern-type-switch .form-group > a {
        justify-self: start;
    }

    .prmtz-modern-page .j_niches_external_content > .row {
        display: block;
    }

    .prmtz-modern-page .j_niches_external_content > .row > .col-md-8,
    .prmtz-modern-page .j_niches_external_content > .row > .col-md-4 {
        display: block;
    }

    .prmtz-modern-page .step-pane[data-step="2"] > .row.pt-5 > .col-md-12 {
        padding: 12px;
    }

    .prmtz-modern-page .step-pane[data-step="2"] .j_activity__container .col-md-12.d-flex.justify-content-end {
        justify-content: flex-start !important;
        flex-wrap: wrap;
    }

    .prmtz-modern-page .step-pane[data-step="2"] > .row.mb-5.mt-5.pt-5 > .col-md-4 {
        justify-content: flex-start;
        text-align: left !important;
        margin-top: 10px;
    }

    .prmtz-modern-page .j_prmtzn_plans_row > .col-md-4,
    .prmtz-modern-page .j_prmtzn_plans_row > .j_prmtzn_percent_targets,
    .prmtz-modern-page .j_prmtzn_percent_targets > .row > .j_prmtzn_percent_target {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .prmtz-modern-page .j_prmtzn_plans_row .j_container {
        height: auto;
        min-height: 0;
    }

    body .wizard.wizard-ux .steps {
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 2px;
    }

    body .wizard.wizard-ux .steps > li,
    body .wizard.wizard-ux .steps > a {
        flex: 0 0 220px;
        min-width: 220px;
    }

    body .wizard.wizard-ux .steps > li,
    body .wizard.wizard-ux .steps > a > li {
        min-height: 36px;
        height: 36px !important;
        padding: 0 12px 0 10px !important;
        font-size: 11px !important;
        line-height: 1 !important;
    }

    body .wizard.wizard-ux.simulation-progress-wizard .steps {
        gap: 8px;
        padding-bottom: 2px;
    }

    body .wizard.wizard-ux.simulation-progress-wizard .steps > li,
    body .wizard.wizard-ux.simulation-progress-wizard .steps > a {
        flex: 0 0 220px;
        min-width: 220px;
    }

    body .wizard.wizard-ux.simulation-progress-wizard .steps > li,
    body .wizard.wizard-ux.simulation-progress-wizard .steps > a > li {
        min-height: 36px;
        height: 36px !important;
        padding: 0 12px 0 10px !important;
        font-size: 11px !important;
        line-height: 1 !important;
    }

    .prmtz-stock-page .prmtz-stock-head {
        padding: 14px 14px !important;
    }

    .prmtz-stock-page .prmtz-stock-niches-main,
    .prmtz-stock-page .prmtz-stock-niches-selected-col {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .prmtz-stock-page .prmtz-stock-niches-selected-col {
        margin-top: 10px !important;
    }

    .prmtz-stock-page .j_niches_group {
        margin-bottom: 6px;
        padding: 12px 10px 14px;
    }

    .prmtz-modern-page .j_container_to_normalize_height {
        margin-left: -6px;
        margin-right: -6px;
    }

    .prmtz-modern-page .j_container_to_normalize_height > .j_col_container {
        padding-left: 6px;
        padding-right: 6px;
        margin-bottom: 10px;
    }

    .prmtz-warning-note {
        width: 100%;
        float: none;
    }

    .prmtz-warning-action-primary,
    .prmtz-warning-action-secondary {
        width: 100%;
        margin-bottom: 8px;
    }

    .prmtz-warning-page .text-right,
    .prmtz-warning-page .text-left {
        text-align: center !important;
    }
}

/* Motivo: modernizar as etapas de atividades/dores e produtos da nova venda
   com diagnóstico, usando painéis escopados para não interferir em outros fluxos.
*/
body .sim-diagnosis-shell {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: var(--shadow-md) !important;
    overflow: hidden !important;
}

body .sim-diagnosis-shell > .card-body {
    padding: 22px 22px 26px !important;
}

body .sim-diagnosis-page .sim-diagnosis-overview {
    display: flex !important;
    align-items: center !important;
    justify-content: space-around;
    margin: 0 0 18px 0 !important;
    padding: 12px !important;
}

body .sim-diagnosis-page .sim-diagnosis-overview .form{ 

}

body .card .card-body .sim-diagnosis-info {
    display: flex !important;
    align-items: center !important;
    justify-content: space-around;
    margin: 0 0 18px 0 !important;
    padding: 12px !important;
}

body .card .card-body .sim-diagnosis-final {
    display: flex !important;
    align-items: center !important;
    justify-content: space-around;
    margin: 0 0 18px 0 !important;
    padding: 12px !important;
}

body .sim-diagnosis-page .sim-diagnosis-overview > [class*="col-"] {
    margin-bottom: 10px;
}

body .sim-diagnosis-page .sim-diagnosis-overview .text-muted.mt-0.mb-0.fs-11px {
    letter-spacing: 0.06em !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .sim-diagnosis-page .sim-diagnosis-overview h3,
body .sim-diagnosis-page .sim-diagnosis-overview h4 {
    margin-bottom: 0 !important;
}

body .sim-diagnosis-page .sim-diagnosis-overview .j_select2,
body .sim-diagnosis-page .sim-diagnosis-overview .form-control {
    border-radius: var(--radius-lg) !important;
}

body .sim-diagnosis-page .sim-diagnosis-panels {
    margin-top: 4px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

body .sim-diagnosis-page .sim-diagnosis-panels .sim-diagnosis-panel--pains{
    background: var(--color-btn-secondary-hover-end);
    border-radius: var(--radius-lg);
    border: 1px solid var(--color-border-soft-alt);
}


body .sim-diagnosis-page .sim-diagnosis-panels > .col-md-6 {
    max-width: none !important;
    width: auto !important;
    flex: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body .sim-diagnosis-page .sim-diagnosis-panel {
    overflow: hidden !important;
    height: 100%;
}



body .sim-diagnosis-page .sim-diagnosis-panel > .col-md-12 {
    padding-left: 18px;
    padding-right: 18px;
}

body .sim-diagnosis-page .sim-diagnosis-section-title {
    margin: 0 !important;
    padding: 16px 18px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    color: var(--color-text-strong) !important;
    font-size: 15px !important;
    font-weight: var(--font-weight-semibold) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

body .sim-diagnosis-page .sim-diagnosis-section-title .icon {
    font-size: 18px !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion {
    margin-top: 2px;
}

body .sim-diagnosis-page .sim-diagnosis-accordion__card {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion__header {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion__toggle {
    width: 95%;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%) !important;
    color: var(--color-bg-white) !important;
    box-shadow: var(--shadow-sm) !important;
    margin-left: 11px !important;
    padding: 14px 16px !important;
    white-space: normal !important;
    text-align: left !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion__toggle .sim-diagnosis-section-title {
    padding: 0 !important;
    border-bottom: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 14px !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion__toggle .icon {
    font-size: 18px !important;
}

body .sim-diagnosis-page .sim-diagnosis-accordion .collapse.show {
    padding-top: 14px;
}

body .sim-diagnosis-page .sim-diagnosis-accordion .form-group.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body .sim-diagnosis-page .format_line {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100%;
    margin: 0 0 10px 0 !important;
    transition: transform 0.15s ease;
}

body .sim-diagnosis-page .format_line:hover {
    transform: translateY(-1px);
}

body .sim-diagnosis-page .format_line > div:first-of-type {
    flex: 0 0 56px;
}

body .sim-diagnosis-page .format_line > div:last-of-type {
    cursor: pointer;
    flex: 1 1 auto;
    overflow-wrap: break-word;
    font-size: 14px;
    line-height: 1.45;
    color: var(--color-text-strong);
}

body .sim-diagnosis-page .format_line > div {
    display: flex;
    flex-wrap: wrap;
}

body .sim-diagnosis-page .format_line.format_line__param {
    margin-left: 0 !important;
    flex-wrap: wrap !important;
    align-content: flex-start;
    justify-content: center;
    align-items: center;
}

body .sim-diagnosis-page .format_line__param > div {
    margin-left: 0 !important;
    margin-bottom: 4px !important;
}

body .sim-diagnosis-page .format_line.format_line__rootPain {
    display: flex;
    flex-wrap: wrap !important;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 8px 10px;
    padding: 14px 16px !important;
    background: linear-gradient(180deg, var(--color-bg-hover) 0%, var(--color-bg-white) 100%) !important;
}

body .sim-diagnosis-page .j_container__goalObjectives {
    width: 100%;
}

body .sim-diagnosis-page .j_container__goalObjectives .format_line {
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
}

body .sim-diagnosis-page .j_container_rootPains {
    width: 100%;
    margin-top: 12px;
    padding: 14px 16px;
    border-top: 1px dashed var(--color-border-input);
}

/* Motivo: reforçar radius e padding dos inputs de metas/objetivos na simulação
   com diagnóstico, mantendo o alinhamento em linha dos blocos paramétricos.
*/
body .sim-diagnosis-page .j_goalObjectivesParam {
    min-height: 34px !important;
    padding: 7px 12px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: 12px !important;
    background: var(--color-bg-white) !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04);
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    opacity: 1;
    box-sizing: border-box;
}

body .sim-diagnosis-page .j_goalObjectivesParam:disabled {
    background: var(--color-bg-white) !important;
    opacity: 1;
    -webkit-text-fill-color: var(--color-text-strong);
}

body .sim-diagnosis-page .j_goalObjectivesParam.w-70px {
    width: 96px !important;
    min-width: 96px !important;
}

body .sim-diagnosis-page .switch-button.switch-button-xxs {
    transform: scale(0.92);
    transform-origin: left center;
    border-radius: 50px !important;
    overflow: hidden !important;
}

body .sim-diagnosis-page .switch-button.switch-button-xxs input[type="checkbox"]:checked + span {
    border-radius: 50px !important;
}

body .sim-diagnosis-page .sim-diagnosis-actions {
    margin-top: 18px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: 18px !important;
    border-top: 1px solid var(--color-border-soft);
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

body .sim-diagnosis-page .sim-diagnosis-actions .btn {
    min-width: 160px;
}

body .sim-product-shell {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: var(--shadow-md) !important;
    overflow: hidden !important;
}

body .sim-product-shell > .card-body {
    padding: 22px 22px 26px !important;
}


body .sim-product-page .sim-product-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin: 0 0 18px !important;
    padding: 14px 16px !important;
}

body .sim-product-page .sim-product-toolbar .btn-space {
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

body .sim-product-page .sim-product-toolbar__title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: var(--color-text-strong) !important;
    font-size: 14px !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .sim-product-page .sim-product-toolbar__title .icon {
    font-size: 18px !important;
}

body .sim-product-page .sim-product-overview {
    display: flex !important;
    align-items: center !important;
    justify-content: space-around;
    margin: 0 0 18px 0 !important;
    padding: 16px 18px !important;
}

body .sim-product-page .sim-product-overview > [class*="col-"] {
    margin-bottom: 10px;
}

body .sim-product-page .sim-product-map-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-evenly !important;
    width: 100% !important;
    gap: 12px !important;
    margin: 0 30px !important;
    padding: 14px 16px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-bottom: 0 !important;
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%) !important;
    color: var(--color-bg-white) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 11px !important;
    font-weight: var(--font-weight-semibold) !important;
}

body .sim-product-page .sim-product-map-header > div {
    width: auto !important;
    flex: 1 1 0 !important;
    text-align: left !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

body .sim-product-page .sim-product-map-header > div:last-child {
    text-align: right !important;
}

body .sim-product-page .sim-product-map-frame {
    margin: 0 !important;
    padding: 0 !important;
}

body .sim-product-page .leaderline_container {
    margin: 0 !important;
    padding: 18px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-top: 0 !important;
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: 0 1px 4px var(--color-black-alpha-04) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

body .sim-product-page .leaderline_start,
body .sim-product-page .leaderline_end {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    min-width: 0 !important;
}

body .sim-product-page .leaderline_start{
    align-items: start !important;
}

body .sim-product-page .leaderline_end{
    align-items: end !important;
}

body .sim-product-page .leaderline_item {
    position: relative;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--color-bg-white) !important;
    padding: 14px 16px !important;
    box-shadow: 0 1px 4px var(--color-black-alpha-04) !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

body .sim-product-page .leaderline_item:hover {
    transform: translateY(-1px);
    box-shadow: var(--shadow-md) !important;
    border-color: var(--color-border) !important;
}

body .sim-product-page .leaderline_item.leaderline_item_active {
    color: var(--color-bg-white) !important;
    /* [4C-IA | 2026-05-07 | css-18 | UI-MODERN/SIMULACAO]
     * Motivo: remover degradê dos itens selecionados e alinhar ao verde ativo das linhas da simulação.
     */
    border-color: var(--color-leaderline-active, #247881) !important;
    color: var(--color-bg-white) !important;
    border-color: var(--color-primary) !important;
    box-shadow: 0 12px 28px var(--color-black-alpha-10) !important;
    background: var(--color-leaderline-active, #247881) !important;
    background-image: none !important;
}

body .sim-product-page .leaderline_item.leaderline_item_active > div:not(.switch-button) {
    color: var(--color-bg-white) !important;
    background: var(--color-leaderline-active, #247881) !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isBpo,
body .sim-product-page .leaderline_item.leaderline_item__isPartner {
    background: linear-gradient(135deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
    border-left-width: 4px !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isBpo {
    border-left-color: var(--color-accent) !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isPartner {
    border-left-color: var(--color-success) !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isBpo.leaderline_item_active,
body .sim-product-page .leaderline_item.leaderline_item__isPartner.leaderline_item_active {
    background: var(--color-leaderline-active, #247881) !important;
    background-image: none !important;
    border-color: var(--color-leaderline-active, #247881) !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isBpo.leaderline_item_active {
    border-left-color: var(--color-leaderline-active, #247881) !important;
}

body .sim-product-page .leaderline_item.leaderline_item__isPartner.leaderline_item_active {
    border-left-color: var(--color-leaderline-active, #247881) !important;
}

body .sim-product-page .leaderline_item.leaderline_item_type {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px;
    padding: 10px 14px !important;
    border-style: dashed;
    background: linear-gradient(135deg, var(--color-bg-surface-alt) 0%, var(--color-bg-white) 100%) !important;
    color: var(--color-text-muted) !important;
    font-size: 11px !important;
    font-weight: var(--font-weight-semibold) !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body .sim-product-page .leaderline_item__title {
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: var(--font-weight-semibold) !important;
    color: var(--color-text-strong) !important;
}

body .sim-product-page .leaderline_item.leaderline_item_active .leaderline_item__title,
body .sim-product-page .leaderline_item.leaderline_item_active .leaderline_item__title span,
body .sim-product-page .leaderline_item.leaderline_item_active .leaderline_item__btn_action,
body .sim-product-page .leaderline_item.leaderline_item_active small,
body .sim-product-page .leaderline_item.leaderline_item_active .j_prod_description,
body .sim-product-page .leaderline_item.leaderline_item_active .j_prod_description .icon,
body .sim-product-page .leaderline_item.leaderline_item_active .j_prod_description .mdi {
    color: var(--color-bg-white) !important;
}

body .sim-product-page .leaderline_item__btn_action {
    margin-top: 8px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

body .sim-product-page .j_prod_description .icon {
    font-size: 15px !important;
}

body .sim-product-page .j_product_included_in_any_plan_icon {
    width: 28px !important;
    height: 28px !important;
    line-height: 28px !important;
    text-align: center !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    border-radius: 999px !important;
    background: var(--color-bg-white) !important;
    box-shadow: 0 6px 16px var(--color-black-alpha-08) !important;
    color: var(--color-primary) !important;
}

body .sim-product-page .sim-product-notes {
    margin: 18px 0 0 !important;
    padding: 16px 18px !important;
}

body .sim-product-page .sim-product-notes > .col-md-12.mt-5,
body .sim-product-page .sim-product-actions > .col-md-12.mt-5 {
    margin-top: 0 !important;
}

body .sim-product-page .sim-product-notes .j_obs_simulation__view {
    margin-top: 0 !important;
}

body .sim-product-page .sim-product-notes .j_obs_simulation__add {
    width: 100% !important;
    min-height: 170px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-lg) !important;
    padding: 14px 16px !important;
    background: var(--color-bg-white) !important;
}

body .sim-product-page .sim-product-actions {
    margin: 18px 0 0 !important;
    padding-top: 18px !important;
    border-top: 1px solid var(--color-border-soft);
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

body .sim-product-page .sim-product-actions .btn {
    min-width: 160px;
}

@media (max-width: 991.98px) {
    body .sim-diagnosis-shell > .card-body,
    body .sim-product-shell > .card-body {
        padding: 18px 16px 20px !important;
    }

    body .sim-diagnosis-page .sim-diagnosis-panels,
    body .sim-product-page .leaderline_container {
        grid-template-columns: minmax(0, 1fr);
    }

    body .sim-diagnosis-page .sim-diagnosis-actions,
    body .sim-product-page .sim-product-actions,
    body .sim-product-page .sim-product-toolbar {
        justify-content: flex-start !important;
    }

    body .sim-diagnosis-page .sim-diagnosis-actions .btn,
    body .sim-product-page .sim-product-actions .btn {
        width: 100%;
        min-width: 0;
    }

    body .sim-product-page .sim-product-map-header {
        flex-direction: column;
        align-items: stretch;
    }

    body .sim-product-page .sim-product-map-header > div:last-child {
        text-align: left !important;
    }
}

@supports selector(.card:has(.j_contract_container__grapesjs)) {
    body .card.card-border-color.card-border-color-primary:has(.j_contract_container__grapesjs) {
        border: 1px solid var(--color-border) !important;
        border-radius: var(--radius-xl) !important;
        box-shadow: var(--shadow-md) !important;
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    }

    body .card.card-border-color.card-border-color-primary:has(.j_contract_container__grapesjs) > .card-body {
        padding-top: 20px !important;
    }
}

@supports selector(.alert:has(.j_show_all_tags)) {
    body .alert.text-dark:has(.j_show_all_tags) {
        border: 1px solid var(--color-border) !important;
        border-radius: var(--radius-lg) !important;
        background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
        box-shadow: var(--shadow-sm) !important;
        padding: 14px 14px 12px !important;
        margin: 0 0 18px 0 !important;
        position: relative !important;
    }
}

body .alert.text-dark .j_show_all_tags {
    margin-top: 12px;
}

body .alert.text-dark .j_show_all_tags .pl-5 {
    margin-top: 6px;
    padding: 10px 12px !important;
    border: 1px dashed var(--color-border-input);
    border-radius: var(--radius-md);
    background: var(--color-bg-white);
}

body .j_tbl_keys {
    width: calc(100% - 12px) !important;
    margin-left: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 8px !important;
    display: block !important;
    overflow: visible !important;
    max-height: none;
    transition: max-height 0.2s ease;
}

body .alert.text-dark:has(.j_show_all_keys) .j_tbl_keys {
    overflow: hidden !important;
    max-height: 50px;
}

body .j_contract_tags_full .j_show_all_tags,
body .j_tbl_keys--full {
    max-height: none !important;
    overflow: visible !important;
}

body .j_tbl_keys td {
    background: var(--color-bg-white);
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
    padding: 10px 12px;
    line-height: 1.35;
    color: var(--color-text);
}

body .j_tbl_keys tr td:first-child {
    border-left: 1px solid var(--color-border);
    border-top-left-radius: var(--radius-md);
    border-bottom-left-radius: var(--radius-md);
}

body .j_tbl_keys tr td:last-child {
    border-right: 1px solid var(--color-border);
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
}

body .j_tbl_keys .mdi-copy {
    color: var(--color-accent-mid) !important;
    transition: var(--transition-fast) !important;
}

body .j_tbl_keys .mdi-copy:hover {
    color: var(--color-primary) !important;
    transform: scale(1.08);
}

body .j_show_all_keys,
body .j_hide_all_keys {
    min-height: 32px !important;
    border-radius: var(--radius-pill) !important;
    padding: 6px 14px !important;
    font-size: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px;
}

body .j_show_all_keys i,
body .j_hide_all_keys i {
    margin: 0 !important;
}

@supports selector(.alert:has(.j_show_all_keys)) {
    body .alert.text-dark:has(.j_show_all_keys) .j_show_all_tags {
        max-height: 1px !important;
        overflow: hidden !important;
    }
}

@supports selector(.alert:has(.j_hide_all_keys)) {
    body .alert.text-dark:has(.j_hide_all_keys) .j_show_all_tags {
        max-height: 100% !important;
        overflow: visible !important;
    }

    body .alert.text-dark:has(.j_hide_all_keys) .j_tbl_keys {
        max-height: 100% !important;
        overflow: visible !important;
    }
}

@supports selector(.col-md-12.text-right:has(.j_help_grapejs)) {
    body .j_frm_default .col-md-12.text-right:has(.j_help_grapejs) {
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    body .j_frm_default .col-md-12.text-right:has(.j_help_grapejs) .d-inline-block {
        margin-bottom: 0 !important;
    }
}

@supports selector(.input-group:has(.j_update_contract_name)) {
    body .j_frm_default .input-group:has(.j_update_contract_name) #name {
        border: 1px solid var(--color-border-input) !important;
        border-right: none !important;
        border-radius: var(--radius-lg) 0 0 var(--radius-lg) !important;
        box-shadow: none !important;
        font-size: var(--font-size-md) !important;
        color: var(--color-text) !important;
    }

    body .j_frm_default .input-group:has(.j_update_contract_name) #name:focus {
        border-color: var(--color-accent-mid) !important;
        box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    }

    body .j_frm_default .input-group:has(.j_update_contract_name) .j_update_contract_name {
        min-height: 50px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
        border-radius: 0 var(--radius-lg) var(--radius-lg) 0 !important;
        border-left: none !important;
    }
}

body .j_contract_container__grapesjs {
    margin-top: 20px !important;
    margin-bottom: 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body .j_contract_container__grapesjs .j_contract_grapesjs__editbymodal {
    min-height: 46px !important;
    border-radius: var(--radius-pill) !important;
    font-size: var(--font-size-md) !important;
    font-weight: var(--font-weight-medium) !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    justify-content: center !important;
    border: 1px solid var(--color-accent-mid) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
    box-shadow: var(--shadow-sm) !important;
    transition: var(--transition-base) !important;
}

body .j_contract_container__grapesjs .j_contract_grapesjs__editbymodal:hover,
body .j_contract_container__grapesjs .j_contract_grapesjs__editbymodal:focus {
    transform: translateY(-1px);
    background: linear-gradient(135deg, var(--color-primary-hover), var(--color-accent-mid)) !important;
    border-color: var(--color-primary-hover) !important;
    box-shadow: var(--shadow-md) !important;
}

/* [4C-IA | 2026-04-28 | css-override | UI-MODERN]
   Motivo: modernizar a barra de acoes do editor de contrato/proposta em iframe
   com botões em pill, padding maior e shell visual unificado.
*/
body .conprop_stage__controls {
    top: 12px !important;
    left: 12px !important;
    padding: 0 !important;
    background: transparent !important;
    z-index: 103 !important;
    pointer-events: none !important;
}

body .conprop_stage__controls__buttons {
    pointer-events: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 2px !important;
    background: transparent !important;
}

body .conprop_stage__controls__buttons > .btn,
body .conprop_stage__controls__buttons > a.btn,
body .conprop_stage__controls__buttons > button.btn,
body .conprop_stage__controls__buttons > .dropdown > .btn,
body .conprop_stage__controls__buttons > .btn-group > .btn,
body .conprop_stage__controls__buttons > select.btn {
    padding: 4px !important;
    border-radius: var(--radius-md) !important;
    border: 1px solid var(--color-border-input) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    box-shadow: 0 2px 8px var(--color-black-alpha-06) !important;
    font-size: 8px !important;
    font-weight: var(--font-weight-medium) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    transition: var(--transition-base) !important;
}


body .conprop_stage__controls__buttons > .btn:hover,
body .conprop_stage__controls__buttons > a.btn:hover,
body .conprop_stage__controls__buttons > button.btn:hover,
body .conprop_stage__controls__buttons > .dropdown > .btn:hover,
body .conprop_stage__controls__buttons > .btn-group > .btn:hover,
body .conprop_stage__controls__buttons > select.btn:hover,
body .conprop_stage__controls__buttons > .btn:focus,
body .conprop_stage__controls__buttons > a.btn:focus,
body .conprop_stage__controls__buttons > button.btn:focus,
body .conprop_stage__controls__buttons > .dropdown > .btn:focus,
body .conprop_stage__controls__buttons > .btn-group > .btn:focus,
body .conprop_stage__controls__buttons > select.btn:focus {
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-surface-alt) 100%) !important;
    border-color: var(--color-accent-mid) !important;
    color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
    transform: translateY(-1px);
}

body .conprop_stage__controls__buttons > .btn.btn-danger,
body .conprop_stage__controls__buttons > a.btn.btn-danger,
body .conprop_stage__controls__buttons > button.btn.btn-danger {
    border-color: var(--color-danger-soft) !important;
    background: linear-gradient(135deg, var(--color-danger-soft), var(--color-danger)) !important;
    color: var(--color-bg-white) !important;
}

body .conprop_stage__controls__buttons > .btn.btn-danger:hover,
body .conprop_stage__controls__buttons > a.btn.btn-danger:hover,
body .conprop_stage__controls__buttons > button.btn.btn-danger:hover {
    color: var(--color-bg-white) !important;
    box-shadow: 0 10px 22px var(--color-black-alpha-14) !important;
}

body .conprop_stage__controls__buttons .btn .icon,
body .conprop_stage__controls__buttons .btn i,
body .conprop_stage__controls__buttons .dropdown > .btn .icon,
body .conprop_stage__controls__buttons .dropdown > .btn i,
body .conprop_stage__controls__buttons select.btn {
    font-size: 13px !important;
    line-height: 1 !important;
}

body .conprop_stage__controls__buttons select.btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

body .conprop_stage__controls__buttons .dropdown > .btn .icon-dropdown,
body .conprop_stage__controls__buttons .dropdown > .btn .mdi-chevron-down {
    font-size: 12px !important;
    margin-left: 2px !important;
}

body .conprop_stage__controls__buttons > .btn + .btn,
body .conprop_stage__controls__buttons > .btn + .dropdown,
body .conprop_stage__controls__buttons > .dropdown + .btn,
body .conprop_stage__controls__buttons > .dropdown + .dropdown {
    margin-left: 0 !important;
}

@media (max-width: 767px) {
    @supports selector(.input-group:has(.j_update_contract_name)) {
        body .j_frm_default .input-group:has(.j_update_contract_name) {
            flex-direction: column !important;
            border-radius: var(--radius-lg);
        }

        body .j_frm_default .input-group:has(.j_update_contract_name) #name {
            border-right: 1px solid var(--color-border-input) !important;
            border-radius: var(--radius-lg) !important;
            width: 100% !important;
        }

        body .j_frm_default .input-group:has(.j_update_contract_name) .input-group-append {
            width: 100% !important;
            margin-top: 8px !important;
        }

        body .j_frm_default .input-group:has(.j_update_contract_name) .j_update_contract_name {
            width: 100% !important;
            border-left: 1px solid var(--color-accent-mid) !important;
            border-radius: var(--radius-lg) !important;
        }
    }

    body .j_tbl_keys td {
        padding: 9px 10px;
        font-size: 12px;
    }

    body .alert.text-dark .j_show_all_tags .pl-5 {
        padding: 8px 10px !important;
    }
}

/* [4C-IA | 2026-05-07 | css-18 | UI-MODERN]
   Compacta globalmente os modais hModal de duas ações para liberar mais espaço ao conteúdo.
*/
body .custom-modal-delete {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px !important;
    background-color: var(--color-black-alpha-20) !important;
    backdrop-filter: blur(2px);
}

body .custom-modal-delete .custom-modal-delete-content,
body .custom-modal-delete .custom-modal-delete-content-without-max-width {
    width: min(100%, 520px) !important;
    max-width: 520px !important;
    margin: 0 !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-xl) !important;
    background: linear-gradient(180deg, var(--color-bg-white) 0%, var(--color-bg-hover) 100%) !important;
    box-shadow: var(--shadow-lg) !important;
    overflow: hidden !important;
    font-size: 15px !important;
}

body .custom-modal-delete .custom-modal-delete-container {
    padding: 16px 18px 12px !important;
    text-align: center !important;
    color: var(--color-text) !important;
}

body .custom-modal-delete .custom-modal-delete-header {
    margin: 0 0 8px !important;
    font-size: 21px !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
    color: var(--color-text-strong) !important;
    text-transform: uppercase !important;
}

body .custom-modal-delete .custom-modal-delete-container > p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    color: var(--color-text) !important;
}

body .custom-modal-delete .custom-modal-delete-separate {
    display: block !important;
    height: 10px !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix::after {
    display: none !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-cancel {
    float: none !important;
    width: 100% !important;
    min-height: 34px !important;
    margin: 0 !important;
    border: 1px solid transparent !important;
    border-radius: var(--radius-md) !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: var(--font-weight-medium) !important;
    letter-spacing: 0.01em !important;
    transition: var(--transition-base) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
    border-color: var(--color-accent-mid) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-cancel {
    color: var(--color-text-strong) !important;
    background: linear-gradient(135deg, var(--color-bg-white), var(--color-bg-hover)) !important;
    border-color: var(--color-border-input) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm.btn-success,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm.success,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action.btn-success,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action.success {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success-soft) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm.btn-danger,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm.danger,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action.btn-danger,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action.danger {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-danger-soft), var(--color-danger)) !important;
    border-color: var(--color-danger-soft) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm:hover,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action:hover,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-cancel:hover {
    transform: translateY(-1px);
    box-shadow: var(--shadow-md) !important;
}

body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm:focus,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action:focus,
body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-cancel:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary), var(--shadow-md) !important;
}

@media (max-width: 767px) {
    body .custom-modal-delete {
        padding: 12px !important;
    }

    body .custom-modal-delete .custom-modal-delete-content,
    body .custom-modal-delete .custom-modal-delete-content-without-max-width {
        width: 100% !important;
    }

    body .custom-modal-delete .custom-modal-delete-container {
        padding: 12px 12px 10px !important;
    }

    body .custom-modal-delete .custom-modal-delete-header {
        font-size: 18px !important;
    }

    body .custom-modal-delete .custom-modal-delete-container > p {
        font-size: 14px !important;
    }

    body .custom-modal-delete .custom-modal-delete-clearfix-dual {
        grid-template-columns: 1fr !important;
    }

    body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm,
    body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-confirm-without-action,
    body .custom-modal-delete .custom-modal-delete-clearfix-dual .custom-modal-delete-btn-cancel {
        min-height: 32px !important;
        padding: 5px 8px !important;
        font-size: 11px !important;
    }
}

/* Motivo: substituir os quadrados do loader global por spinner circular moderno
   mantendo os mesmos containers e backgrounds legados.
*/
body #loader .sk-cube-grid,
body #loader-transparent .sk-cube-grid,
body #loader-master .sk-cube-grid,
body #min-loader .sk-cube-grid {
    width: 42px !important;
    height: 42px !important;
    margin-top: -40px !important;
    display: block !important;
    animation: none !important;
}

body #min-loader .sk-cube-grid {
    width: 28px !important;
    height: 28px !important;
    margin-top: -20px !important;
}

body #loader .sk-cube-grid::before,
body #loader-transparent .sk-cube-grid::before,
body #loader-master .sk-cube-grid::before,
body #min-loader .sk-cube-grid::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid var(--color-border-input);
    border-top-color: var(--color-primary);
    border-right-color: var(--color-primary);
    animation: hLoaderSpinnerRotate 0.75s linear infinite;
}

body #loader .sk-cube-grid .sk-cube,
body #loader-transparent .sk-cube-grid .sk-cube,
body #loader-master .sk-cube-grid .sk-cube,
body #min-loader .sk-cube-grid .sk-cube {
    display: none !important;
    animation: none !important;
}

@keyframes hLoaderSpinnerRotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Motivo: modernizar a tela de visualizacao de negocio no funil sem tocar
   em Blade, reforcando hierarquia no header, paineis laterais e abas.
*/
body .page-head:has(.j_card_title_span) {
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 8px 10px !important;
    padding: 10px 12px !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-lg) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body .page-head:has(.j_card_title_span) > .float-left {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    flex: 1 1 420px !important;
    min-width: 0 !important;
}

body .page-head:has(.j_card_title_span) > .btn.float-right:first-of-type {
    margin-left: auto !important;
}

body .page-head:has(.j_card_title_span) > .btn.float-right,
body .page-head:has(.j_card_title_span) > .j_card_win_label,
body .page-head:has(.j_card_title_span) > .j_card_loss_label {
    float: none !important;
}

body .j_activity_created_box { 
    background: none !important;
}

body .page-head:has(.j_card_title_span) .page-head-nav {
    margin-bottom: 0 !important;
}

body .page-head:has(.j_card_title_span) .page-head-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin-bottom: 0 !important;
    color: var(--color-text-strong) !important;
    font-size: clamp(18px, 1.4vw, 22px) !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
}

body .page-head:has(.j_card_title_span) .page-head-title > .icon.ri-external-link-line {
    display: none !important;
}

body .page-head:has(.j_card_title_span) .page-head-nav .breadcrumb-item {
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    color: var(--color-text-muted) !important;
}

body .page-head:has(.j_card_title_span) .page-head-nav .breadcrumb-item .fa {
    opacity: 0.65 !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_span {
    display: inline-flex !important;
    align-items: center !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_btn_edit {
    margin-left: 2px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    border-radius: var(--radius-md) !important;
    opacity: 0.4 !important;
    transition: opacity var(--transition-fast) !important;
}

body .page-head:has(.j_card_title_span) .page-head-title:hover .j_card_title_btn_edit {
    opacity: 1 !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_edit_group {
    display: none !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    max-width: 100% !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_edit_group:has(.j_card_title_input[type="text"]) {
    display: inline-flex !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save {
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: var(--radius-md) !important;
    box-shadow: none !important;
    flex: 0 0 32px !important;
    opacity: 1 !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save[style*="display: block"],
body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save[style*="display:block"] {
    display: inline-flex !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save i,
body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save .mdi,
body .page-head:has(.j_card_title_span) .j_card_title_btn_edit_save .mdi::before {
    display: block !important;
    font-size: 16px !important;
    line-height: 1 !important;
    color: var(--color-bg-white) !important;
    -webkit-text-fill-color: var(--color-bg-white) !important;
    margin: 0 !important;
    opacity: 1 !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_input {
    width: min(100%, 520px) !important;
    max-width: 100% !important;
    min-height: 38px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    padding: 0 12px !important;
    box-shadow: none !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_edit_group .j_card_title_input[type="text"] {
    flex: 1 1 auto !important;
    width: min(100%, 480px) !important;
    min-width: 200px !important;
    margin: 0 !important;
}

body .page-head:has(.j_card_title_span) .j_card_title_input:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

body .page-head:has(.j_card_title_span) .d-block.text-muted.fs-10px {
    color: var(--color-text-neutral-soft) !important;
    font-size: 12px !important;
    letter-spacing: 0.01em !important;
}

body .page-head:has(.j_card_title_span) > .btn.float-right.j_card_histories_modal,
body .page-head:has(.j_card_title_span) > a.btn.float-right {
    min-height: 32px !important;
    padding: 0 12px !important;
    border-radius: var(--radius-md) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    color: var(--color-text-strong) !important;
}

body .page-head:has(.j_card_title_span) .j_card_set_win,
body .page-head:has(.j_card_title_span) .j_card_set_loss {
    color: var(--color-bg-white) !important;
}

body .page-head:has(.j_card_title_span) .j_card_set_win,
body .page-head:has(.j_card_title_span) .j_card_set_loss {
    min-height: 36px !important;
    padding: 0 14px !important;
    border-radius: var(--radius-md) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
}

body .page-head:has(.j_card_title_span) .j_card_set_win {
    box-shadow: none !important;
}

body .page-head:has(.j_card_title_span) .j_card_set_loss {
    box-shadow: none !important;
}

body .page-head:has(.j_card_title_span) .j_card_win_label,
body .page-head:has(.j_card_title_span) .j_card_loss_label {
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 36px !important;
    margin-left: 8px !important;
    padding: 0 12px !important;
    border-radius: var(--radius-md) !important;
    border: 1px solid transparent !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
}

body .page-head:has(.j_card_title_span) .j_card_win_label:not([style*="display:none"]),
body .page-head:has(.j_card_title_span) .j_card_loss_label:not([style*="display:none"]) {
    display: inline-flex !important;
}

body .page-head:has(.j_card_title_span) .j_card_win_label {
    color: var(--color-success) !important;
    background: var(--color-bg-hover) !important;
    border-color: var(--color-success-soft) !important;
}

body .page-head:has(.j_card_title_span) .j_card_loss_label {
    color: var(--color-danger) !important;
    background: var(--color-danger-alpha-08) !important;
    border-color: var(--color-danger-soft) !important;
}

body:has(.page-head:has(.j_card_title_span)) .main-content > .d-block.text-muted.fs-10px.text-center {
    margin: 0 0 8px !important;
    padding: 4px 6px !important;
    font-size: 11px !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: var(--color-text-muted) !important;
    background: transparent !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-inlin {
    margin-bottom: 12px !important;
    padding: 0 !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-steps {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-step {
    padding: 4px 10px !important;
    margin: 0 !important;
    border-radius: var(--radius-sm) !important;
    background: transparent !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-step::before,
body:has(.page-head:has(.j_card_title_span)) .wizard-step::after {
    display: none !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-step.active {
    background: var(--color-accent-light) !important;
}

body:has(.page-head:has(.j_card_title_span)) .wizard-step a {
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    text-decoration: none !important;
}

body .card.card-table:has(.tab-container) {
    padding: 8px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-lg) !important;
    background: var(--color-bg-white) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body .card.card-table:has(.tab-container) > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body .card.card-table:has(.tab-container) > .row > [class*="col-"] {
    padding-left: 6px !important;
    padding-right: 6px !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion > .card,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_add_tag_container,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_tab_target,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_add_tag {
    border: none !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header {
    margin-bottom: 6px !important;
    padding: 0 !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 #collapseResume .card-body > p,
body .card.card-table:has(.tab-container) > .row > .col-md-4 #collapseResume .card-body > div.p-0.m-0,
body .card.card-table:has(.tab-container) > .row > .col-md-4 #collapseResume .card-body > div.p-0.m-0.mt-1 {
    border-bottom: none !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_tab_tag_choice_box {
    border-bottom: none !important;
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_card_owner_edit_select,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_input_card_edit__sdr,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_input_card_edit__indicated_by,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_input_card_edit__origin,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_input_card_edit__temperature,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .j_add_tag_box input {
    border: none !important;
    box-shadow: none !important;
    background: var(--color-bg-page) !important;
}

body .card.card-table:has(.tab-container) .accordion > .card {
    margin-bottom: 6px !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    box-shadow: none !important;
    background: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-8 .accordion > .card {
    border: 1px solid var(--color-border-soft) !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion > .card {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-8 .accordion .card-header {
    padding: 0 !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
}

body .card.card-table:has(.tab-container) .accordion .card-header .btn {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    padding: 8px 10px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--color-text-strong) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: left !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header .btn,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header .btn:hover,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header .btn:focus,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header .btn.focus,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-header .btn:active {
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    outline: none !important;
}

body .card.card-table:has(.tab-container) .accordion .card-header .btn .icon,
body .card.card-table:has(.tab-container) .accordion .card-header .btn i {
    color: var(--color-accent-mid) !important;
    font-size: 16px !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .accordion .card-body {
    padding: 8px 10px 10px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) .accordion .card-body {
    padding: 8px 10px 10px !important;
    background: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) > .row > .col-md-4 .card-body.pt-2,
body .card.card-table:has(.tab-container) > .row > .col-md-4 .card-body.py-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body > p,
body .card.card-table:has(.tab-container) #collapseResume .card-body > div.p-0.m-0,
body .card.card-table:has(.tab-container) #collapseResume .card-body > div.p-0.m-0.mt-1 {
    padding: 5px 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body > hr {
    margin: 10px 0 !important;
    border-color: var(--color-border-soft) !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body > p > span:not(.btn) .mdi,
body .card.card-table:has(.tab-container) #collapseResume .card-body > p > span:not(.btn) .fa,
body .card.card-table:has(.tab-container) #collapseResume .card-body > div.p-0.m-0 > .mdi:first-child,
body .card.card-table:has(.tab-container) #collapseResume .card-body > div.p-0.m-0 > .fa:first-child,
body .card.card-table:has(.tab-container) #collapseResume .card-body > div.p-0.m-0.mt-1 > .mdi:first-child {
    color: var(--color-text-muted) !important;
    opacity: 0.75 !important;
}

body .card.card-table:has(.tab-container) .btn-success i,
body .card.card-table:has(.tab-container) .btn-success .mdi,
body .card.card-table:has(.tab-container) .btn-success .mdi::before,
body .card.card-table:has(.tab-container) .btn-danger i,
body .card.card-table:has(.tab-container) .btn-danger .mdi,
body .card.card-table:has(.tab-container) .btn-danger .mdi::before,
body .card.card-table:has(.tab-container) .j_card_value_edit_btn_save i,
body .card.card-table:has(.tab-container) .j_card_value_edit_btn_save .mdi,
body .card.card-table:has(.tab-container) .j_card_value_edit_btn_save .mdi::before,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__sdr i,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__sdr .mdi,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__sdr .mdi::before,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__indicated_by i,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__indicated_by .mdi,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__indicated_by .mdi::before,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__origin i,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__origin .mdi,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__origin .mdi::before,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__temperature i,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__temperature .mdi,
body .card.card-table:has(.tab-container) .j_btn_save_card_edit__temperature .mdi::before,
body .card.card-table:has(.tab-container) .j_add_tag_box .btn i,
body .card.card-table:has(.tab-container) .j_add_tag_box .btn .mdi,
body .card.card-table:has(.tab-container) .j_add_tag_box .btn .mdi::before,
body .page-head:has(.j_card_title_span) .btn-success i,
body .page-head:has(.j_card_title_span) .btn-success .mdi,
body .page-head:has(.j_card_title_span) .btn-success .mdi::before,
body .page-head:has(.j_card_title_span) .btn-danger i,
body .page-head:has(.j_card_title_span) .btn-danger .mdi,
body .page-head:has(.j_card_title_span) .btn-danger .mdi::before {
    color: var(--color-bg-white) !important;
    opacity: 1 !important;
    margin: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container {
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    min-height: 100% !important;
}

body .j_payments_to_4c_page .tab-container {
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-xl) !important;
    background: var(--color-bg-white) !important;
    box-shadow: var(--shadow-sm) !important;
    overflow: hidden !important;
}

body .j_payments_to_4c_page .tab-container .nav.nav-tabs {
    margin: 0 !important;
    padding: 6px 8px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-page) !important;
}

body .j_payments_to_4c_page .tab-container .nav.nav-tabs .nav-link {
    border-radius: var(--radius-md) !important;
    padding: 6px 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--color-text-strong) !important;
}

body .j_payments_to_4c_page .tab-container .nav.nav-tabs .nav-link.active {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-hover)) !important;
    color: var(--color-bg-white) !important;
    border-color: transparent !important;
}

body .j_payments_to_4c_page .tab-container .nav.nav-tabs .nav-link.active i {
    color: var(--color-bg-white) !important;
}

body .j_payments_to_4c_page .tab-container .tab-content {
    padding: 10px !important;
}

/* Motivo: a tela de negocio no funil precisa permitir scroll livre no card,
   sem herdar o overflow hidden do shell moderno de tabs.
*/
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) > .row,
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) > .row > [class*="col-"] {
    min-height: 0 !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) .tab-container {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) .tab-container .tab-content,
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) .tab-container .tab-pane,
body .main-content:has(.page-head:has(.j_card_title_span)) .card.card-table:has(.tab-container) .accordion > .card {
    max-height: none !important;
    overflow: visible !important;
}

body:has(.page-head:has(.j_card_title_span)),
body:has(.page-head:has(.j_card_title_span)) .be-wrapper,
body:has(.page-head:has(.j_card_title_span)) .be-content,
body:has(.page-head:has(.j_card_title_span)) .main-content {
    height: auto !important;
    min-height: 100vh !important;
    max-height: none !important;
    overflow-y: visible !important;
    overflow-x: hidden !important;
}

body:has(.page-head:has(.j_card_title_span)) .main-content {
    display: block !important;
}

body:has(.page-head:has(.j_card_title_span)) .main-content > .row {
    display: block !important;
    min-height: 0 !important;
}

body:has(.page-head:has(.j_card_title_span)) .main-content > .row > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
}

body:has(.j_card_title_span) .main-content,
body:has(.j_card_title_span) .be-content,
body:has(.j_card_title_span) .be-wrapper {
    height: auto !important;
    min-height: 100vh !important;
    max-height: none !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
}

body:has(.j_card_title_span) .main-content:has(.card.card-table table),
body:has(.j_card_title_span) .main-content:has(.card.card-table .table-responsive) {
    height: auto !important;
    min-height: 100vh !important;
    max-height: none !important;
    overflow: visible !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-page) !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-item {
    margin-bottom: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-link {
    margin-bottom: 0 !important;
    border: 1px solid transparent !important;
    border-radius: var(--radius-md) !important;
    padding: 6px 10px !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    transition: var(--transition-fast) !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-link i {
    margin-right: 4px !important;
    opacity: 0.8 !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-link:hover {
    border-color: var(--color-accent-alpha-35) !important;
    color: var(--color-primary) !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-link.active {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-hover)) !important;
    border-color: transparent !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) .tab-container .nav.nav-tabs .nav-link.active i {
    color: var(--color-bg-white) !important;
    opacity: 1 !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-content {
    padding: 10px !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane > .row:first-child {
    align-items: stretch !important;
    gap: 12px !important;
}

body .j_card_value_edit_desc {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 32px !important;
    margin-right: 4px !important;
    color: var(--color-text-strong) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

/* Motivo: exibir botões de confirmação apenas durante a edição e manter o
   toggle da temperatura alinhado ao estado real do campo.
*/
body .j_card_value_edit_btn,
body .j_card_value_edit_btn_save {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    margin-left: 4px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    opacity: 0.4 !important;
    transition: opacity var(--transition-fast) !important;
}

body .j_card_value_edit_input[type="text"] ~ .j_card_value_edit_btn_save,
body .j_input_card_edit__sdr[type="text"] ~ .j_btn_save_card_edit__sdr,
body .j_input_card_edit__indicated_by[type="text"] ~ .j_btn_save_card_edit__indicated_by,
body .j_input_card_edit__origin[type="text"] ~ .j_btn_save_card_edit__origin,
body .j_input_card_edit__temperature:not([style*="display: none"]):not([style*="display:none"]) ~ .j_btn_save_card_edit__temperature {
    opacity: 1 !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body:hover .j_card_value_edit_btn,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_edit__sdr,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_edit__indicated_by,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_edit__origin,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_edit__temperature,
body .card.card-table:has(.tab-container) #collapseCustomer .card-body:hover .j_btn_edit_customer {
    opacity: 1 !important;
}

body .j_card_value_edit_btn {
    color: var(--color-accent-mid) !important;
    background: var(--color-accent-light) !important;
    border: none !important;
}

body .j_card_value_edit_btn:hover {
    color: var(--color-bg-white) !important;
    background: linear-gradient(135deg, var(--color-accent-mid), var(--color-accent)) !important;
}

body .j_card_value_edit_btn_save {
    display: none !important;
    color: var(--color-bg-white) !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    text-shadow: none !important;
}

body .j_card_value_edit_btn_save.btn-success {
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
}

body .j_card_value_edit_input[type="text"] ~ .j_card_value_edit_btn_save {
    display: inline-flex !important;
}

body .j_card_value_edit_input {
    display: inline-flex !important;
    align-items: center !important;
    width: min(100%, 160px) !important;
    min-width: 140px !important;
    height: 32px !important;
    padding: 0 8px !important;
    margin-right: 4px !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .j_card_value_edit_input:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

body .j_card_owner_edit_select {
    width: min(100%, 220px) !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .j_card_owner_edit_select:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

body .j_desc_card_edit__sdr,
body .j_desc_card_edit__indicated_by,
body .j_desc_card_edit__origin,
body .j_desc_container_card_edit__temperature,
body .j_desc_card_edit__temperature {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    min-height: 24px !important;
    margin-right: 4px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: var(--color-text-strong) !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body > p > span.text-uppercase {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body > p > span.text-uppercase .fa,
body .card.card-table:has(.tab-container) #collapseResume .card-body > p > span.text-uppercase .mdi {
    font-size: 12px !important;
    line-height: 1 !important;
}

body .j_btn_card_add__sdr,
body .j_btn_card_add__indicated_by,
body .j_btn_card_add__origin {
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    margin-left: 2px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    opacity: 0.4 !important;
    transition: opacity var(--transition-fast) !important;
    color: var(--color-success) !important;
}

body .j_btn_card_add__sdr:not([style*="display: none"]):not([style*="display:none"]),
body .j_btn_card_add__indicated_by:not([style*="display: none"]):not([style*="display:none"]),
body .j_btn_card_add__origin:not([style*="display: none"]):not([style*="display:none"]) {
    display: inline-flex !important;
}

body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_add__sdr,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_add__indicated_by,
body .card.card-table:has(.tab-container) #collapseResume .card-body p:hover .j_btn_card_add__origin {
    opacity: 1 !important;
}

body .j_btn_card_add__sdr.btn-link,
body .j_btn_card_add__indicated_by.btn-link,
body .j_btn_card_add__origin.btn-link {
    background: transparent !important;
    border: none !important;
    color: var(--color-success) !important;
}

body .j_inline_add_form__sdr,
body .j_inline_add_form__indicated_by,
body .j_inline_add_form__origin {
    align-items: center !important;
    gap: 4px !important;
    vertical-align: middle !important;
}

body .j_inline_add_form__sdr:not([style*="display: none"]):not([style*="display:none"]),
body .j_inline_add_form__indicated_by:not([style*="display: none"]):not([style*="display:none"]),
body .j_inline_add_form__origin:not([style*="display: none"]):not([style*="display:none"]) {
    display: inline-flex !important;
}

body .j_inline_add_input__sdr,
body .j_inline_add_input__indicated_by,
body .j_inline_add_input__origin {
    display: inline-flex !important;
    width: min(100%, 160px) !important;
    min-width: 120px !important;
    height: 28px !important;
    padding: 0 8px !important;
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    outline: none !important;
}

body .j_inline_add_input__sdr:focus,
body .j_inline_add_input__indicated_by:focus,
body .j_inline_add_input__origin:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 2px var(--color-focus-ring-primary) !important;
}

body .j_inline_add_confirm__sdr,
body .j_inline_add_confirm__indicated_by,
body .j_inline_add_confirm__origin {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
}

body .j_inline_add_cancel__sdr,
body .j_inline_add_cancel__indicated_by,
body .j_inline_add_cancel__origin {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-page) !important;
    border: 1px solid var(--color-border-soft) !important;
    color: var(--color-text-muted) !important;
    box-shadow: none !important;
}

body .j_btn_card_edit__sdr,
body .j_btn_card_edit__indicated_by,
body .j_btn_card_edit__origin,
body .j_btn_card_edit__temperature {
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    margin-left: 4px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    opacity: 0.4 !important;
    transition: opacity var(--transition-fast) !important;
}

body .j_btn_card_edit__sdr:not([style*="display: none"]):not([style*="display:none"]),
body .j_btn_card_edit__indicated_by:not([style*="display: none"]):not([style*="display:none"]),
body .j_btn_card_edit__origin:not([style*="display: none"]):not([style*="display:none"]),
body .j_btn_card_edit__temperature:not([style*="display: none"]):not([style*="display:none"]) {
    display: inline-flex !important;
}

body .j_btn_save_card_edit__sdr,
body .j_btn_save_card_edit__indicated_by,
body .j_btn_save_card_edit__origin,
body .j_btn_save_card_edit__temperature {
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    margin-left: 4px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    vertical-align: middle !important;
    box-shadow: none !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
}

body .j_btn_card_edit__sdr.btn-link,
body .j_btn_card_edit__indicated_by.btn-link,
body .j_btn_card_edit__origin.btn-link,
body .j_btn_card_edit__temperature.btn-link,
body .card.card-table:has(.tab-container) .btn-link.j_btn_edit_customer {
    background: transparent !important;
    border: none !important;
    color: var(--color-accent-mid) !important;
}

body .j_input_card_edit__sdr[type="text"] ~ .j_btn_save_card_edit__sdr,
body .j_input_card_edit__indicated_by[type="text"] ~ .j_btn_save_card_edit__indicated_by,
body .j_input_card_edit__origin[type="text"] ~ .j_btn_save_card_edit__origin {
    display: inline-flex !important;
}

body .j_input_card_edit__sdr,
body .j_input_card_edit__indicated_by,
body .j_input_card_edit__origin {
    align-items: center !important;
    width: min(100%, 220px) !important;
    min-width: 180px !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    margin: 0 4px 0 0 !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .j_input_card_edit__sdr:not([style*="display: none"]):not([style*="display:none"]),
body .j_input_card_edit__indicated_by:not([style*="display: none"]):not([style*="display:none"]),
body .j_input_card_edit__origin:not([style*="display: none"]):not([style*="display:none"]) {
    display: inline-flex !important;
}

body .j_input_card_edit__sdr:not([style*="display: none"]):not([style*="display:none"]) ~ .j_btn_save_card_edit__sdr,
body .j_input_card_edit__indicated_by:not([style*="display: none"]):not([style*="display:none"]) ~ .j_btn_save_card_edit__indicated_by,
body .j_input_card_edit__origin:not([style*="display: none"]):not([style*="display:none"]) ~ .j_btn_save_card_edit__origin {
    display: inline-flex !important;
}

body .j_input_card_edit__temperature {
    width: min(100%, 220px) !important;
    min-width: 180px !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    margin: 0 4px 0 0 !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .j_input_card_edit__temperature:not([style*="display: none"]):not([style*="display:none"]) {
    display: inline-flex !important;
}

body .j_input_card_edit__temperature:not([style*="display: none"]):not([style*="display:none"]) ~ .j_btn_save_card_edit__temperature {
    display: inline-flex !important;
}

body .j_input_card_edit__sdr:focus,
body .j_input_card_edit__indicated_by:focus,
body .j_input_card_edit__origin:focus,
body .j_input_card_edit__temperature:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

/* Motivo: polir a area de etiquetas com tabs, fechamento e CTA mais alinhados.
*/
body .j_add_tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    min-height: 26px !important;
    margin-right: 4px !important;
    padding: 0 8px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-sm) !important;
    background: transparent !important;
    color: var(--color-text-strong) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

body .j_add_tag:hover {
    border-color: var(--color-border) !important;
    color: var(--color-primary) !important;
    background: var(--color-bg-hover) !important;
}

body .j_tag_area {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    vertical-align: middle !important;
}

body .j_tag_area .custom-badge {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    border-radius: var(--radius-sm) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    opacity: 0.92 !important;
}

body .j_add_tag_container {
    margin-top: 6px !important;
    padding: 10px 10px 8px !important;
    border: none !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-page) !important;
    box-shadow: none !important;
}

body .j_tab_tag_choice_box {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
}

body .j_tab_tag_choice {
    display: flex !important;
    min-width: 0 !important;
}

/* [4C-IA | 2026-05-05 | css-override | UI-MODERN]
Motivo: compactar os seletores de tipo de etiqueta dentro do modal do negocio.
*/
body .j_add_tag_label {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 0 8px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-sm) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transition: var(--transition-fast) !important;
}

body .j_add_tag_label:hover {
    border-color: var(--color-border) !important;
    background: var(--color-bg-hover) !important;
    color: var(--color-text-strong) !important;
    transform: none !important;
}

body .j_add_tag_label.j_active {
    border-color: var(--color-primary) !important;
    background: linear-gradient(135deg, var(--color-primary), var(--color-accent-mid)) !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
}

body .j_tab_target {
    padding: 8px !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    background: transparent !important;
}

body .j_tag_attach_ajax, body .j_tag_detach_ajax {
    margin-top: 8px !important;
    font-size: var(--font-size-xs) !important;
    padding: 6px !important;
    border-radius: var(--radius-pill) !important;
}

body .j_add_tag_container .text-right {
    margin: 0 0 6px !important;
    padding: 6px 8px 0 0 !important;
    line-height: 1 !important;
}

body .j_add_tag_container_close {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
    color: var(--color-text-muted) !important;
}

body .j_add_tag_container_close i,
body .j_add_tag_container_close .mdi,
body .j_add_tag_container_close .mdi::before {
    display: block !important;
    line-height: 1 !important;
    font-size: 16px !important;
    color: var(--color-text-muted) !important;
    -webkit-text-fill-color: var(--color-text-muted) !important;
    margin: 0 !important;
    opacity: 1 !important;
}

body .card.card-table:has(.tab-container) .btn-danger.j_add_tag_container_close > i,
body .card.card-table:has(.tab-container) .btn-danger.j_add_tag_container_close > i.mdi,
body .card.card-table:has(.tab-container) .btn-danger.j_add_tag_container_close > i.mdi::before {
    color: var(--color-text-muted) !important;
    -webkit-text-fill-color: var(--color-text-muted) !important;
}

body .btn.btn-danger.j_add_tag_container_close,
body .btn.btn-danger.j_add_tag_container_close:hover,
body .btn.btn-danger.j_add_tag_container_close:focus,
body .btn.btn-danger.j_add_tag_container_close:active {
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
    color: var(--color-text-muted) !important;
    box-shadow: none !important;
    transform: none !important;
}

body .j_add_tag_box {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
}

body .j_add_tag_box input {
    flex: 1 1 auto !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: 14px !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: inset 0 1px 2px var(--color-black-alpha-04) !important;
}

body .j_add_tag_box input:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

body .j_add_tag_box .btn {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    border-radius: var(--radius-sm) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
}

body .j_add_tag_box .btn i,
body .j_add_tag_box .btn .mdi,
body .j_add_tag_box .btn .mdi::before {
    display: block !important;
    line-height: 1 !important;
    font-size: 16px !important;
    color: var(--color-bg-white) !important;
    opacity: 1 !important;
}

body .j_add_tag_colors {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(28px, 1fr)) !important;
    gap: 8px !important;
    margin-top: 12px !important;
}

body .j_add_tag_colors .custom-color-default {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 999px !important;
    border: 2px solid rgba(255, 255, 255, 0.65) !important;
    box-shadow: 0 6px 14px var(--color-black-alpha-12) !important;
}

body .j_add_tag_colors .custom-color-default:hover {
    transform: translateY(-1px) scale(1.03) !important;
    box-shadow: 0 10px 20px var(--color-black-alpha-15) !important;
}

body .card.card-table:has(.tab-container) .tab-container textarea#note {
    min-height: 72px !important;
    padding: 8px 10px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    resize: vertical !important;
}

body .card.card-table:has(.tab-container) .tab-container textarea#note:focus {
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px var(--color-focus-ring-primary) !important;
    outline: none !important;
}

/* Motivo: organizar a aba de anotacoes com CTA, input e lista mais consistentes.
*/
body .card.card-table:has(.tab-container) .tab-container .j_btn_save_note {
    min-height: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: var(--radius-md) !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 6px !important;
    width: 100% !important;
    background-color: var(--color-success) !important;
    background-image: linear-gradient(135deg, var(--color-success-soft), var(--color-success)) !important;
    border-color: var(--color-success) !important;
    color: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_btn_save_note:hover {
    color: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_activities_create_btn_open,
body .card.card-table:has(.tab-container) #collapseDetails .j_pfields_btn_add {
    color: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_actions .btn {
    color: var(--color-text-strong) !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_btn_save_note i {
    display: block !important;
    margin: 0 !important;
    font-size: 18px !important;
    color: var(--color-bg-white) !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_btn_save_note:hover {
    transform: none !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    align-items: flex-end !important;
    margin-bottom: 10px !important;
}

/* [4C-IA | 2026-05-05 | css-override | UI-MODERN]
Motivo: manter o feedback de obrigatoriedade da anotacao em coluna abaixo do textarea.
*/
body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > [class*="col-"] {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > .col-md-10 {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    gap: 6px !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > .col-md-10 textarea#note {
    width: 100% !important;
    margin-bottom: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > .col-md-2 {
    display: flex !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    width: auto !important;
    align-items: flex-end !important;
    padding-left: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > .col-md-2 .j_btn_save_note {
    min-height: 40px !important;
    width: auto !important;
    min-width: 132px !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_container {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box {
    margin-bottom: 0 !important;
    padding: 0 !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    border: 1px solid var(--color-border-soft) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_icon {
    display: none !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_msg {
    flex: 1 1 auto !important;
    width: 100% !important;
    padding: 0 !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_date {
    display: block !important;
    margin: 0 !important;
    padding: 10px 12px 8px !important;
    width: 100% !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: var(--color-text-muted) !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-page) !important;
    white-space: nowrap !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_msg {
    display: block !important;
    margin: 0 !important;
    padding: 10px 12px 12px !important;
    width: 100% !important;
    font-size: 13px !important;
    color: var(--color-text-strong) !important;
    line-height: 1.45 !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_other {
    flex-direction: row !important;
    text-align: left !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_other .custom_note_date {
    text-align: right !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_actions .btn {
    min-height: 34px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
}

body .card.card-table:has(.tab-container) .tab-container .custom_note_box_actions .btn .icon,
body .card.card-table:has(.tab-container) .tab-container .custom_note_box_actions .btn i {
    margin-right: 4px !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes:not(.active):not(.show) {
    display: none !important;
}

body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes.active,
body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes.show {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_activities_container_btn .btn-toolbar {
    width: 100% !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_activities_container_btn .btn-group-justified {
    display: flex !important;
    width: 100% !important;
    gap: 8px !important;
}

body .card.card-table:has(.tab-container) .tab-container .j_activities_container_btn .btn-group-justified > .btn,
body .card.card-table:has(.tab-container) .tab-container .j_activities_container_btn .btn-group-justified > .btn-group {
    flex: 1 1 0 !important;
    margin: 0 !important;
}

body .card.card-table:has(.tab-container) #collapseDetails .j_pfields_btn_add,
body .card.card-table:has(.tab-container) #collapseCustomer .card-body .fs-11px {
    font-size: 11px !important;
}

body .card.card-table:has(.tab-container) #collapseDetails .j_pfields_btn_add {
    min-height: 28px !important;
    padding: 2px 8px !important;
    border-radius: var(--radius-sm) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .card.card-table:has(.tab-container) #collapseCustomer .card-body p {
    padding: 4px 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

body .card.card-table:has(.tab-container) #collapseCustomer .card-body hr {
    margin: 10px 0 !important;
    border-color: var(--color-border-soft) !important;
}

@media (max-width: 991.98px) {
    body .page-head:has(.j_card_title_span) {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 16px !important;
    }

    body .page-head:has(.j_card_title_span) > .float-left {
        width: 100% !important;
        flex-basis: 100% !important;
    }

    body .page-head:has(.j_card_title_span) > .btn.float-right:first-of-type {
        margin-left: 0 !important;
    }

    body .page-head:has(.j_card_title_span) .j_card_win_label,
    body .page-head:has(.j_card_title_span) .j_card_loss_label,
    body .page-head:has(.j_card_title_span) .j_card_set_win,
    body .page-head:has(.j_card_title_span) .j_card_set_loss {
        width: 100% !important;
        margin-left: 0 !important;
        justify-content: center !important;
    }

    body .card.card-table:has(.tab-container) {
        padding: 10px !important;
        border-radius: var(--radius-md) !important;
    }

    body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child {
        flex-direction: column !important;
    }

    body .card.card-table:has(.tab-container) .tab-container .tab-content {
        padding: 14px !important;
    }

    body .card.card-table:has(.tab-container) .tab-container .j_btn_save_note {
        min-height: 40px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    body .card.card-table:has(.tab-container) .tab-container .tab-pane#notes > .row:first-child > .col-md-2 {
        flex: 1 1 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

body .download-model-import-client { 
    display: inline-block !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 {
    align-items: flex-end !important;
    gap: 10px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > [class*="col-md-"]:not(.ws-nowrap) {
    flex: 1 1 240px !important;
    max-width: 100% !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    padding-right: 12px !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn {
    margin-top: 0 !important;
    min-width: 38px !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: var(--radius-md) !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn .icon,
body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn i {
    font-size: 16px !important;
    margin: 0 !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn-secondary {
    border: 1px solid var(--color-border-input) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
    box-shadow: none !important;
}

body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn-secondary:hover,
body.sniper-iframe-body form[action*="notificacoes"] .row.p-3 > .ws-nowrap .btn-secondary:focus {
    border-color: var(--color-accent) !important;
    background: var(--color-accent-light) !important;
    color: var(--color-primary) !important;
}

body #wzrdParameterization .steps-container ul {
    padding: 6px 10px !important;
}

body .card.card-table:has(.tab-container) .btn-success > i,
body .card.card-table:has(.tab-container) .btn-success > i.mdi,
body .card.card-table:has(.tab-container) .btn-success > i.mdi::before,
body .card.card-table:has(.tab-container) span.btn-success > i,
body .card.card-table:has(.tab-container) span.btn-success > i.mdi,
body .card.card-table:has(.tab-container) span.btn-success > i.mdi::before,
body .card.card-table:has(.tab-container) .btn-danger > i,
body .card.card-table:has(.tab-container) .btn-danger > i.mdi,
body .card.card-table:has(.tab-container) .btn-danger > i.mdi::before {
    color: var(--color-bg-white) !important;
    -webkit-text-fill-color: var(--color-bg-white) !important;
    opacity: 1 !important;
}

body #tab_all_apis .api4c-integrations {
    margin-top: 8px !important;
}

body #tab_all_apis .api4c-accordion__item {
    display: block !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body #tab_all_apis .api4c-accordion__item + .api4c-accordion__item {
    border-top: 1px solid var(--color-border-soft) !important;
}

body #tab_all_apis .api4c-accordion__header {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
}

body #tab_all_apis .api4c-accordion__trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 14px 4px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--color-text-strong) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    text-align: left !important;
}

body #tab_all_apis .api4c-accordion__trigger:hover,
body #tab_all_apis .api4c-accordion__trigger:focus {
    background: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
    outline: none !important;
}

body #tab_all_apis .api4c-accordion__icon {
    font-size: 18px !important;
    color: var(--color-text-muted) !important;
    transition: transform 0.2s ease, color 0.2s ease !important;
}

body #tab_all_apis .api4c-accordion__trigger[aria-expanded="true"] .api4c-accordion__icon {
    transform: rotate(90deg) !important;
    color: var(--color-primary) !important;
}

body #tab_all_apis .api4c-accordion__body {
    padding: 0 4px 20px !important;
    border: none !important;
    background: transparent !important;
}

body #tab_all_apis .api4c-accordion__item .collapse.show {
    display: block !important;
    visibility: visible !important;
}

body #tab_all_apis .api4c-intro {
    margin: 0 0 20px !important;
    color: var(--color-text-muted) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

body #tab_all_apis .api4c-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

body #tab_all_apis .api4c-step {
    display: block !important;
    color: var(--color-text) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

body #tab_all_apis .api4c-step:has(.api4c-step__label) {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

body #tab_all_apis .api4c-step__label {
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
}

body #tab_all_apis .api4c-step__hint {
    color: var(--color-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

body #tab_all_apis .api4c-step__text {
    color: var(--color-text) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

body #tab_all_apis .api4c-field {
    display: flex !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin-top: 4px !important;
}

body #tab_all_apis .api4c-field__input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 40px !important;
    padding: 8px 12px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}

body #tab_all_apis .api4c-field__input:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px var(--color-accent-alpha-35) !important;
    outline: none !important;
}

body #tab_all_apis .api4c-field__input--mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 12px !important;
}

body #tab_all_apis .api4c-field--webhook {
    align-items: center !important;
}

body #tab_all_apis .api4c-field--token {
    flex-wrap: wrap !important;
}

body #tab_all_apis .api4c-field__actions {
    display: flex !important;
    flex-shrink: 0 !important;
    gap: 8px !important;
}

body #tab_all_apis .api4c-http-method {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    min-width: 52px !important;
    height: 40px !important;
    padding: 0 10px !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-text-strong) !important;
    color: var(--color-bg-white) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
}

body #tab_all_apis .api4c-btn-copy,
body #tab_all_apis .api4c-btn-outline,
body #tab_all_apis .api4c-btn-refresh,
body #tab_all_apis .api4c-btn-generate {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border-radius: var(--radius-md) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}

body #tab_all_apis .api4c-btn-copy,
body #tab_all_apis .api4c-btn-outline {
    border: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
}

body #tab_all_apis .api4c-btn-copy:hover,
body #tab_all_apis .api4c-btn-copy:focus,
body #tab_all_apis .api4c-btn-outline:hover,
body #tab_all_apis .api4c-btn-outline:focus {
    border-color: var(--color-primary) !important;
    background: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
    outline: none !important;
}

body #tab_all_apis .api4c-btn-refresh {
    border: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-danger) !important;
}

body #tab_all_apis .api4c-btn-refresh:hover,
body #tab_all_apis .api4c-btn-refresh:focus {
    border-color: var(--color-danger) !important;
    background: rgba(192, 57, 43, 0.06) !important;
    color: var(--color-danger) !important;
    box-shadow: none !important;
    outline: none !important;
}

body #tab_all_apis .api4c-btn-generate {
    align-self: flex-start !important;
    border: 1px solid var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-bg-white) !important;
}

body #tab_all_apis .api4c-btn-generate:hover,
body #tab_all_apis .api4c-btn-generate:focus {
    border-color: var(--color-primary-hover) !important;
    background: var(--color-primary-hover) !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
    outline: none !important;
}

body #tab_all_apis .api4c-link {
    color: var(--color-primary) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
}

body #tab_all_apis .api4c-link:hover {
    color: var(--color-primary-hover) !important;
}

body #tab_all_apis .api4c-notice {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body #tab_all_apis .api4c-notice .mdi {
    flex-shrink: 0 !important;
    margin-top: 1px !important;
    font-size: 18px !important;
    color: var(--color-primary) !important;
}

body #tab_all_apis .api4c-webhook-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
}

body #tab_all_apis .api4c-webhook-head__text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

@media (max-width: 767px) {
    body #tab_all_apis .api4c-field,
    body #tab_all_apis .api4c-field--token {
        flex-direction: column !important;
    }

    body #tab_all_apis .api4c-field__actions {
        width: 100% !important;
    }

    body #tab_all_apis .api4c-field__actions .api4c-btn-copy,
    body #tab_all_apis .api4c-field__actions .api4c-btn-refresh {
        flex: 1 1 0 !important;
    }

    body #tab_all_apis .api4c-webhook-head {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body #tab_all_apis .api4c-btn-outline {
        width: 100% !important;
    }
}

body .custom-select2-height .select2-container--default .select2-selection--multiple,
body .custom-select2-height .select2-container--default .select2-selection--single {
    min-height: 96px !important;
}

body .custom-select2-height .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    padding: 6px 8px !important;
}

body .custom-select2-height .select2-container--default .select2-selection--multiple .select2-selection__choice {
    font-size: 14px !important;
    line-height: 1.4 !important;
    padding: 5px 10px !important;
    margin: 4px 6px 4px 0 !important;
}

body .custom-select2-height .select2-search--inline .select2-search__field {
    min-height: 32px !important;
    margin-top: 6px !important;
    font-size: 14px !important;
}

body .custom-modal-delete input[type="checkbox"][name="signers[]"] {
    width: 16px !important;
    height: 16px !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
}

body .custom-modal-delete .custom-modal-delete-container label {
    display: block !important;
    margin-bottom: 8px !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

body .custom-modal-delete .custom-modal-delete-container label small {
    font-size: 13px !important;
}
/* Integrações — mesmo padrão visual da aba API */
body #tab_all_integrations .api4c-integrations {
    margin-top: 8px !important;
}
body #tab_all_integrations .api4c-accordion__item {
    display: block !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
body #tab_all_integrations .api4c-accordion__item + .api4c-accordion__item {
    border-top: 1px solid var(--color-border-soft) !important;
}
body #tab_all_integrations .api4c-accordion__header {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
}
body #tab_all_integrations .api4c-accordion__trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 14px 4px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--color-text-strong) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    text-align: left !important;
}
body #tab_all_integrations .api4c-accordion__trigger:hover,body #tab_all_integrations .api4c-accordion__trigger:focus {
    background: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
    outline: none !important;
}
body #tab_all_integrations .api4c-accordion__icon {
    font-size: 18px !important;
    color: var(--color-text-muted) !important;
    transition: transform 0.2s ease, color 0.2s ease !important;
}
body #tab_all_integrations .api4c-accordion__trigger[aria-expanded="true"] .api4c-accordion__icon {
    transform: rotate(90deg) !important;
    color: var(--color-primary) !important;
}
body #tab_all_integrations .api4c-accordion__body {
    padding: 0 4px 20px !important;
    border: none !important;
    background: transparent !important;
}
body #tab_all_integrations .api4c-accordion__item .collapse.show {
    display: block !important;
    visibility: visible !important;
}
body #tab_all_integrations .api4c-intro {
    margin: 0 0 20px !important;
    color: var(--color-text-muted) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}
body #tab_all_integrations .api4c-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}
body #tab_all_integrations .api4c-step {
    display: block !important;
    color: var(--color-text) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

body #tab_all_integrations .api4c-step:has(.api4c-step__label) {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
body #tab_all_integrations .api4c-step__label {
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
}
body #tab_all_integrations .api4c-step__hint {
    color: var(--color-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}
body #tab_all_integrations .api4c-step__text {
    color: var(--color-text) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}
body #tab_all_integrations .api4c-field {
    display: flex !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin-top: 4px !important;
}
body #tab_all_integrations .api4c-field__input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 40px !important;
    padding: 8px 12px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}
body #tab_all_integrations .api4c-field__input:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px var(--color-accent-alpha-35) !important;
    outline: none !important;
}
body #tab_all_integrations .api4c-field__input--mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
    font-size: 12px !important;
}
body #tab_all_integrations .api4c-field--token {
    flex-wrap: wrap !important;
}
body #tab_all_integrations .api4c-field__actions {
    display: flex !important;
    flex-shrink: 0 !important;
    gap: 8px !important;
}
body #tab_all_integrations .api4c-btn-copy,body #tab_all_integrations .api4c-btn-outline,body #tab_all_integrations .api4c-btn-refresh,body #tab_all_integrations .api4c-btn-generate {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border-radius: var(--radius-md) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
}
body #tab_all_integrations .api4c-btn-copy,body #tab_all_integrations .api4c-btn-outline {
    border: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-text-strong) !important;
}
body #tab_all_integrations .api4c-btn-copy:hover,body #tab_all_integrations .api4c-btn-copy:focus,body #tab_all_integrations .api4c-btn-outline:hover,body #tab_all_integrations .api4c-btn-outline:focus {
    border-color: var(--color-primary) !important;
    background: var(--color-bg-hover) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
    outline: none !important;
}
body #tab_all_integrations .api4c-btn-refresh {
    border: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-white) !important;
    color: var(--color-danger) !important;
}
body #tab_all_integrations .api4c-btn-refresh:hover,body #tab_all_integrations .api4c-btn-refresh:focus {
    border-color: var(--color-danger) !important;
    background: rgba(192, 57, 43, 0.06) !important;
    color: var(--color-danger) !important;
    box-shadow: none !important;
    outline: none !important;
}
body #tab_all_integrations .api4c-btn-generate {
    align-self: flex-start !important;
    border: 1px solid var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-bg-white) !important;
}
body #tab_all_integrations .api4c-btn-generate:hover,body #tab_all_integrations .api4c-btn-generate:focus {
    border-color: var(--color-primary-hover) !important;
    background: var(--color-primary-hover) !important;
    color: var(--color-bg-white) !important;
    box-shadow: none !important;
    outline: none !important;
}
body #tab_all_integrations .api4c-link {
    color: var(--color-primary) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
}
body #tab_all_integrations .api4c-link:hover {
    color: var(--color-primary-hover) !important;
}
body #tab_all_integrations .api4c-notice {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}
body #tab_all_integrations .api4c-notice .mdi {
    flex-shrink: 0 !important;
    margin-top: 1px !important;
    font-size: 18px !important;
    color: var(--color-primary) !important;
}

body #tab_all_integrations .integ-hub {
    margin-top: 4px !important;
}

body #tab_all_integrations .integ-subtabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    border-top: none !important;
}

body #tab_all_integrations .integ-subtabs .nav-item {
    margin: 0 !important;
}

body #tab_all_integrations .integ-subtabs .nav-link {
    margin: 0 !important;
    padding: 8px 14px !important;
    border: 1px solid transparent !important;
    border-radius: var(--radius-md) !important;
    background: transparent !important;
    color: var(--color-text-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    box-shadow: none !important;
}

body #tab_all_integrations .integ-subtabs .nav-link:hover {
    color: var(--color-primary) !important;
    background: var(--color-bg-hover) !important;
    border-color: var(--color-border-soft) !important;
}

body #tab_all_integrations .integ-subtabs .nav-link.active {
    color: var(--color-primary) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-border-soft) !important;
    box-shadow: none !important;
}

body #tab_all_integrations .integ-subtabs-content {
    padding: 0 !important;
}

body #tab_all_integrations .integ-subtabs-content > .tab-pane {
    padding-top: 4px !important;
}

body #tab_all_integrations .integ-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
}

body #tab_all_integrations .integ-toolbar__hint {
    flex: 1 1 100% !important;
    margin: 0 !important;
    color: var(--color-text-muted) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

body #tab_all_integrations .integ-switch-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 16px !important;
    padding: 10px 12px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-page) !important;
}

body #tab_all_integrations .integ-switch-row__label {
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

body #tab_all_integrations .integ-sortable-handle {
    display: none !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
    padding: 10px 12px !important;
    border: 1px dashed var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    background: var(--color-bg-page) !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: move !important;
}

body #tab_all_integrations.integ-erps-sort-active .j_erps_sortable_name.integ-sortable-handle,
body #tab_all_integrations.integ-gestors-sort-active .j_gestors_sortable_name.integ-sortable-handle {
    display: flex !important;
}

body #tab_all_integrations .j_sortable_erp_box + .j_sortable_erp_box,
body #tab_all_integrations .j_sortable_gestor_box + .j_sortable_gestor_box {
    margin-top: 0 !important;
}

body #tab_all_integrations .integ-erp-tabs {
    margin-top: 8px !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    background: var(--color-bg-white) !important;
}

body #tab_all_integrations .integ-erp-tabs .nav.nav-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 8px !important;
    border-bottom: 1px solid var(--color-border-soft) !important;
    background: var(--color-bg-page) !important;
}

body #tab_all_integrations .integ-erp-tabs .nav.nav-tabs .nav-link {
    margin: 0 !important;
    padding: 6px 12px !important;
    border: 1px solid transparent !important;
    border-radius: var(--radius-md) !important;
    color: var(--color-text-muted) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body #tab_all_integrations .integ-erp-tabs .nav.nav-tabs .nav-link.active {
    color: var(--color-primary) !important;
    background: var(--color-bg-white) !important;
    border-color: var(--color-border-soft) !important;
}

body #tab_all_integrations .integ-erp-tabs .tab-content {
    padding: 16px !important;
}

body #tab_all_integrations .integ-erp-tabs .form-group label {
    color: var(--color-text-strong) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-bottom: 4px !important;
}

body #tab_all_integrations .integ-field-group .select2-container {
    width: 100% !important;
}

body #tab_all_integrations .integ-field-group .select2-container--default .select2-selection--single {
    min-height: 40px !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--radius-md) !important;
}

body #tab_all_integrations .integ-field-group .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 38px !important;
    padding-left: 12px !important;
    font-size: 13px !important;
}

@media (max-width: 767px) {
    body #tab_all_integrations .integ-subtabs .nav-link {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
}

#gritter-notice-wrapper {
    top: 72px !important;
    right: 16px !important;
    left: auto !important;
    width: min(380px, calc(100vw - 32px)) !important;
    z-index: 99999999999999 !important;
}

#gritter-notice-wrapper .gritter-item-wrapper {
    position: relative !important;
    display: block !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: var(--color-bg-white) !important;
    background-image: none !important;
    border: 1px solid var(--color-border-soft) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: 0 10px 28px var(--color-slate-shadow-12), 0 2px 8px var(--color-black-alpha-08) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    height: 3px !important;
    width: 100% !important;
    transform-origin: left center !important;
    animation: gritter-toast-progress 6s linear forwards !important;
    pointer-events: none !important;
}

@keyframes gritter-toast-progress {
    from {
        width: 100%;
    }
    to {
        width: 0%;
    }
}

#gritter-notice-wrapper .gritter-item-wrapper.success::after,
#gritter-notice-wrapper .gritter-item-wrapper.color.success::after {
    background-color: var(--color-success-soft) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.danger::after,
#gritter-notice-wrapper .gritter-item-wrapper.color.danger::after,
#gritter-notice-wrapper .gritter-item-wrapper.error::after,
#gritter-notice-wrapper .gritter-item-wrapper.error.danger::after {
    background-color: var(--color-danger-soft) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.warning::after,
#gritter-notice-wrapper .gritter-item-wrapper.color.warning::after {
    background-color: var(--color-warning-soft) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.primary::after,
#gritter-notice-wrapper .gritter-item-wrapper.info::after,
#gritter-notice-wrapper .gritter-item-wrapper.color.info::after {
    background-color: var(--color-info-soft) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    font-family: var(--font-family) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-img-container {
    display: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content.gritter-without-image,
#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content.gritter-with-image {
    position: relative !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 4px 10px !important;
    width: 100% !important;
    min-height: 56px !important;
    padding: 14px 44px 18px 56px !important;
    color: var(--color-text-strong) !important;
    background: transparent !important;
    border: 0 !important;
    box-sizing: border-box !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content::before {
    position: absolute !important;
    left: 14px !important;
    top: 14px !important;
    width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    font-family: 'Material Icons' !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.success .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.color.success .gritter-item .gritter-content::before {
    content: '\f26b' !important;
    background-color: var(--color-success-soft) !important;
    color: var(--color-bg-white) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.danger .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.color.danger .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.error .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.error.danger .gritter-item .gritter-content::before {
    content: '\f1f1' !important;
    background-color: var(--color-danger-strong) !important;
    color: var(--color-bg-white) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.warning .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.color.warning .gritter-item .gritter-content::before {
    content: '\f1f4' !important;
    background-color: var(--color-warning-soft) !important;
    color: var(--color-bg-white) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper.primary .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.info .gritter-item .gritter-content::before,
#gritter-notice-wrapper .gritter-item-wrapper.color.info .gritter-item .gritter-content::before {
    content: '\f1f8' !important;
    background-color: var(--color-info-soft) !important;
    color: var(--color-bg-white) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--color-text-strong) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
    text-transform: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title:empty {
    display: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content p {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--color-text-strong) !important;
    font-size: var(--font-size-md) !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-shadow: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content:not(:has(.gritter-title)) p,
#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title:empty + p {
    font-size: var(--font-size-md) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title:not(:empty) + p {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: var(--color-text-neutral-soft) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    background: transparent !important;
    background-image: none !important;
    opacity: 1 !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    transform: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close:hover,
#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close:focus {
    opacity: 1 !important;
    background: var(--color-bg-hover) !important;
    border-radius: 50% !important;
    transform: none !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close::after {
    content: '\f136' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Material Icons' !important;
    font-size: 18px !important;
    line-height: 18px !important;
    text-align: center !important;
    color: var(--color-text-icon-muted) !important;
    text-shadow: none !important;
    text-indent: 0 !important;
    transform: translate(-50%, -50%) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close:hover::after,
#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-close:focus::after {
    color: var(--color-text-icon-hover) !important;
}

#gritter-notice-wrapper .gritter-item-wrapper *,
#gritter-notice-wrapper .gritter-item-wrapper.color * {
    color: inherit !important;
}

#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title .mdi,
#gritter-notice-wrapper .gritter-item-wrapper .gritter-item .gritter-content .gritter-title i {
    color: var(--color-danger-strong) !important;
    margin-right: 4px !important;
}

@media (max-width: 575px) {
    #gritter-notice-wrapper {
        top: 64px !important;
        right: 10px !important;
        width: calc(100vw - 20px) !important;
    }
}

body .switch-button.switch-button-ligadodesligado,
body .switch-button.switch-button-ativoinativo,
body .switch-button.switch-button-simnao,
body .switch-button.switch-button-success.switch-button-simnao {
    background-color: #c5c9d2 !important;
    border-radius: 50px !important;
    overflow: hidden !important;
}

body .switch-button.switch-button-ligadodesligado label,
body .switch-button.switch-button-ativoinativo label,
body .switch-button.switch-button-simnao label {
    background-color: #ffffff !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.22) !important;
}

body .switch-button.switch-button-ligadodesligado label:before,
body .switch-button.switch-button-ativoinativo label:before,
body .switch-button.switch-button-simnao label:before {
    color: #ffffff !important;
}

body .switch-button.switch-button-ligadodesligado input[type="checkbox"]:checked + span,
body .switch-button.switch-button-ativoinativo input[type="checkbox"]:checked + span,
body .switch-button.switch-button-simnao input[type="checkbox"]:checked + span {
    background-color: var(--color-primary, #001951) !important;
    border-radius: 50px !important;
}

body .sim-diagnosis-page .switch-button.switch-button-simnao.switch-button-success input[type="checkbox"]:checked + span {
    background-color: var(--color-primary, #001951) !important;
}

body .sim-product-page .leaderline_item .switch-button.switch-button-simnao,
body .sim-product-page .leaderline_item.leaderline_item_active .switch-button.switch-button-simnao {
    background-color: #c5c9d2 !important;
    background-image: none !important;
}

body .sim-product-page .leaderline_item.leaderline_item_active .switch-button.switch-button-simnao label:before {
    color: #ffffff !important;
}

body .sim-product-page .leaderline_item.leaderline_item_active .switch-button.switch-button-simnao input[type="checkbox"]:checked + span {
    background-color: var(--color-primary, #001951) !important;
    background-image: none !important;
}

.step-color-input-wrap {
    display: block;
    width: 100%;
}

.step-color-input,
input[type="color"].step-color-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    height: 34px;
    min-height: 34px;
    padding: 0;
    border: 1px solid #d5dbe3;
    border-radius: var(--radius-md, 6px);
    cursor: pointer;
    background: transparent;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
}

.step-color-input::-webkit-color-swatch-wrapper {
    padding: 2px 4px;
}

.step-color-input::-webkit-color-swatch {
    border: none;
    border-radius: 4px;
}

.step-color-input::-moz-color-swatch {
    border: none;
    border-radius: 4px;
}

.step-color-input.is-invalid {
    border-color: #dc3545;
}
