/* Recursos compartilhados; cada tema conserva seu acabamento e cores. */
:root[data-site-theme] :is(h1,h2,h3) { font-family:var(--font-heading,Manrope,Arial,sans-serif); }
#conteudo,dialog { font-size:calc(15px * var(--text-scale,1)); }
.brand .brand-fallback { display:flex; flex-direction:row; align-items:center; gap:inherit; min-width:0; }
.brand-logo { display:none; width:148px; height:48px; object-fit:contain; object-position:left center; }
.brand.has-logo .brand-fallback { display:none; }
.brand.has-logo .brand-logo-light { display:block; }
:root[data-theme="dark"] .brand.has-logo .brand-logo-light { display:none; }
:root[data-theme="dark"] .brand.has-logo .brand-logo-dark { display:block; }
.site-footer .brand-logo { height:42px; }
@media(max-width:380px) { .brand-logo { width:120px; height:42px; } }
/* Apenas os símbolos do clima recebem preenchimentos, sem afetar o botão de modo. */
.weather-reading>.icon { --weather-sun-fill:#ffc33d; --weather-sun-stroke:#ed9d12; --weather-cloud-fill:#f8fbff; --weather-cloud-stroke:#7296af; flex-shrink:0; }
:root[data-site-theme="tema01"] .weather-card .weather-reading>.icon { width:58px; height:58px; }
:root[data-site-theme="tema02"] .weather-card .weather-reading>.icon { width:50px; height:50px; }
:root[data-site-theme="tema03"] .weather-card .weather-reading>.icon { width:56px; height:56px; }
/* Calendário: cores e família de títulos definidas pelo tema/personalização. */
:root[data-site-theme] .event-calendar { --calendar-band:var(--primary); --calendar-band-ink:var(--on-primary,#121212); --calendar-radius:8px; }
:root[data-site-theme="tema02"] .event-calendar { --calendar-radius:4px; }
:root[data-site-theme="tema03"] .event-calendar { --calendar-radius:10px; }
:root[data-site-theme="tema04"] .event-calendar { --calendar-band:var(--gospel-champagne); --calendar-band-ink:#10243b; --calendar-radius:6px; }
:root[data-site-theme] :is(.retro-event,.event-date) .event-calendar { display:block; width:56px; flex-shrink:0; padding:0; text-align:center; background:var(--card-bg,#fff); color:var(--ink); border:1px solid var(--border); border-radius:var(--calendar-radius); overflow:hidden; box-shadow:0 2px 0 var(--surface); line-height:1; }
:root[data-site-theme] .event-calendar .event-calendar-month { display:block; width:100%; margin:0; padding:5px 3px; background:var(--calendar-band); color:var(--calendar-band-ink); font-family:var(--font-body,Manrope,Arial,sans-serif); font-size:calc(10px * var(--text-scale,1)); font-weight:800; letter-spacing:.1em; line-height:1.4; }
:root[data-site-theme] .event-calendar .event-calendar-day { display:block; width:100%; margin:0; padding:9px 3px 10px; font-family:var(--font-heading,Manrope,Arial,sans-serif); font-size:calc(29px * var(--text-scale,1)); font-weight:700; font-variant-numeric:tabular-nums; line-height:1; letter-spacing:0; }
:root[data-site-theme] .retro-event { display:grid; grid-template-columns:56px minmax(0,1fr) 17px; }
.event-date { display:flex; align-items:center; gap:14px; margin:16px 0; }
.event-date .event-time { margin:0; min-width:0; }
/* Quando só um bloco está habilitado, ele ocupa toda a largura do grupo. */
:root[data-site-theme] .home-single-column { grid-template-columns:minmax(0,1fr); }
:root[data-site-theme] .home-single-column>[class$="-ranking-column"] { border-left:0; padding-left:0; }
:root[data-site-theme] .home-single-column .hero-carousel { width:100%; }
:root[data-site-theme="tema03"] .hero-layout.home-single-column .on-air-card { grid-column:1; }
:root[data-site-theme] .home-discover[data-block-count="1"] { grid-template-columns:minmax(0,1fr); }
:root[data-site-theme] .home-discover[data-block-count="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
:root[data-site-theme] .home-discover[data-block-count="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
/* Os destaques também ficam disponíveis no Original, mantendo a enquete no seu bloco. */
.original-discover { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:36px 0; align-items:start; }
.original-discover>section { min-width:0; overflow-wrap:anywhere; }
.original-discover .section-heading { flex-direction:column; align-items:flex-start; gap:8px; min-height:78px; margin-bottom:16px; }
.original-discover .section-heading h2 { font-size:calc(24px * var(--text-scale,1)); }
.original-discover .retro-promo { display:block; background:var(--secondary,#34213b); color:var(--on-secondary,#fff); padding:24px; border-radius:14px; }
.original-discover .retro-promo>.icon { width:32px; height:32px; margin-bottom:18px; }
.original-discover .retro-promo h3 { font-size:calc(26px * var(--text-scale,1)); }
.original-discover .retro-promo p { margin:14px 0 22px; font-size:calc(13px * var(--text-scale,1)); }
.original-discover .retro-promo>span { display:flex; align-items:center; gap:8px; font-weight:700; font-size:calc(12px * var(--text-scale,1)); }
.original-discover .retro-albums { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.original-discover .retro-album { overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--card-bg,#fff); }
.original-discover .retro-album img { width:100%; height:120px; object-fit:cover; }
.original-discover .retro-album span { display:block; padding:12px; font-size:calc(11px * var(--text-scale,1)); }
.original-discover .retro-event { display:grid; align-items:center; gap:12px; padding:16px 0; border-bottom:1px solid var(--border); }
.original-discover .retro-event:first-of-type { border-top:1px solid var(--border); }
.original-discover .retro-event>div { min-width:0; }
.original-discover .retro-event strong { display:block; font-size:calc(13px * var(--text-scale,1)); }
.original-discover .retro-event small { display:block; font-size:calc(11px * var(--text-scale,1)); color:var(--muted); margin-top:5px; }
.original-discover .retro-event>.icon { width:17px; height:17px; }
@media(max-width:1200px) {
 :root[data-site-theme] .home-discover[data-block-count="3"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 :root[data-site-theme] .home-discover { grid-template-columns:minmax(0,1fr); }
 :root[data-site-theme] .home-discover[data-block-count] { grid-template-columns:minmax(0,1fr); }
 .original-discover .section-heading { min-height:0; flex-direction:row; align-items:center; justify-content:space-between; flex-wrap:wrap; }
 :root[data-site-theme] .weather-reading>.icon { max-width:56px; max-height:56px; }
}
/* Reserva espaço para a logo e para as duas famílias de texto no menu completo. */
@media(min-width:1381px) {
 :root:is([data-site-theme="tema01"],[data-site-theme="tema03"],[data-site-theme="tema04"]) .site-navigation a { padding-left:5px; padding-right:5px; }
 :root[data-site-theme="tema04"] .site-navigation a { padding-left:4px; padding-right:4px; }
 :root[data-site-theme="tema04"]:is([data-font-body="arial"],[data-font-body="verdana"],[data-font-body="tahoma"],[data-font-body="trebuchet"]) .site-header .brand b { font-size:18px; }
}
@media(max-width:360px) {
 .site-header .brand b { max-width:120px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
}
