/* Instinto Maternity — tema-base claro.
   Estrutura visual global. Fotografias nunca recebem filtros ou alterações de cor. */
:root{
  --maternity-bg:#f5f5f7;
  --maternity-card:#ffffff;
  --maternity-text:#111111;
  --maternity-muted:#6f7075;
  --maternity-border:#e1e2e6;
  --maternity-gold:#f5b400;
  --maternity-gold-light:#ffc83d;
  --maternity-gold-dark:#cb9000;
  --maternity-shadow:0 14px 38px rgba(17,17,17,.07);
}
html{color-scheme:light!important;background:var(--maternity-bg)!important}
body,.public-home,.admin-body{background:var(--maternity-bg)!important;color:var(--maternity-text)!important;font-family:"Montserrat",Arial,sans-serif!important}
body{line-height:1.55}
body::before,body::after{filter:none!important}
img{filter:none!important}
a{color:var(--maternity-gold-dark)}
a:hover{color:#111}

/* Marca */
.brand-mark{color:#111!important;gap:10px!important}
.brand-mark span{display:none!important}
.brand-logo{width:84px!important;height:84px!important;object-fit:contain!important;background:#f6f3e9!important;padding:5px!important;border:1px solid rgba(203,144,0,.26)!important;border-radius:50%!important;box-shadow:0 8px 24px rgba(0,0,0,.07)!important}
.brand-small .brand-logo{width:66px!important;height:66px!important}

/* Tipografia editorial, inspirada no Maternity antigo */
h1,h2,h3,h4,h5,h6{color:#111!important;font-family:"Montserrat",Arial,sans-serif!important;font-weight:800!important;letter-spacing:-.035em!important}
h1{font-size:clamp(38px,5.2vw,78px)!important;line-height:1.02!important}
h2{font-size:clamp(30px,3.7vw,54px)!important;line-height:1.08!important}
h3{font-size:clamp(20px,2.1vw,30px)!important;line-height:1.15!important}
p,li,small,label,span{color:inherit}
.eyebrow,.kicker,.hero-kicker,.label,.admin-label{color:var(--maternity-gold-dark)!important;font-weight:800!important;letter-spacing:.13em!important;text-transform:uppercase}

/* Campos e botões */
.button,button[type=submit],input[type=submit],.btn,.cta,.home-account-button{border-color:var(--maternity-gold)!important;background:var(--maternity-gold)!important;color:#111!important;box-shadow:none!important}
.button:hover,button[type=submit]:hover,input[type=submit]:hover,.btn:hover,.cta:hover,.home-account-button:hover{background:var(--maternity-gold-light)!important;color:#111!important;transform:translateY(-1px)}
.button-outline,.button-secondary,.secondary{background:transparent!important;color:#111!important;border-color:var(--maternity-gold-dark)!important}
input,select,textarea{background:#fff!important;color:#111!important;border-color:var(--maternity-border)!important}
input::placeholder,textarea::placeholder{color:#96979c!important}
input:focus,select:focus,textarea:focus{border-color:var(--maternity-gold)!important;box-shadow:0 0 0 4px rgba(245,180,0,.12)!important;background:#fff!important}

/* Cabeçalhos / navegação */
.topbar,.site-header,.home-header,.admin-topbar{background:rgba(255,255,255,.96)!important;color:#111!important;border-color:var(--maternity-border)!important;box-shadow:0 4px 20px rgba(0,0,0,.03)!important;backdrop-filter:blur(14px)}
.topbar a,.site-header a,.home-header a,.home-nav a,.home-login,.home-register{color:#222!important}
.topbar a:hover,.site-header a:hover,.home-header a:hover,.home-nav a:hover,.home-login:hover,.home-register:hover{color:var(--maternity-gold-dark)!important}

/* Cards / containers comuns */
.card,.panel,.box,.content-card,.competition-card,.dashboard-card,.profile-card,.checkout-card,.summary-card,.admin-card,.stat-card,.collection-group,.collection-photo-card,.photo-card,.result-card,.rank-card,.member-card,.product-card,.cart-card,.blog-card,.gallery-card{
  background:var(--maternity-card)!important;color:#111!important;border-color:var(--maternity-border)!important;box-shadow:var(--maternity-shadow)!important;
}
.card p,.panel p,.box p,.admin-card p,.stat-card p,.collection-group p,.rank-card p,.member-card p,.product-card p,.blog-card p{color:var(--maternity-muted)!important}
.muted,.help,.form-help,.description,.subtitle,.meta,.note{color:var(--maternity-muted)!important}

/* Autenticação */
.auth-shell{background:var(--maternity-bg)!important}
.brand-panel{background:#fff!important;border-right:1px solid var(--maternity-border)!important}
.brand-panel::after{border-color:rgba(245,180,0,.72)!important}
.brand-panel h1{color:#111!important}
.brand-panel>p:not(.eyebrow),.benefits{color:var(--maternity-muted)!important}
.form-panel{background:var(--maternity-bg)!important}
.form-heading h2{color:#111!important}
.field{color:#202020!important}
.field input,.field select,.field textarea{background:#fff!important;color:#111!important}

/* Home */
.public-home{background:var(--maternity-bg)!important}
.home-header{min-height:112px!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--maternity-border)!important}
.home-header .brand-logo{width:88px!important;height:88px!important}.home-footer .brand-logo{width:76px!important;height:76px!important}
.home-hero{min-height:690px!important;background:linear-gradient(120deg,#f6f6f8 0%,#fff 62%,#f7f2e8 100%)!important}
.home-hero h1{color:#111!important;font-size:clamp(48px,6.6vw,92px)!important}
.home-lead{color:#66686d!important;font-size:clamp(16px,1.45vw,20px)!important}
.home-access-card{background:#fff!important;border:1px solid var(--maternity-border)!important;box-shadow:var(--maternity-shadow)!important}
.home-access-card h2{color:#111!important}
.home-access-card p:not(.eyebrow){color:var(--maternity-muted)!important}
.home-section{background:var(--maternity-bg)!important}
.home-section-heading>p{color:var(--maternity-muted)!important}
.home-public-card{background:#fff!important;color:#111!important;border:1px solid var(--maternity-border)!important;box-shadow:0 12px 32px rgba(17,17,17,.05)!important}
.home-public-card:hover{border-color:var(--maternity-gold)!important;color:#111!important;box-shadow:0 18px 42px rgba(17,17,17,.08)!important}
.home-public-card p{color:var(--maternity-muted)!important}
.home-private-section{background:#fff!important;border:1px solid var(--maternity-border)!important;box-shadow:var(--maternity-shadow)!important}
.home-private-copy>p:not(.eyebrow),.home-private-list{color:var(--maternity-muted)!important}
.home-footer{background:#fff!important;border-top:1px solid var(--maternity-border)!important;color:#111!important}
.home-footer p{color:var(--maternity-muted)!important}
.home-winners{background:#fff!important;color:#111!important}
.home-winners>h2{background:#fff!important;color:#111!important;border-bottom:1px solid var(--maternity-border)!important}
.home-winner-caption span{color:#111!important}.home-winner-caption small{color:#777!important}
/* As imagens premiadas permanecem intactas */
.home-winner-image-wrap img,.gallery img,.photo img,.rank-card img,.collection-photo-card img{filter:none!important}

/* Admin */
.admin-sidebar{background:#fff!important;border-right:1px solid var(--maternity-border)!important;box-shadow:6px 0 24px rgba(0,0,0,.035)!important}
.admin-sidebar .brand-mark{border-bottom-color:var(--maternity-border)!important}
.admin-nav a,.admin-account a,.admin-account span{color:#303136!important}
.admin-nav a:hover,.admin-nav a.active{background:#fff7df!important;color:#111!important;border-color:#f1cf67!important}
.admin-main{background:var(--maternity-bg)!important;color:#111!important}
.admin-heading p{color:var(--maternity-muted)!important}
.admin-card,.stat-card{background:#fff!important;border-color:var(--maternity-border)!important;box-shadow:0 10px 28px rgba(17,17,17,.045)!important}
table{background:#fff!important;color:#111!important}
th{background:#f7f7f8!important;color:#3b3c40!important}
td,th{border-color:var(--maternity-border)!important}

/* Páginas editoriais / rankings / galerias com CSS próprio */
.hero{background:#f4f4f6!important;color:#111!important}
.hero-inner,.hero-copy,.intro,.shell,.main-shell,.page-shell,.content-shell{color:#111!important}
.hero-description,.hero p,.intro p,.site-footer,.footer{color:var(--maternity-muted)!important}
.site-footer,.footer{background:#fff!important;border-top:1px solid var(--maternity-border)!important}
.home-link,.back,.hero-nav a{color:#111!important;border-color:var(--maternity-gold)!important;background:#fff!important}
.rank-card,.gallery-card,.member-card{background:#fff!important;border-color:var(--maternity-border)!important}

/* Modais e popups */
.modal,.modal-card,.dialog,.popup,.toast{background:#fff!important;color:#111!important;border-color:var(--maternity-border)!important;box-shadow:0 22px 70px rgba(0,0,0,.16)!important}

@media(max-width:820px){
  .brand-logo{width:58px!important;height:58px!important}
  h1{font-size:clamp(34px,10vw,56px)!important}
  h2{font-size:clamp(28px,8vw,44px)!important}
}

/* =========================================================
   CONTRASTE GLOBAL — Instinto Maternity
   Mantém fotografias intactas e corrige somente a interface.
   ========================================================= */

/* Textos auxiliares em superfícies claras */
.field-label,
.field > span,
.form-heading p,
.form-help,
.field small,
.check,
.check span,
.location-picker > small,
.card small,
.panel small,
.admin-card small,
.checkout-card small,
.summary-card small{
  color:#56585d!important;
}
.field-label{color:#202124!important;font-weight:800!important;}

/* Cadastro: uploads deixam de usar o cartão preto herdado do Criativo */
.identity-upload-card{
  background:#fff!important;
  color:#202124!important;
  border-color:#d9dadd!important;
  box-shadow:0 8px 22px rgba(17,17,17,.045)!important;
}
.identity-upload-card small{color:#67696f!important;}
.identity-upload-card input{background:#f8f8f9!important;color:#111!important;border-color:#dedfe2!important;}
.identity-upload-card img{background:#f5f5f6!important;}

/* Cadastro: localização e lista pesquisável */
.location-picker{
  background:#fbfaf6!important;
  border-color:#ead9a4!important;
}
.location-options{
  background:#fff!important;
  border-color:#d7d8dc!important;
  box-shadow:0 18px 38px rgba(17,17,17,.14)!important;
}
.location-option{color:#202124!important;background:transparent!important;}
.location-option:hover,.location-option:focus{color:#111!important;background:#fff2c6!important;}
.location-option-empty{color:#6c6e73!important;}

/* Cadastro: ramos de atuação */
.category-check{
  background:#fff!important;
  color:#202124!important;
  border-color:#dfe0e3!important;
}
.category-check:hover{border-color:var(--maternity-gold)!important;background:#fffaf0!important;}
.category-check span{color:#202124!important;}

/* Checkbox de termos */
.check{color:#303136!important;}
.check input{accent-color:var(--maternity-gold)!important;}

/* Alertas legíveis no tema claro */
.alert-error{color:#7a1d1d!important;background:#fff1f1!important;border-color:#e8b5b5!important;}
.alert-success{color:#185b36!important;background:#effaf3!important;border-color:#add8bd!important;}
.alert-warning{color:#6c5010!important;background:#fff8e6!important;border-color:#ead08a!important;}
.alert strong,.alert li{color:inherit!important;}

/* Componentes escuros intencionais: todo texto precisa permanecer claro */
.credit-wallet-row,
.purchase-total,
.upload-total,
.service-balance-card,
.checkout-group,
.checkout-summary,
.payment-config-card,
.payment-config-card .check-field,
.review-summary-grid article,
.credit-source-options label{
  color:#fff!important;
}
.credit-wallet-row span,
.credit-wallet-row small,
.credit-wallet-row em,
.purchase-total span,
.purchase-total small,
.upload-total span,
.upload-total small,
.service-balance-card span,
.service-balance-card small,
.checkout-group p,
.checkout-group small,
.checkout-item small,
.checkout-summary span,
.checkout-summary small,
.checkout-lock-note,
.payment-config-card p,
.payment-config-card small,
.payment-config-card label,
.review-summary-grid span,
.credit-source-options label span{
  color:#d5d5d5!important;
}
.credit-wallet-row strong,
.purchase-total strong,
.upload-total strong,
.service-balance-card strong,
.checkout-group strong,
.checkout-summary strong,
.payment-config-card h3,
.review-summary-grid strong{
  color:var(--maternity-gold-light)!important;
}
.checkout-group h1,.checkout-group h2,.checkout-group h3,
.checkout-summary h1,.checkout-summary h2,.checkout-summary h3,
.payment-config-card h1,.payment-config-card h2,.payment-config-card h3,
.review-summary-grid article h1,.review-summary-grid article h2,.review-summary-grid article h3{
  color:#fff!important;
}

/* Inputs dentro de cartões escuros não podem ficar cinza sobre preto */
.checkout-summary input,
.checkout-summary select,
.checkout-summary textarea,
.coupon-field input{
  background:#fff!important;
  color:#111!important;
  border-color:#d7d8dc!important;
}
.coupon-field button{color:#111!important;background:var(--maternity-gold)!important;border-color:var(--maternity-gold)!important;}

/* Avisos internos em checkout escuro */
.minimum-charge,.test-checkout-notice{background:rgba(245,180,0,.12)!important;border-color:rgba(245,180,0,.55)!important;}
.minimum-charge p,.test-checkout-notice p{color:#f1f1f1!important;}

/* Blocos de saldo/atividade e cards em páginas de crédito */
.credit-balance span{color:#55585d!important;}
.credit-balance strong{color:#a87500!important;}

/* Desabilitados ainda legíveis */
input:disabled,select:disabled,textarea:disabled{
  color:#6f7075!important;
  background:#f0f1f3!important;
  opacity:1!important;
}

/* Links de ação em áreas claras */
.card a,.panel a,.admin-card a,.form-panel a{font-weight:700;}

/* Mantém as fotos sem qualquer alteração visual */
img,.identity-upload-card img,.checkout-item img{filter:none!important;}

/* =========================================================
   MATERNITY DESIGN SYSTEM 2.0 — 03/09/2026
   Visual claro, editorial e fotográfico.
   Regra: nenhuma fotografia recebe filtro, alteração de cor,
   saturação ou contraste. Somente a interface é estilizada.
   ========================================================= */

:root{
  --maternity-gold:#ffb700;
  --maternity-gold-light:#ffd36a;
  --maternity-gold-dark:#b87d00;
  --maternity-ink:#121212;
  --maternity-ink-soft:#252525;
  --maternity-cream:#fff8e4;
  --maternity-cream-strong:#ffefb5;
  --maternity-soft:#f7f7f8;
  --maternity-soft-2:#f1f1f3;
  --maternity-card:#ffffff;
  --maternity-muted:#666970;
  --maternity-border:#e2e3e6;
  --maternity-shadow:0 14px 38px rgba(23,23,23,.07);
  --maternity-shadow-hover:0 20px 50px rgba(23,23,23,.11);
  --maternity-radius:18px;
}

/* Base e proteção contra sobreposições */
html{scroll-behavior:smooth}
body,.dashboard-body,.membership-body,.admin-body,.public-home{
  background:
    radial-gradient(circle at 92% 4%,rgba(255,183,0,.08),transparent 23rem),
    linear-gradient(180deg,#fafafa 0,var(--maternity-bg) 24rem)!important;
  color:var(--maternity-text)!important;
}
img,video,svg{max-width:100%}
img{filter:none!important}
h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere;text-wrap:balance}
p,li,.form-help,.help,.note,.description{overflow-wrap:anywhere}
h1{font-size:clamp(36px,4.5vw,64px)!important;line-height:1.02!important}
h2{font-size:clamp(27px,3vw,44px)!important;line-height:1.08!important}
h3{font-size:clamp(19px,1.8vw,27px)!important;line-height:1.15!important}
.dashboard .welcome h1,.admin-heading h1,.membership-heading h1,.checkout-heading h1{font-size:clamp(38px,4.9vw,66px)!important}
.section-title,.admin-heading,.checkout-heading,.heading-actions,.gallery-builder-heading,.competition-submission-heading{flex-wrap:wrap}
.section-title>*,.admin-heading>*,.checkout-heading>*{min-width:0}

/* Cabeçalho: branco editorial + linha dourada discreta */
.topbar,.site-header,.home-header,.admin-topbar,.membership-topbar{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid rgba(18,18,18,.09)!important;
  box-shadow:0 1px 0 rgba(255,183,0,.35),0 7px 26px rgba(17,17,17,.045)!important;
}
.topbar{min-height:92px!important;padding-block:10px!important}
.topbar nav,.home-nav{gap:clamp(14px,2vw,26px)!important}
.topbar nav a,.home-nav a{position:relative;color:#1e1e1e!important;font-weight:750!important}
.topbar nav a:hover,.home-nav a:hover{color:var(--maternity-gold-dark)!important}
.brand-logo{background:#fff!important;border:1px solid #ead59c!important;box-shadow:0 7px 24px rgba(33,25,4,.09)!important}

/* Botões: consistentes, maiores e com contraste */
.button,.btn,.cta,button[type=submit],input[type=submit],.home-account-button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:11px!important;
  padding:11px 18px!important;
  border:1px solid var(--maternity-gold)!important;
  background:var(--maternity-gold)!important;
  color:#151515!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-align:center;
  text-decoration:none;
  white-space:normal;
  box-shadow:0 8px 22px rgba(255,183,0,.17)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
.button:hover,.btn:hover,.cta:hover,button[type=submit]:hover,input[type=submit]:hover,.home-account-button:hover{
  background:var(--maternity-gold-light)!important;
  border-color:var(--maternity-gold-light)!important;
  color:#111!important;
  box-shadow:0 12px 28px rgba(255,183,0,.25)!important;
  transform:translateY(-2px)!important;
}
.button-outline,.button-secondary,.secondary{
  background:#fff!important;
  color:#242424!important;
  border-color:var(--maternity-gold-dark)!important;
  box-shadow:none!important;
}
.button-outline:hover,.button-secondary:hover,.secondary:hover{
  background:var(--maternity-cream)!important;
  border-color:var(--maternity-gold)!important;
  color:#111!important;
}
.button-danger,.danger-link,.danger-button{background:#923737!important;border-color:#923737!important;color:#fff!important}
.button-danger:hover,.danger-link:hover,.danger-button:hover{background:#ad4141!important;border-color:#ad4141!important;color:#fff!important}

/* Formulários: mais espaço, foco dourado e labels claros */
.field{gap:8px!important;color:#202124!important}
.field>span,.field-label,label:not(.category-check):not(.check){font-weight:750}
.field input,.field select,.field textarea,input,select,textarea{
  min-height:44px;
  border:1px solid #dcdde1!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#151515!important;
  box-shadow:inset 0 1px 0 rgba(17,17,17,.015);
}
textarea{min-height:110px}
input:focus,select:focus,textarea:focus{
  border-color:var(--maternity-gold-dark)!important;
  box-shadow:0 0 0 4px rgba(255,183,0,.14)!important;
  outline:none!important;
}
.form-help,.field small,.help,.note{color:#686b72!important;line-height:1.55!important}

/* Cards: branco + calor do Maternity em vez de preto/branco seco */
.card,.panel,.box,.content-card,.competition-card,.dashboard-card,.profile-card,.checkout-card,.summary-card,
.admin-card,.stat-card,.collection-group,.collection-photo-card,.result-card,.rank-card,.member-card,.product-card,.cart-card,.blog-card,.gallery-card{
  border:1px solid var(--maternity-border)!important;
  border-radius:var(--maternity-radius)!important;
  background:linear-gradient(180deg,#fff 0%,#fff 78%,#fffcf3 100%)!important;
  color:#171717!important;
  box-shadow:var(--maternity-shadow)!important;
}
.admin-card,.stat-card,.competition-card,.content-card{position:relative}
.stat-card,.competition-card,.credit-purchase-card,.credit-history-card{
  border-top:3px solid rgba(255,183,0,.86)!important;
}
.stat-card strong{color:var(--maternity-gold-dark)!important}
.competition-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important}
.competition-card:hover{transform:translateY(-3px);border-color:#e5b331!important;box-shadow:var(--maternity-shadow-hover)!important}
.empty-state{
  border:1px dashed #d6b65c!important;
  background:linear-gradient(135deg,#fff,#fff9e9)!important;
  color:#666970!important;
}
.empty-state strong{color:#171717!important}

/* Títulos de seção e pequenos destaques */
.eyebrow,.kicker,.hero-kicker,.admin-label,.label{
  color:var(--maternity-gold-dark)!important;
  letter-spacing:.14em!important;
  font-weight:850!important;
}
.dashboard-section h2,.section-title h2,.admin-heading h1,.welcome h1{color:#121212!important}
.tag,.youtube-level-badge,.status-badge{
  background:var(--maternity-gold)!important;
  color:#141414!important;
  border-color:var(--maternity-gold)!important;
}

/* Painel do fotógrafo */
.dashboard{width:min(1280px,calc(100% - 44px))!important;padding-top:48px!important}
.stat-grid{gap:20px!important}
.youtube-bonus-panel{
  border-color:#e7c35c!important;
  background:radial-gradient(circle at 96% 0,rgba(255,183,0,.17),transparent 35%),linear-gradient(135deg,#fff,#fff8e6)!important;
  box-shadow:var(--maternity-shadow)!important;
}
.youtube-bonus-heading h2{color:#171717!important}
.youtube-bonus-note{color:#54565c!important;background:#fff3ca!important;border-left-color:var(--maternity-gold)!important}
.youtube-bonus-metrics>div{
  border-color:#2f2f2f!important;
  background:linear-gradient(145deg,#181818,#0d0d0d)!important;
}
.youtube-bonus-metrics span{color:#c5c5c5!important}
.youtube-bonus-metrics strong{color:var(--maternity-gold-light)!important}
.youtube-bonus-metrics em{color:#dedede!important}

/* Carteiras e cartões financeiros: preto usado como moldura premium, texto sempre legível */
.credit-wallet-row,.credit-wallet,.purchase-total,.upload-total,.service-balance-card,
.checkout-group,.checkout-summary,.payment-config-card,.review-summary-grid article{
  border-color:#363636!important;
  background:linear-gradient(145deg,#191919 0%,#0d0d0d 72%,#181200 100%)!important;
  color:#fff!important;
  box-shadow:0 13px 32px rgba(0,0,0,.10)!important;
}
.credit-wallet{border-color:rgba(255,183,0,.32)!important}
.credit-wallet span,.credit-wallet-row span,.credit-wallet-row small,.credit-wallet-row em,
.purchase-total span,.purchase-total small,.upload-total span,.upload-total small,
.service-balance-card span,.service-balance-card small,.checkout-group p,.checkout-group small,.checkout-item small,
.checkout-summary span,.checkout-summary small,.checkout-lock-note,.payment-config-card p,.payment-config-card small,.payment-config-card label{
  color:#d6d6d6!important;
}
.credit-wallet strong,.credit-wallet-row strong,.purchase-total strong,.upload-total strong,.service-balance-card strong,
.checkout-group>header>strong,.checkout-summary strong,.payment-config-card h3{
  color:var(--maternity-gold-light)!important;
}
.credit-wallet span{color:#dedede!important}
.credit-wallet strong{color:#fff!important}

/* Comprar créditos: entradas/saídas deixam de ser preto sobre preto */
.credits-page .credit-account-grid{gap:22px!important}
.credits-page .credit-history-card .timeline-list{scrollbar-color:#d5ae44 transparent!important}
.credits-page .credit-history-card .timeline-list article{
  border:1px solid #ead9a5!important;
  border-left:4px solid var(--maternity-gold)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#fffdf8,#fff7dc)!important;
  color:#202124!important;
  box-shadow:0 5px 16px rgba(25,25,25,.035)!important;
}
.credits-page .credit-history-card .timeline-list article strong{color:#177443!important}
.credits-page .credit-history-card:nth-of-type(3) .timeline-list article strong,
.credits-page .credit-debit{color:var(--maternity-gold-dark)!important}
.credits-page .credit-history-card .timeline-list article>span{color:#34363a!important;font-weight:700!important}
.credits-page .credit-history-card .timeline-list article small{color:#75777d!important}
.youtube-credit-box{
  border-color:#e3be51!important;
  background:linear-gradient(135deg,#fff7dc,#fffdf8)!important;
}
.youtube-credit-head h3{color:#171717!important}
.youtube-credit-level{background:var(--maternity-gold)!important;border-color:var(--maternity-gold)!important;color:#141414!important}
.youtube-credit-metric{background:#fff!important;border-color:#ead9a5!important}
.youtube-credit-metric span{color:#676970!important}.youtube-credit-metric strong{color:#171717!important}
.youtube-credit-note{color:#5f6268!important}
.youtube-credit-empty{
  border:1px dashed #d8b75b!important;
  background:#fff8e4!important;
  color:#55585e!important;
}
.youtube-credit-empty strong{color:var(--maternity-gold-dark)!important}

/* Perfil e cadastro: mais visual, sem perder legibilidade */
.profile-identity-card{
  border-color:#e3c25e!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(17,17,17,.08)!important;
}
.profile-banner:not([style*="background-image"]){
  background:radial-gradient(circle at 78% 22%,rgba(255,255,255,.65),transparent 25%),linear-gradient(120deg,#ffd55c,var(--maternity-gold) 52%,var(--maternity-gold-dark))!important;
}
.profile-avatar{border-color:#fff!important;background:#fff7dc!important;box-shadow:0 11px 28px rgba(30,24,4,.16)!important}
.profile-avatar-placeholder{background:var(--maternity-gold)!important;color:#111!important}
.identity-upload-grid{gap:16px!important}
.identity-upload-card{
  border:1px solid #ead9a5!important;
  background:linear-gradient(145deg,#fff,#fff8e5)!important;
  color:#252525!important;
}
.identity-upload-card:hover{border-color:var(--maternity-gold)!important}
.location-picker{
  border:1px solid #ead28b!important;
  background:linear-gradient(145deg,#fffdf8,#fff8e7)!important;
}
.category-check{
  min-height:48px;
  border:1px solid #dedfe2!important;
  background:#fff!important;
  color:#202124!important;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease!important;
}
.category-check:hover{border-color:var(--maternity-gold)!important;background:#fffaf0!important}
.category-check:has(input:checked){border-color:var(--maternity-gold)!important;background:#fff2bf!important;box-shadow:inset 4px 0 0 var(--maternity-gold)!important}
.category-check span{color:#202124!important;font-weight:650!important}
.category-check input{accent-color:var(--maternity-gold)!important}

/* Adesão / planos: editorial claro com dourado mais presente */
.membership-body{background:radial-gradient(circle at 50% 0,rgba(255,183,0,.11),transparent 34rem),#f7f7f8!important}
.membership-topbar{background:rgba(255,255,255,.96)!important}
.membership-heading>p:last-child{color:#666970!important}
.test-mode-banner{
  border-color:#e0b43b!important;
  background:#fff5d4!important;
  color:#4f4f4f!important;
}
.test-mode-banner strong{color:var(--maternity-gold-dark)!important}
.plan-card{
  border:1px solid #e3e3e5!important;
  background:linear-gradient(160deg,#fff 0%,#fff 70%,#fff8e0 100%)!important;
  box-shadow:0 14px 38px rgba(17,17,17,.075)!important;
}
.plan-card:hover{border-color:#e3b327!important;box-shadow:0 22px 48px rgba(17,17,17,.11)!important}
.plan-card h2{color:#171717!important}
.old-price{color:#8a8c91!important}
.plan-price{color:var(--maternity-gold-dark)!important}
.plan-period,.plan-features{color:#5f6268!important}
.plan-features li{border-bottom-color:#e6e2d7!important}
.confirmation-shell{background:radial-gradient(circle at 50% 0,rgba(255,183,0,.12),transparent 31rem),#f7f7f8!important}
.confirmation-card{border-color:#e4c15a!important;background:#fff!important;box-shadow:0 22px 60px rgba(17,17,17,.10)!important}
.confirmation-card h1{color:#171717!important}.confirmation-bonus{color:#55585e!important}

/* Checkout de ajustes: corrige o quadro da direita e melhora hierarquia */
.service-checkout .checkout-heading{gap:32px!important;margin:28px 0 30px!important}
.service-checkout .checkout-heading>div:first-child>p:last-child{color:#666970!important}
.service-balance-card{min-width:290px!important;border-color:var(--maternity-gold-dark)!important}
.service-balance-card span,.service-balance-card small{color:#ddd!important}
.checkout-group>header{border-bottom-color:#353535!important}
.checkout-item{border-bottom-color:#2f2f2f!important;color:#fff!important}
.checkout-item>span,.checkout-item div strong{color:#fff!important}
.checkout-summary>div:not(.minimum-charge):not(.test-checkout-notice){border-bottom-color:#303030!important;color:#fff!important}
.minimum-charge,.test-checkout-notice{background:rgba(255,183,0,.13)!important;border-color:rgba(255,183,0,.55)!important}
.minimum-charge p,.test-checkout-notice p{color:#e9e9e9!important}
.coupon-field>span{color:#d2d2d2!important}

/* Admin: mais refinado e menos cinza */
.admin-main{background:radial-gradient(circle at 93% 0,rgba(255,183,0,.075),transparent 27rem),#f6f6f7!important}
.admin-sidebar{border-right-color:#e7e1d2!important}
.admin-nav a{border-radius:9px!important}
.admin-nav a:hover,.admin-nav a.active{
  border-color:#e3bc4c!important;
  background:linear-gradient(90deg,#fff1b7,#fff9e7)!important;
  color:#171717!important;
}
.admin-card{border-color:#e1e2e5!important}
.admin-heading{padding-bottom:4px}
.admin-filters,.batch-actions,.preset-batch-row{
  border-color:#ead8a1!important;
  background:linear-gradient(145deg,#fff,#fff9e9)!important;
}
table{border-collapse:separate!important;border-spacing:0!important}
th{background:#fff5d7!important;color:#343434!important}
tbody tr:hover td{background:#fffaf0!important}
td,th{padding-top:12px!important;padding-bottom:12px!important}
.permission-head,.staff-list-table thead th{background:#fff2c8!important;color:#554a31!important}

/* Galerias e páginas de resultados: área geral clara; palco da foto pode permanecer escuro */
.hero{background:linear-gradient(135deg,#fff 0%,#f8f8f9 55%,#fff6d9 100%)!important;color:#171717!important;border-color:#e5c86d!important}
.hero p,.hero-description{color:#62656b!important}
.photo-card,.gallery-card,.award-collection,.collection-rank-card,.jury-showcase,.jury-card{
  border-color:#e2e3e6!important;
  background:linear-gradient(145deg,#fff,#fffaf0)!important;
  color:#171717!important;
  box-shadow:0 13px 34px rgba(17,17,17,.065)!important;
}
.collection-rank-card.is-first,.award-collection.is-highest{
  border-color:#e4b92d!important;
  background:radial-gradient(circle at 92% 0,rgba(255,183,0,.16),transparent 35%),linear-gradient(145deg,#fff,#fff6d3)!important;
}
.collection-rank-details h3,.jury-info h3,.collection-ranking h2{color:#171717!important}
.collection-rank-details p,.collection-rank-points span,.collection-ranking-intro{color:#676a70!important}
.jury-role,.award-label,.collection-rank-details span{color:var(--maternity-gold-dark)!important}
/* Moldura do arquivo fotográfico é neutra/escura sem alterar a foto */
.photo-card button,.photo-button,.collection-gallery,.jury-collection-thumb,.review-collection-thumb{background:#111!important}
.photo-card img,.photo-button img,.collection-gallery img{filter:none!important}

/* Modais e popups padrão */
.modal,.modal-card,.dialog,.popup,.toast,.gallery-confirm-card{
  border:1px solid #e0bd54!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#fff,#fff9e8)!important;
  color:#171717!important;
  box-shadow:0 25px 75px rgba(17,17,17,.19)!important;
}
.modal h1,.modal h2,.modal h3,.modal-card h1,.modal-card h2,.modal-card h3,.dialog h1,.dialog h2,.dialog h3,.gallery-confirm-card h2{color:#171717!important}
.gallery-confirm-card p{color:#62656b!important}

/* Overflows e responsividade */
.admin-card,.card,.panel,.box,.checkout-card,.summary-card{min-width:0}
.table-wrap,.admin-table-wrap,.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
code,.mono,.gallery-builder-public-link{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:1100px){
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .service-checkout .checkout-heading{display:grid!important}
  .service-balance-card{min-width:0!important}
}
@media(max-width:820px){
  .dashboard{width:min(100% - 28px,1280px)!important;padding-top:34px!important}
  .stat-grid,.credit-account-grid{grid-template-columns:1fr!important}
  .topbar{align-items:stretch!important;gap:9px!important}
  .topbar nav{width:100%;overflow-x:auto;justify-content:flex-start!important;padding:5px 2px;scrollbar-width:thin}
  .topbar nav a{flex:0 0 auto}
  .section-title,.admin-heading,.checkout-heading{align-items:flex-start!important;flex-direction:column!important}
  .section-title .button,.heading-actions,.heading-actions .button{width:100%!important}
  .identity-upload-grid,.location-grid{grid-template-columns:1fr!important}
}
@media(max-width:620px){
  h1{font-size:clamp(33px,10vw,48px)!important}
  h2{font-size:clamp(26px,8vw,38px)!important}
  .admin-card,.stat-card,.competition-card{padding:18px!important}
  .button,.btn,.cta,button[type=submit],input[type=submit]{width:100%}
  .stat-grid{gap:14px!important}
  .brand-logo{width:58px!important;height:58px!important}
}

/* ---------------------------------------------------------
   Acabamento das páginas públicas e administrativas restantes
   --------------------------------------------------------- */
.filters,.filter-panel,.rules-summary,.price-tier-card,.invite-card,.confirm-card,.verify-card,
.specialty-card,.work-card,.recognition-summary article,.row,.ranking-card,
.gallery-builder-meta div,.ranking-admin-summary div,.storage-status,.storage-path,.storage-report-item,
.cleanup-sim-stat,.jury-access-filters,.jury-round-access-group,.jury-security-note>div,.jury-registry-person{
  border-color:#e4d7ae!important;
  background:linear-gradient(145deg,#fff,#fff9e8)!important;
  color:#1d1d1d!important;
  box-shadow:0 9px 26px rgba(17,17,17,.045)!important;
}
.filters input,.filters select,.filter-panel input,.filter-panel select{background:#fff!important;color:#171717!important;border-color:#d9dadd!important}
.row:hover,.ranking-card:hover,.specialty-card:hover,.work-card:hover{border-color:var(--maternity-gold)!important;box-shadow:0 15px 34px rgba(17,17,17,.075)!important}

/* Navegação/filtros de rankings e paginações */
.ranking-type-tab,.page-link,.page,.filter-button,.clear-button{
  border-color:#d8c070!important;
  background:#fff!important;
  color:#242424!important;
  box-shadow:none!important;
}
.ranking-type-tab:hover,.ranking-type-tab:focus-visible,.ranking-type-tab.is-active,
.page-link:hover,.page-link:focus-visible,.page-link.is-current,.page.current,.filter-button:hover{
  border-color:var(--maternity-gold)!important;
  background:var(--maternity-gold)!important;
  color:#111!important;
}

/* Regras gerais */
.rules-page{background:transparent!important;color:#171717!important}
.rules-hero{border-color:#e3c35f!important;background:linear-gradient(135deg,#fff,#fff4cc)!important;color:#171717!important}
.rule-section,.dimension-card,.example-card{
  border-color:#e3e3e5!important;
  background:#fff!important;
  color:#1f1f1f!important;
  box-shadow:0 10px 28px rgba(17,17,17,.05)!important;
}
.rules-summary a,.rules-button{border-color:var(--maternity-gold)!important;background:#fff7da!important;color:#171717!important}

/* Perfil público / membros */
.profile,.contact-footer{
  border-color:#e3c866!important;
  background:linear-gradient(145deg,#fff,#fff8e3)!important;
  color:#171717!important;
}
.specialty-card,.work-card{border-top:3px solid rgba(255,183,0,.72)!important}
.badge{background:var(--maternity-gold)!important;color:#111!important;border-color:var(--maternity-gold)!important}
.icon-link{border-color:#dec777!important;background:#fff!important;color:var(--maternity-gold-dark)!important}
.icon-link:hover,.icon-link:focus-visible{background:var(--maternity-gold)!important;color:#111!important}

/* Resultados e reconhecimentos */
.results-hero,.winner-stage,.preview-ribbon,.preview{
  border-color:#e2c65d!important;
  background:linear-gradient(135deg,#fff,#fff6d8)!important;
  color:#171717!important;
}
.result-card,.winner-card,.ranking-card{
  border-color:#e2e3e6!important;
  background:linear-gradient(145deg,#fff,#fffaf0)!important;
  color:#171717!important;
}
/* Palcos das fotografias continuam neutros e não afetam o arquivo */
.winner-card button,.photo-button,.ranking-cover,.cover,.download-preview,.draft-photo-card img{background:#111!important}

/* Admin: metadados e relatórios claros */
.payment-table-shell{background:#fff!important;border-color:#e2e3e6!important}
.payment-orders-table tr,.payment-adjustments-table tr{background:#fff!important;color:#222!important}
.gallery-builder-meta span,.ranking-admin-summary span,.storage-path,.storage-report-item,.cleanup-sim-stat span,.jury-access-filters label{color:#666970!important}
.gallery-builder-meta strong,.ranking-admin-summary strong,.storage-status strong,.storage-report-item strong,.cleanup-sim-stat strong,.jury-round-access-group strong,.jury-registry-person strong{color:#171717!important}
.seal-card{border-color:#e2d5ad!important;background:#fffaf0!important;color:#222!important}
.seal-status span{background:#f1f1f2!important;color:#4f5156!important}

/* Mensagens de confirmação simples */
.confirm-card,.verify-card,.invite-card{border:1px solid #e0bd54!important;border-radius:20px!important;background:#fff!important;color:#171717!important;box-shadow:0 20px 55px rgba(17,17,17,.09)!important}
.confirm-card h1,.verify-card h1,.invite-card h1{color:#171717!important}
.verify-divider{background:#e4e4e6!important}

/* Overlap: ações e textos longos nunca estouram cards */
.table-actions,.gallery-builder-heading-actions,.profile-public-links,.social-links,.filter-actions,.jury-links{flex-wrap:wrap!important}
.admin-card *, .card *, .panel *, .box *{max-width:100%}
@media(max-width:700px){
  .filters,.filter-panel{padding:16px!important}
  .table-actions,.filter-actions,.gallery-builder-heading-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;min-width:0!important}
  .table-actions>* ,.filter-actions>* ,.gallery-builder-heading-actions>*{width:100%!important}
}

/* =========================================================
   MATERNITY v1.3 — SISTEMA GLOBAL DE FILTROS / BUSCAS / ABAS
   Revisão visual em todas as áreas públicas e administrativas.
   Objetivo: alta legibilidade, respiro, dourado #FFB700 e
   comportamento responsivo sem sobreposições.
   ========================================================= */

:root{
  --maternity-filter-bg:#fffdf7;
  --maternity-filter-bg-strong:#fff8df;
  --maternity-filter-line:#ead89e;
  --maternity-filter-text:#181818;
  --maternity-filter-muted:#62656b;
  --maternity-filter-focus:rgba(255,183,0,.18);
  --maternity-filter-shadow:0 12px 34px rgba(17,17,17,.065);
}

/* Caixas principais de filtro */
form.filters,
.filters,
.filter-panel,
.filter-form,
.shop-filter-shell,
.shop-filters,
form.admin-filters,
.admin-filters,
.form-grid.impact-filter,
.jury-access-filters,
form.filter,
.annual-year-card,
.queue-toolbar,
.preset-batch-toolbar,
.photo-batch-toolbar{
  border-color:var(--maternity-filter-line)!important;
  background:linear-gradient(135deg,#fff 0%,var(--maternity-filter-bg) 58%,#fff6d8 100%)!important;
  color:var(--maternity-filter-text)!important;
  box-shadow:var(--maternity-filter-shadow)!important;
}

form.filters,
.filter-panel,
.shop-filter-shell,
form.admin-filters,
.form-grid.impact-filter,
.jury-access-filters,
form.filter{
  position:relative!important;
  overflow:visible!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:16px!important;
  padding:20px!important;
}

form.filters::before,
.filter-panel::before,
.shop-filter-shell::before,
form.admin-filters::before,
.form-grid.impact-filter::before,
.jury-access-filters::before,
form.filter::before{
  content:"";
  position:absolute;
  top:14px;
  bottom:14px;
  left:0;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--maternity-gold,#ffb700);
  pointer-events:none;
}

/* Estruturas internas: nunca esmagar campos ou botões */
.filters,
.filter-form,
.shop-filters,
.admin-filters,
.impact-filter,
.jury-access-filters,
.participation-filters{
  gap:14px!important;
  align-items:end!important;
}
.filters>*,
.filter-form>*,
.shop-filters>*,
.admin-filters>*,
.impact-filter>*,
.jury-access-filters>*,
.participation-filters>*{
  min-width:0!important;
}

/* Labels */
.filters label,
.filter-panel label,
.filter-form label,
.filter-field,
.shop-filters label,
.admin-filters label,
.impact-filter label,
.jury-access-filters label,
form.filter .field label,
form.filter label,
.annual-year-card label{
  color:#5f4705!important;
  font-weight:800!important;
  letter-spacing:.025em!important;
}
.filters label>span,
.filter-panel label>span,
.filter-field>span,
.shop-filters label>span,
.admin-filters .field>span,
.impact-filter .field>span,
.jury-access-filters label,
form.filter .field>label{
  color:#6a4c00!important;
}

/* Inputs, selects e buscas dentro de filtros */
.filters input:not([type=radio]):not([type=checkbox]),
.filters select,
.filter-panel input:not([type=radio]):not([type=checkbox]),
.filter-panel select,
.filter-form input:not([type=radio]):not([type=checkbox]),
.filter-form select,
.shop-filters input,
.shop-filters select,
.admin-filters input:not([type=radio]):not([type=checkbox]),
.admin-filters select,
.impact-filter input:not([type=radio]):not([type=checkbox]),
.impact-filter select,
.jury-access-filters input:not([type=radio]):not([type=checkbox]),
.jury-access-filters select,
form.filter input,
form.filter select,
.annual-year-select{
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  padding:0 13px!important;
  border:1px solid #d6d7da!important;
  border-radius:10px!important;
  outline:none!important;
  background:#fff!important;
  color:#171717!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-weight:600!important;
  box-shadow:0 2px 0 rgba(17,17,17,.018)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}

/* Mantém o texto visível ao abrir selects nativos.
   Alguns navegadores usam o fundo branco do menu, mas preservavam
   a cor herdada de páginas antigas (branca), fazendo as opções sumirem. */
select option,
select optgroup{
  background:#fff!important;
  color:#171717!important;
  font-family:Montserrat,Arial,sans-serif!important;
}
.filters input::placeholder,
.filter-panel input::placeholder,
.shop-filters input::placeholder,
.admin-filters input::placeholder,
.impact-filter input::placeholder,
form.filter input::placeholder{
  color:#98999d!important;
  opacity:1!important;
}
.filters input:focus,
.filters select:focus,
.filter-panel input:focus,
.filter-panel select:focus,
.filter-form input:focus,
.filter-form select:focus,
.shop-filters input:focus,
.shop-filters select:focus,
.admin-filters input:focus,
.admin-filters select:focus,
.impact-filter input:focus,
.impact-filter select:focus,
.jury-access-filters input:focus,
.jury-access-filters select:focus,
form.filter input:focus,
form.filter select:focus,
.annual-year-select:focus{
  border-color:var(--maternity-gold,#ffb700)!important;
  box-shadow:0 0 0 3px var(--maternity-filter-focus)!important;
  background:#fff!important;
  color:#111!important;
}

/* Ações dos filtros */
.filter-actions,
.participation-filter-actions,
.jury-access-filter-actions,
.filters .actions,
.shop-filters{
  flex-wrap:wrap!important;
}
.filter-actions button,
.filter-actions .button,
.filter-actions a,
.participation-filter-actions .button,
.jury-access-filter-actions .button,
.filters .actions .button,
.shop-filters button,
.shop-filters a,
.admin-filters>.button,
.impact-filter>.button,
form.filter>button,
.annual-year-button{
  min-height:46px!important;
  border-radius:10px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.filter-actions button,
.filter-actions .filter-button,
.participation-filter-actions .button:not(.button-secondary),
.jury-access-filter-actions .button:not(.button-secondary),
.filters .actions .button:not(.secondary),
.shop-filters button,
.admin-filters>.button,
.impact-filter>.button,
form.filter>button,
.annual-year-button{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:var(--maternity-gold,#ffb700)!important;
  color:#111!important;
  box-shadow:0 7px 17px rgba(255,183,0,.19)!important;
}
.filter-actions button:hover,
.filter-actions .filter-button:hover,
.participation-filter-actions .button:not(.button-secondary):hover,
.jury-access-filter-actions .button:not(.button-secondary):hover,
.filters .actions .button:not(.secondary):hover,
.shop-filters button:hover,
.admin-filters>.button:hover,
.impact-filter>.button:hover,
form.filter>button:hover,
.annual-year-button:hover{
  background:var(--maternity-gold-light,#ffd36a)!important;
  border-color:var(--maternity-gold,#ffb700)!important;
  color:#111!important;
  transform:translateY(-1px)!important;
}
.filter-actions a,
.filter-actions .clear-button,
.participation-filter-actions .button-secondary,
.jury-access-filter-actions .button-secondary,
.filters .actions .secondary,
.shop-filters a{
  border:1px solid #d5bd72!important;
  background:#fff!important;
  color:#292929!important;
  box-shadow:none!important;
}
.filter-actions a:hover,
.filter-actions .clear-button:hover,
.participation-filter-actions .button-secondary:hover,
.jury-access-filter-actions .button-secondary:hover,
.filters .actions .secondary:hover,
.shop-filters a:hover{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:#fff8df!important;
  color:#111!important;
}

/* Opções por rádio dos membros */
.filter-mode{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  padding-top:3px!important;
}
.filter-mode .mode{
  min-height:42px!important;
  padding:9px 14px!important;
  border:1px solid #e1d2a3!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#303030!important;
  box-shadow:0 4px 12px rgba(17,17,17,.03)!important;
}
.filter-mode .mode:has(input:checked){
  border-color:var(--maternity-gold,#ffb700)!important;
  background:#fff4c5!important;
  color:#171717!important;
}
.filter-mode input[type=radio],
.filter-mode input[type=checkbox]{accent-color:var(--maternity-gold,#ffb700)!important}

/* Abas que funcionam como filtros */
.tabs,
.ranking-type-tabs,
.competition-type-tabs,
.competition-year-tabs,
.competition-round-tabs,
.shop-category-pills,
.jury-filters{
  gap:10px!important;
}
.tabs a,
.ranking-type-tab,
.competition-type-tabs a,
.competition-year-tab,
.competition-round-tab,
.shop-category-pills a,
.jury-filters button{
  border:1px solid #dfce98!important;
  background:#fff!important;
  color:#242424!important;
  border-radius:12px!important;
  box-shadow:0 6px 18px rgba(17,17,17,.035)!important;
  font-weight:800!important;
  transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
.tabs a:hover,
.ranking-type-tab:hover,
.competition-type-tabs a:hover,
.competition-year-tab:hover,
.competition-round-tab:hover,
.shop-category-pills a:hover,
.jury-filters button:hover{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:#fff8df!important;
  color:#111!important;
  transform:translateY(-1px)!important;
}
.tabs a.active,
.ranking-type-tab.is-active,
.ranking-type-tab.active,
.competition-type-tabs a.active,
.competition-year-tab.active,
.competition-round-tab.active,
.shop-category-pills a.active,
.jury-filters button.active{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:var(--maternity-gold,#ffb700)!important;
  color:#111!important;
  box-shadow:0 9px 22px rgba(255,183,0,.18)!important;
}
.tabs a span,
.ranking-type-tab span{
  color:inherit!important;
}
.tabs a:not(.active) span,
.ranking-type-tab:not(.is-active):not(.active) span{
  display:inline-grid!important;
  min-width:28px!important;
  min-height:28px!important;
  place-items:center!important;
  padding:0 8px!important;
  border-radius:999px!important;
  background:#fff2bd!important;
  color:#765400!important;
}

/* Filtros do júri Impactou: botões de decisão legíveis sem competir com fotos */
.jury-filters{
  display:flex!important;
  flex-wrap:wrap!important;
  padding:12px!important;
  border:1px solid #e4d39d!important;
  border-radius:15px!important;
  background:#fffdf6!important;
  box-shadow:0 9px 26px rgba(17,17,17,.05)!important;
}
.jury-filters button{
  min-height:42px!important;
  padding:0 15px!important;
}

/* Toolbar do júri: contraste garantido quando a tela específica optar por fundo escuro */
.jury-toolbar{
  border-color:#d8b448!important;
}
.jury-toolbar strong,
.jury-toolbar b{color:#fff!important}
.jury-toolbar span{color:#e7e7e7!important}

/* Admin: filtros e seletores anuais */
.admin-filters,
.participation-filters{
  margin-bottom:22px!important;
}
.annual-year-card{
  border:1px solid var(--maternity-filter-line)!important;
  border-radius:16px!important;
}
.annual-year-copy strong{color:#171717!important}
.annual-year-copy span,.annual-year-arrow{color:#9a6b00!important}
.annual-year-current{color:#666970!important}

/* Caixa de filtros dos jurados — havia preto sobre preto */
.jury-access-filters{
  margin:18px 0 22px!important;
  padding:18px!important;
}
.jury-access-filters label{
  color:#6a4c00!important;
  font-size:10px!important;
}
.jury-access-filters select{
  min-height:44px!important;
  font-size:11px!important;
}

/* Grupos abaixo dos filtros do júri também seguem o tema claro */
.jury-round-access-group{
  border-color:#e2d4aa!important;
  background:#fff!important;
  color:#202020!important;
  box-shadow:0 7px 20px rgba(17,17,17,.04)!important;
}
.jury-round-access-group>summary{
  color:#1c1c1c!important;
  background:#fffaf0!important;
}
.jury-round-access-group>summary:after{color:#8c6200!important}
.jury-round-access-count{
  background:#fff0b8!important;
  color:#6d4d00!important;
}
.jury-round-access-group .jury-access-table-wrap{border-top-color:#eee2bd!important}
.jury-access-table .jury-email{color:#717278!important}

/* Barra da fila de e-mails */
.queue-toolbar{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  padding:14px!important;
  border:1px solid var(--maternity-filter-line)!important;
  border-radius:14px!important;
}
.queue-toolbar nav{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
}
.queue-toolbar nav a{
  padding:9px 12px!important;
  border:1px solid #dfcf9f!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#2c2c2c!important;
  text-decoration:none!important;
  font-weight:700!important;
}
.queue-toolbar nav a:hover{border-color:var(--maternity-gold,#ffb700)!important;background:#fff8df!important}

/* Formulário financeiro antigo com classe genérica .filter */
form.filter{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr)) auto!important;
  gap:14px!important;
  align-items:end!important;
}
form.filter .field{min-width:0!important}

/* Evitar sobreposição e estouro em telas médias */
@media(max-width:1100px){
  .filters,
  .filter-form,
  .admin-filters,
  .impact-filter,
  .jury-access-filters,
  .participation-filters,
  form.filter{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .filter-actions,
  .participation-filter-actions,
  .jury-access-filter-actions,
  form.filter>button{
    grid-column:1/-1!important;
  }
}
@media(max-width:720px){
  form.filters,
  .filter-panel,
  .shop-filter-shell,
  form.admin-filters,
  .form-grid.impact-filter,
  .jury-access-filters,
  form.filter{
    padding:16px!important;
    border-radius:14px!important;
  }
  .filters,
  .filter-form,
  .shop-filters,
  .admin-filters,
  .impact-filter,
  .jury-access-filters,
  .participation-filters,
  form.filter{
    grid-template-columns:1fr!important;
  }
  .filter-actions,
  .participation-filter-actions,
  .jury-access-filter-actions,
  .filters .actions,
  form.filter>button{
    grid-column:auto!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .filter-actions>*,
  .participation-filter-actions>*,
  .jury-access-filter-actions>*,
  .filters .actions>*,
  .shop-filters button,
  .shop-filters a,
  .admin-filters>.button,
  .impact-filter>.button,
  form.filter>button{
    width:100%!important;
  }
  .filter-mode{display:grid!important;grid-template-columns:1fr!important}
  .filter-mode .mode{width:100%!important;border-radius:11px!important}
  .tabs,
  .ranking-type-tabs,
  .competition-type-tabs,
  .competition-year-tabs,
  .competition-round-tabs,
  .shop-category-pills,
  .jury-filters{
    grid-template-columns:1fr!important;
  }
  .jury-filters{display:grid!important}
  .jury-filters button{width:100%!important}
}

/* Evita cartões duplos quando o formulário já vive dentro de um painel de filtro. */
.filter-panel .filter-form,
.shop-filter-shell .shop-filters{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Navegações que também atuam como filtros de conteúdo */
.blog-categories,
.impact-categories,
.jury-categories,
.years{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:9px!important;
}
.blog-categories a,
.impact-categories a,
.jury-categories a,
.years a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid #dfce98!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#292929!important;
  text-decoration:none!important;
  font-weight:800!important;
  box-shadow:0 5px 15px rgba(17,17,17,.03)!important;
}
.blog-categories a:hover,
.impact-categories a:hover,
.jury-categories a:hover,
.years a:hover{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:#fff8df!important;
  color:#111!important;
}
.blog-categories a.active,
.impact-categories a.active,
.jury-categories a.active,
.years a.active,
.years a.current{
  border-color:var(--maternity-gold,#ffb700)!important;
  background:var(--maternity-gold,#ffb700)!important;
  color:#111!important;
}
@media(max-width:620px){
  .blog-categories,
  .impact-categories,
  .jury-categories,
  .years{display:grid!important;grid-template-columns:1fr 1fr!important}
  .blog-categories a,
  .impact-categories a,
  .jury-categories a,
  .years a{width:100%!important}
}


/* =========================================================
   MATERNITY v2.0 — CONTRASTE CONTEXTUAL E LEGIBILIDADE
   Camada final: cada superfície usa a cor de texto adequada.
   Fotografias e arquivos enviados continuam sem filtros.
   ========================================================= */
:root{
  --maternity-dark-surface:#141414;
  --maternity-dark-text:#ffffff;
  --maternity-dark-muted:#c9cbd0;
  --maternity-filter-bg:#fff8df;
  --maternity-filter-text:#181818;
}

/* Segurança de leitura em superfícies claras */
.admin-table td,.shop-admin-table td,.staff-list-table td,.payment-orders-table td,.payment-adjustments-table td,
.table-wrap td,.admin-table-wrap td{
  color:var(--maternity-text)!important;
}
.admin-table td strong,.shop-admin-table td strong,.staff-list-table td strong,.table-wrap td strong{
  color:var(--maternity-text)!important;
}
.admin-table td small,.shop-admin-table td small,.staff-list-table td small,.table-wrap td small,
.admin-table td .muted,.shop-admin-table td .muted{
  color:var(--maternity-muted)!important;
}
.admin-table th,.shop-admin-table th,.staff-list-table th,.table-wrap th{
  color:#42454a!important;
}

/* Categorias, listas administrativas e cartões herdados do tema escuro */
.admin-card .timeline-list article,
.category-admin-list article,
.shop-image-editor-grid>div,
.permission-row,
.staff-selected-user{
  border-color:var(--maternity-border)!important;
  background:linear-gradient(145deg,var(--maternity-card) 0%,#fffaf0 100%)!important;
  color:var(--maternity-text)!important;
  box-shadow:0 6px 18px rgba(17,17,17,.035)!important;
}
.admin-card .timeline-list article strong,.category-admin-list article strong,.permission-row strong,.staff-area-card strong{
  color:var(--maternity-text)!important;
}
.admin-card .timeline-list article span,.admin-card .timeline-list article small,
.category-admin-list article small,.permission-row small,.staff-area-card small{
  color:var(--maternity-muted)!important;
}
.permission-row label,.shop-image-editor-grid label{color:#46494f!important}
.permission-row{border-top-color:var(--maternity-border)!important}
.permission-matrix,.staff-list-wrap,.shop-admin-wrap{border-color:var(--maternity-border)!important;background:#fff!important}

/* Filtros: fundo e texto agora são controláveis no painel */
form.filters,.filters,.filter-panel,.filter-form,.shop-filter-shell,.shop-filters,form.admin-filters,.admin-filters,
.form-grid.impact-filter,.jury-access-filters,form.filter,.participation-filters{
  border-color:color-mix(in srgb,var(--maternity-gold) 28%,#d7d7d7)!important;
  background:linear-gradient(135deg,#fff 0%,var(--maternity-filter-bg) 68%,#fff 100%)!important;
  color:var(--maternity-filter-text)!important;
}
.filters label,.filter-panel label,.filter-form label,.shop-filters label,.admin-filters label,.impact-filter label,
.jury-access-filters label,form.filter label,.filters label>span,.filter-panel label>span,.shop-filters label>span,
.admin-filters .field>span,.impact-filter .field>span{
  color:var(--maternity-filter-text)!important;
}
.filter-mode .mode{
  border-color:color-mix(in srgb,var(--maternity-gold) 28%,var(--maternity-border))!important;
  background:#fff!important;
  color:var(--maternity-filter-text)!important;
}
.filter-mode .mode:has(input:checked){
  border-color:var(--maternity-gold)!important;
  background:color-mix(in srgb,var(--maternity-gold) 18%,#fff)!important;
  color:var(--maternity-filter-text)!important;
}

/* Estados vazios nunca ficam preto sobre preto */
.empty,.empty-state,.shop-empty,.cart-empty,.staff-empty-cell .empty-state{
  border-color:#dfc878!important;
  background:linear-gradient(135deg,#fff,#fff9e9)!important;
  color:var(--maternity-text)!important;
}
.empty h1,.empty h2,.empty h3,.empty strong,.empty-state h1,.empty-state h2,.empty-state h3,.empty-state strong,
.shop-empty strong,.cart-empty strong,.staff-empty-cell .empty-state strong{
  color:var(--maternity-text)!important;
}
.empty p,.empty span,.empty small,.empty-state p,.empty-state span,.empty-state small,.shop-empty p,.cart-empty p,
.staff-empty-cell .empty-state p{
  color:var(--maternity-muted)!important;
}

/* Alertas: contraste forte sem perder a paleta */
.alert-warning,.warning,.notice-warning{
  border-color:#e8c45c!important;background:#fff4cc!important;color:#5b4300!important;
}
.alert-warning *,.warning *,.notice-warning *{color:#5b4300!important}
.alert-success,.success,.notice-success{color:#185b36!important;background:#effaf3!important;border-color:#add8bd!important}
.alert-success *,.success *,.notice-success *{color:#185b36!important}
.alert-error,.error,.notice-error{color:#7a2222!important;background:#fff0f0!important;border-color:#e4b0b0!important}
.alert-error *,.error *,.notice-error *{color:#7a2222!important}

/* Blocos realmente escuros: texto oposto e controlável */
.credit-wallet-row,.credit-wallet,.purchase-total,.upload-total,.service-balance-card,
.checkout-group,.checkout-summary,.payment-config-card,.review-summary-grid article{
  background:linear-gradient(145deg,var(--maternity-dark-surface),color-mix(in srgb,var(--maternity-dark-surface),#000 18%))!important;
  color:var(--maternity-dark-text)!important;
}
.credit-wallet-row h1,.credit-wallet-row h2,.credit-wallet-row h3,.credit-wallet h1,.credit-wallet h2,.credit-wallet h3,
.purchase-total h1,.purchase-total h2,.purchase-total h3,.upload-total h1,.upload-total h2,.upload-total h3,
.service-balance-card h1,.service-balance-card h2,.service-balance-card h3,.checkout-group h1,.checkout-group h2,.checkout-group h3,
.checkout-summary h1,.checkout-summary h2,.checkout-summary h3,.payment-config-card h1,.payment-config-card h2,.payment-config-card h3{
  color:var(--maternity-dark-text)!important;
}
.credit-wallet-row span,.credit-wallet-row small,.credit-wallet span,.credit-wallet small,.purchase-total span,.purchase-total small,
.upload-total span,.upload-total small,.service-balance-card span,.service-balance-card small,.checkout-group p,.checkout-group small,
.checkout-item small,.checkout-summary span,.checkout-summary small,.checkout-lock-note,.payment-config-card p,.payment-config-card small,
.payment-config-card label{
  color:var(--maternity-dark-muted)!important;
}

/* Tabelas e metadados: nunca usar cinza claro demais sobre branco */
.shop-admin-table td:nth-child(2),.shop-admin-table td:nth-child(3),.shop-admin-table td:nth-child(4),
.admin-table .meta,.admin-table .muted,.admin-table .description{
  color:#555960!important;
}
input:disabled,select:disabled,textarea:disabled,input[readonly],textarea[readonly]{
  background:#f3f3f4!important;color:#565a60!important;opacity:1!important;
}

/* Popups e menus sobre fundo claro */
.dropdown,.dropdown-menu,.menu-popover,.context-menu{
  background:#fff!important;color:var(--maternity-text)!important;border-color:var(--maternity-border)!important;
}
.dropdown a,.dropdown-menu a,.menu-popover a,.context-menu a{color:var(--maternity-text)!important}

/* A fotografia em si continua fiel ao arquivo. */
img,.photo img,.photo-card img,.cover img,.gallery img,.winner-card img,.collection-gallery img{filter:none!important}

/* =========================================================
   MATERNITY — MENU GLOBAL CLARO (PÚBLICO + MEMBROS)
   Regra final e intencionalmente forte para impedir que
   CSSs antigos de Loja/Blog/Impactou/Área de membros voltem
   a pintar o cabeçalho de preto.
   Admin NÃO é afetado.
   ========================================================= */

/* Barras principais de navegação públicas e da área de membros */
body:not(.admin-body) .home-header,
body:not(.admin-body) .topbar,
body:not(.admin-body) .membership-topbar,
body:not(.admin-body) .shop-header,
body:not(.admin-body) .blog-header,
body:not(.admin-body) .impact-header,
body:not(.admin-body) .site-header {
  background:#ffffff !important;
  background:linear-gradient(90deg,
    var(--maternity-card,#ffffff) 0%,
    color-mix(in srgb,var(--maternity-gold,#ffb700) 7%,#ffffff) 50%,
    var(--maternity-card,#ffffff) 100%) !important;
  color:var(--maternity-text,#111111) !important;
  border-top-color:transparent !important;
  border-bottom:1px solid color-mix(in srgb,var(--maternity-gold,#ffb700) 32%,#e7e7e7) !important;
  box-shadow:0 5px 24px rgba(31,25,10,.055) !important;
}

/* Texto da marca dentro dessas barras */
body:not(.admin-body) .home-header .brand-mark,
body:not(.admin-body) .home-header .brand-mark span,
body:not(.admin-body) .home-header .brand-mark b,
body:not(.admin-body) .topbar .brand-mark,
body:not(.admin-body) .topbar .brand-mark span,
body:not(.admin-body) .topbar .brand-mark b,
body:not(.admin-body) .shop-header .shop-brand,
body:not(.admin-body) .shop-header .shop-brand span,
body:not(.admin-body) .shop-header .shop-brand b,
body:not(.admin-body) .blog-header > a,
body:not(.admin-body) .impact-header > a,
body:not(.admin-body) .impact-header > a b {
  color:var(--maternity-text,#111111) !important;
}

/* Links dos menus: preto em estado normal */
body:not(.admin-body) .home-header nav a,
body:not(.admin-body) .home-nav a,
body:not(.admin-body) .topbar nav a,
body:not(.admin-body) .membership-topbar nav a,
body:not(.admin-body) .shop-header nav a,
body:not(.admin-body) .blog-header nav a,
body:not(.admin-body) .impact-header nav a,
body:not(.admin-body) .site-header nav a {
  position:relative !important;
  color:var(--maternity-text,#111111) !important;
  background:transparent !important;
  border-color:transparent !important;
  text-shadow:none !important;
  box-shadow:none !important;
  opacity:1 !important;
  transition:color .18s ease,background-color .18s ease !important;
}

/* Hover/foco: dourado principal pedido pelo usuário */
body:not(.admin-body) .home-header nav a:hover,
body:not(.admin-body) .home-header nav a:focus-visible,
body:not(.admin-body) .home-nav a:hover,
body:not(.admin-body) .home-nav a:focus-visible,
body:not(.admin-body) .topbar nav a:hover,
body:not(.admin-body) .topbar nav a:focus-visible,
body:not(.admin-body) .membership-topbar nav a:hover,
body:not(.admin-body) .membership-topbar nav a:focus-visible,
body:not(.admin-body) .shop-header nav a:hover,
body:not(.admin-body) .shop-header nav a:focus-visible,
body:not(.admin-body) .blog-header nav a:hover,
body:not(.admin-body) .blog-header nav a:focus-visible,
body:not(.admin-body) .impact-header nav a:hover,
body:not(.admin-body) .impact-header nav a:focus-visible,
body:not(.admin-body) .site-header nav a:hover,
body:not(.admin-body) .site-header nav a:focus-visible {
  color:#ffb700 !important;
  background:transparent !important;
}

/* Item atual: continua preto; apenas recebe um pequeno traço dourado */
body:not(.admin-body) .home-header nav a.active,
body:not(.admin-body) .home-nav a.active,
body:not(.admin-body) .topbar nav a.active,
body:not(.admin-body) .membership-topbar nav a.active,
body:not(.admin-body) .shop-header nav a.active,
body:not(.admin-body) .blog-header nav a.active,
body:not(.admin-body) .impact-header nav a.active,
body:not(.admin-body) .site-header nav a.active {
  color:var(--maternity-text,#111111) !important;
}
body:not(.admin-body) .home-header nav a.active::after,
body:not(.admin-body) .home-nav a.active::after,
body:not(.admin-body) .topbar nav a.active::after,
body:not(.admin-body) .membership-topbar nav a.active::after,
body:not(.admin-body) .shop-header nav a.active::after,
body:not(.admin-body) .blog-header nav a.active::after,
body:not(.admin-body) .impact-header nav a.active::after,
body:not(.admin-body) .site-header nav a.active::after {
  content:"" !important;
  position:absolute !important;
  left:12% !important;
  right:12% !important;
  bottom:-7px !important;
  height:2px !important;
  border-radius:99px !important;
  background:#ffb700 !important;
}

/* Contadores do carrinho: mantém destaque dourado e texto preto */
body:not(.admin-body) .shop-header nav a b,
body:not(.admin-body) .topbar nav .service-cart-link b,
body:not(.admin-body) .topbar nav .service-cart-count,
body:not(.admin-body) .home-header nav .cart-count,
body:not(.admin-body) .home-nav .cart-count {
  background:#ffb700 !important;
  color:#111111 !important;
  border-color:#ffb700 !important;
}

/* Evita que pseudo-elementos ou overlays antigos escureçam a barra */
body:not(.admin-body) .home-header::before,
body:not(.admin-body) .home-header::after,
body:not(.admin-body) .topbar::before,
body:not(.admin-body) .topbar::after,
body:not(.admin-body) .shop-header::before,
body:not(.admin-body) .shop-header::after,
body:not(.admin-body) .blog-header::before,
body:not(.admin-body) .blog-header::after,
body:not(.admin-body) .impact-header::before,
body:not(.admin-body) .impact-header::after {
  background:transparent !important;
  box-shadow:none !important;
}

/* Em telas pequenas continua claro e o menu pode rolar horizontalmente */
@media(max-width:760px){
  body:not(.admin-body) .home-header,
  body:not(.admin-body) .topbar,
  body:not(.admin-body) .membership-topbar,
  body:not(.admin-body) .shop-header,
  body:not(.admin-body) .blog-header,
  body:not(.admin-body) .impact-header,
  body:not(.admin-body) .site-header{
    background:#ffffff !important;
  }
  body:not(.admin-body) .home-header nav,
  body:not(.admin-body) .topbar nav,
  body:not(.admin-body) .membership-topbar nav,
  body:not(.admin-body) .shop-header nav,
  body:not(.admin-body) .blog-header nav,
  body:not(.admin-body) .impact-header nav,
  body:not(.admin-body) .site-header nav{
    background:transparent !important;
  }
}

/* ============================================================
   MENU GLOBAL — presença consistente + contexto público/membros
   ============================================================ */
.site-universal-header{
  position:relative!important;
  z-index:80!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:100%!important;
  min-height:92px!important;
  padding:12px clamp(18px,4vw,52px)!important;
  border-bottom:1px solid var(--maternity-border,#e7ded0)!important;
  background:rgba(255,255,255,.97)!important;
  color:var(--maternity-text,#111)!important;
  box-shadow:0 5px 22px rgba(18,18,18,.045)!important;
}
.site-universal-brand{display:flex!important;align-items:center!important;flex:0 0 auto!important;text-decoration:none!important}
.site-universal-brand img{display:block!important;width:68px!important;height:68px!important;object-fit:contain!important}

/* Força o menu administrável a permanecer visível inclusive em Galerias,
   Rankings e páginas que possuem CSS próprio. */
.public-managed-menu,
.member-managed-menu,
.site-managed-menu,
.ranking-public-menu,
.hero-actions.public-managed-menu{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  max-height:none!important;
  min-height:40px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:clamp(8px,1.35vw,22px)!important;
  position:relative!important;
  z-index:90!important;
  overflow:visible!important;
  transform:none!important;
  background:transparent!important;
}

.site-menu-link,
.site-menu-account,
.public-managed-menu > a,
.member-managed-menu > a,
.site-managed-menu > a,
.ranking-public-menu > a,
.hero-actions.public-managed-menu > a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:6px 2px!important;
  border:0!important;
  background:transparent!important;
  color:#111!important;
  text-decoration:none!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  opacity:1!important;
  text-shadow:none!important;
  box-shadow:none!important;
  transition:color .18s ease!important;
}
.site-menu-link:hover,
.site-menu-link:focus-visible,
.site-menu-account:hover,
.site-menu-account:focus-visible,
.public-managed-menu > a:hover,
.public-managed-menu > a:focus-visible,
.member-managed-menu > a:hover,
.member-managed-menu > a:focus-visible,
.ranking-public-menu > a:hover,
.ranking-public-menu > a:focus-visible,
.hero-actions.public-managed-menu > a:hover,
.hero-actions.public-managed-menu > a:focus-visible{
  color:#ffb700!important;
  background:transparent!important;
}
.site-menu-link.active{color:#111!important;position:relative!important}
.site-menu-link.active::after{
  content:""!important;
  position:absolute!important;
  left:10%!important;
  right:10%!important;
  bottom:1px!important;
  height:2px!important;
  border-radius:99px!important;
  background:#ffb700!important;
}

/* Alguns heróis antigos tinham overflow/cores próprias e escondiam o menu. */
.hero .hero-top,
.hero-top{
  position:relative!important;
  z-index:20!important;
}
.hero .public-managed-menu,
.hero .member-managed-menu,
.hero .site-menu-link{
  color:#111!important;
}

@media(max-width:900px){
  .site-universal-header{align-items:flex-start!important;flex-direction:column!important;gap:8px!important;padding:12px 18px 10px!important}
  .site-universal-brand img{width:58px!important;height:58px!important}
  .site-universal-header .site-managed-menu,
  .public-managed-menu,
  .member-managed-menu,
  .ranking-public-menu,
  .hero-actions.public-managed-menu{
    width:100%!important;
    max-width:100%!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:18px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 0 7px!important;
    scrollbar-width:thin!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .hero-top{align-items:flex-start!important;flex-wrap:wrap!important;gap:12px!important}
  .hero-top > .public-managed-menu,
  .hero-top > .member-managed-menu{flex-basis:100%!important}
}



/* Abas selecionadas: texto sempre escuro sobre o fundo dourado.
   Corrige especialmente Rankings, onde o CSS antigo deixava o título
   dourado sobre fundo dourado e fazia a escrita "sumir". */
.ranking-type-tab.is-active strong,
.ranking-type-tab.active strong,
.tabs a.active strong,
.competition-type-tabs a.active strong,
.competition-year-tab.active strong,
.competition-round-tab.active strong,
.shop-category-pills a.active strong,
.jury-filters button.active strong{
  color:#111!important;
}

/* Contador da aba ativa permanece legível e separado do fundo dourado. */
.ranking-type-tab.is-active span,
.ranking-type-tab.active span{
  background:#111!important;
  color:#ffb700!important;
}
