/**
 * MarketWeb AppEcommerce — Gerador de Checkout (Padrão Stories Studio) + Checkout Split + Confirmação
 * Fidelidade absoluta aos tokens oficiais Horizon (#ffffff / #111216 / #e3e4e8) e Studio Dark (#090d12 / #d5ff60).
 */

/* =====================================================================
   1. DESIGN TOKENS STUDIO DARK & HORIZON LIGHT
   ===================================================================== */
#modalGeradorCheckout {
    --cg-bg: #090d12;
    --cg-sf: rgba(255, 255, 255, 0.045);
    --cg-sf2: rgba(255, 255, 255, 0.08);
    --cg-b: rgba(255, 255, 255, 0.12);
    --cg-bh: #d5ff60;
    --cg-t: #ffffff;
    --cg-tm: rgba(255, 255, 255, 0.58);
    --cg-a: #d5ff60;
    --cg-at: #0b0d07;
    --cg-sel: rgba(213, 255, 96, 0.08);
    --cg-glow: rgba(213, 255, 96, 0.35);
    --cg-bar: rgba(9, 13, 18, 0.96);
    --cg-inp: rgba(255, 255, 255, 0.08);
    --cg-inp-b: rgba(255, 255, 255, 0.2);
    --cg-inp-focus: rgba(255, 255, 255, 0.13);
    --cg-ok: #4ade80;
    --cg-ok-bg: rgba(74, 222, 128, 0.14);
    --cg-logo: #ffffff;
    --cg-e: cubic-bezier(0.22, 1, 0.36, 1);
}

body.theme-horizon #modalGeradorCheckout,
body[data-theme="horizon"] #modalGeradorCheckout,
html.theme-horizon #modalGeradorCheckout {
    --cg-bg: #ffffff;
    --cg-sf: #f8f9fb;
    --cg-sf2: #f1f3f7;
    --cg-b: #e3e4e8;
    --cg-bh: #111216;
    --cg-t: #111216;
    --cg-tm: #686b73;
    --cg-a: #111216;
    --cg-at: #ffffff;
    --cg-sel: #ffffff;
    --cg-glow: rgba(17, 18, 22, 0.14);
    --cg-bar: rgba(255, 255, 255, 0.98);
    --cg-inp: #eff2f6;
    --cg-inp-b: #d0d5df;
    --cg-inp-focus: #ffffff;
    --cg-ok: #15803d;
    --cg-ok-bg: #dcfce7;
    --cg-logo: #111216;
}

/* Oculta switcher flutuante enquanto modal estiver aberto */
body:has(#modalGeradorCheckout.is-open) .mktweb-theme-switcher-dock {
    display: none !important;
}

/* =====================================================================
   2. KEYFRAMES STUDIO MOTION DESIGN
   ===================================================================== */
@keyframes cgOverlayIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes cgFramePop {
    from { opacity: 0; transform: scale(0.96); }
    to   { opacity: 1; transform: scale(1); }
}

@keyframes cgSlideUp {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes cgCardFadeIn {
    from { opacity: 0; transform: translateY(10px) scale(0.98); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes cgCheckPop {
    0%   { transform: scale(0.5) rotate(-18deg); opacity: 0; }
    65%  { transform: scale(1.14) rotate(0); opacity: 1; }
    100% { transform: scale(1) rotate(0); opacity: 1; }
}

@keyframes cgDualRingAlive {
    0%, 100% {
        box-shadow: 0 0 0 0 var(--cg-bh), 0 0 6px var(--cg-glow);
    }
    50% {
        box-shadow: 0 0 0 4px var(--cg-glow), 0 4px 18px var(--cg-glow);
    }
}

@keyframes cgSweep {
    0%   { transform: translateX(-160%) skewX(-22deg); }
    100% { transform: translateX(280%) skewX(-22deg); }
}

/* =====================================================================
   3. OVERLAY & MOLDURA STORIES 9:16 (ALINHADO 100% AO CRIADOR DE BRIEFING)
   ===================================================================== */
#modalGeradorCheckout.mkt-cg-overlay {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2147483000 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px !important;
    margin: 0 !important;
    background: rgba(9, 11, 16, 0.78) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    box-sizing: border-box !important;
}

#modalGeradorCheckout.mkt-cg-overlay.is-open {
    display: flex !important;
    animation: cgOverlayIn 0.22s var(--cg-e) both !important;
}

#modalGeradorCheckout *,
#modalGeradorCheckout *::before,
#modalGeradorCheckout *::after {
    box-sizing: border-box !important;
}

#modalGeradorCheckout .mkt-cg-frame {
    position: relative !important;
    z-index: 10 !important;
    width: min(440px, 100%) !important;
    height: min(840px, calc(100dvh - 32px)) !important;
    max-height: 840px !important;
    margin: 0 auto !important;
    background: var(--cg-bg) !important;
    color: var(--cg-t) !important;
    border: 1px solid var(--cg-b) !important;
    border-radius: 32px !important;
    box-shadow: 0 24px 64px rgba(17, 18, 22, 0.28), 0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    animation: cgFramePop 0.28s var(--cg-e) both !important;
}

/* =====================================================================
   4. TOPBAR STORIES (BARRAS + MARCA OFICIAL + CONTADOR + FECHAR)
   ===================================================================== */
#modalGeradorCheckout .mkt-cg-topbar {
    flex: 0 0 auto !important;
    padding: 12px 16px 10px !important;
    background: var(--cg-bar) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid var(--cg-b) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    z-index: 30 !important;
}

#modalGeradorCheckout .mkt-cg-progress-segs {
    display: flex !important;
    gap: 5px !important;
    width: 100% !important;
}

#modalGeradorCheckout .mkt-cg-seg {
    flex: 1 !important;
    height: 3px !important;
    background: var(--cg-b) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

#modalGeradorCheckout .mkt-cg-seg-fill {
    height: 100% !important;
    width: 0% !important;
    background: var(--cg-a) !important;
    border-radius: 999px !important;
    transition: width 0.32s var(--cg-e) !important;
}

#modalGeradorCheckout .mkt-cg-seg.is-done .mkt-cg-seg-fill,
#modalGeradorCheckout .mkt-cg-seg.is-active .mkt-cg-seg-fill {
    width: 100% !important;
}

#modalGeradorCheckout .mkt-cg-floating-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
}

#modalGeradorCheckout .mkt-cg-brand-cluster {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
}

.mkt-logo-mark {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2.2px !important;
    height: 14px !important;
    transform: skewX(-12deg) !important;
    flex-shrink: 0 !important;
}

.mkt-logo-mark i {
    display: block !important;
    width: 3px !important;
    border-radius: 1px !important;
    background: var(--cg-logo, #111216) !important;
}

.mkt-logo-mark i:nth-child(1) { height: 7px !important; }
.mkt-logo-mark i:nth-child(2) { height: 13px !important; }
.mkt-logo-mark i:nth-child(3) { height: 9px !important; }

#modalGeradorCheckout .mkt-cg-brand-name,
#modalGeradorCheckout .mkt-cg-brand-name .mkt-brand-main,
#modalGeradorCheckout .mkt-cg-brand-name .mkt-brand-web {
    font-size: 13.5px !important;
    font-weight: 850 !important;
    letter-spacing: -0.03em !important;
    color: var(--cg-t) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-bullet {
    color: var(--cg-tm) !important;
    opacity: 0.6 !important;
    font-size: 11px !important;
}

#modalGeradorCheckout .mkt-cg-story-badge {
    font-size: 10.5px !important;
    font-weight: 750 !important;
    letter-spacing: 0.03em !important;
    color: var(--cg-t) !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-head-ctrls {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-counter-pill {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    color: var(--cg-t) !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-close-btn {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    border: 1px solid var(--cg-b) !important;
    background: var(--cg-sf2) !important;
    color: var(--cg-t) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: transform 0.16s ease, background 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-close-btn:hover {
    transform: scale(1.06) !important;
    background: var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-close-btn svg {
    width: 14px !important;
    height: 14px !important;
    stroke: currentColor !important;
    stroke-width: 2.3 !important;
    fill: none !important;
}

/* =====================================================================
   5. PALCO CENTRAL SCROLLÁVEL (FLEX-SHRINK GARANTIDO, ZERO TEXTO CORTADO)
   ===================================================================== */
#modalGeradorCheckout .mkt-cg-stage {
    flex: 1 1 0% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 20px 18px 36px !important;
}

#modalGeradorCheckout .mkt-cg-stage::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
}

@keyframes cgStepForward {
    from { opacity: 0; transform: translateX(16px); }
    to { opacity: 1; transform: translateX(0); }
}

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

@keyframes cgCompletePulse {
    0% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.35); }
    100% { box-shadow: 0 0 0 8px rgba(16, 185, 129, 0); }
}

#modalGeradorCheckout .mkt-cg-step-pane {
    display: none !important;
}

#modalGeradorCheckout .mkt-cg-step-pane.is-active {
    display: block !important;
    animation: cgStepForward 0.28s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-step-pane.is-active.is-anim-back {
    animation: cgStepBack 0.28s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-error {
    display: none !important;
    padding: 11px 14px !important;
    border-radius: 12px !important;
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-bottom: 14px !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-error {
    background: rgba(239, 68, 68, 0.15) !important;
    border-color: rgba(239, 68, 68, 0.4) !important;
    color: #fca5a5 !important;
}

#modalGeradorCheckout .mkt-cg-error.is-visible {
    display: block !important;
}

/* Card Hero Compacto do Pacote (Estilo Premium Horizontal) */
#modalGeradorCheckout .mkt-cg-hero-card,
#modalGeradorCheckout .mkt-cg-hero-card.is-compact {
    border-radius: 18px !important;
    background: var(--cg-sf) !important;
    border: 1.5px solid var(--cg-b) !important;
    padding: 14px !important;
    margin-bottom: 18px !important;
    box-shadow: 0 2px 10px rgba(17, 18, 22, 0.04) !important;
    animation: cgCardFadeIn 0.28s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-hero-top {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

#modalGeradorCheckout .mkt-cg-hero-thumb {
    width: 60px !important;
    height: 60px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: #111216 !important;
    flex-shrink: 0 !important;
    border: 1px solid var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-hero-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

#modalGeradorCheckout .mkt-cg-hero-info {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-hero-tag {
    display: inline-block !important;
    font-size: 9.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    background: var(--cg-inp) !important;
    color: var(--cg-tm) !important;
    border: 1px solid var(--cg-b) !important;
    margin-bottom: 4px !important;
    white-space: nowrap !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-hero-tag {
    background: rgba(213, 255, 96, 0.12) !important;
    color: #d5ff60 !important;
    border-color: rgba(213, 255, 96, 0.3) !important;
}

#modalGeradorCheckout .mkt-cg-hero-title {
    margin: 0 0 2px !important;
    font-size: 16.5px !important;
    font-weight: 850 !important;
    line-height: 1.22 !important;
    letter-spacing: -0.025em !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-hero-sub {
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.38 !important;
    color: var(--cg-tm) !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

#modalGeradorCheckout .mkt-cg-hero-foot {
    margin-top: 12px !important;
    padding-top: 10px !important;
    border-top: 1px solid var(--cg-b) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

#modalGeradorCheckout .mkt-cg-hero-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    border: 1px solid var(--cg-b) !important;
    background: var(--cg-inp) !important;
    color: var(--cg-t) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background 0.18s ease, border-color 0.18s ease !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-hero-toggle:hover {
    border-color: var(--cg-a) !important;
}

#modalGeradorCheckout .mkt-cg-hero-toggle svg {
    transition: transform 0.22s var(--cg-e) !important;
}

#modalGeradorCheckout .mkt-cg-hero-toggle[aria-expanded="true"] svg {
    transform: rotate(180deg) !important;
}

#modalGeradorCheckout .mkt-cg-hero-lead {
    margin: 0 0 10px !important;
    font-size: 12px !important;
    line-height: 1.48 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-hero-includes {
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid var(--cg-b) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-hero-includes.is-collapsed {
    display: none !important;
}

#modalGeradorCheckout .mkt-cg-hero-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-includes-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-includes-kicker {
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: 0.06em !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-includes-prazo {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--cg-t) !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
}

#modalGeradorCheckout .mkt-cg-includes-prazo svg {
    width: 11px !important;
    height: 11px !important;
}

#modalGeradorCheckout .mkt-cg-includes-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-include-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    background: var(--cg-inp) !important;
    border: 1px solid var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-include-ico {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: var(--cg-a) !important;
    color: var(--cg-at) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    margin-top: 1px !important;
}

#modalGeradorCheckout .mkt-cg-include-ico svg {
    width: 10px !important;
    height: 10px !important;
}

#modalGeradorCheckout .mkt-cg-include-txt {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-include-txt strong {
    font-size: 12.5px !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-include-txt span {
    font-size: 11px !important;
    line-height: 1.38 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-includes-foot {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px 12px !important;
    padding-top: 4px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-includes-foot span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

#modalGeradorCheckout .mkt-cg-includes-foot svg {
    width: 12px !important;
    height: 12px !important;
    color: var(--cg-a) !important;
}

#modalGeradorCheckout .mkt-cg-price-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-price-old {
    font-size: 13px !important;
    color: var(--cg-tm) !important;
    text-decoration: line-through !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-price-now {
    font-size: 22px !important;
    font-weight: 850 !important;
    letter-spacing: -0.03em !important;
    color: var(--cg-a) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-price-cycle {
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-tm) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-hero-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    margin-top: 12px !important;
}

#modalGeradorCheckout .mkt-cg-meta-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--cg-tm) !important;
    line-height: 1.35 !important;
}

#modalGeradorCheckout .mkt-cg-meta-pill svg {
    width: 13px !important;
    height: 13px !important;
    color: var(--cg-a) !important;
    flex-shrink: 0 !important;
}

/* Blocos & Cabeçalhos de Etapa */
#modalGeradorCheckout .mkt-cg-block {
    margin-bottom: 20px !important;
}

#modalGeradorCheckout .mkt-cg-block-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
}

#modalGeradorCheckout .mkt-cg-block-kicker,
#modalGeradorCheckout .mkt-cg-step-kicker {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-block-hint {
    font-size: 11.5px !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-step-intro {
    margin-bottom: 14px !important;
}

#modalGeradorCheckout .mkt-cg-step-title {
    margin: 4px 0 4px !important;
    font-size: 20px !important;
    font-weight: 850 !important;
    letter-spacing: -0.025em !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-step-desc {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.48 !important;
    color: var(--cg-tm) !important;
}

/* Inputs */
#modalGeradorCheckout .mkt-cg-form-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
}

#modalGeradorCheckout .mkt-cg-field {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-skip-row {
    margin: 18px 0 4px !important;
    text-align: center !important;
}

#modalGeradorCheckout .mkt-cg-skip-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 14px !important;
    border: none !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 4px !important;
    cursor: pointer !important;
    transition: color 0.15s ease !important;
}

#modalGeradorCheckout .mkt-cg-skip-link:hover {
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-skip-link:disabled {
    opacity: 0.5 !important;
    cursor: wait !important;
}

#modalGeradorCheckout .mkt-cg-field.is-full {
    grid-column: 1 / -1 !important;
}

#modalGeradorCheckout .mkt-cg-label {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-req {
    color: #dc2626 !important;
    font-weight: 900 !important;
    margin-left: 2px !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-req {
    color: #f87171 !important;
}

#modalGeradorCheckout .mkt-cg-field-err {
    display: none !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    color: #dc2626 !important;
    margin-top: 2px !important;
}

#modalGeradorCheckout .mkt-cg-field.has-error .mkt-cg-field-err {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-field.has-error .mkt-cg-input {
    border-color: #ef4444 !important;
    background: #fef2f2 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.14) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field-err {
    color: #fca5a5 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field.has-error .mkt-cg-input {
    border-color: #f87171 !important;
    background: rgba(239, 68, 68, 0.1) !important;
    box-shadow: 0 0 0 3px rgba(248, 113, 113, 0.2) !important;
}

#modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-label::after {
    content: '✓' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
    background: var(--cg-ok-bg) !important;
    color: var(--cg-ok) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    animation: cgCheckPop 0.25s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-input,
#modalGeradorCheckout .mkt-cg-select,
#modalGeradorCheckout .mkt-cg-textarea {
    width: 100% !important;
    min-height: 45px !important;
    padding: 10px 14px !important;
    border-radius: 12px !important;
    border: 1.5px solid var(--cg-inp-b) !important;
    background: var(--cg-inp) !important;
    color: var(--cg-t) !important;
    font-size: 14px !important;
    font-weight: 550 !important;
    font-family: inherit !important;
    box-shadow: inset 0 1px 2px rgba(17, 18, 22, 0.05) !important;
    transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-textarea {
    min-height: 76px !important;
    resize: vertical !important;
}

#modalGeradorCheckout .mkt-cg-input::placeholder,
#modalGeradorCheckout .mkt-cg-textarea::placeholder {
    color: var(--cg-tm) !important;
    opacity: 0.72 !important;
}

#modalGeradorCheckout .mkt-cg-input:focus,
#modalGeradorCheckout .mkt-cg-select:focus,
#modalGeradorCheckout .mkt-cg-textarea:focus {
    outline: none !important;
    background: var(--cg-inp-focus) !important;
    border-color: var(--cg-bh) !important;
    box-shadow: 0 0 0 3px var(--cg-glow) !important;
}

#modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-input,
#modalGeradorCheckout .mkt-cg-q-card.is-filled .mkt-cg-input,
#modalGeradorCheckout .mkt-cg-q-card.is-filled .mkt-cg-select,
#modalGeradorCheckout .mkt-cg-q-card.is-filled .mkt-cg-textarea {
    background: var(--cg-inp-focus) !important;
    border-color: var(--cg-bh) !important;
}

/* =====================================================================
   6. TILES DE SELEÇÃO COM INDICADORES & ANIMAÇÕES STUDIO
   ===================================================================== */
#modalGeradorCheckout .mkt-cg-options-grid,
#modalGeradorCheckout .mkt-cg-choices-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    border: 1.5px solid var(--cg-b) !important;
    background: var(--cg-sf) !important;
    color: var(--cg-t) !important;
    text-align: left !important;
    cursor: pointer !important;
    font-family: inherit !important;
    box-shadow: 0 1px 3px rgba(17, 18, 22, 0.03) !important;
    transition: transform 0.18s var(--cg-e), border-color 0.2s, box-shadow 0.2s, background 0.2s !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile:hover {
    background: var(--cg-sf2) !important;
    border-color: var(--cg-bh) !important;
    transform: translateY(-1.5px) !important;
    box-shadow: 0 6px 18px rgba(17, 18, 22, 0.08) !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile:active {
    transform: scale(0.97) !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile.is-selected {
    background: var(--cg-sel) !important;
    border: 2px solid var(--cg-bh) !important;
    animation: cgDualRingAlive 2.2s cubic-bezier(0.25, 1, 0.5, 1) infinite !important;
}

#modalGeradorCheckout .mkt-cg-tile-check {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    border: 1.5px solid var(--cg-tm) !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    transition: all 0.2s var(--cg-e) !important;
}

#modalGeradorCheckout .mkt-cg-tile-check svg {
    width: 12px !important;
    height: 12px !important;
    opacity: 0.28 !important;
    color: var(--cg-tm) !important;
    transition: opacity 0.16s ease, color 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile.is-selected .mkt-cg-tile-check {
    background: var(--cg-a) !important;
    border-color: var(--cg-a) !important;
    animation: cgCheckPop 0.28s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-choice-tile.is-selected .mkt-cg-tile-check svg {
    opacity: 1 !important;
    color: var(--cg-at) !important;
}

#modalGeradorCheckout .mkt-cg-tile-content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

#modalGeradorCheckout .mkt-cg-tile-title {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-tile-sub {
    font-size: 11.5px !important;
    color: var(--cg-tm) !important;
    text-decoration: line-through !important;
}

#modalGeradorCheckout .mkt-cg-tile-price {
    font-size: 14px !important;
    font-weight: 850 !important;
    color: var(--cg-a) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* Navegação por Tópicos Compactos (Etapa 2 Padrão Criador de Briefing) */
#modalGeradorCheckout .mkt-cg-step-intro.is-compact {
    margin-bottom: 10px !important;
}

#modalGeradorCheckout .mkt-cg-topic-pills {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    overflow-x: auto !important;
    padding: 2px 2px 10px !important;
    margin: 0 0 8px !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

#modalGeradorCheckout .mkt-cg-topic-pills::-webkit-scrollbar {
    display: none !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1.5px solid var(--cg-b) !important;
    background: var(--cg-sf) !important;
    color: var(--cg-tm) !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    font-family: inherit !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: all 0.18s var(--cg-e) !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill:hover {
    border-color: var(--cg-bh) !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill.is-active {
    background: var(--cg-a) !important;
    border-color: var(--cg-a) !important;
    color: var(--cg-at) !important;
    box-shadow: 0 4px 12px var(--cg-glow) !important;
}

#modalGeradorCheckout .mkt-cg-pill-check {
    display: none !important;
    width: 15px !important;
    height: 15px !important;
    border-radius: 50% !important;
    background: var(--cg-ok-bg) !important;
    color: var(--cg-ok) !important;
    align-items: center !important;
    justify-content: center !important;
}

#modalGeradorCheckout .mkt-cg-pill-check svg {
    width: 10px !important;
    height: 10px !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill.has-data .mkt-cg-pill-check {
    display: inline-flex !important;
    animation: cgCheckPop 0.25s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill.is-active.has-data .mkt-cg-pill-check {
    background: rgba(255, 255, 255, 0.2) !important;
    color: var(--cg-at) !important;
}

#modalGeradorCheckout .mkt-cg-pill-badge {
    display: none !important;
    min-width: 17px !important;
    height: 17px !important;
    padding: 0 5px !important;
    border-radius: 999px !important;
    background: var(--cg-sf2) !important;
    color: var(--cg-t) !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    align-items: center !important;
    justify-content: center !important;
}

#modalGeradorCheckout .mkt-cg-pill-badge.is-visible {
    display: inline-flex !important;
}

#modalGeradorCheckout .mkt-cg-topic-pill.is-active .mkt-cg-pill-badge {
    background: rgba(255, 255, 255, 0.22) !important;
    color: var(--cg-at) !important;
}

#modalGeradorCheckout .mkt-cg-dynamic-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
}

#modalGeradorCheckout .mkt-cg-topic-pane {
    display: none !important;
    flex-direction: column !important;
    gap: 10px !important;
    animation: cgSlideUp 0.24s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-topic-pane.is-active {
    display: flex !important;
}

#modalGeradorCheckout .mkt-cg-topic-lead {
    margin: 0 0 2px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-q-card {
    padding: 12px 13px !important;
    border-radius: 15px !important;
    background: var(--cg-sf) !important;
    border: 1.5px solid var(--cg-b) !important;
    animation: cgCardFadeIn 0.26s var(--cg-e) both !important;
    animation-delay: calc(var(--cg-stagger, 0) * 35ms) !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#modalGeradorCheckout .mkt-cg-q-card.is-filled {
    border-color: var(--cg-bh) !important;
    box-shadow: 0 3px 10px rgba(17, 18, 22, 0.04) !important;
}

#modalGeradorCheckout .mkt-cg-q-check {
    margin-left: auto !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    border: 1.5px solid var(--cg-b) !important;
    color: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    transition: all 0.2s var(--cg-e) !important;
}

#modalGeradorCheckout .mkt-cg-q-check svg {
    width: 11px !important;
    height: 11px !important;
}

#modalGeradorCheckout .mkt-cg-q-card.is-filled .mkt-cg-q-check {
    background: var(--cg-ok-bg) !important;
    border-color: var(--cg-ok) !important;
    color: var(--cg-ok) !important;
    animation: cgCheckPop 0.26s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-upload-box.is-hidden {
    display: none !important;
}

#modalGeradorCheckout .mkt-cg-step2-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 12px !important;
    padding-top: 4px !important;
}

#modalGeradorCheckout .mkt-cg-topic-next-btn {
    width: 100% !important;
    height: 42px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    border: 1.5px solid var(--cg-inp-b) !important;
    background: var(--cg-sf) !important;
    color: var(--cg-t) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    font-family: inherit !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    transition: border-color 0.16s ease, background 0.16s ease, transform 0.14s ease !important;
}

#modalGeradorCheckout .mkt-cg-topic-next-btn:hover {
    border-color: var(--cg-bh) !important;
    background: var(--cg-sf2) !important;
    transform: translateY(-1px) !important;
}

#modalGeradorCheckout .mkt-cg-q-help {
    margin: -4px 0 8px !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-q-head {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
}

#modalGeradorCheckout .mkt-cg-q-num {
    font-size: 10.5px !important;
    font-weight: 850 !important;
    color: var(--cg-at) !important;
    background: var(--cg-a) !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-q-label {
    font-size: 13.5px !important;
    font-weight: 750 !important;
    color: var(--cg-t) !important;
    line-height: 1.3 !important;
}

/* Upload Section */
#modalGeradorCheckout .mkt-cg-upload-box {
    padding: 14px !important;
    border-radius: 16px !important;
    background: var(--cg-sf) !important;
    border: 1.5px dashed var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-upload-sub {
    margin: 3px 0 10px !important;
    font-size: 12px !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-upload-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
}

#modalGeradorCheckout .mkt-cg-upload-tile {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1.5px solid var(--cg-b) !important;
    background: var(--cg-inp) !important;
    color: var(--cg-t) !important;
    text-align: left !important;
    cursor: pointer !important;
    font-family: inherit !important;
    transition: border-color 0.16s ease, transform 0.14s ease !important;
}

#modalGeradorCheckout .mkt-cg-upload-tile:hover {
    border-color: var(--cg-bh) !important;
    transform: translateY(-1px) !important;
}

#modalGeradorCheckout .mkt-cg-upload-tile.is-uploading {
    opacity: 0.6 !important;
    cursor: wait !important;
}

#modalGeradorCheckout .mkt-cg-upload-ico {
    width: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-t) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-upload-txt {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-upload-txt strong {
    font-size: 12.5px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
}

#modalGeradorCheckout .mkt-cg-upload-txt small {
    font-size: 10.5px !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-files-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin-top: 10px !important;
}

#modalGeradorCheckout .mkt-cg-file-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 8px 5px 10px !important;
    border-radius: 999px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-t) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
}

#modalGeradorCheckout .mkt-cg-file-badge {
    font-size: 9.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-file-name {
    max-width: 140px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-file-del {
    border: none !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    cursor: pointer !important;
    padding: 2px !important;
    display: inline-flex !important;
}

/* =====================================================================
   7. ETAPA 3: RESUMO EXECUTIVO & REVISÃO COM BOTÕES EDITAR
   ===================================================================== */
#modalGeradorCheckout .mkt-cg-review-board {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
}

#modalGeradorCheckout .mkt-cg-rev-card {
    padding: 13px 15px !important;
    border-radius: 16px !important;
    background: var(--cg-sf) !important;
    border: 1.5px solid var(--cg-b) !important;
    animation: cgCardFadeIn 0.25s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-rev-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
}

#modalGeradorCheckout .mkt-cg-rev-kicker {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-edit-pill {
    padding: 4px 11px !important;
    border-radius: 999px !important;
    border: 1px solid var(--cg-b) !important;
    background: var(--cg-inp) !important;
    color: var(--cg-t) !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
}

#modalGeradorCheckout .mkt-cg-edit-pill:hover {
    border-color: var(--cg-bh) !important;
    background: var(--cg-a) !important;
    color: var(--cg-at) !important;
}

#modalGeradorCheckout .mkt-cg-rev-pkg-row {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

#modalGeradorCheckout .mkt-cg-rev-title {
    display: block !important;
    font-size: 14.5px !important;
    font-weight: 800 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-rev-sub,
#modalGeradorCheckout .mkt-cg-rev-prazo {
    display: block !important;
    font-size: 12px !important;
    color: var(--cg-tm) !important;
    margin-top: 2px !important;
}

#modalGeradorCheckout .mkt-cg-rev-price {
    font-size: 16.5px !important;
    font-weight: 850 !important;
    color: var(--cg-t) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-rev-kv {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
}

#modalGeradorCheckout .mkt-cg-rev-kv > div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    font-size: 12.5px !important;
}

#modalGeradorCheckout .mkt-cg-rev-kv span {
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-rev-kv strong {
    color: var(--cg-t) !important;
    text-align: right !important;
    word-break: break-word !important;
}

#modalGeradorCheckout .mkt-cg-rev-empty {
    margin: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-block {
    padding-top: 10px !important;
    margin-top: 10px !important;
    border-top: 1px solid var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-block:first-of-type {
    padding-top: 2px !important;
    margin-top: 0 !important;
    border-top: none !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-name {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    color: var(--cg-ok) !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-name svg {
    width: 13px !important;
    height: 13px !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-edit {
    border: none !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    cursor: pointer !important;
    padding: 2px 4px !important;
}

#modalGeradorCheckout .mkt-cg-rev-topic-edit:hover {
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-rev-answers {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
}

#modalGeradorCheckout .mkt-cg-rev-ans-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    padding-bottom: 7px !important;
    border-bottom: 1px solid var(--cg-b) !important;
    font-size: 12.5px !important;
}

#modalGeradorCheckout .mkt-cg-rev-ans-row:last-child {
    padding-bottom: 0 !important;
    border-bottom: none !important;
}

#modalGeradorCheckout .mkt-cg-rev-ans-row span {
    color: var(--cg-tm) !important;
    font-size: 11.5px !important;
}

#modalGeradorCheckout .mkt-cg-rev-ans-row strong {
    color: var(--cg-t) !important;
    font-weight: 700 !important;
}

#modalGeradorCheckout .mkt-cg-rev-files {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 8px !important;
}

#modalGeradorCheckout .mkt-cg-rev-file-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-t) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

#modalGeradorCheckout .mkt-cg-rev-file-pill svg {
    width: 11px !important;
    height: 11px !important;
}

#modalGeradorCheckout .mkt-cg-stripe-assurance {
    display: flex !important;
    align-items: flex-start !important;
    gap: 11px !important;
    padding: 13px 15px !important;
    border-radius: 14px !important;
    background: var(--cg-sf) !important;
    border: 1px solid var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-assurance-ico {
    width: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-t) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-stripe-assurance strong {
    display: block !important;
    font-size: 13px !important;
    color: var(--cg-t) !important;
    margin-bottom: 2px !important;
}

#modalGeradorCheckout .mkt-cg-stripe-assurance small {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    color: var(--cg-tm) !important;
}

/* =====================================================================
   8. RODAPÉ FIXO ESTILO DOCK (COESÃO HORIZON & DARK STUDIO)
   ===================================================================== */
#modalGeradorCheckout .mkt-cg-dock {
    flex: 0 0 auto !important;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    background: var(--cg-bar) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-top: 1px solid var(--cg-b) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    z-index: 30 !important;
}

#modalGeradorCheckout .mkt-cg-dock-summary {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-dock-label {
    font-size: 9.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    color: var(--cg-tm) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-dock-price {
    font-size: 16px !important;
    font-weight: 850 !important;
    letter-spacing: -0.02em !important;
    color: var(--cg-t) !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-dock-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-top: 3px !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    background: var(--cg-sf2) !important;
    border: 1px solid var(--cg-b) !important;
    color: var(--cg-tm) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    width: fit-content !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-dock-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-btn-back {
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    border: 1.5px solid var(--cg-b) !important;
    background: var(--cg-sf) !important;
    color: var(--cg-t) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    transition: transform 0.15s ease, background 0.15s ease !important;
}

#modalGeradorCheckout .mkt-cg-btn-back.is-hidden {
    display: none !important;
}

#modalGeradorCheckout .mkt-cg-btn-back:hover {
    background: var(--cg-sf2) !important;
    border-color: var(--cg-bh) !important;
}

#modalGeradorCheckout .mkt-cg-btn-skip {
    padding: 0 8px !important;
    height: 38px !important;
    border: none !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    white-space: nowrap !important;
}

#modalGeradorCheckout .mkt-cg-btn-skip:hover {
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-btn-next {
    position: relative !important;
    overflow: hidden !important;
    height: 42px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    border: 1px solid var(--cg-a) !important;
    background: var(--cg-a) !important;
    color: var(--cg-at) !important;
    font-size: 13.5px !important;
    font-weight: 850 !important;
    letter-spacing: -0.01em !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
    box-shadow: 0 4px 14px var(--cg-glow) !important;
    transition: transform 0.16s ease, opacity 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-btn-next::after {
    content: '' !important;
    position: absolute !important;
    top: -40% !important;
    left: -50% !important;
    width: 36% !important;
    height: 180% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent) !important;
    animation: cgSweep 3.4s ease-in-out infinite !important;
    pointer-events: none !important;
}

#modalGeradorCheckout .mkt-cg-btn-next:hover {
    transform: translateY(-1.5px) !important;
}

#modalGeradorCheckout .mkt-cg-btn-next:active {
    transform: scale(0.97) !important;
}

#modalGeradorCheckout .mkt-cg-btn-next:disabled,
#modalGeradorCheckout .mkt-cg-btn-skip:disabled {
    opacity: 0.6 !important;
    cursor: wait !important;
}

@media (max-width: 768px) {
    #modalGeradorCheckout.mkt-cg-overlay {
        padding: 0 !important;
    }
    #modalGeradorCheckout .mkt-cg-frame {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
        border: none !important;
    }
    #modalGeradorCheckout .mkt-cg-form-grid,
    #modalGeradorCheckout .mkt-cg-upload-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 440px) {
    #modalGeradorCheckout .mkt-cg-dock {
        padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
        gap: 8px !important;
    }
    #modalGeradorCheckout .mkt-cg-dock-summary {
        min-width: 0 !important;
        overflow: hidden !important;
    }
    #modalGeradorCheckout .mkt-cg-dock-price {
        font-size: 14.5px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    #modalGeradorCheckout .mkt-cg-dock-pill {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    #modalGeradorCheckout .mkt-cg-btn-back {
        width: 36px !important;
        height: 36px !important;
    }
    #modalGeradorCheckout .mkt-cg-btn-next {
        height: 40px !important;
        padding: 0 14px !important;
        font-size: 13px !important;
    }
}

/* =====================================================================
   9. CHECKOUT 50/50 STUDIO (/finalizar-compra/) — ZERO AZUL, ZERO VAZAMENTO
   ===================================================================== */
.mkt-hide-physical-field {
    display: none !important;
}

html:has(body.mkt-stripe-immersive),
body.mkt-stripe-immersive {
    background: #ffffff !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-bottom: 0 !important;
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
}

body.mkt-stripe-immersive #wpadminbar,
body.mkt-stripe-immersive #MKT_FIXED_HEADER,
body.mkt-stripe-immersive .mkt-header,
body.mkt-stripe-immersive .mkt-mobile-nav,
body.mkt-stripe-immersive #masthead,
body.mkt-stripe-immersive .mkt-site-header,
body.mkt-stripe-immersive .mkt-glass-header,
body.mkt-stripe-immersive header.site-header,
body.mkt-stripe-immersive .mkt-archive-hero,
body.mkt-stripe-immersive footer.footer,
body.mkt-stripe-immersive .mkt-agency-footer,
body.mkt-stripe-immersive footer.site-footer,
body.mkt-stripe-immersive .mkt-footer-global,
body.mkt-stripe-immersive .site-footer,
body.mkt-stripe-immersive .app-bottom-bar,
body.mkt-stripe-immersive .mkt-app-nav,
body.mkt-stripe-immersive .mkt-app-bottom-nav,
body.mkt-stripe-immersive .mkt-bottom-nav,
body.mkt-stripe-immersive #mktBackToTop,
body.mkt-stripe-immersive .mkt-back-top,
body.mkt-stripe-immersive .mkt-back-to-top {
    display: none !important;
}

.mkt-stripe-viewport {
    min-height: 100dvh !important;
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

.mkt-stripe-col-left {
    background: #111216 !important;
    color: #ffffff !important;
    display: flex !important;
    justify-content: flex-end !important;
    padding: 48px 56px 48px 28px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.mkt-stripe-left-inner {
    width: 100% !important;
    max-width: 400px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    min-width: 0 !important;
}

.mkt-stripe-top-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 8px 10px !important;
}

/* Contraste 100% garantido sobre horizon.css (sem duplicar pílula no span interno) */
body.mkt-stripe-immersive .mkt-stripe-col-left a.mkt-stripe-back,
body .mkt-stripe-col-left a.mkt-stripe-back,
a.mkt-stripe-back {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 13px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    color: #ffffff !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background 0.16s ease, transform 0.14s ease !important;
}

body.mkt-stripe-immersive .mkt-stripe-col-left a.mkt-stripe-back span,
body.mkt-stripe-immersive .mkt-stripe-col-left a.mkt-stripe-back svg {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

body.mkt-stripe-immersive .mkt-stripe-col-left a.mkt-stripe-back:hover,
body .mkt-stripe-col-left a.mkt-stripe-back:hover,
a.mkt-stripe-back:hover {
    background: rgba(255, 255, 255, 0.22) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

.mkt-stripe-edit-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 13px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background 0.16s ease !important;
}

.mkt-stripe-edit-pill:hover {
    background: rgba(255, 255, 255, 0.18) !important;
}

.mkt-stripe-merchant {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 4px !important;
    min-width: 0 !important;
}

.mkt-stripe-merchant .mkt-logo-mark i {
    background: #ffffff !important;
}

.mkt-stripe-merchant-name,
.mkt-stripe-merchant-name .mkt-brand-main,
.mkt-stripe-merchant-name .mkt-brand-web {
    font-size: 15px !important;
    font-weight: 850 !important;
    letter-spacing: -0.02em !important;
    color: #ffffff !important;
}

.mkt-stripe-market-chip {
    margin-left: auto !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    padding: 3px 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.mkt-stripe-summary-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

.mkt-stripe-summary-head > div {
    flex: 1 1 180px !important;
    min-width: 0 !important;
}

.mkt-stripe-kicker {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.72) !important;
    margin: 0 0 4px !important;
}

.mkt-stripe-price-display {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.mkt-stripe-price-big {
    font-size: 36px !important;
    font-weight: 850 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.05 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.mkt-stripe-price-sub {
    font-size: 12px !important;
    line-height: 1.25 !important;
    color: rgba(255, 255, 255, 0.68) !important;
    white-space: nowrap !important;
}

.mkt-stripe-mobile-toggle {
    display: none !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}

.mkt-stripe-col-left.is-details-open .mkt-stripe-mobile-toggle svg {
    transform: rotate(180deg) !important;
}

.mkt-stripe-collapsible {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.mkt-stripe-short-desc {
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    color: rgba(255, 255, 255, 0.78) !important;
    margin: 0 !important;
}

.mkt-stripe-visual-card {
    border-radius: 16px !important;
    overflow: hidden !important;
    background: #181a20 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35) !important;
}

.mkt-stripe-visual-media {
    height: 122px !important;
    overflow: hidden !important;
}

.mkt-stripe-visual-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.mkt-stripe-visual-caption {
    padding: 13px 15px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
}

.mkt-stripe-lead-desc {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
    color: rgba(255, 255, 255, 0.64) !important;
    margin: 0 !important;
}

.mkt-stripe-visual-caption strong {
    font-size: 12.5px !important;
    font-weight: 750 !important;
    color: #ffffff !important;
}

.mkt-stripe-visual-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin-top: 2px !important;
}

.mkt-stripe-mod-item {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    padding: 8px 10px !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mkt-stripe-mod-item strong {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: #ffffff !important;
}

.mkt-stripe-mod-item span {
    font-size: 11px !important;
    line-height: 1.38 !important;
    color: rgba(255, 255, 255, 0.66) !important;
}

.mkt-stripe-left-footer {
    padding-top: 14px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.62) !important;
}

/* Coluna Direita Branca Pura (Horizon Ink #111216) */
.mkt-stripe-col-right {
    background: #ffffff !important;
    color: #111216 !important;
    display: flex !important;
    justify-content: flex-start !important;
    padding: 48px 28px 56px 56px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.mkt-stripe-right-inner {
    width: 100% !important;
    max-width: 440px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.mkt-stripe-right-head {
    margin-bottom: 18px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1f3f7 !important;
}

/* Cartão Compacto de Contato Confirmado (elimina campos duplicados no checkout) */
.mkt-stripe-buyer-card {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 12px 14px !important;
    margin: 0 0 18px !important;
    border-radius: 12px !important;
    background: #eff2f6 !important;
    border: 1.5px solid #d5dbe6 !important;
    opacity: 1 !important;
}

.mkt-stripe-right-inner .woocommerce-form-login-toggle,
.mkt-stripe-right-inner form.woocommerce-form-login {
    display: none !important;
}

.mkt-stripe-buyer-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    min-width: 0 !important;
}

.mkt-stripe-buyer-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    color: #15803d !important;
}

.mkt-stripe-buyer-name {
    font-size: 13.5px !important;
    font-weight: 800 !important;
    color: #111216 !important;
    line-height: 1.3 !important;
}

.mkt-stripe-buyer-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 2px 10px !important;
    font-size: 12px !important;
    color: #555963 !important;
    word-break: break-word !important;
}

.mkt-stripe-buyer-edit {
    flex-shrink: 0 !important;
    padding: 6px 12px !important;
    border-radius: 999px !important;
    border: 1px solid #d0d5df !important;
    background: #ffffff !important;
    color: #111216 !important;
    font-size: 11.5px !important;
    font-weight: 750 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
}

.mkt-stripe-buyer-edit:hover {
    background: #111216 !important;
    border-color: #111216 !important;
    color: #ffffff !important;
}

.mkt-stripe-right-inner.has-compact-buyer:not(.is-editing-buyer) .mkt-stripe-form-subhead,
.mkt-stripe-right-inner.has-compact-buyer:not(.is-editing-buyer) #customer_details {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.mkt-stripe-right-inner.has-compact-buyer:not(.is-editing-buyer) #payment {
    border-top: none !important;
    padding-top: 4px !important;
    margin-top: 0 !important;
}

.mkt-stripe-right-inner label .optional {
    display: none !important;
}

.mkt-stripe-form-subhead {
    font-size: 12.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: #686b73 !important;
    margin: 0 0 14px !important;
}

.mkt-stripe-step-chip {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: #111216 !important;
    background: #f1f3f7 !important;
    border: 1px solid #e3e4e8 !important;
    padding: 3px 10px !important;
    border-radius: 999px !important;
    margin-bottom: 8px !important;
}

.mkt-stripe-section-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    color: #111216 !important;
    margin: 0 !important;
}

.mkt-stripe-right-inner .woocommerce,
.mkt-stripe-right-inner .woocommerce form.checkout {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.mkt-stripe-right-inner .woocommerce-billing-fields > h3,
.mkt-stripe-right-inner #order_review_heading,
.mkt-stripe-right-inner .woocommerce-checkout-review-order-table,
.mkt-stripe-right-inner .col-2,
.mkt-stripe-right-inner .woocommerce-form-coupon-toggle {
    display: none !important;
}

/* Notices sem ::before colidindo */
.mkt-stripe-right-inner .woocommerce-info::before,
.mkt-stripe-right-inner .woocommerce-error::before,
.mkt-stripe-right-inner .woocommerce-message::before {
    display: none !important;
    content: none !important;
}

.mkt-stripe-right-inner .woocommerce-error,
.mkt-stripe-right-inner .woocommerce-info,
.mkt-stripe-right-inner .woocommerce-message {
    border-radius: 12px !important;
    padding: 12px 15px !important;
    margin: 0 0 16px !important;
    font-size: 13px !important;
    border: 1px solid #e3e4e8 !important;
    border-left: 3px solid #111216 !important;
    background: #f8f9fb !important;
    color: #111216 !important;
}

.mkt-stripe-right-inner .woocommerce-error {
    border-color: #fecaca !important;
    border-left-color: #dc2626 !important;
    background: #fef2f2 !important;
    color: #991b1b !important;
    list-style: none !important;
}

.mkt-stripe-right-inner #customer_details,
.mkt-stripe-right-inner .col-1 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}

.mkt-stripe-right-inner .form-row {
    margin: 0 0 16px !important;
    padding: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.mkt-stripe-right-inner .form-row-first {
    width: 48.5% !important;
    float: left !important;
    clear: left !important;
}

.mkt-stripe-right-inner .form-row-last {
    width: 48.5% !important;
    float: right !important;
}

.mkt-stripe-right-inner .form-row-wide {
    clear: both !important;
    width: 100% !important;
}

.mkt-stripe-right-inner label {
    display: block !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #111216 !important;
    margin-bottom: 5px !important;
}

/* IMPORTANTE: padding vertical real (11px) evita colapso do Stripe UPE Elements */
.mkt-stripe-right-inner input.input-text,
.mkt-stripe-right-inner select {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 46px !important;
    padding: 11px 14px !important;
    line-height: 1.4 !important;
    border-radius: 10px !important;
    border: 1.5px solid #d0d5df !important;
    background: #eff2f6 !important;
    color: #111216 !important;
    font-size: 14px !important;
    font-weight: 550 !important;
    box-shadow: inset 0 1px 2px rgba(17, 18, 22, 0.05) !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

.mkt-stripe-right-inner input.input-text:focus,
.mkt-stripe-right-inner select:focus {
    outline: none !important;
    background: #ffffff !important;
    border-color: #111216 !important;
    box-shadow: 0 0 0 3px rgba(17, 18, 22, 0.08) !important;
}

/* Bloco #payment limpo sem 3 caixas aninhadas */
.mkt-stripe-right-inner #payment {
    background: transparent !important;
    border: none !important;
    border-top: 1px solid #e3e4e8 !important;
    border-radius: 0 !important;
    padding: 20px 0 0 !important;
    margin-top: 22px !important;
    width: 100% !important;
    max-width: 100% !important;
}

.mkt-stripe-right-inner #payment ul.payment_methods {
    padding: 0 !important;
    margin: 0 0 18px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    width: 100% !important;
}

.mkt-stripe-right-inner #payment ul.payment_methods li.wc_payment_method {
    padding: 0 !important;
    margin: 0 0 10px !important;
    border: none !important;
    background: transparent !important;
    list-style: none !important;
}

.mkt-stripe-right-inner #payment ul.payment_methods li > label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14.5px !important;
    font-weight: 800 !important;
    color: #111216 !important;
    margin: 0 0 12px !important;
    cursor: pointer !important;
}

.mkt-stripe-right-inner #payment div.payment_box {
    background: transparent !important;
    color: #686b73 !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    width: 100% !important;
}

.mkt-stripe-right-inner #payment div.payment_box::before {
    display: none !important;
}

.mkt-stripe-right-inner #payment div.payment_box fieldset,
.mkt-stripe-right-inner #payment #wc-stripe-upe-form {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    width: 100% !important;
    max-width: 100% !important;
}

.mkt-stripe-right-inner .wc-stripe-payment-method-instruction {
    padding: 10px 12px !important;
    margin: 0 0 10px !important;
    border-radius: 10px !important;
    background: #f8f9fb !important;
    border: 1px solid #e3e4e8 !important;
    font-size: 12px !important;
    color: #686b73 !important;
}

.mkt-stripe-right-inner #payment div.form-row.place-order {
    padding: 0 !important;
    margin: 0 !important;
}

.mkt-stripe-right-inner .woocommerce-terms-and-conditions-wrapper {
    font-size: 12px !important;
    color: #686b73 !important;
    margin: 10px 0 14px !important;
}

/* Botão Finalizar no padrão Horizon Charcoal Ink #111216 */
.mkt-stripe-right-inner #place_order {
    width: 100% !important;
    height: 48px !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    border: 1px solid #111216 !important;
    background: #111216 !important;
    background-image: none !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(17, 18, 22, 0.16) !important;
    transition: background 0.15s ease, transform 0.15s ease !important;
}

.mkt-stripe-right-inner #place_order:hover {
    background: #262830 !important;
    transform: translateY(-1px) !important;
}

.mkt-stripe-trust-foot {
    margin-top: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    font-size: 12px !important;
    color: #686b73 !important;
    text-align: center !important;
}

@media (max-width: 900px) {
    .mkt-stripe-viewport {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .mkt-stripe-col-left {
        justify-content: center !important;
        padding: 16px 16px 18px !important;
    }
    .mkt-stripe-col-right {
        justify-content: center !important;
        padding: 22px 16px 40px !important;
    }
    .mkt-stripe-left-inner,
    .mkt-stripe-right-inner {
        max-width: 500px !important;
        min-width: 0 !important;
    }
    .mkt-stripe-price-big {
        font-size: clamp(24px, 6.5vw, 32px) !important;
    }
    .mkt-stripe-mobile-toggle {
        display: inline-flex !important;
    }
    .mkt-stripe-collapsible {
        display: none !important;
    }
    .mkt-stripe-col-left.is-details-open .mkt-stripe-collapsible {
        display: flex !important;
        padding-top: 8px !important;
    }
}

@media (max-width: 560px) {
    .mkt-stripe-right-inner .form-row-first,
    .mkt-stripe-right-inner .form-row-last {
        width: 100% !important;
        float: none !important;
    }
}

/* =====================================================================
   10. CONFIRMAÇÃO DE PEDIDO STUDIO (ORDER RECEIVED)
   ===================================================================== */
main#inicio.mkt-order-received-page,
body[data-theme="horizon"] main#inicio.mkt-order-received-page,
body.theme-horizon main#inicio.mkt-order-received-page,
.mkt-order-received-page {
    padding: 132px 0 88px !important;
    min-height: 85vh;
}

@media (max-width: 720px) {
    main#inicio.mkt-order-received-page,
    body[data-theme="horizon"] main#inicio.mkt-order-received-page,
    body.theme-horizon main#inicio.mkt-order-received-page,
    .mkt-order-received-page {
        padding: 112px 0 64px !important;
    }
    .mkt-ty-steps {
        grid-template-columns: 1fr;
    }
}

.mkt-order-received-shell {
    max-width: 820px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.mkt-order-received-studio {
    padding: 36px 28px;
    border-radius: 26px;
    background: #111216;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
    text-align: center;
    color: #ffffff;
}

body.theme-horizon .mkt-order-received-studio,
body[data-theme="horizon"] .mkt-order-received-studio {
    background: #ffffff;
    border: 1.5px solid #e3e4e8;
    color: #111216;
    box-shadow: 0 20px 50px rgba(17, 18, 22, 0.08);
}

.mkt-ty-badge {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    margin: 0 auto 16px;
    background: rgba(16, 185, 129, 0.12);
    border: 2px solid #10b981;
    color: #10b981;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mkt-ty-kicker {
    display: inline-block;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #d5ff60;
    margin-bottom: 10px;
}

body.theme-horizon .mkt-ty-kicker,
body[data-theme="horizon"] .mkt-ty-kicker {
    background: #f1f3f7;
    color: #111216;
    border: 1px solid #e3e4e8;
}

.mkt-ty-title {
    margin: 0 0 8px;
    font-size: clamp(22px, 3vw, 28px);
    font-weight: 850;
    letter-spacing: -0.025em;
}

.mkt-ty-sub {
    margin: 0 auto 24px;
    max-width: 560px;
    font-size: 14px;
    line-height: 1.55;
    opacity: 0.78;
}

.mkt-ty-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    text-align: left;
    margin-bottom: 24px;
}

.mkt-ty-step {
    padding: 14px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

body.theme-horizon .mkt-ty-step,
body[data-theme="horizon"] .mkt-ty-step {
    background: #f8f9fb;
    border-color: #e3e4e8;
}

.mkt-ty-step-num {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #d5ff60;
    color: #111216;
    font-size: 12px;
    font-weight: 850;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

body.theme-horizon .mkt-ty-step-num,
body[data-theme="horizon"] .mkt-ty-step-num {
    background: #111216;
    color: #ffffff;
}

.mkt-ty-step strong {
    display: block;
    font-size: 13px;
    font-weight: 750;
    margin-bottom: 2px;
}

.mkt-ty-step > div span {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    opacity: 0.72;
}

.mkt-ty-actions {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.mkt-order-received-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 12px 22px;
    border-radius: 999px;
    font-weight: 850;
    font-size: 13.5px;
    text-decoration: none;
    background: #d5ff60;
    color: #111216;
}

body.theme-horizon .mkt-order-received-btn,
body[data-theme="horizon"] .mkt-order-received-btn {
    background: #111216 !important;
    color: #ffffff !important;
}

.mkt-order-received-btn.is-outline {
    background: transparent !important;
    color: inherit !important;
    border: 1.5px solid rgba(255, 255, 255, 0.25);
}

body.theme-horizon .mkt-order-received-btn.is-outline,
body[data-theme="horizon"] .mkt-order-received-btn.is-outline {
    background: transparent !important;
    border: 1.5px solid #d4d6dc !important;
    color: #111216 !important;
}

body.theme-horizon .mkt-order-received-btn.is-outline:hover,
body[data-theme="horizon"] .mkt-order-received-btn.is-outline:hover {
    background: #f1f3f7 !important;
}

.mkt-wc-receipt-card {
    padding: 24px 26px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
}

body.theme-horizon .mkt-wc-receipt-card,
body[data-theme="horizon"] .mkt-wc-receipt-card {
    background: #ffffff;
    border: 1.5px solid #e3e4e8;
    color: #111216;
}

.mkt-wc-receipt-title {
    margin: 0 0 14px;
    font-size: 15px;
    font-weight: 800;
}

.mkt-wc-receipt-card .woocommerce-thankyou-order-received {
    display: none;
}

.mkt-wc-receipt-card ul.order_details {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 12px;
    padding: 0;
    margin: 0 0 20px;
    list-style: none;
}

.mkt-wc-receipt-card ul.order_details li {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.theme-horizon .mkt-wc-receipt-card ul.order_details li,
body[data-theme="horizon"] .mkt-wc-receipt-card ul.order_details li {
    background: #f8f9fb;
    border-color: #e3e4e8;
}

.mkt-stripe-guarantee-box {
    margin-top: 14px;
    padding: 12px 14px;
    border-radius: 12px;
    background: #f4f7f5;
    border: 1px solid #d9e6de;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #111827;
}

.mkt-stripe-guarantee-box svg {
    color: #059669;
    flex-shrink: 0;
    margin-top: 2px;
}

.mkt-stripe-guarantee-box strong {
    display: block;
    font-size: 12.5px;
    font-weight: 800;
    color: #064e3b;
}

.mkt-stripe-guarantee-box span {
    display: block;
    font-size: 11.5px;
    line-height: 1.4;
    color: #4b5563;
    margin-top: 2px;
}

.mkt-stripe-local-note {
    padding: 14px;
    border-radius: 10px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    font-size: 12.5px;
    color: #334155;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.mkt-stripe-local-note strong {
    font-size: 13px;
    color: #0f172a;
}

.mkt-ty-password-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    text-align: left;
    padding: 14px 16px;
    margin: 0 auto 22px;
    border-radius: 16px;
    background: rgba(16, 185, 129, 0.12);
    border: 1px solid rgba(16, 185, 129, 0.35);
    color: #ecfdf5;
}

body.theme-horizon .mkt-ty-password-notice,
body[data-theme="horizon"] .mkt-ty-password-notice {
    background: #ecfdf5;
    border-color: #a7f3d0;
    color: #065f46;
}

.mkt-ty-password-notice svg {
    flex-shrink: 0;
    margin-top: 2px;
    color: #10b981;
}

.mkt-ty-password-notice strong {
    display: block;
    font-size: 13.5px;
    font-weight: 800;
    margin-bottom: 2px;
}

.mkt-ty-password-notice span {
    display: block;
    font-size: 12.5px;
    line-height: 1.45;
    opacity: 0.92;
}

.mkt-ty-receipt-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

body.theme-horizon .mkt-ty-receipt-summary,
body[data-theme="horizon"] .mkt-ty-receipt-summary {
    background: #f8f9fb;
    border-color: #e3e4e8;
}

.mkt-ty-receipt-summary small {
    display: block;
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.62;
    margin-bottom: 3px;
}

.mkt-ty-receipt-summary strong {
    display: block;
    font-size: 14px;
    font-weight: 800;
}

.mkt-ty-receipt-summary span {
    display: block;
    font-size: 12px;
    opacity: 0.78;
    margin-top: 2px;
}

.mkt-wc-receipt-card ul.order_details li strong {
    display: block;
    margin-top: 4px;
    font-size: 13.5px;
    text-transform: none;
    letter-spacing: 0;
}

.mkt-wc-receipt-card table.shop_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
}

.mkt-wc-receipt-card table.shop_table th,
.mkt-wc-receipt-card table.shop_table td {
    padding: 10px 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    text-align: left;
}

body.theme-horizon .mkt-wc-receipt-card table.shop_table th,
body.theme-horizon .mkt-wc-receipt-card table.shop_table td,
body[data-theme="horizon"] .mkt-wc-receipt-card table.shop_table th,
body[data-theme="horizon"] .mkt-wc-receipt-card table.shop_table td {
    border-bottom-color: #e3e4e8;
}

@media (max-width: 720px) {
    .mkt-ty-steps {
        grid-template-columns: 1fr;
    }
    .mkt-order-received-studio {
        padding: 26px 18px;
    }
}

/* =========================================================
   CRIADOR DE BRIEFING STANDARD: ACCORDIONS, CAMPOS E TILES
   ========================================================= */
@keyframes cgDualRingAlive {
    0%, 100% {
        box-shadow: 0 0 0 1.5px var(--cg-a), 0 0 0 4px rgba(17, 18, 22, 0.08);
    }
    50% {
        box-shadow: 0 0 0 2px var(--cg-a), 0 0 0 6px rgba(17, 18, 22, 0.14);
    }
}

@keyframes cgCheckPop {
    0% { transform: scale(0.5); opacity: 0; }
    65% { transform: scale(1.16); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}

#modalGeradorCheckout .mkt-cg-step-intro.is-compact {
    margin-bottom: 14px !important;
}

#modalGeradorCheckout .mkt-cg-step-intro.is-compact .mkt-cg-step-title {
    margin: 0 0 4px !important;
    font-size: 20px !important;
    font-weight: 850 !important;
    letter-spacing: -0.025em !important;
}

#modalGeradorCheckout .mkt-cg-step-intro.is-compact .mkt-cg-step-desc {
    margin: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-dynamic-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 10px !important;
}

#modalGeradorCheckout .mkt-cg-acc-item {
    border-radius: 16px !important;
    border: 1.5px solid var(--cg-b) !important;
    background: var(--cg-sf) !important;
    overflow: hidden !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#modalGeradorCheckout .mkt-cg-acc-item.is-open {
    border-color: var(--cg-a) !important;
    box-shadow: 0 4px 16px rgba(17, 18, 22, 0.06) !important;
}

#modalGeradorCheckout .mkt-cg-acc-head {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 13px 15px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--cg-t) !important;
    cursor: pointer !important;
    text-align: left !important;
}

#modalGeradorCheckout .mkt-cg-acc-title {
    font-size: 14.5px !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-acc-meta {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-acc-badge {
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: var(--cg-inp) !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-acc-badge.is-done {
    background: #10b981 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-acc-chev {
    color: var(--cg-tm) !important;
    transition: transform 0.22s var(--cg-e) !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-acc-item.is-open .mkt-cg-acc-chev {
    transform: rotate(180deg) !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-acc-body {
    display: none !important;
    padding: 4px 15px 16px !important;
    border-top: 1px solid var(--cg-b) !important;
    flex-direction: column !important;
    gap: 14px !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-acc-item.is-open .mkt-cg-acc-body {
    display: flex !important;
}

#modalGeradorCheckout .mkt-cg-field-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-field-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-field-row .mkt-cg-q-label {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1.35 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-field-row .mkt-cg-q-check {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: #10b981 !important;
    color: #ffffff !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-field-row.is-filled .mkt-cg-q-check {
    display: inline-flex !important;
    animation: cgCheckPop 0.22s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-field-row .mkt-cg-q-check svg {
    width: 11px !important;
    height: 11px !important;
}

/* Contraste limpo e tátil nos inputs (Padrão Criador de Briefing) */
#modalGeradorCheckout .mkt-cg-input,
#modalGeradorCheckout .mkt-cg-textarea,
#modalGeradorCheckout .mkt-cg-select {
    background: #eff2f6 !important;
    border: 1.5px solid #dde2ea !important;
    color: #111216 !important;
    border-radius: 13px !important;
    transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease !important;
}

#modalGeradorCheckout .mkt-cg-input:focus,
#modalGeradorCheckout .mkt-cg-textarea:focus,
#modalGeradorCheckout .mkt-cg-select:focus {
    background: #ffffff !important;
    border-color: #111216 !important;
    box-shadow: 0 0 0 3px rgba(17, 18, 22, 0.08) !important;
    outline: none !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-input,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-textarea,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-select {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-input:focus,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-textarea:focus,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-select:focus {
    background: rgba(255, 255, 255, 0.11) !important;
    border-color: #d5ff60 !important;
    box-shadow: 0 0 0 3px rgba(213, 255, 96, 0.14) !important;
}

/* Grid 2 Colunas Q-Tile (Idêntico ao Criador de Briefing) */
#modalGeradorCheckout .mkt-cg-q-tiles {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-q-tile {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 11px !important;
    border-radius: 12px !important;
    border: 1.5px solid #dde2ea !important;
    background: #f5f7fa !important;
    color: #111216 !important;
    font-size: 12.5px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    cursor: pointer !important;
    transition: transform 0.14s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease !important;
}

#modalGeradorCheckout .mkt-cg-q-tile:hover {
    border-color: #111216 !important;
    background: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-q-tile:active {
    transform: scale(0.98) !important;
}

#modalGeradorCheckout .mkt-cg-q-tile-check {
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
    border: 1.5px solid #cbd2dc !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: transparent !important;
    transition: background 0.18s ease, border-color 0.18s ease !important;
}

#modalGeradorCheckout .mkt-cg-q-tile-check svg {
    width: 10px !important;
    height: 10px !important;
}

#modalGeradorCheckout .mkt-cg-q-tile.is-selected {
    border-color: #111216 !important;
    background: #ffffff !important;
    font-weight: 750 !important;
    animation: cgDualRingAlive 2.4s ease-in-out infinite !important;
}

#modalGeradorCheckout .mkt-cg-q-tile.is-selected .mkt-cg-q-tile-check {
    background: #111216 !important;
    border-color: #111216 !important;
    color: #ffffff !important;
    animation: cgCheckPop 0.22s var(--cg-e) both !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tile {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.14) !important;
    color: #f3f4f6 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tile.is-selected {
    background: rgba(213, 255, 96, 0.11) !important;
    border-color: #d5ff60 !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 1.5px #d5ff60 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tile.is-selected .mkt-cg-q-tile-check {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

/* Upload tiles limpos dentro do Accordion 5 */
#modalGeradorCheckout #mktCgUploadSection .mkt-cg-acc-body {
    padding-top: 12px !important;
}

#modalGeradorCheckout #mktCgUploadSection .mkt-cg-upload-grid {
    gap: 8px !important;
}

#modalGeradorCheckout #mktCgUploadSection .mkt-cg-upload-tile {
    background: #f5f7fa !important;
    border: 1.5px dashed #cbd2dc !important;
    border-radius: 12px !important;
    padding: 10px 11px !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout #mktCgUploadSection .mkt-cg-upload-tile {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
}

/* Bottom Dock Limpo (Alinhamento sem pill extra) */
#modalGeradorCheckout .mkt-cg-dock {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 12px 18px !important;
}

#modalGeradorCheckout .mkt-cg-dock-summary {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-dock-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
}

#modalGeradorCheckout .mkt-cg-btn-back {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-btn-back.is-hidden {
    display: none !important;
}

@media (max-width: 480px) {
    #modalGeradorCheckout .mkt-cg-q-tiles {
        grid-template-columns: 1fr !important;
    }
    #modalGeradorCheckout .mkt-cg-dock {
        padding: 10px 14px !important;
    }
}

/* =========================================================
   MOTOR INTELIGENTE POR NICHO, PRODUTOS E CONTEUDO
   ========================================================= */
#modalGeradorCheckout .mkt-cg-readiness {
    margin: 0 0 14px !important;
    padding: 11px 13px !important;
    border-radius: 14px !important;
    background: #f5f7fa !important;
    border: 1px solid #e2e6ee !important;
}

#modalGeradorCheckout .mkt-cg-readiness-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
}

#modalGeradorCheckout .mkt-cg-readiness-txt {
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    color: #111216 !important;
}

#modalGeradorCheckout .mkt-cg-readiness-badge {
    font-size: 11px !important;
    font-weight: 800 !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: #e2e6ee !important;
    color: #374151 !important;
    white-space: nowrap !important;
    transition: background 0.25s ease, color 0.25s ease !important;
}

#modalGeradorCheckout .mkt-cg-readiness-badge.is-ready {
    background: #10b981 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-readiness-track {
    width: 100% !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: #e2e6ee !important;
    overflow: hidden !important;
}

#modalGeradorCheckout .mkt-cg-readiness-fill {
    height: 100% !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #111216 0%, #10b981 100%) !important;
    transition: width 0.35s var(--cg-e) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.14) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness-txt {
    color: #f3f4f6 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness-badge {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #e5e7eb !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness-badge.is-ready {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness-track {
    background: rgba(255, 255, 255, 0.12) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness-fill {
    background: #d5ff60 !important;
}

#modalGeradorCheckout .mkt-cg-mini-hint {
    display: block !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: var(--cg-tm) !important;
    margin: 2px 0 6px !important;
}

#modalGeradorCheckout .mkt-cg-niche-widget,
#modalGeradorCheckout .mkt-cg-srv-builder,
#modalGeradorCheckout .mkt-cg-chips-input-wrap,
#modalGeradorCheckout .mkt-cg-theme-picker,
#modalGeradorCheckout .mkt-cg-palette-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-chips-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 6px 11px !important;
    border-radius: 999px !important;
    border: 1.5px solid #dde2ea !important;
    background: #f5f7fa !important;
    color: #111216 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    cursor: pointer !important;
    transition: transform 0.14s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease !important;
}

#modalGeradorCheckout .mkt-cg-chip small {
    opacity: 0.72 !important;
    font-weight: 500 !important;
}

#modalGeradorCheckout .mkt-cg-chip:hover {
    border-color: #111216 !important;
    background: #ffffff !important;
    transform: translateY(-1px) !important;
}

#modalGeradorCheckout .mkt-cg-chip.is-selected,
#modalGeradorCheckout .mkt-cg-chip.is-added {
    background: #111216 !important;
    border-color: #111216 !important;
    color: #ffffff !important;
    animation: cgCheckPop 0.2s var(--cg-e) both !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chip {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #e5e7eb !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chip.is-selected,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chip.is-added {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-niche-intel-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 8px 11px !important;
    border-radius: 12px !important;
    background: rgba(16, 185, 129, 0.1) !important;
    border: 1px solid rgba(16, 185, 129, 0.28) !important;
    color: #065f46 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    animation: cgCardFadeIn 0.24s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-niche-intel-pill svg {
    width: 14px !important;
    height: 14px !important;
    flex-shrink: 0 !important;
    color: #10b981 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-intel-pill {
    background: rgba(213, 255, 96, 0.1) !important;
    border-color: rgba(213, 255, 96, 0.3) !important;
    color: #d5ff60 !important;
}

#modalGeradorCheckout .mkt-cg-srv-add-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(98px, 0.9fr) auto !important;
    gap: 6px !important;
    align-items: center !important;
}

@media (max-width: 480px) {
    #modalGeradorCheckout .mkt-cg-srv-add-row {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }
    #modalGeradorCheckout .mkt-cg-srv-add-row .mkt-cg-srv-name-inp {
        grid-column: 1 / -1 !important;
    }
}

#modalGeradorCheckout .mkt-cg-inline-add {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 7px !important;
    align-items: center !important;
}

#modalGeradorCheckout .mkt-cg-add-btn {
    height: 40px !important;
    padding: 0 12px !important;
    border-radius: 11px !important;
    border: 0 !important;
    background: #111216 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: transform 0.14s ease, opacity 0.15s ease !important;
}

#modalGeradorCheckout .mkt-cg-add-btn:hover {
    opacity: 0.9 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-add-btn {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-srv-intel-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    font-size: 11.5px !important;
    color: var(--cg-tm) !important;
    padding: 2px 2px 4px !important;
}

#modalGeradorCheckout .mkt-cg-srv-intel-actions {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}

#modalGeradorCheckout .mkt-cg-mini-link {
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: var(--cg-t) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    cursor: pointer !important;
    opacity: 0.78 !important;
}

#modalGeradorCheckout .mkt-cg-mini-link:hover {
    opacity: 1 !important;
}

#modalGeradorCheckout .mkt-cg-srv-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-srv-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    border: 1.5px solid #dde2ea !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-srv-item.is-featured {
    border-color: #10b981 !important;
    background: rgba(16, 185, 129, 0.04) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-item {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-item.is-featured {
    border-color: #d5ff60 !important;
    background: rgba(213, 255, 96, 0.08) !important;
}

#modalGeradorCheckout .mkt-cg-srv-star {
    flex-shrink: 0 !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    border: 1px solid #d1d5db !important;
    background: #f5f7fa !important;
    color: #4b5563 !important;
    font-size: 10.5px !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: all 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-srv-star.is-active {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-star {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #d1d5db !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-star.is-active {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-srv-item-txt {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 5px 8px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-srv-item-txt strong {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: var(--cg-t) !important;
    line-height: 1.3 !important;
}

#modalGeradorCheckout .mkt-cg-srv-inline-price {
    width: 96px !important;
    max-width: 100% !important;
    height: 24px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    border: 1px dashed #cbd5e1 !important;
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 11px !important;
    font-weight: 650 !important;
    outline: none !important;
    transition: border-color 0.16s ease, background 0.16s ease, color 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-srv-inline-price.has-price,
#modalGeradorCheckout .mkt-cg-srv-inline-price:focus {
    border-style: solid !important;
    border-color: #10b981 !important;
    background: rgba(16, 185, 129, 0.12) !important;
    color: #065f46 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-inline-price {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.22) !important;
    color: #d1d5db !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-inline-price.has-price,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-inline-price:focus {
    border-color: #d5ff60 !important;
    background: rgba(213, 255, 96, 0.16) !important;
    color: #d5ff60 !important;
}

#modalGeradorCheckout .mkt-cg-srv-del {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    border: 0 !important;
    background: #f1f3f7 !important;
    color: #374151 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-q-tile-check.is-square {
    border-radius: 6px !important;
}

#modalGeradorCheckout .mkt-cg-rec-tag {
    display: inline-block !important;
    font-style: normal !important;
    font-size: 10px !important;
    font-weight: 750 !important;
    padding: 1px 6px !important;
    border-radius: 999px !important;
    background: rgba(16, 185, 129, 0.14) !important;
    color: #065f46 !important;
    margin-left: 4px !important;
}

#modalGeradorCheckout .mkt-cg-selected-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    padding-top: 4px !important;
}

#modalGeradorCheckout .mkt-cg-sel-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: #eff2f6 !important;
    border: 1px solid #d4dae3 !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    color: #111216 !important;
}

#modalGeradorCheckout .mkt-cg-sel-tag button {
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    padding: 0 !important;
}

#modalGeradorCheckout .mkt-cg-swatch-dots {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
}

#modalGeradorCheckout .mkt-cg-swatch-dots i {
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    display: inline-block !important;
}

#modalGeradorCheckout .mkt-cg-quick-copy {
    align-self: flex-start !important;
    margin-top: 2px !important;
    border: 0 !important;
    background: transparent !important;
    color: #111216 !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    padding: 2px 0 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-quick-copy {
    color: #d5ff60 !important;
}

/* Step 2 Header Skip + Accordion Skip/Next Footer + Palette Color Swatch */
#modalGeradorCheckout .mkt-cg-step-head-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 4px !important;
}

#modalGeradorCheckout .mkt-cg-step-head-row .mkt-cg-step-title {
    margin: 0 !important;
}

#modalGeradorCheckout .mkt-cg-skip-pill {
    padding: 5px 11px !important;
    border-radius: 999px !important;
    border: 1.5px solid #d0d5df !important;
    background: #ffffff !important;
    color: #111216 !important;
    font-size: 11.5px !important;
    font-weight: 750 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: background 0.16s ease, border-color 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-skip-pill:hover {
    background: #111216 !important;
    border-color: #111216 !important;
    color: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-skip-pill {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-skip-pill:hover {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-acc-badge.is-skipped {
    background: #eceff4 !important;
    color: #5b616e !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-badge.is-skipped {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #9ca3af !important;
}

#modalGeradorCheckout .mkt-cg-acc-foot {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding-top: 10px !important;
    margin-top: 2px !important;
    border-top: 1px solid var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-acc-skip-btn {
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1.5px solid #d4dae3 !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-acc-skip-btn:hover {
    border-color: var(--cg-t) !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-acc-next-btn {
    padding: 8px 14px !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: #111216 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    cursor: pointer !important;
    transition: transform 0.14s ease, opacity 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-acc-next-btn:hover {
    opacity: 0.9 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-next-btn {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-palette-input-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-palette-input-row .mkt-cg-input {
    flex: 1 1 auto !important;
}

#modalGeradorCheckout .mkt-cg-color-pick-btn {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 42px !important;
    padding: 0 13px !important;
    border-radius: 12px !important;
    border: 1.5px solid #d4dae3 !important;
    background: #f5f7fa !important;
    color: #111216 !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-color-pick-btn input[type="color"] {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-color-pick-btn {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #f3f4f6 !important;
}

/* Etapa 3: Acordeão Elegante e Bem Dividido */
#modalGeradorCheckout .mkt-cg-rev-acc-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc {
    border-radius: 15px !important;
    background: var(--cg-sf) !important;
    border: 1.5px solid var(--cg-b) !important;
    overflow: hidden !important;
    transition: border-color 0.2s ease !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc.is-open {
    border-color: var(--cg-bh) !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-head {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--cg-t) !important;
    cursor: pointer !important;
    text-align: left !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-left {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-left svg {
    width: 15px !important;
    height: 15px !important;
    color: #10b981 !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-left strong {
    font-size: 13px !important;
    font-weight: 800 !important;
    color: var(--cg-t) !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-right {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-rev-count-pill {
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 9px !important;
    border-radius: 999px !important;
    background: var(--cg-inp) !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc.is-open .mkt-cg-acc-chev {
    transform: rotate(180deg) !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-body {
    display: none !important;
    padding: 6px 14px 13px !important;
    border-top: 1px solid var(--cg-b) !important;
    flex-direction: column !important;
    gap: 9px !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc.is-open .mkt-cg-rev-acc-body {
    display: flex !important;
}

#modalGeradorCheckout .mkt-cg-rev-ans-val {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: var(--cg-t) !important;
    line-height: 1.4 !important;
}

#modalGeradorCheckout .mkt-cg-rev-val-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-top: 3px !important;
}

#modalGeradorCheckout .mkt-cg-rev-val-pill {
    display: inline-block !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: var(--cg-inp) !important;
    border: 1px solid var(--cg-b) !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    color: var(--cg-t) !important;
    line-height: 1.3 !important;
}

#modalGeradorCheckout .mkt-cg-rev-val-pill.is-featured {
    background: rgba(16, 185, 129, 0.12) !important;
    border-color: rgba(16, 185, 129, 0.4) !important;
    color: #065f46 !important;
    font-weight: 750 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-rev-val-pill.is-featured {
    background: rgba(213, 255, 96, 0.16) !important;
    border-color: rgba(213, 255, 96, 0.45) !important;
    color: #d5ff60 !important;
}

#modalGeradorCheckout .mkt-cg-rev-acc-foot {
    display: flex !important;
    justify-content: flex-end !important;
    padding-top: 4px !important;
}

/* =========================================================
   REFINO ROUND 6: HIERARQUIA, RESPIRO, RECOMPENSAS & FILTRO DE CLIENTE IDEAL
   ========================================================= */
#modalGeradorCheckout .mkt-cg-dynamic-wrap {
    gap: 12px !important;
    margin-bottom: 12px !important;
}

#modalGeradorCheckout .mkt-cg-acc-body {
    padding: 12px 15px 16px !important;
    gap: 16px !important;
}

#modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row + .mkt-cg-field-row {
    padding-top: 14px !important;
    border-top: 1px dashed var(--cg-b) !important;
}

#modalGeradorCheckout .mkt-cg-acc-item.is-all-done {
    border-color: rgba(16, 185, 129, 0.48) !important;
    animation: cgCompletePulse 0.6s var(--cg-e) 1 !important;
}

#modalGeradorCheckout .mkt-cg-acc-badge.is-all-done {
    background: #059669 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.25) !important;
    animation: cgCheckPop 0.24s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-readiness {
    transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease !important;
}

#modalGeradorCheckout .mkt-cg-readiness.is-complete {
    background: rgba(16, 185, 129, 0.08) !important;
    border-color: rgba(16, 185, 129, 0.35) !important;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.1) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-readiness.is-complete {
    background: rgba(213, 255, 96, 0.08) !important;
    border-color: rgba(213, 255, 96, 0.4) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-badge.is-all-done {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-combobox-box {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}

#modalGeradorCheckout .mkt-cg-combobox-box .mkt-cg-niche-input {
    width: 100% !important;
    padding-right: 36px !important;
}

#modalGeradorCheckout .mkt-cg-niche-clear {
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) scale(0.85) !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: rgba(17, 18, 22, 0.08) !important;
    color: #374151 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.16s ease, transform 0.16s ease, background 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-niche-clear.is-visible {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(-50%) scale(1) !important;
}

#modalGeradorCheckout .mkt-cg-niche-clear:hover {
    background: #111216 !important;
    color: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-clear {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #e5e7eb !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-clear:hover {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

#modalGeradorCheckout .mkt-cg-chip-x {
    margin-left: 3px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    opacity: 0.85 !important;
}

#modalGeradorCheckout .mkt-cg-preload-note {
    padding: 7px 11px !important;
    border-radius: 10px !important;
    background: rgba(16, 185, 129, 0.09) !important;
    border: 1px solid rgba(16, 185, 129, 0.25) !important;
    color: #065f46 !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    animation: cgCardFadeIn 0.2s var(--cg-e) both !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-preload-note {
    background: rgba(213, 255, 96, 0.1) !important;
    border-color: rgba(213, 255, 96, 0.28) !important;
    color: #d5ff60 !important;
}

/* Audience Visual Filter (Cliente Ideal) */
#modalGeradorCheckout .mkt-cg-aud-filter {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

#modalGeradorCheckout .mkt-cg-aud-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
}

#modalGeradorCheckout .mkt-cg-aud-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: var(--cg-tm) !important;
}

#modalGeradorCheckout .mkt-cg-aud-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

#modalGeradorCheckout .mkt-cg-aud-pill {
    padding: 6px 11px !important;
    border-radius: 10px !important;
    border: 1.5px solid #dde2ea !important;
    background: #f5f7fa !important;
    color: #111216 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    cursor: pointer !important;
    transition: transform 0.14s ease, border-color 0.16s ease, background 0.16s ease, color 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-aud-pill:hover {
    border-color: #111216 !important;
    background: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-aud-pill.is-selected {
    background: #111216 !important;
    border-color: #111216 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    animation: cgCheckPop 0.2s var(--cg-e) both !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-pill {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #e5e7eb !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-pill.is-selected {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

/* =========================================================
   ROUND 7: HIERARQUIA DE ARVORE, PROGRESSO POR GRUPO, ESTADOS VERDE/CINZA,
   BUSCA DE NICHO DINAMICA E MOTION DESIGN DO CRIADOR DE BRIEFING
   ========================================================= */

@keyframes cgNextFocusRing {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(17, 18, 22, 0.16), 0 6px 18px rgba(17, 18, 22, 0.06);
    }
    50% {
        box-shadow: 0 0 0 4px rgba(17, 18, 22, 0.1), 0 8px 22px rgba(17, 18, 22, 0.1);
    }
}

@keyframes cgNextFocusRingDark {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(213, 255, 96, 0.28), 0 6px 18px rgba(0, 0, 0, 0.35);
    }
    50% {
        box-shadow: 0 0 0 4px rgba(213, 255, 96, 0.16), 0 10px 24px rgba(213, 255, 96, 0.14);
    }
}

@keyframes cgGlassSweep {
    0% { transform: translateX(-160%) skewX(-22deg); opacity: 0; }
    25% { opacity: 0.55; }
    65% { transform: translateX(250%) skewX(-22deg); opacity: 0.55; }
    100% { transform: translateX(250%) skewX(-22deg); opacity: 0; }
}

@keyframes cgFloatingLift {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-2.5px); }
}

/* 1. Barra de Progresso em Cada Grupo do Acordeao */
#modalGeradorCheckout .mkt-cg-acc-head-main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    padding-right: 8px !important;
}

#modalGeradorCheckout .mkt-cg-acc-prog-track {
    width: 100% !important;
    max-width: 190px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: rgba(17, 18, 22, 0.09) !important;
    overflow: hidden !important;
    display: block !important;
}

#modalGeradorCheckout .mkt-cg-acc-prog-fill {
    display: block !important;
    height: 100% !important;
    width: 0%;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #10b981 0%, #059669 100%) !important;
    transition: width 0.34s var(--cg-e) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-prog-track {
    background: rgba(255, 255, 255, 0.12) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-prog-fill {
    background: linear-gradient(90deg, #d5ff60 0%, #22c55e 100%) !important;
}

/* 2. Hierarquia Visual Pai -> Card da Pergunta -> Sub-filtros -> Opcoes */
#modalGeradorCheckout .mkt-cg-acc-body {
    padding: 12px 13px 15px !important;
    gap: 12px !important;
}

#modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row {
    padding: 13px !important;
    border-radius: 14px !important;
    border: 1.5px solid #e6e9ef !important;
    background: #fafbfc !important;
    position: relative !important;
    transition: border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease !important;
}

#modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row + .mkt-cg-field-row {
    padding-top: 13px !important;
    border-top: 1.5px solid #e6e9ef !important;
}

#modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row.is-filled {
    border-color: rgba(16, 185, 129, 0.5) !important;
    background: rgba(16, 185, 129, 0.035) !important;
}

#modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row + .mkt-cg-field-row.is-filled {
    border-top: 1.5px solid rgba(16, 185, 129, 0.5) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row {
    background: rgba(255, 255, 255, 0.035) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row + .mkt-cg-field-row {
    border-top-color: rgba(255, 255, 255, 0.1) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-acc-body .mkt-cg-field-row.is-filled {
    border-color: rgba(213, 255, 96, 0.45) !important;
    background: rgba(213, 255, 96, 0.04) !important;
}

#modalGeradorCheckout .mkt-cg-field-status {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-next-cue {
    display: none !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    background: #111216 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-field-row.is-next-focus .mkt-cg-next-cue {
    display: inline-flex !important;
    animation: cgCheckPop 0.24s var(--cg-e) both !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-next-cue {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

/* Proximo Input com Animacao de Direcionamento Visual */
#modalGeradorCheckout.is-anim-enabled .mkt-cg-field-row.is-next-focus {
    border-color: #111216 !important;
    background: #ffffff !important;
    animation: cgNextFocusRing 2.1s ease-in-out infinite !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout.is-anim-enabled .mkt-cg-field-row.is-next-focus {
    border-color: #d5ff60 !important;
    background: rgba(255, 255, 255, 0.065) !important;
    animation: cgNextFocusRingDark 2.1s ease-in-out infinite !important;
}

/* Presets do Editor de Animacoes do Criador de Briefing */
#modalGeradorCheckout.is-anim-enabled.fx-satin-surface .mkt-cg-field-row.is-next-focus,
#modalGeradorCheckout.is-anim-enabled.fx-satin-surface .mkt-cg-acc-item.is-open {
    background-image: linear-gradient(145deg, rgba(255, 255, 255, 0.6) 0%, rgba(248, 250, 252, 0.2) 100%) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout.is-anim-enabled.fx-satin-surface .mkt-cg-field-row.is-next-focus,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout.is-anim-enabled.fx-satin-surface .mkt-cg-acc-item.is-open {
    background-image: linear-gradient(145deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.01) 100%) !important;
}

#modalGeradorCheckout.is-anim-enabled.fx-dual-ring .mkt-cg-field-row.is-next-focus::before {
    content: '' !important;
    position: absolute !important;
    inset: -2px !important;
    border-radius: inherit !important;
    border: 2px solid #111216 !important;
    pointer-events: none !important;
    opacity: 0.35 !important;
    animation: cgDualRingAlive 1.9s ease-out infinite !important;
}

#modalGeradorCheckout.is-anim-enabled.fx-glass-shimmer .mkt-cg-acc-next-btn.is-next-cta,
#modalGeradorCheckout.is-anim-enabled .mkt-cg-acc-next-btn.is-next-cta {
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 6px 16px rgba(16, 185, 129, 0.28) !important;
    background: #059669 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout.is-anim-enabled .mkt-cg-acc-next-btn.is-next-cta::after {
    content: '' !important;
    position: absolute !important;
    top: -40% !important;
    left: -50% !important;
    width: 45% !important;
    height: 180% !important;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%) !important;
    animation: cgGlassSweep 2.2s ease-in-out infinite !important;
}

#modalGeradorCheckout.is-anim-enabled.fx-floating-depth .mkt-cg-q-tile.is-selected {
    animation: cgFloatingLift 2.4s ease-in-out infinite !important;
    box-shadow: 0 6px 14px rgba(16, 185, 129, 0.14) !important;
}

/* 3. Indicador Geometrico Explícito (Check / Radio) em Todas Opcoes */
#modalGeradorCheckout .mkt-cg-ind {
    width: 15px !important;
    height: 15px !important;
    flex-shrink: 0 !important;
    border: 1.5px solid #cbd5e1 !important;
    background: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: transparent !important;
    transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease !important;
}

#modalGeradorCheckout .mkt-cg-ind.is-check {
    border-radius: 4.5px !important;
}

#modalGeradorCheckout .mkt-cg-ind.is-radio {
    border-radius: 50% !important;
}

#modalGeradorCheckout .mkt-cg-ind svg {
    width: 10px !important;
    height: 10px !important;
    stroke-width: 3 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-ind {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
}

/* 4. Estado Selecionado VERDE + Irmaos Nao Escolhidos Acinzentados (.has-selection) */
#modalGeradorCheckout .mkt-cg-chip,
#modalGeradorCheckout .mkt-cg-aud-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
}

#modalGeradorCheckout .mkt-cg-q-tile.is-selected,
#modalGeradorCheckout .mkt-cg-chip.is-selected,
#modalGeradorCheckout .mkt-cg-aud-pill.is-selected {
    background: rgba(16, 185, 129, 0.12) !important;
    border-color: #10b981 !important;
    color: #065f46 !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    animation: cgCheckPop 0.22s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-q-tile.is-selected .mkt-cg-q-tile-check,
#modalGeradorCheckout .mkt-cg-chip.is-selected .mkt-cg-ind,
#modalGeradorCheckout .mkt-cg-aud-pill.is-selected .mkt-cg-ind {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-q-tiles.has-selection > .mkt-cg-q-tile:not(.is-selected),
#modalGeradorCheckout .mkt-cg-chips-wrap.has-selection > .mkt-cg-chip:not(.is-selected),
#modalGeradorCheckout .mkt-cg-aud-pills.has-selection > .mkt-cg-aud-pill:not(.is-selected) {
    opacity: 0.54 !important;
    background: #f1f3f6 !important;
    border-color: #e2e6ec !important;
    color: #6b7280 !important;
}

#modalGeradorCheckout .mkt-cg-q-tiles.has-selection > .mkt-cg-q-tile:not(.is-selected):hover,
#modalGeradorCheckout .mkt-cg-chips-wrap.has-selection > .mkt-cg-chip:not(.is-selected):hover,
#modalGeradorCheckout .mkt-cg-aud-pills.has-selection > .mkt-cg-aud-pill:not(.is-selected):hover {
    opacity: 0.94 !important;
    color: #111216 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tile.is-selected,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chip.is-selected,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-pill.is-selected {
    background: rgba(213, 255, 96, 0.14) !important;
    border-color: #d5ff60 !important;
    color: #d5ff60 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tile.is-selected .mkt-cg-q-tile-check,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chip.is-selected .mkt-cg-ind,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-pill.is-selected .mkt-cg-ind {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-q-tiles.has-selection > .mkt-cg-q-tile:not(.is-selected),
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-chips-wrap.has-selection > .mkt-cg-chip:not(.is-selected),
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-pills.has-selection > .mkt-cg-aud-pill:not(.is-selected) {
    opacity: 0.45 !important;
}

/* 5. Sub-grupos Organizados em Cliente Ideal */
#modalGeradorCheckout .mkt-cg-aud-group {
    background: #ffffff !important;
    border: 1px solid #e5e8ef !important;
    border-radius: 12px !important;
    padding: 9px 10px !important;
    gap: 7px !important;
}

#modalGeradorCheckout .mkt-cg-aud-group.is-group-done {
    border-color: rgba(16, 185, 129, 0.35) !important;
}

#modalGeradorCheckout .mkt-cg-aud-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

#modalGeradorCheckout .mkt-cg-aud-hint {
    font-size: 10.5px !important;
    font-weight: 700 !important;
    color: #6b7280 !important;
}

#modalGeradorCheckout .mkt-cg-aud-group.is-group-done .mkt-cg-aud-hint {
    color: #059669 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-aud-group {
    background: rgba(255, 255, 255, 0.03) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

/* 6. Busca de Segmento Dinamica (Search-first Dropdown) */
#modalGeradorCheckout .mkt-cg-search-ico {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #6b7280 !important;
    display: inline-flex !important;
    pointer-events: none !important;
}

#modalGeradorCheckout .mkt-cg-combobox-box .mkt-cg-niche-input {
    padding-left: 35px !important;
}

#modalGeradorCheckout .mkt-cg-niche-dropdown {
    display: none !important;
    flex-direction: column !important;
    gap: 4px !important;
    max-height: 224px !important;
    overflow-y: auto !important;
    padding: 6px !important;
    border-radius: 13px !important;
    border: 1.5px solid #d4dae3 !important;
    background: #ffffff !important;
    box-shadow: 0 10px 26px rgba(17, 18, 22, 0.09) !important;
}

#modalGeradorCheckout .mkt-cg-niche-dropdown.is-open {
    display: flex !important;
    animation: cgCardFadeIn 0.18s var(--cg-e) both !important;
}

#modalGeradorCheckout .mkt-cg-niche-dd-title {
    font-size: 10.5px !important;
    font-weight: 750 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: #6b7280 !important;
    padding: 3px 6px !important;
}

#modalGeradorCheckout .mkt-cg-niche-dd-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
}

#modalGeradorCheckout .mkt-cg-niche-opt {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 8px 10px !important;
    border-radius: 9px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #111216 !important;
    text-align: left !important;
    cursor: pointer !important;
    font-size: 12.5px !important;
    font-weight: 650 !important;
    transition: background 0.14s ease, border-color 0.14s ease !important;
}

#modalGeradorCheckout .mkt-cg-niche-opt:hover {
    background: #f3f5f8 !important;
}

#modalGeradorCheckout .mkt-cg-niche-opt.is-selected {
    background: rgba(16, 185, 129, 0.1) !important;
    border-color: rgba(16, 185, 129, 0.35) !important;
    color: #065f46 !important;
}

#modalGeradorCheckout .mkt-cg-niche-opt-cat {
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #6b7280 !important;
    flex-shrink: 0 !important;
}

#modalGeradorCheckout .mkt-cg-niche-dd-empty {
    padding: 8px 10px !important;
    font-size: 12px !important;
    color: #4b5563 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-dropdown {
    background: #141923 !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-opt {
    color: #f3f4f6 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-niche-opt:hover {
    background: rgba(255, 255, 255, 0.08) !important;
}

/* 7. Servicos / Produtos Separados com Clareza */
#modalGeradorCheckout .mkt-cg-srv-add-box,
#modalGeradorCheckout .mkt-cg-srv-suggest-block,
#modalGeradorCheckout .mkt-cg-srv-active-box {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 10px !important;
    border-radius: 12px !important;
    border: 1px solid #e5e8ef !important;
    background: #ffffff !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-add-box,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-suggest-block,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-srv-active-box {
    background: rgba(255, 255, 255, 0.03) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

#modalGeradorCheckout .mkt-cg-substep-lbl {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: #4b5563 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-substep-lbl {
    color: #cbd5e1 !important;
}

#modalGeradorCheckout .mkt-cg-srv-sug-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

#modalGeradorCheckout .mkt-cg-mini-pill-btn {
    padding: 4px 10px !important;
    border-radius: 999px !important;
    border: 1px solid #111216 !important;
    background: #111216 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: opacity 0.15s ease, transform 0.15s ease !important;
}

#modalGeradorCheckout .mkt-cg-mini-pill-btn:hover {
    opacity: 0.88 !important;
    transform: translateY(-1px) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-mini-pill-btn {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
}

/* =========================================================================
   STEP 1 GREEN CONFIRMATION + GUIDED FOCUS + STEP 2 DECISION CARDS
   ========================================================================= */
#modalGeradorCheckout .mkt-cg-field .mkt-cg-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

#modalGeradorCheckout .mkt-cg-field-cue {
    display: none;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: #111216;
    color: #ffffff;
    line-height: 1.3;
    flex-shrink: 0;
}

#modalGeradorCheckout .mkt-cg-field.is-next-focus .mkt-cg-field-cue {
    display: inline-flex;
}

#modalGeradorCheckout .mkt-cg-field.is-next-focus .mkt-cg-input {
    border-color: #111216 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(17, 18, 22, 0.07);
}

#modalGeradorCheckout.is-anim-enabled .mkt-cg-field.is-next-focus .mkt-cg-input {
    animation: cgNextFocusRing 2.1s ease-in-out infinite;
}

#modalGeradorCheckout.is-anim-enabled.fx-dual-ring .mkt-cg-field.is-next-focus .mkt-cg-input {
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(17, 18, 22, 0.22);
}

#modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-label::after {
    background: #10b981 !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-input {
    border-color: rgba(16, 185, 129, 0.72) !important;
    background: rgba(16, 185, 129, 0.045) !important;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.1) !important;
}

#modalGeradorCheckout .mkt-cg-contact-block {
    transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

#modalGeradorCheckout .mkt-cg-contact-block.is-all-valid {
    border-color: rgba(16, 185, 129, 0.56) !important;
    background: rgba(16, 185, 129, 0.03) !important;
    box-shadow: 0 8px 24px rgba(16, 185, 129, 0.08);
}

#modalGeradorCheckout #mktCgStep1Hint.is-valid {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 999px;
    background: rgba(16, 185, 129, 0.12);
    border: 1px solid rgba(16, 185, 129, 0.34);
    color: #065f46;
    font-size: 11.5px;
    font-weight: 700;
}

#modalGeradorCheckout .mkt-cg-btn-next.is-ready-cta {
    position: relative;
    overflow: hidden;
    background: #059669 !important;
    border-color: #059669 !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(5, 150, 105, 0.28) !important;
}

#modalGeradorCheckout .mkt-cg-btn-next.is-ready-cta:hover {
    background: #047857 !important;
    border-color: #047857 !important;
}

#modalGeradorCheckout.is-anim-enabled.fx-glass-shimmer .mkt-cg-btn-next.is-ready-cta::after,
#modalGeradorCheckout.is-anim-enabled .mkt-cg-btn-next.is-ready-cta::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 20%, rgba(255, 255, 255, 0.28) 50%, transparent 80%);
    transform: translateX(-120%);
    animation: cgGlassSweep 2.6s ease-in-out infinite;
    pointer-events: none;
}

/* Step 2 Decision Choice Grid (Criador de Briefing Pattern) */
#modalGeradorCheckout .mkt-cg-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 10px;
}

#modalGeradorCheckout .mkt-cg-choice-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    min-height: 168px;
    padding: 22px 14px 20px;
    border-radius: 18px;
    border: 1.5px solid #e2e8f0;
    background: #ffffff;
    font-family: inherit;
    color: inherit;
    cursor: pointer;
    overflow: hidden;
    transition: transform 0.22s var(--cg-e), border-color 0.22s ease, box-shadow 0.22s ease, opacity 0.22s ease, background 0.22s ease;
}

#modalGeradorCheckout .mkt-cg-choice-card:hover {
    border-color: #cbd5e1;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
}

#modalGeradorCheckout .mkt-cg-choice-grid:has(.mkt-cg-choice-card.is-selected) .mkt-cg-choice-card:not(.is-selected) {
    opacity: 0.62;
    background: #f8fafc;
}

#modalGeradorCheckout .mkt-cg-choice-grid:has(.mkt-cg-choice-card.is-selected) .mkt-cg-choice-card:not(.is-selected):hover {
    opacity: 0.92;
    background: #ffffff;
}

#modalGeradorCheckout .mkt-cg-choice-card.is-selected {
    border-color: #111216;
    background: #ffffff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.1), 0 0 0 1px #111216;
    opacity: 1;
}

#modalGeradorCheckout.is-anim-enabled.fx-dual-ring .mkt-cg-choice-card.is-selected {
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #111216, 0 12px 28px rgba(15, 23, 42, 0.14);
}

#modalGeradorCheckout.is-anim-enabled.fx-floating-depth .mkt-cg-choice-card.is-selected {
    transform: translateY(-2px);
}

#modalGeradorCheckout .mkt-cg-choice-chk {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid #cbd5e1;
    background: #ffffff;
    color: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 900;
    opacity: 0;
    transform: scale(0.72);
    transition: opacity 0.2s ease, transform 0.2s var(--cg-e), background 0.2s ease, border-color 0.2s ease;
}

#modalGeradorCheckout .mkt-cg-choice-card.is-selected .mkt-cg-choice-chk {
    opacity: 1;
    transform: scale(1);
    background: #111216;
    border-color: #111216;
    color: #ffffff;
}

#modalGeradorCheckout .mkt-cg-choice-ico {
    position: relative;
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: #f1f5f9;
    color: #334155;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: background 0.22s ease, color 0.22s ease, transform 0.22s var(--cg-e);
}

#modalGeradorCheckout .mkt-cg-choice-ico svg {
    width: 24px;
    height: 24px;
    position: relative;
    z-index: 1;
}

#modalGeradorCheckout .mkt-cg-choice-card.is-selected .mkt-cg-choice-ico {
    background: #111216;
    color: #ffffff;
}

#modalGeradorCheckout.is-anim-enabled.fx-glass-shimmer .mkt-cg-choice-card.is-selected .mkt-cg-choice-ico::after,
#modalGeradorCheckout.is-anim-enabled .mkt-cg-choice-card.is-selected .mkt-cg-choice-ico::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 25%, rgba(255, 255, 255, 0.25) 50%, transparent 75%);
    transform: translateX(-120%);
    animation: cgGlassSweep 2.8s ease-in-out infinite;
}

#modalGeradorCheckout .mkt-cg-choice-title {
    margin: 2px 0 0;
    font-family: inherit;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.28;
    letter-spacing: -0.02em;
    color: #0f172a;
}

#modalGeradorCheckout .mkt-cg-choice-sub {
    margin: 0;
    font-family: inherit;
    font-size: 11.5px;
    font-weight: 500;
    line-height: 1.38;
    color: #64748b;
}

#modalGeradorCheckout .mkt-cg-choice-note {
    margin-top: 14px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.45;
    color: #475569;
}

#modalGeradorCheckout .mkt-cg-choice-note svg {
    flex-shrink: 0;
    margin-top: 1px;
    color: #64748b;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-note {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.1);
    color: #94a3b8;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-note svg {
    color: #94a3b8;
}

/* Dark theme overrides for Step 1 confirmation + Step 2 choice cards */
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field-cue {
    background: #d5ff60;
    color: #090d12;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field.is-next-focus .mkt-cg-input {
    border-color: #d5ff60 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    box-shadow: 0 0 0 3px rgba(213, 255, 96, 0.14);
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-label::after {
    background: #d5ff60 !important;
    color: #090d12 !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field.is-valid .mkt-cg-input {
    border-color: rgba(213, 255, 96, 0.56) !important;
    background: rgba(213, 255, 96, 0.06) !important;
    box-shadow: 0 0 0 2px rgba(213, 255, 96, 0.1) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-contact-block.is-all-valid {
    border-color: rgba(213, 255, 96, 0.45) !important;
    background: rgba(213, 255, 96, 0.04) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout #mktCgStep1Hint.is-valid {
    background: rgba(213, 255, 96, 0.14);
    border-color: rgba(213, 255, 96, 0.35);
    color: #d5ff60;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-btn-next.is-ready-cta {
    background: #d5ff60 !important;
    border-color: #d5ff60 !important;
    color: #090d12 !important;
    box-shadow: 0 10px 24px rgba(213, 255, 96, 0.24) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-card {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.12);
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-grid:has(.mkt-cg-choice-card.is-selected) .mkt-cg-choice-card:not(.is-selected) {
    background: rgba(255, 255, 255, 0.02);
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-card.is-selected {
    border-color: #d5ff60;
    background: rgba(213, 255, 96, 0.06);
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35), 0 0 0 1px #d5ff60;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-card.is-selected .mkt-cg-choice-chk {
    background: #d5ff60;
    border-color: #d5ff60;
    color: #090d12;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-ico {
    background: rgba(255, 255, 255, 0.07);
    color: #e2e8f0;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-card.is-selected .mkt-cg-choice-ico {
    background: #d5ff60;
    color: #090d12;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-title {
    color: #f8fafc;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-choice-sub {
    color: #94a3b8;
}

@media (max-width: 480px) {
    #modalGeradorCheckout .mkt-cg-choice-card {
        min-height: 154px;
        padding: 18px 10px 16px;
    }
    #modalGeradorCheckout .mkt-cg-choice-ico {
        width: 50px;
        height: 50px;
        border-radius: 14px;
    }
    #modalGeradorCheckout .mkt-cg-choice-title {
        font-size: 14px;
    }
}

/* Card-level Pular / Seguir navigation & Outro custom option */
#modalGeradorCheckout .mkt-cg-outro-bar {
    margin-top: 9px !important;
}

#modalGeradorCheckout .mkt-cg-card-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-top: 11px !important;
    padding-top: 9px !important;
    border-top: 1px dashed rgba(15, 23, 42, 0.11) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-card-nav {
    border-top-color: rgba(255, 255, 255, 0.11) !important;
}

#modalGeradorCheckout .mkt-cg-card-skip {
    padding: 6px 12px !important;
    border-radius: 999px !important;
    border: 1.5px solid #d4dae3 !important;
    background: transparent !important;
    color: var(--cg-tm) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    transition: border-color 0.16s ease, color 0.16s ease, transform 0.14s ease !important;
}

#modalGeradorCheckout .mkt-cg-card-skip:hover {
    border-color: var(--cg-t) !important;
    color: var(--cg-t) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-card-skip {
    border-color: rgba(255, 255, 255, 0.2) !important;
}

#modalGeradorCheckout .mkt-cg-card-next {
    padding: 7px 14px !important;
    border-radius: 999px !important;
    border: 1px solid #111216 !important;
    background: #111216 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    transition: background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, transform 0.14s ease !important;
}

#modalGeradorCheckout .mkt-cg-card-next:hover {
    opacity: 0.92 !important;
    transform: translateY(-1px) !important;
}

body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-card-next {
    background: #0b0f16 !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
    color: #ffffff !important;
}

#modalGeradorCheckout .mkt-cg-field-row.is-filled .mkt-cg-card-next,
body:not(.theme-horizon):not([data-theme="horizon"]) #modalGeradorCheckout .mkt-cg-field-row.is-filled .mkt-cg-card-next {
    background: #059669 !important;
    border-color: #059669 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(5, 150, 105, 0.28) !important;
}


