@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

/* Reset global font */
body,
input,
button,
select,
textarea {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
}

body {
    background: radial-gradient(circle at top, #F1F5F9 0%, #F8FAFC 100%) !important;
    min-height: 100vh;
}

/* FORÇAR LARGURA TOTAL 100% FLUIDA */
.fi-layout,
.fi-main-ctn,
.fi-main,
.fi-page,
.fi-page-content,
.fi-page>div,
.fi-form,
.fi-section,
.fi-sc,
.fi-sc-component,
.fi-fo-component-ctn,
.fi-sc-wizard {
    max-width: 100% !important;
    width: 100% !important;
}

/* Remover travas de max-width pré-fixadas pelo Filament */
.fi-main.fi-width-7xl,
.fi-main.fi-width-6xl,
.fi-main.fi-width-5xl,
.fi-main.fi-width-4xl,
.fi-main.fi-width-3xl,
.fi-main.fi-width-2xl,
.fi-main.fi-width-xl,
.fi-main.fi-width-lg,
.fi-main.fi-width-md,
.fi-main.fi-width-sm {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.fi-main {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
}

.fi-page {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.fi-page-header {
    margin-bottom: 1.5rem !important;
}

/* Estilo do Assistente Wizard (Passo a Passo) */
.fi-sc-wizard-header {
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
    margin-bottom: 1.5rem !important;
    overflow: hidden !important;
    display: flex !important;
    width: 100% !important;
}

.fi-sc-wizard-header-step {
    flex: 1 1 0% !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
    position: relative !important;
}

/* Toda a área da aba ativa pintada de azul suave com destaque inferior */
.fi-sc-wizard-header-step.fi-active {
    background-color: #EEF2FF !important;
    box-shadow: inset 0 -3px 0 0 #4F46E5 !important;
}

.fi-sc-wizard-header-step.fi-completed {
    background-color: #F8FAFC !important;
}

.fi-sc-wizard-header-step.fi-completed:hover {
    background-color: #F1F5F9 !important;
}

.fi-sc-wizard-header-step-btn {
    width: 100% !important;
    height: 100% !important;
    padding: 1.125rem 1.5rem !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.75rem !important;
    text-align: center !important;
}

.fi-sc-wizard-header-step-label {
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    color: #475569 !important;
}

.fi-sc-wizard-header-step.fi-active .fi-sc-wizard-header-step-label {
    color: #4F46E5 !important;
    font-weight: 700 !important;
}

.fi-sc-wizard-header-step.fi-completed .fi-sc-wizard-header-step-icon-ctn {
    background-color: #4F46E5 !important;
    color: #FFFFFF !important;
}

.fi-sc-wizard-header-step.fi-active .fi-sc-wizard-header-step-icon-ctn {
    border-color: #4F46E5 !important;
    color: #4F46E5 !important;
}

.fi-sc-wizard-header-step:not(:last-child) {
    border-right: 1px solid #E2E8F0 !important;
}

.fi-sc-wizard-header-step-separator {
    display: none !important;
}

.fi-sc-wizard-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: 2rem !important;
    padding: 1.25rem 2rem !important;
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
}

.fi-sc-wizard-footer button,
.fi-sc-wizard-footer a {
    padding: 0.625rem 1.5rem !important;
    border-radius: 0.625rem !important;
}

/* Restrição Global contra SVGs Gigantes */
.fi-widget svg,
.fi-section svg,
.fi-wi-stats-overview svg,
.fi-wi-widget svg {
    max-width: 2.25rem !important;
    max-height: 2.25rem !important;
}

.fi-sidebar-item-icon svg,
.fi-topbar svg,
.fi-user-menu svg {
    max-width: 1.5rem !important;
    max-height: 1.5rem !important;
}

/* Estilização dos Cards / Sections */
.fi-section {
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    box-shadow: 0 1px 3px 0 rgba(15, 23, 42, 0.04), 0 1px 2px -1px rgba(15, 23, 42, 0.04) !important;
    margin-bottom: 1.25rem !important;
    transition: box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.fi-section:hover {
    border-color: #CBD5E1 !important;
    box-shadow: 0 4px 6px -1px rgba(15, 23, 42, 0.06), 0 2px 4px -2px rgba(15, 23, 42, 0.04) !important;
}

.fi-section-header-heading {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #0F172A !important;
}

.fi-section-header-description {
    font-size: 0.8125rem !important;
    color: #64748B !important;
    margin-top: 0.125rem !important;
}

/* Estilização dos Rótulos do Formulário */
.fi-fo-field-wrp label {
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: #1E293B !important;
    margin-bottom: 0.375rem !important;
}

/* Estilização dos Inputs (Sem Duplicidade de Bordas) */
.fi-input-wrp {
    border-radius: 0.625rem !important;
    border: 1px solid #CBD5E1 !important;
    background-color: #FFFFFF !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.03) !important;
    --tw-ring-color: transparent !important;
    --tw-ring-shadow: none !important;
}

.fi-input-wrp:focus-within,
.fi-input-wrp.fi-focused {
    border-color: #0057FF !important;
    box-shadow: 0 0 0 3px rgba(0, 87, 255, 0.12) !important;
    outline: none !important;
}

.fi-input-wrp input,
.fi-input-wrp .fi-input,
.fi-fo-text-input input {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
    font-size: 0.875rem !important;
    color: #0F172A !important;
    padding: 0.625rem 0.875rem !important;
}

.fi-fo-textarea textarea,
.fi-fo-select select {
    border-radius: 0.625rem !important;
    border: 1px solid #CBD5E1 !important;
    padding: 0.625rem 0.875rem !important;
    font-size: 0.875rem !important;
    color: #0F172A !important;
    background-color: #FFFFFF !important;
    transition: all 0.2s ease-in-out !important;
}

.fi-fo-textarea textarea:focus,
.fi-fo-select select:focus {
    border-color: #0057FF !important;
    box-shadow: 0 0 0 3px rgba(0, 87, 255, 0.12) !important;
    outline: none !important;
}

/* Editor Rico com Altura e Espaço Amplo */
.fi-fo-rich-editor .trix-content,
.fi-fo-rich-editor [contenteditable="true"] {
    min-height: 14rem !important;
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
}

.fi-fo-rich-editor .trix-button-row {
    flex-wrap: wrap !important;
    gap: 0.25rem !important;
}

/* ==========================================================================
   UPLOAD DE IMAGENS - ESTILO VTEX / COMPACTO & MINIMALISTA
   ========================================================================== */
.fi-fo-file-upload {
    border: none !important;
    background: transparent !important;
}

/* Área de Dropzone FilePond */
.filepond--root {
    margin-bottom: 0 !important;
    font-family: inherit !important;
}

.filepond--panel-root {
    background-color: #F8FAFC !important;
    border: 1.5px dashed #CBD5E1 !important;
    border-radius: 0.75rem !important;
    transition: all 0.2s ease !important;
}

.filepond--root:hover .filepond--panel-root {
    border-color: #4F46E5 !important;
    background-color: #EEF2FF !important;
}

/* Lista de miniaturas no estilo grid minimalista (VTEX) */
.filepond--list-scroller {
    margin-top: 0.75rem !important;
}

.filepond--list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1.5rem !important;
    padding: 0.75rem 0.5rem !important;
}

.filepond--item {
    width: 130px !important;
    height: 130px !important;
    margin: 0.25rem 0.5rem !important;
    border-radius: 0.875rem !important;
    overflow: hidden !important;
    border: 1.5px solid #E2E8F0 !important;
    box-shadow: 0 2px 5px rgba(15, 23, 42, 0.06) !important;
    background: #FFFFFF !important;
    cursor: grab !important;
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.filepond--item:active {
    cursor: grabbing !important;
    transform: scale(1.04) !important;
    z-index: 30 !important;
}

/* Ocultar o fundo preto grosso e sobreposições do FilePond */
.filepond--item-panel {
    background-color: #FFFFFF !important;
    border-radius: 0.875rem !important;
}

.filepond--image-preview-wrapper {
    border-radius: 0.875rem !important;
    background-color: #FFFFFF !important;
}

.filepond--image-preview-overlay {
    display: none !important;
}

.filepond--image-preview {
    background: #FFFFFF !important;
}

/* Ocultar os textos grosseiros de 'Upload complete' e nome de arquivo */
.filepond--file-info,
.filepond--file-status {
    display: none !important;
}

/* Botão de excluir foto (X) compacto no canto superior direito */
.filepond--action-remove-item {
    top: 0.35rem !important;
    right: 0.35rem !important;
    background-color: rgba(15, 23, 42, 0.75) !important;
    color: #FFFFFF !important;
    border-radius: 9999px !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    opacity: 0.85 !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
    z-index: 20 !important;
}

.filepond--action-remove-item:hover {
    opacity: 1 !important;
    transform: scale(1.1) !important;
    background-color: #EF4444 !important;
}

/* BADGE ESTILO VTEX NA FOTO PRINCIPAL (A que estiver na 1ª posição / esquerda) */
.filepond--item.is-primary-cover::before {
    content: "★ Principal" !important;
    position: absolute !important;
    top: 0.35rem !important;
    left: 0.35rem !important;
    background: #4F46E5 !important;
    color: #FFFFFF !important;
    font-size: 0.625rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    padding: 0.2rem 0.5rem !important;
    border-radius: 9999px !important;
    z-index: 15 !important;
    box-shadow: 0 2px 5px rgba(79, 70, 229, 0.4) !important;
    pointer-events: none !important;
}

.filepond--item.is-primary-cover {
    border: 2.5px solid #4F46E5 !important;
}

/* Botões do Formulário */
.fi-btn-primary {
    background-color: #4F46E5 !important;
    color: #FFFFFF !important;
    border-radius: 0.75rem !important;
    padding: 0.625rem 1.25rem !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.25) !important;
    transition: all 0.2s ease-in-out !important;
    cursor: pointer !important;
}

.fi-btn-primary:hover {
    background-color: #4338CA !important;
    box-shadow: 0 6px 16px rgba(79, 70, 229, 0.35) !important;
    transform: translateY(-1px) !important;
}

/* Painel Interno (Sidebar & Navbar) */
.fi-sidebar {
    background-color: #FFFFFF !important;
    border-right: 1px solid #E2E8F0 !important;
}

.fi-topbar {
    background-color: #FFFFFF !important;
    border-bottom: 1px solid #E2E8F0 !important;
}

.fi-main-content {
    background-color: #F8FAFC !important;
    padding-top: 1.5rem !important;
}

/* ==========================================================================
   ESTILOS DEDICADOS VTEX IMAGE UPLOADER
   ========================================================================== */
.vtex-uploader-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    align-items: flex-start !important;
    width: 100% !important;
}

.vtex-add-box {
    width: 120px !important;
    height: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
    border: 2px dashed #CBD5E1 !important;
    border-radius: 12px !important;
    background-color: #FFFFFF !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    flex: 0 0 120px !important;
}

.vtex-add-box:hover,
.vtex-add-box.dragging {
    border-color: #4F46E5 !important;
    background-color: #EEF2FF !important;
}

.vtex-thumb-card {
    width: 120px !important;
    height: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
    border-radius: 12px !important;
    border: 1.5px solid #E2E8F0 !important;
    position: relative !important;
    overflow: hidden !important;
    background-color: #FFFFFF !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    box-sizing: border-box !important;
    flex: 0 0 120px !important;
}

.vtex-thumb-card.is-primary {
    border: 2.5px solid #4F46E5 !important;
    box-shadow: 0 0 0 1px #4F46E5, 0 4px 12px rgba(79, 70, 229, 0.2) !important;
}

.vtex-thumb-img {
    width: 120px !important;
    height: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 10px !important;
}

.vtex-badge-star {
    position: absolute !important;
    top: 6px !important;
    left: 6px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background-color: #4F46E5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vtex-hover-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 120px !important;
    height: 120px !important;
    background: rgba(15, 23, 42, 0.65) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 6px !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease !important;
    z-index: 20 !important;
    box-sizing: border-box !important;
}

.vtex-thumb-card:hover .vtex-hover-overlay {
    opacity: 1 !important;
}

.vtex-btn-remove {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background-color: #EF4444 !important;
    color: #FFFFFF !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    align-self: flex-end !important;
    padding: 0 !important;
}

.vtex-btn-primary-action {
    background-color: #4F46E5 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 9999px !important;
    padding: 3px 8px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    cursor: pointer !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3) !important;
    margin: 0 auto !important;
}

/* ==========================================================================
   ADEPS MARKETING - FOLHA DE ESTILOS DEDICADA & DESIGN SYSTEM
   ========================================================================== */
.adeps-mkt-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
    width: 100% !important;
}

/* Header & Barra Superior */
.adeps-mkt-header {
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    padding: 1.25rem 1.75rem !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
}

.adeps-mkt-title-group {
    display: flex !important;
    align-items: center !important;
    gap: 0.875rem !important;
}

.adeps-mkt-icon-badge {
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 2.75rem !important;
    border-radius: 0.75rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.25rem !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.04) !important;
}

.adeps-mkt-icon-indigo {
    background-color: #EEF2FF !important;
    color: #4F46E5 !important;
}

.adeps-mkt-icon-orange {
    background-color: #FFF7ED !important;
    color: #EA580C !important;
}

.adeps-mkt-icon-emerald {
    background-color: #ECFDF5 !important;
    color: #059669 !important;
}

.adeps-mkt-icon-blue {
    background-color: #EFF6FF !important;
    color: #2563EB !important;
}

.adeps-mkt-title {
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.adeps-mkt-subtitle {
    font-size: 0.8125rem !important;
    color: #64748B !important;
    margin: 0.25rem 0 0 0 !important;
}

/* Seletor de Período (Pills) */
.adeps-mkt-period-group {
    display: inline-flex !important;
    padding: 0.25rem !important;
    background-color: #F1F5F9 !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 0.75rem !important;
    gap: 0.25rem !important;
}

.adeps-mkt-period-btn {
    padding: 0.4rem 0.875rem !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    color: #64748B !important;
    background-color: transparent !important;
    border: none !important;
    border-radius: 0.5rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.adeps-mkt-period-btn:hover {
    color: #0F172A !important;
}

.adeps-mkt-period-btn.active {
    background-color: #FFFFFF !important;
    color: #4F46E5 !important;
    font-weight: 800 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
}

/* Grid de KPIs Superiores */
.adeps-mkt-kpi-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 1.25rem !important;
    width: 100% !important;
}

.adeps-mkt-kpi-card {
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    padding: 1.35rem 1.5rem !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.adeps-mkt-kpi-card:hover {
    transform: translateY(-2px) !important;
    border-color: #CBD5E1 !important;
    box-shadow: 0 10px 20px -5px rgba(15, 23, 42, 0.08) !important;
}

.adeps-mkt-kpi-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 0.75rem !important;
}

.adeps-mkt-kpi-label {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    color: #64748B !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

.adeps-mkt-kpi-circle-icon {
    width: 2.25rem !important;
    height: 2.25rem !important;
    border-radius: 0.625rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1rem !important;
}

.adeps-mkt-kpi-val {
    font-size: 1.75rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
}

.adeps-mkt-kpi-sub {
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    margin-top: 0.35rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.25rem !important;
}

/* Card Padrão de Seção (Igual a .fi-section) */
.adeps-mkt-card {
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1rem !important;
    padding: 1.5rem !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
    width: 100% !important;
}

.adeps-mkt-card-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-bottom: 1rem !important;
    margin-bottom: 1.25rem !important;
    border-bottom: 1px solid #F1F5F9 !important;
    flex-wrap: wrap !important;
    gap: 0.75rem !important;
}

.adeps-mkt-card-title {
    font-size: 1rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    margin: 0 !important;
}

.adeps-mkt-card-desc {
    font-size: 0.78125rem !important;
    color: #64748B !important;
    margin: 0.15rem 0 0 0 !important;
}

.adeps-mkt-revenue-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    padding: 0.4rem 0.875rem !important;
    background-color: #EEF2FF !important;
    border: 1px solid #E0E7FF !important;
    border-radius: 0.625rem !important;
    font-size: 0.75rem !important;
    color: #4338CA !important;
}

.adeps-mkt-revenue-badge strong {
    font-size: 0.8125rem !important;
    font-weight: 800 !important;
    color: #312E81 !important;
}

/* Visualização do Funil de Conversão */
.adeps-mkt-funnel-step {
    margin-bottom: 0.75rem !important;
}

.adeps-mkt-funnel-meta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 0.8125rem !important;
    font-weight: 700 !important;
    color: #1E293B !important;
    margin-bottom: 0.375rem !important;
}

.adeps-mkt-step-num {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    border-radius: 9999px !important;
    background-color: #E2E8F0 !important;
    color: #0F172A !important;
    font-size: 0.6875rem !important;
    font-weight: 800 !important;
    margin-right: 0.4rem !important;
}

.adeps-mkt-funnel-bar-bg {
    width: 100% !important;
    height: 2.25rem !important;
    background-color: #F1F5F9 !important;
    border-radius: 0.625rem !important;
    padding: 0.25rem !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.adeps-mkt-funnel-bar-fill {
    height: 100% !important;
    border-radius: 0.45rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding-right: 0.75rem !important;
    color: #FFFFFF !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-sizing: border-box !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
}

.adeps-mkt-bar-blue {
    background: linear-gradient(135deg, #3B82F6 0%, #2563EB 100%) !important;
}

.adeps-mkt-bar-emerald {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
}

.adeps-mkt-bar-amber {
    background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%) !important;
}

.adeps-mkt-bar-purple {
    background: linear-gradient(135deg, #8B5CF6 0%, #6D28D9 100%) !important;
}

.adeps-mkt-funnel-transition {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0.5rem 0 !important;
}

.adeps-mkt-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.35rem !important;
    padding: 0.2rem 0.75rem !important;
    border-radius: 9999px !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    border: 1px solid !important;
}

.adeps-mkt-pill-emerald {
    background-color: #ECFDF5 !important;
    color: #059669 !important;
    border-color: #A7F3D0 !important;
}

.adeps-mkt-pill-amber {
    background-color: #FFFBEB !important;
    color: #D97706 !important;
    border-color: #FDE68A !important;
}

.adeps-mkt-pill-purple {
    background-color: #F5F3FF !important;
    color: #7C3AED !important;
    border-color: #DDD6FE !important;
}

/* Tabelas e Feeds */
.adeps-mkt-table-wrap {
    width: 100% !important;
    overflow-x: auto !important;
}

.adeps-mkt-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 0.8125rem !important;
    text-align: left !important;
}

.adeps-mkt-table thead th {
    padding: 0.75rem 1rem !important;
    background-color: #F8FAFC !important;
    color: #64748B !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border-bottom: 1px solid #E2E8F0 !important;
}

.adeps-mkt-table tbody tr {
    border-bottom: 1px solid #F1F5F9 !important;
    transition: background-color 0.15s ease !important;
}

.adeps-mkt-table tbody tr:hover {
    background-color: #F8FAFC !important;
}

.adeps-mkt-table tbody td {
    padding: 0.875rem 1rem !important;
    color: #334155 !important;
    vertical-align: middle !important;
}

/* Badges de Atividade */
.adeps-mkt-badge {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0.2rem 0.55rem !important;
    border-radius: 0.375rem !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    border: 1px solid !important;
}

.adeps-mkt-badge-click {
    background-color: #EFF6FF !important;
    color: #1D4ED8 !important;
    border-color: #BFDBFE !important;
}

.adeps-mkt-badge-cart {
    background-color: #ECFDF5 !important;
    color: #047857 !important;
    border-color: #A7F3D0 !important;
}

.adeps-mkt-badge-checkout {
    background-color: #FFFBEB !important;
    color: #B45309 !important;
    border-color: #FDE68A !important;
}

.adeps-mkt-badge-purchase {
    background-color: #F5F3FF !important;
    color: #6D28D9 !important;
    border-color: #DDD6FE !important;
    font-weight: 800 !important;
}

.adeps-mkt-badge-scroll {
    background-color: #F0F9FF !important;
    color: #0369A1 !important;
    border-color: #BAE6FD !important;
}

.adeps-mkt-badge-view {
    background-color: #F8FAFC !important;
    color: #475569 !important;
    border-color: #CBD5E1 !important;
}

/* Badges de Ranking (Hot Zones) */
.adeps-mkt-rank-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.75rem !important;
    height: 1.75rem !important;
    border-radius: 9999px !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    border: 1.5px solid !important;
}

.adeps-mkt-rank-1 {
    background-color: #FEF3C7 !important;
    color: #92400E !important;
    border-color: #F59E0B !important;
    box-shadow: 0 2px 4px rgba(245, 158, 11, 0.2) !important;
}

.adeps-mkt-rank-2 {
    background-color: #F1F5F9 !important;
    color: #334155 !important;
    border-color: #94A3B8 !important;
}

.adeps-mkt-rank-3 {
    background-color: #FFEDD5 !important;
    color: #9A3412 !important;
    border-color: #FB923C !important;
}

.adeps-mkt-rank-other {
    background-color: #FFFFFF !important;
    color: #64748B !important;
    border-color: #E2E8F0 !important;
}

.adeps-mkt-coord-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.35rem !important;
    padding: 0.25rem 0.6rem !important;
    background-color: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 0.5rem !important;
    font-family: monospace !important;
    font-size: 0.6875rem !important;
    color: #475569 !important;
}

/* Scroll Depth Grid */
.adeps-mkt-scroll-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1rem !important;
    width: 100% !important;
}

.adeps-mkt-scroll-card {
    background-color: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 0.875rem !important;
    padding: 1rem !important;
}

.adeps-mkt-scroll-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 0.78125rem !important;
    font-weight: 700 !important;
    color: #0F172A !important;
    margin-bottom: 0.25rem !important;
}

.adeps-mkt-scroll-sub {
    font-size: 0.6875rem !important;
    color: #64748B !important;
    margin: 0 0 0.75rem 0 !important;
}

.adeps-mkt-progress-bg {
    width: 100% !important;
    height: 0.5rem !important;
    background-color: #E2E8F0 !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
}

.adeps-mkt-progress-fill {
    height: 100% !important;
    border-radius: 9999px !important;
    transition: width 0.5s ease !important;
}

/* Filtros da Jornada de Visitantes */
.adeps-mkt-filter-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1rem !important;
    width: 100% !important;
}

.adeps-mkt-filter-item label {
    display: block !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    color: #475569 !important;
    text-transform: uppercase !important;
    margin-bottom: 0.35rem !important;
}

.adeps-mkt-filter-item input,
.adeps-mkt-filter-item select {
    width: 100% !important;
    border-radius: 0.625rem !important;
    border: 1px solid #CBD5E1 !important;
    padding: 0.5rem 0.75rem !important;
    font-size: 0.8125rem !important;
    color: #0F172A !important;
    background-color: #FFFFFF !important;
    box-sizing: border-box !important;
}

/* Linha do Tempo (Jornada) */
.adeps-mkt-timeline {
    position: relative !important;
    padding-left: 2rem !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 1.25rem !important;
}

.adeps-mkt-timeline::before {
    content: "" !important;
    position: absolute !important;
    left: 0.95rem !important;
    top: 0.5rem !important;
    bottom: 0.5rem !important;
    width: 2px !important;
    background-color: #E2E8F0 !important;
}

.adeps-mkt-timeline-item {
    position: relative !important;
}

.adeps-mkt-timeline-circle {
    position: absolute !important;
    left: -2rem !important;
    top: 0.25rem !important;
    width: 1.85rem !important;
    height: 1.85rem !important;
    border-radius: 9999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.8125rem !important;
    border: 2px solid #FFFFFF !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    z-index: 10 !important;
}

.adeps-mkt-timeline-card {
    background-color: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 0.875rem !important;
    padding: 1rem 1.25rem !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.adeps-mkt-timeline-card:hover {
    border-color: #CBD5E1 !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
}

.adeps-mkt-timeline-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 0.5rem !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
}

/* Banner de Tags & Pixels */
.adeps-mkt-hero-banner {
    background: linear-gradient(135deg, #1E1B4B 0%, #0F172A 100%) !important;
    color: #FFFFFF !important;
    border-radius: 1rem !important;
    padding: 1.5rem 2rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15) !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
}

.adeps-mkt-hero-title {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    color: #FFFFFF !important;
    margin: 0 !important;
}

.adeps-mkt-hero-sub {
    font-size: 0.8125rem !important;
    color: #CBD5E1 !important;
    margin: 0.35rem 0 0 0 !important;
    max-width: 42rem !important;
}

/* Diagnóstico e LGPD */
.adeps-mkt-diag-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    gap: 1.25rem !important;
    width: 100% !important;
}

.adeps-mkt-info-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0.75rem 0 !important;
    border-bottom: 1px solid #F1F5F9 !important;
    font-size: 0.8125rem !important;
}

.adeps-mkt-info-row:last-child {
    border-bottom: none !important;
}

.adeps-mkt-info-label {
    color: #64748B !important;
    font-weight: 500 !important;
}

.adeps-mkt-info-value {
    color: #0F172A !important;
    font-weight: 700 !important;
    text-align: right !important;
}

.adeps-mkt-alert-success {
    background-color: #ECFDF5 !important;
    border: 1px solid #A7F3D0 !important;
    border-radius: 0.75rem !important;
    padding: 1rem 1.25rem !important;
    color: #065F46 !important;
    font-size: 0.8125rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
}

.adeps-mkt-alert-warning {
    background-color: #FFFBEB !important;
    border: 1px solid #FDE68A !important;
    border-radius: 0.75rem !important;
    padding: 1rem 1.25rem !important;
    color: #92400E !important;
    font-size: 0.8125rem !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
}

/* ==========================================================================
   ADEPS AUTH / TELA DE LOGIN (ALINHADO À ESQUERDA)
   ========================================================================== */
.fi-simple-main-ctn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
    padding: 1.5rem !important;
}

.fi-simple-main {
    max-width: 28rem !important;
    width: 100% !important;
    margin: 0 auto !important;
    background-color: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 1.25rem !important;
    box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05), 0 8px 10px -6px rgba(15, 23, 42, 0.05) !important;
    padding: 2.25rem !important;
}

.adeps-login-card {
    width: 100% !important;
}

.adeps-login-header {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    margin-bottom: 2rem !important;
}

.adeps-login-logo {
    height: 48px !important;
    max-height: 48px !important;
    width: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin-bottom: 1.25rem !important;
    display: block !important;
}

.adeps-login-subtitle {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: #64748B !important;
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.4 !important;
}

/* Rótulos E-mail e Senha com a mesma fonte e cor do subtítulo */
.adeps-login-card .fi-fo-field-wrp label,
.adeps-login-card .fi-fo-field-wrp-label,
.adeps-login-card .fi-fo-field-wrp-label span,
.adeps-login-card .fi-fo-field-wrp label span,
.adeps-login-card label,
.adeps-login-card label span,
.adeps-login-card [data-slot="label"],
.adeps-login-card .text-gray-950,
.adeps-login-card .dark\:text-white {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: #64748B !important;
    letter-spacing: 0 !important;
    margin-bottom: 0.35rem !important;
}

/* Manter asterisco vermelho discreto */
.adeps-login-card sup,
.adeps-login-card sup.text-danger-600,
.adeps-login-card .text-danger-600,
.adeps-login-card .text-danger-400 {
    color: #EF4444 !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    margin-left: 2px !important;
}

/* Botão Continuar em Azul ADEPS Full Width */
.adeps-login-card .fi-btn,
.adeps-btn-login {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #0057FF !important;
    color: #FFFFFF !important;
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 0.75rem !important;
    box-shadow: 0 4px 14px 0 rgba(0, 87, 255, 0.3) !important;
    border: none !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    cursor: pointer !important;
}

.adeps-login-card .fi-btn:hover,
.adeps-btn-login:hover {
    background: #0046D6 !important;
    box-shadow: 0 6px 20px 0 rgba(0, 87, 255, 0.4) !important;
    transform: translateY(-1px) !important;
}

.adeps-login-footer {
    margin-top: 2rem !important;
    padding-top: 1.25rem !important;
    border-top: 1px solid #F1F5F9 !important;
    text-align: center !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    color: #94A3B8 !important;
}

/* ==========================================================================
   ADEPS SITE EDITOR STUDIO - FULLSCREEN SCOPED
   ========================================================================== */
.fi-page:has(.filament-site-editor-page),
.fi-page:has(.adeps-se-studio) {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.fi-page:has(.filament-site-editor-page) .fi-page-header,
.fi-page:has(.adeps-se-studio) .fi-page-header {
    display: none !important;
}

.adeps-se-studio svg {
    max-width: 18px !important;
    max-height: 18px !important;
    width: 16px !important;
    height: 16px !important;
    display: inline-block !important;
}

/* ==========================================================================
   ADEPS PROMOTIONS MODULE STYLING
   ========================================================================== */
.adeps-promo-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.6rem !important;
    padding: 0.75rem 2rem !important;
    font-size: 0.9375rem !important;
    font-weight: 700 !important;
    border-radius: 0.75rem !important;
    background: #4F46E5 !important;
    color: #FFFFFF !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(79, 70, 229, 0.35) !important;
    transition: all 0.2s ease !important;
}

.adeps-promo-btn:hover {
    background: #4338CA !important;
    box-shadow: 0 6px 20px rgba(79, 70, 229, 0.45) !important;
    transform: translateY(-1px) !important;
}

.adeps-promo-btn svg,
.adeps-promo-btn-amber svg {
    width: 18px !important;
    height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    display: inline-block !important;
}

.adeps-promo-btn-amber {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.6rem !important;
    padding: 0.75rem 2rem !important;
    font-size: 0.9375rem !important;
    font-weight: 700 !important;
    border-radius: 0.75rem !important;
    background: #D97706 !important;
    color: #FFFFFF !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(217, 119, 6, 0.35) !important;
    transition: all 0.2s ease !important;
}

.adeps-promo-btn-amber:hover {
    background: #B45309 !important;
    box-shadow: 0 6px 20px rgba(217, 119, 6, 0.45) !important;
    transform: translateY(-1px) !important;
}