/* Campaign presentation matching the supplied reference; admin and home keep their theme. */
body.campaign-reference { background:#f3f5f7; color:#102335; }
.campaign-reference .app-main { background:#dfe3e8!important; color:#102335; border-radius:0; }
.campaign-reference .header-app-header.campanha { position:relative!important; top:0!important; z-index:auto!important; background:#000; }
body.campaign-reference .header-app-header.campanha .header-app-header-container { background:#000!important; }
.campaign-reference .header-app-header.campanha .campaign-brand-row { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; min-height:80px; padding:8px 0 20px!important; text-align-last:auto!important; }
.campaign-reference .campaign-brand-row>a.flex-grow-1 { grid-column:2; grid-row:1; justify-self:center; }
.campaign-reference .header-app-header.campanha .campaign-brand-row a .header-app-brand { display:block!important; visibility:visible!important; width:auto; height:44px; max-width:160px; max-height:44px; object-fit:contain; }
.campaign-reference .campaign-brand-row>button { grid-column:1; grid-row:1; margin:0!important; }
.campaign-reference .campaign-brand-row>a.btn { display:inline-block!important; }
.campaign-reference .black-bar.campanha { height:0; }
.campaign-reference .app-main { position:relative; margin-top:-18px; padding-top:0!important; background:linear-gradient(to bottom,transparent 18px,#dfe3e8 18px)!important; }
.campaign-reference .custom-content-wrapper [data-bs-target="#modal-consultaCompras"] { background:#171717!important; color:white!important; border:0; }
.campaign-reference .campanha-preco { color:#102335; }
.campaign-reference .campanha-preco .tag.bg-cor-primaria { background:var(--site-color-primary,#000)!important; color:var(--site-color-primary-text,#fff)!important; font-weight:800; }
.campaign-reference .vendasExpressNumsSelect.v2 { width:100%; gap:4px; }
.campaign-reference .app-vendas-express .vendasExpressNumsSelect.v2 .item { width:calc((100% - 8px)/3); min-height:80px; margin:0!important; border:0!important; border-radius:6px; background:#000!important; box-shadow:none; transform:none; overflow:hidden; }
.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content { background:var(--site-color-quota,#000)!important; color:var(--site-color-quota-text,#fff)!important; min-height:80px; border:0; border-radius:6px; }
.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content h3,
.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content p { color:#fff!important; }
.campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular .item-content { background:#c2fbd0!important; border:2px solid #27cf62; }
.campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular .item-content h3,
.campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular .item-content p { color:#102335!important; }
.campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular:before { background:#198754; padding:1px 8px; width:auto; min-width:70%; font-size:10px; }
.campaign-reference .vendasExpressNumsSelect.v2 .item:hover { filter:brightness(1.12); }
.campaign-reference .vendasExpressNums .numeroChange { background:transparent; color:#263746; width:32px; height:40px; padding:0; font-size:23px; transform:none; }
.campaign-reference .vendasExpressNums .removeNumero { color:#98a6b6; }
.campaign-reference .vendasExpressNums .qty { background:#fff!important; color:#102335!important; border:1px solid #d4dce5; border-radius:6px; }
.campaign-reference .vendasExpressNums { margin-top:0; }
.campaign-reference .campaign-checkout-row { gap:6px; align-items:stretch; margin-top:6px; }
.campaign-reference .campaign-checkout-row>.vendasExpressNums { flex:1 1 48%; min-width:0; margin-right:0!important; }
.campaign-reference .campaign-checkout-row>.vendasExpressNums .card-body { height:100%; }
.campaign-reference .campaign-checkout-row>.campaign-purchase { flex:1 1 52%; min-width:0; }
.campaign-reference button.campaign-purchase,
.campaign-reference button#add_to_cart.campaign-purchase { background:var(--site-color-purchase,#198754)!important; color:var(--site-color-purchase-text,#fff)!important; border:0!important; border-radius:6px!important; padding:10px 14px; min-height:58px; transform-origin:center; animation:campaign-purchase-glow 2.8s ease-in-out infinite; }
.campaign-reference .campaign-purchase-content { display:flex; align-items:center; justify-content:center; gap:12px; text-align:left; }
.campaign-reference .campaign-purchase-content>i { font-size:24px; }
.campaign-reference .campaign-purchase-copy { display:flex; flex-direction:column; gap:4px; line-height:1.2; }
.campaign-reference .campaign-purchase-label { font-size:15px; font-weight:600; white-space:nowrap; }
.campaign-reference .campaign-purchase #total { color:#fff!important; opacity:1!important; font-size:20px!important; font-weight:800; }
/* A small visual pulse that does not move the surrounding purchase controls. */
@keyframes campaign-purchase-glow {
  0%, 100% { transform:scale(1); box-shadow:0 2px 4px rgba(0,0,0,.14),0 0 0 0 rgba(var(--site-purchase-rgb,25,135,84),0); }
  50% { transform:scale(1.015); box-shadow:0 4px 10px rgba(0,0,0,.16),0 0 0 3px rgba(var(--site-purchase-rgb,25,135,84),.18); }
}
.campaign-reference button.campaign-purchase:is(:hover,:focus-visible,:active) { animation:none!important; transform:none!important; box-shadow:0 3px 10px rgba(var(--site-purchase-rgb,25,135,84),.28); }
.campaign-reference button.campaign-purchase:focus-visible { outline:2px solid currentColor; outline-offset:-4px; }
.campaign-reference button.campaign-purchase:hover { background:#157347!important; transform:none!important; }
.campaign-reference button.campaign-purchase:is(:disabled,[aria-busy="true"]) { animation:none!important; transform:none!important; box-shadow:none; opacity:.65; }
@media(prefers-reduced-motion:reduce){.campaign-reference button.campaign-purchase{animation:none!important;transform:none!important}}
.campaign-reference :is(#cotas-container,.cotas_modal) .sc-3f9a15f1-7 { border-radius:6px!important; margin-bottom:4px!important; padding:3px!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .reservada { background:#198754!important; color:white!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .disponivel { background:#fff!important; color:#102335!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .sc-3f9a15f1-7 span.new_gradient_anime { display:inline-flex; align-items:center; justify-content:center; border-radius:4px!important; padding:3px 8px!important; height:auto!important; min-height:24px; font-size:12px!important; font-weight:700!important; animation:none!important; background-image:none!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .reservada span.new_gradient_anime { background:#fff!important; color:#102335!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .disponivel span.new_gradient_anime { background:#95a1b1!important; color:#fff!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .reservada .prize,
.campaign-reference :is(#cotas-container,.cotas_modal) .reservada .prize+span { color:#fff!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .disponivel .prize,
.campaign-reference :is(#cotas-container,.cotas_modal) .disponivel .prize+span { color:#102335!important; }
.campaign-reference :is(#cotas-container,.cotas_modal) .prize { text-align:center; flex:1; font-size:11px; }
.campaign-reference :is(#cotas-container,.cotas_modal) .prize+span { font-size:11px!important; }
@media(max-width:380px){.campaign-reference .campaign-purchase-content{gap:6px}.campaign-reference .campaign-purchase-label{font-size:12px}.campaign-reference .campaign-purchase #total{font-size:17px!important}.campaign-reference button.campaign-purchase{padding:8px}.campaign-reference .vendasExpressNums .numeroChange{width:26px}}

.campaign-reference .header-app-header.campanha,.campaign-reference .header-app-header.campanha .header-app-header-container{background:var(--site-color-primary,#000)!important;color:var(--site-color-primary-text,#fff)!important}.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content{background:var(--site-color-quota,#000)!important;color:var(--site-color-quota-text,#fff)!important}.campaign-reference button.campaign-purchase:hover{background:color-mix(in srgb,var(--site-color-purchase,#198754) 88%,#000)!important}

.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content h3,.campaign-reference .vendasExpressNumsSelect.v2 .item .item-content p{color:var(--site-color-quota-text,#fff)!important}.campaign-reference .campaign-purchase-label,.campaign-reference .campaign-purchase #total{color:var(--site-color-purchase-text,#fff)!important}


.campaign-reference .campaign-brand-row>a.btn{grid-column:3;grid-row:1;justify-self:end;color:var(--site-color-primary-text,#fff)!important}.campaign-reference .campaign-brand-row>button{justify-self:start;color:var(--site-color-primary-text,#fff)!important}

/* Compact campaign cover, with its rounded top overlapping the header. */
.campaign-reference .campanha-header.custom-highlight-card { border-radius:12px; overflow:hidden; }
.campaign-reference .campanha-header .custom-image { height:auto!important; aspect-ratio:16 / 9; }
.campaign-reference .campanha-header .custom-image .SorteioTpl_imagem__2GXxI { display:block; width:100%; height:100%; object-fit:cover; object-position:center; border-radius:0; }
.campaign-reference .campanha-header.custom-highlight-card::before { background:linear-gradient(to bottom,transparent 55%,rgba(0,0,0,.2)); pointer-events:none; }
.campaign-reference .campanha-header .custom-content-wrapper { background:rgba(0,0,0,.48); }
