/* Chave do Dia v4 — refinamento editorial, contraste e hierarquia visual. */

:root,
:root[data-theme="dark"],
:root:not([data-theme="light"]){
  color-scheme:light;
  --ground:#fff;
  --surface:#fff;
  --surface-2:#fafafa;
  --ink:#141414;
  --muted:#625a68;
  --line:#ece8ef;
  --brand:#6E3FA0;
  --brand-soft:#f7f4fa;
  --next-bg:#4A2670;
  --next-fg:#fff;
  --slot:#e5dfea;
  --v3-text:#141414;
  --v3-muted:#625a68;
  --v3-bg:#fff;
  --v3-border:rgba(74,38,112,.12);
  --shadow:0 8px 30px -24px rgba(28,18,35,.22);
}

html,body{background:#fff!important;color:#141414}
body{line-height:1.62}
main p,main li,main dd,main dt,.prose{color:#202020}
.product-hero p,.context-note,.context-intro,.timeline-heading>p:not(.eyebrow),.today-status,.national-hero p,.national-card>small,.national-card>span{color:#625a68}

h1,h2,h3,.display,.panel h1,.panel h2,.panel h3,.product-hero h1,.stats-hero h1,.m1-hero h1,.national-hero h1,.timeline-heading h2{color:#4A2670}
.eyebrow{color:#6E3FA0!important;font-weight:700;letter-spacing:.1em}
.eyebrow::after{background:#e6ddeb}

.masthead{background:#fff;border-bottom:1px solid #eeeaf1;box-shadow:none}
.masthead .wrap{height:72px}
nav.main a{color:#4d4652}
nav.main a.on,nav.main a:hover{color:#4A2670}
.notice{background:#fafafa;color:#5d5662;border-bottom:1px solid #eeeaf1}

.panel,.country-card,.insight-card,.national-card,.national-prizes>div{background:#fff;border-color:#ece8ef;box-shadow:0 8px 28px -24px rgba(20,20,20,.22)}
.panel{border-radius:16px}
.panel-pad{padding:28px 30px}

/* Sem banner publicitário horizontal no topo. Mantêm-se apenas placements internos/rail. */
body>.wrap>.casa.leaderboard,
body>.wrap>.ad-leader,
body>.wrap>.adsbygoogle{display:none!important}

/* Euromilhões: estrelas representadas por bolas amarelas, mantendo a semântica do extra. */
.star{width:60px;height:60px;border-radius:50%;background:#FFD400;color:#34174F}
.star::before{inset:0;border-radius:50%;clip-path:none!important;background:#FFD400}
.star span{transform:none}
.balls .ball.ex-estrela,.miniballs .mini.ex-estrela{background:#FFD400!important;color:#34174F!important}

/* Arquivo recente: a chave completa inclui extras em pequenos círculos. */
.archive .arow{align-items:center;gap:14px}
.archive .arow .k{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.archive-extras{display:inline-flex;align-items:center;gap:5px;margin-left:3px}
.archive-plus{color:#8b7d93;font-weight:600;margin:0 1px}
.archive-extra-ball{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:999px;background:#FFD400;color:#34174F;font-size:12px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}

/* Tabela completa: cabeçalhos interativos e leitura mais clara. */
.data-table thead th{background:#fff;position:sticky;top:0;z-index:1}
.sortable-data-table th{padding:0}
.sortable-data-table th .sort-button{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:6px;border:0;background:transparent;color:#4A2670;font:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:9px 10px;cursor:pointer}
.sortable-data-table th:first-child .sort-button{justify-content:flex-start}
.sortable-data-table th .sort-button::after{content:'↑↓';font-size:11px;opacity:.45}
.sortable-data-table th[aria-sort='descending'] .sort-button::after{content:'↓';opacity:1}
.sortable-data-table th[aria-sort='ascending'] .sort-button::after{content:'↑';opacity:1}
.sortable-data-table tbody tr:hover td{background:#faf8fb}

/* Marca e maioridade: assets são ativados automaticamente quando existirem em public/. */
.brand-logo-img{display:block;width:auto;height:34px;max-width:min(230px,42vw);object-fit:contain}
.age-mark{display:block;width:44px;height:44px;object-fit:contain;flex:0 0 auto}

/* Pequenos ajustes de ritmo e legibilidade. */
.today-link,.country-card a,.insight-card>a,.knowledge-link strong,.archive a{color:#6E3FA0}
.next{box-shadow:none}
.next .eyebrow{color:rgba(255,255,255,.78)!important}
.next .amount{color:#FFD400}
.timeline-date-chip{background:#f5f1f8;color:#4A2670}
.freshness{background:#fff;border-color:#e9e4ec}

@media(max-width:760px){
  .panel-pad{padding:22px 20px}
  .brand-logo-img{height:29px;max-width:180px}
  .star{width:48px;height:48px;font-size:19px}
  .archive .arow .k{gap:5px}
  .archive-extra-ball{min-width:24px;height:24px;font-size:11px}
}
