/* Public light/dark appearance. Accent controls continue to use the palette. */
html[data-site-theme="light"] body {
  background: var(--site-theme-bg, #f3f4f6);
  color: var(--site-theme-text, #102335);
}
html[data-site-theme="dark"] body {
  background: var(--site-theme-bg, #101216) !important;
  color: var(--site-theme-text, #f3f4f6) !important;
  color-scheme: dark;
}
html[data-site-theme="dark"] body.campaign-reference .app-main,
html[data-site-theme="dark"] .app-main {
  background: var(--site-theme-panel, #181b21) !important;
  color: var(--site-theme-text, #f3f4f6) !important;
}
html[data-site-theme="dark"] .app-card:not(.btn),
html[data-site-theme="dark"] .app-card.card:not(.btn),
html[data-site-theme="dark"] .campaign-description,
html[data-site-theme="dark"] .campaign-description > summary,
html[data-site-theme="dark"] .campaign-completed,
html[data-site-theme="dark"] .completed-winner-card,
html[data-site-theme="dark"] .completed-winner-pending,
html[data-site-theme="dark"] .completed-prize-row,
html[data-site-theme="dark"] .support-card,
html[data-site-theme="dark"] .detalhes {
  background-color: var(--site-theme-card, #22262e) !important;
  color: var(--site-theme-text, #f3f4f6) !important;
  border-color: var(--site-theme-border, #3d4552) !important;
}
html[data-site-theme="dark"] .campaign-description > summary,
html[data-site-theme="dark"] .campaign-description-scroll,
html[data-site-theme="dark"] .campaign-description-scroll p,
html[data-site-theme="dark"] .completed-section-title,
html[data-site-theme="dark"] .completed-winner-card p,
html[data-site-theme="dark"] .completed-draw-meta,
html[data-site-theme="dark"] .support-card label {
  color: var(--site-theme-text, #f3f4f6) !important;
}
html[data-site-theme="dark"] .campaign-description[open] > summary {
  border-bottom-color: var(--site-theme-border, #3d4552) !important;
}
html[data-site-theme="dark"] input:not([type="hidden"]),
html[data-site-theme="dark"] select,
html[data-site-theme="dark"] textarea,
html[data-site-theme="dark"] .vendasExpressNums .qty {
  background-color: var(--site-theme-input, #15181e) !important;
  color: var(--site-theme-text, #f3f4f6) !important;
  border-color: var(--site-theme-border, #3d4552) !important;
}
html[data-site-theme="dark"] input::placeholder,
html[data-site-theme="dark"] textarea::placeholder {
  color: var(--site-theme-muted, #b6becb) !important;
  opacity: 1;
}
html[data-site-theme="dark"] .campaign-reference .campanha-preco,
html[data-site-theme="dark"] .campaign-reference .campanha-preco *:not(.tag),
html[data-site-theme="dark"] .campaign-reference .vendasExpressNums .numeroChange {
  color: var(--site-theme-text, #f3f4f6);
}
html[data-site-theme="dark"] .campaign-reference .vendasExpressNums .numeroChange {
  background: transparent;
}
html[data-site-theme="dark"] .campaign-reference button.campaign-purchase,
html[data-site-theme="dark"] .campaign-reference button#add_to_cart.campaign-purchase {
  background: var(--site-color-purchase, #198754) !important;
  color: var(--site-color-purchase-text, #ffffff) !important;
}
html[data-site-theme="dark"] .campaign-reference .vendasExpressNumsSelect.v2 .item {
  background: color-mix(in srgb, var(--site-color-quota, #22262e) 72%, #000) !important;
}
html[data-site-theme="dark"] .campaign-reference .campaign-description-scroll a,
html[data-site-theme="dark"] .campaign-reference .app-card a {
  color: var(--site-theme-text, #f3f4f6);
}
html[data-site-theme="dark"] .campaign-reference .campaign-description-scroll a:hover,
html[data-site-theme="dark"] .campaign-reference .app-card a:hover {
  text-decoration: underline;
}
html[data-site-theme="dark"] .campaign-reference .campanha-header.custom-highlight-card {
  background: var(--site-theme-card, #22262e) !important;
}
html[data-site-theme="dark"] .campaign-legal-footer {
  background: var(--site-theme-panel, #181b21) !important;
  color: var(--site-theme-muted, #b6becb) !important;
}

/* Forms, navigation and secondary surfaces share the dark appearance. */
html[data-site-theme="dark"] :is(.modal-content, .modal-header, .modal-footer, .offcanvas, .accordion-item, .accordion-button, .dropdown-menu) {
  background-color: var(--site-theme-card) !important;
  color: var(--site-theme-text) !important;
  border-color: var(--site-theme-border) !important;
}
html[data-site-theme="dark"] :is(.modal, .offcanvas) :is(.text-black, .text-dark, label, .modal-title),
html[data-site-theme="dark"] :is(.support-card h2, .support-heading h1, .completed-winner-card p),
html[data-site-theme="dark"] .app-title :is(h1, .app-title-desc),
html[data-site-theme="dark"] .rifa-public-ranking .app-title h1 {
  color: var(--site-theme-text) !important;
}
html[data-site-theme="dark"] :is(.text-muted, .support-heading > span, .app-title-desc) {
  color: var(--site-theme-muted) !important;
}
html[data-site-theme="dark"] .btn-close { filter: invert(1) grayscale(100%) brightness(200%); }
html[data-site-theme="dark"] :is(.bg-white, .bg-light):not(#img-qrcode),
html[data-site-theme="dark"] .completed-draw-meta strong,
html[data-site-theme="dark"] .completed-prize-number,
html[data-site-theme="dark"] .SorteioTpl_sorteioTpl__2s2Wu:not(.custom-highlight-card) {
  background-color: var(--site-theme-card) !important;
  color: var(--site-theme-text) !important;
}
html[data-site-theme="dark"] .app-home .app-helpers .col-contato-display > .bg-white {
  background-color: var(--site-theme-card) !important;
}
html[data-site-theme="dark"] .app-home .app-helpers .col-contato-display :is(a, h3, p) {
  color: var(--site-theme-text) !important;
}
html[data-site-theme="dark"] .completed-prize-row.is-awarded {
  background-color: #17663f !important;
  color: #fff !important;
}
html[data-site-theme="dark"] .compra-status {
  background: var(--site-theme-panel) !important;
}
html[data-site-theme="dark"] .compra-status :is(.app-alerta-msg--txt, .app-alerta-msg--titulo, .app-alerta-msg--txt p) {
  color: var(--site-theme-text) !important;
}
html[data-site-theme="dark"] :is(.border-bottom, .border-top, .border-dark) { border-color: var(--site-theme-border) !important; }
html[data-site-theme="dark"] :is(input, select, textarea):focus-visible,
html[data-site-theme="dark"] :is(.campaign-description > summary, .campaign-description-scroll):focus-visible {
  outline: 2px solid var(--site-theme-text);
  outline-offset: 2px;
  border-color: var(--site-color-primary) !important;
}
/* Keep the recommended quantity distinct from the regular palette buttons. */
html[data-site-theme] .campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular .item-content {
  background: #c2fbd0 !important;
  color: #102335 !important;
  border: 2px solid #27cf62;
}
html[data-site-theme] .campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular::before {
  background: #198754;
  color: #fff;
}
html[data-site-theme="dark"] .campaign-reference button.campaign-purchase:hover {
  background: color-mix(in srgb, var(--site-color-purchase) 88%, #000) !important;
}

/* The alert has its own color, unaffected by the site's palette or theme. */
.campaign-alert {
  max-width:600px; margin:10px auto; padding:12px 14px; border-radius:10px;
  background:var(--campaign-alert-color,var(--site-color-primary,#000000)) !important;
  color:var(--campaign-alert-text,#fff) !important; border:1px solid color-mix(in srgb,var(--campaign-alert-color,var(--site-color-primary,#000000)) 80%,#fff);
  box-shadow:0 4px 14px color-mix(in srgb,var(--campaign-alert-color,var(--site-color-primary,#000000)) 22%,transparent),inset 0 1px 0 #ffffff20;
  text-align:center; font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif; font-weight:500;
  line-height:1.2; letter-spacing:.05px; text-shadow:0 1px 1px #0003; overflow-wrap:anywhere;
}
.campaign-alert > strong {display:block; color:var(--campaign-alert-text,#fff) !important; font-size:clamp(16px,3.8vw,20px); line-height:1.06; font-weight:700; letter-spacing:.15px; text-shadow:none; text-transform:uppercase;}
.campaign-alert > span {display:block; color:var(--campaign-alert-text,#fff) !important; font-size:clamp(14px,3.4vw,17px); line-height:1.3; font-weight:500; text-transform:uppercase;}
.campaign-alert small {display:block; color:var(--campaign-alert-text,#fff) !important; margin-top:4px; font-size:10px; line-height:1.35; font-weight:400; letter-spacing:0;}
.campaign-alert-track {position:relative; margin:7px 0 4px; overflow:hidden; border-radius:3px; background:linear-gradient(90deg,#ffffff16,#ffffffb8);}
.campaign-alert-track [data-alert-progress] {position:absolute; inset:0; background:color-mix(in srgb,var(--campaign-alert-text,#fff) 20%,transparent); transform-origin:left;}
.campaign-alert-track [data-alert-timer] {position:relative; display:block; padding:4px; color:var(--campaign-alert-text,#fff) !important; font-size:14px; font-weight:400; line-height:1.2;}
.campaign-alert-time {font-weight:900; font-variant-numeric:tabular-nums;}

html[data-site-theme] .campaign-reference .vendasExpressNumsSelect.v2 .item.mais-popular .item-content :is(h3, p) {
  color: #102335 !important;
}
