*{box-sizing:border-box}body{margin:0;padding-bottom:82px;background:#f4f5f8;color:#1c2432;font:15px/1.5 Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{max-width:1220px;margin:auto;padding:0 24px}header{background:white}.mast{height:110px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:14px}.brand img{width:86px;height:82px;object-fit:contain}.brand strong{font-size:27px;display:block}.brand small{color:#788393}.mast-visual{width:55%;height:78px;display:flex;align-items:center;justify-content:center;overflow:hidden}.mast-visual img{max-width:100%;max-height:78px;object-fit:contain}.placeholder{border:1px dashed #cbd1dc;color:#8b95a5;flex-direction:column;letter-spacing:2px}.placeholder small{letter-spacing:0}nav{background:#161b2a;color:white}.navinner{min-height:56px;display:flex;align-items:center;justify-content:space-between}.links{display:flex;flex-wrap:wrap}.links a{padding:18px 13px;font-size:12px;text-transform:uppercase;font-weight:800}.links a:hover,.links .active{background:var(--accent,#00a8ff)}.live-dot{font-size:12px;color:#ff5374;font-weight:bold;white-space:nowrap}.menu{display:none;background:none;border:0;color:white}main{padding-top:28px!important;padding-bottom:65px!important;min-height:65vh}.hero{display:grid;grid-template-columns:2fr 1fr;gap:22px}.slider{height:400px;position:relative;overflow:hidden;background:#202534;border-radius:5px}.slide{position:absolute;inset:0;background-position:center;background-size:cover;display:flex;align-items:center;padding:45px;color:#fff;opacity:0;transition:opacity .5s;pointer-events:none}.slide.visible{opacity:1;pointer-events:auto}.slide>div{max-width:550px}.slide h1{font-size:clamp(32px,4vw,55px);line-height:1.1;margin:15px 0}.slide p{font-size:18px}.eyebrow{color:#ff5678;font-size:11px;font-weight:900;letter-spacing:2px}.slider>button{position:absolute;top:48%;border:0;border-radius:50%;background:#fffd;width:33px;height:33px;font-size:23px}.prev{left:10px}.next{right:10px}.button{display:inline-block;background:var(--accent,#00a8ff);border:0;color:#fff;padding:12px 21px;border-radius:4px;font-weight:bold}.onair{background:#171d2d;color:#fff;border-radius:5px;padding:32px;display:flex;flex-direction:column;justify-content:center}.onair h2{font-size:29px;line-height:1.15;margin:18px 0 5px}.onair p,.onair small{color:#aab4c4}.onair .line{height:1px;background:#363d4e;margin:18px 0}.onair>a{color:#ff5374;font-weight:bold;margin-top:18px}.nextshow{padding:10px 0;border-bottom:1px solid #363d4e}.nextshow b{color:#ff5374}.columns{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-top:25px}.sectiontitle{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e3e6ed;margin:22px 0 20px}.sectiontitle h2{font-size:21px;border-bottom:3px solid var(--accent,#00a8ff);margin:0 0 -2px;padding-bottom:10px}.sectiontitle a,.card a{color:var(--accent,#00a8ff);font-weight:bold}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:#fff;border-radius:5px;overflow:hidden;box-shadow:0 2px 10px #1111}.card>img{width:100%;height:145px;object-fit:cover}.cardbody{padding:18px}.card h3{font-size:17px;line-height:1.3;margin:0 0 10px}.card p{color:#626c7c;font-size:13px}.songs,.poll,.prose,.daypanel{background:#fff}.songs>div{display:flex;gap:18px;align-items:center;padding:12px 20px;border-bottom:1px solid #eee}.songs em{font-size:26px;color:var(--accent,#00a8ff);font-weight:900}.songs span:nth-child(2){flex:1}.songs small{display:block;color:#778292}.video{aspect-ratio:16/9;background:#1d2332}.video iframe,.chat iframe{width:100%;height:100%;border:0}.sponsor{display:flex;align-items:center;justify-content:center;background:#fff;min-height:95px;margin-bottom:10px;padding:10px}.sponsor img{max-width:100%;max-height:130px}.adplaceholder{display:grid;place-items:center;background:#e8ebf0;color:#8791a0;height:130px}.poll{padding:22px}.poll label{display:block;padding:7px 0}.poll .button{margin-top:13px}.chat{height:350px}.empty{background:white;color:#7a8596;padding:24px}.daytabs{display:flex;flex-wrap:wrap;gap:5px}.day{border:1px solid #dfe4eb;background:#fff;padding:12px 16px}.day.selected{background:var(--accent,#00a8ff);color:#fff}.daypanel{padding:25px;margin-top:10px}.daypanel[hidden]{display:none}.schedule{display:flex;gap:22px;padding:18px 0;border-top:1px solid #eee}.schedule time{font-size:22px;font-weight:bold;color:var(--accent,#00a8ff)}.schedule p{margin:0;color:#7d8795}.prose{padding:30px;font-size:17px}.whatsapp{position:fixed;right:22px;bottom:102px;z-index:20;background:#22c55e;color:#fff;width:55px;height:55px;border-radius:50%;display:grid;place-items:center;font-size:30px;box-shadow:0 3px 15px #0003}footer{background:#171d2d;color:#fff;padding:35px 0}footer p,footer small{color:#a9b3c5}.player{position:fixed;bottom:0;left:0;right:0;background:#0e1320;color:#fff;z-index:30}.playerinner{height:82px;display:flex;align-items:center;gap:25px}.playbrand{display:flex;align-items:center;gap:14px;flex:1}.playbrand small{display:block;color:#adb6c7}.pulse{display:grid;place-items:center;background:var(--accent,#00a8ff);width:42px;height:42px;border-radius:50%}.player button{background:#fff;border:0;border-radius:50%;height:48px;width:48px;font-size:19px}.air{font-size:12px;color:#ff5374;font-weight:bold}.player input{width:95px;accent-color:var(--accent,#00a8ff)}.admin{padding:0}.adminwrap{max-width:1200px;margin:auto;padding:25px}.adminhead{display:flex;align-items:center;gap:25px;justify-content:space-between}.adminhead h1{flex:1}.adminhead button{border:0;padding:8px 14px}.adminlayout{display:grid;grid-template-columns:210px 1fr;gap:25px}.adminnav{display:flex;flex-direction:column;align-self:start;background:#171d2d;padding:10px;border-radius:5px}.adminnav a{color:#fff;padding:11px 13px}.adminnav a.selected,.adminnav a:hover{background:var(--accent,#00a8ff)}.panel{background:white;padding:25px;margin-bottom:20px;box-shadow:0 2px 10px #1111;border-radius:5px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.formgrid label{font-size:13px;font-weight:bold}.formgrid input,.formgrid textarea,.formgrid select,.login input{display:block;width:100%;padding:10px;margin-top:6px;border:1px solid #cbd1da;border-radius:4px}.formgrid .full{grid-column:1/-1}.formgrid button{justify-self:start}.hint{font-size:12px;color:#768191}.item{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #eee;padding:10px 0}.danger{background:#fff0f0;border:1px solid #eaa;color:#a22;padding:7px 12px}.login{max-width:420px;margin:90px auto}.login input{margin-bottom:20px}.alert,.success{padding:15px;background:#ffe4e6;color:#822}.success{background:#e5f5e9;color:#164}@media(max-width:850px){.hero,.columns{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.menu{display:block;padding:12px}.navinner{position:relative}.links{display:none;position:absolute;z-index:15;top:100%;left:0;right:0;background:#161b2a;flex-direction:column}.links.open{display:flex}.links a{padding:12px 24px}.adminlayout{grid-template-columns:1fr}.adminnav{flex-direction:row;overflow-x:auto;white-space:nowrap}}@media(max-width:550px){.container{padding-left:15px;padding-right:15px}.mast{height:auto;padding-top:12px;padding-bottom:12px}.brand img{width:55px;height:58px}.brand strong{font-size:19px}.brand small{font-size:10px}.mast-visual{width:42%;height:60px;font-size:9px;letter-spacing:0}.slider{height:320px}.slide{padding:27px}.grid,.formgrid{grid-template-columns:1fr}.formgrid .full{grid-column:auto}.player input,.air{display:none}.whatsapp{bottom:96px}}
.admin-demo-link{font-size:12px;color:#ff7792;font-weight:bold;padding:10px}.player-top{padding-top:82px;padding-bottom:0}.player-top .player{top:0;bottom:auto}.player-top .whatsapp{bottom:25px}.muted{color:#aab4c4}.chat iframe{width:100%;height:100%;border:0}section{scroll-margin-top:30px}.adminnav button{color:#fff;border:0;background:none;text-align:left;padding:11px 13px;white-space:nowrap}.adminnav button.selected,.adminnav button:hover{background:var(--accent,#00a8ff)}.adminnav{overflow-x:auto}.demo-note{background:#fff7e6;color:#664500;border:1px solid #f2d698;padding:14px;margin-bottom:20px}.admincontent h2{margin-top:0}.formgrid label{display:block}.formgrid .full{grid-column:1/-1}.formgrid input[type=file]{font-size:13px}.item span{min-width:0;overflow-wrap:anywhere}@media(max-width:850px){.adminnav{flex-wrap:wrap}}@media(max-width:550px){.admin-demo-link{font-size:11px}}
.gallery-tile{border:0;background:#fff;padding:0;text-align:left;box-shadow:0 2px 10px #1111;color:#222;overflow:hidden;border-radius:5px}.gallery-tile img{display:block;width:100%;height:175px;object-fit:cover}.gallery-tile span{display:block;padding:12px;font-weight:bold}.gallery-tile:hover img{filter:brightness(.88)}.photo-dialog{border:0;border-radius:8px;padding:14px;background:#171d2d;color:#fff;max-width:min(94vw,1050px);max-height:94vh}.photo-dialog::backdrop{background:#08101bde}.photo-dialog button{float:right;background:transparent;color:white;border:0;font-size:25px}.photo-dialog figure{margin:38px 0 0}.photo-dialog img{max-width:100%;max-height:74vh;display:block;margin:auto;object-fit:contain}.photo-dialog figcaption{text-align:center;padding:10px}
.hero[hidden],.columns[hidden],.page-content[hidden]{display:none}.page-content{min-height:55vh}.page-content>.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.page-content .article{background:#fff;max-width:780px;margin:auto;padding:30px}.article h1{font-size:32px;line-height:1.2}.article img{width:100%;max-height:480px;object-fit:cover}.article p{white-space:pre-line;font-size:17px}.back,.cardbody span{color:var(--accent,#00a8ff);font-weight:bold}.page-content .video{min-height:180px}@media(max-width:700px){.page-content>.grid{grid-template-columns:1fr}}
.backup-actions{display:flex;gap:10px;align-items:center;margin-bottom:20px}.backup-actions button{border:1px solid #cbd1da;background:white;padding:11px 16px}.backup-actions .button{cursor:pointer}
.mast-visual{position:relative}.mast-visual>a{position:relative;width:100%;height:100%;display:block;overflow:hidden;border-radius:5px;background:#151a29}.mast-visual>a img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 45%;filter:brightness(.55)}.mast-visual>a span{position:absolute;left:22px;right:12px;bottom:13px;color:#fff;font-weight:900;letter-spacing:1px;font-size:14px;text-shadow:0 2px 8px #000}.mast-visual>a:hover img{filter:brightness(.7)}@media(max-width:550px){.mast-visual>a span{font-size:9px;left:8px;bottom:6px;line-height:1.1}}
.song-row img{height:55px;width:55px;object-fit:cover;border-radius:4px}.song-row>a{border-radius:50%;background:#fce5ec;color:var(--accent,#00a8ff);width:34px;height:34px;display:grid;place-items:center;font-size:13px}.song-row>a:hover{background:var(--accent,#00a8ff);color:white}.sponsor-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:#798395;letter-spacing:1px}.sponsor-controls button{border:1px solid #cdd3dd;background:white;color:#1d2534;font-size:19px;width:29px;height:29px;line-height:1}.sponsor-demo{min-height:132px;gap:15px;justify-content:flex-start;padding:20px;color:white;background:linear-gradient(135deg,#182640,#00a8ff);box-shadow:0 3px 12px #151b2622}.sponsor-demo.sponsor-style-1{background:linear-gradient(135deg,#193f5d,#279fbb)}.sponsor-demo.sponsor-style-2{background:linear-gradient(135deg,#583163,#e07b52)}.sponsor-demo.sponsor-style-3{background:linear-gradient(135deg,#203d38,#4c9e72)}.sponsor-demo.sponsor-style-4{background:linear-gradient(135deg,#52422d,#d79a42)}.sponsor-mark{font-size:36px;background:#ffffff2a;width:52px;height:52px;flex:none;border-radius:8px;display:grid;place-items:center}.sponsor-copy strong{display:block;font-size:19px;line-height:1.2}.sponsor-copy small{display:block;margin-top:8px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#ffffffd1}.sponsor-count{text-align:center;color:#7b8494;font-size:12px}
.brand{flex:0 0 auto;min-width:135px}.brand img{width:auto;max-width:180px;height:86px;object-fit:contain}.mast-visual{width:min(68%,760px);height:84px}.mast-visual>a span{font-size:16px}.news-card{display:block;transition:transform .2s,box-shadow .2s}.news-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #1112}.news-card .cardbody span{font-size:13px;color:var(--accent,#00a8ff);font-weight:800}.news-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.columns{align-items:start}.sidebar{min-width:0}.mobile-apps{display:grid;gap:10px}.mobile-app{min-height:80px;padding:12px 16px;background:#fff;border-radius:7px;display:flex;align-items:center;gap:13px;box-shadow:0 2px 10px #1111}.mobile-app .mobile-icon{width:46px;height:46px;border-radius:11px;display:grid;place-items:center;background:#dcf5e3;color:#128445;font-size:20px;font-weight:bold}.mobile-iphone .mobile-icon{background:#e8ebf0;color:#222}.mobile-app small{display:block;color:#8390a0;font-size:11px;letter-spacing:1px;font-weight:bold}.mobile-app strong{display:block;font-size:20px;line-height:1.2}.mobile-chevron{margin-left:auto;font-size:25px;color:var(--accent,#00a8ff)}.mobile-app:not(.mobile-unavailable):hover{outline:2px solid var(--accent,#00a8ff)}.mobile-unavailable{opacity:.75}.schedule-live{background:#fff2f6;border-left:4px solid var(--accent,#00a8ff);padding-left:14px}.onair-pill{margin-left:auto;background:var(--accent,#00a8ff);color:#fff;border-radius:30px;padding:5px 10px;font-size:10px;font-weight:900;white-space:nowrap}.admin{background:linear-gradient(135deg,#f2f4f8,#e9edf5);min-height:100vh}.adminwrap{max-width:1280px;padding:32px}.adminhead{padding:27px 32px;background:linear-gradient(110deg,#171d2d,#35405a);border-radius:12px;color:#fff;margin-bottom:16px}.adminhead h1{font-size:28px;margin:0}.adminhead a{padding:10px 16px;border:1px solid #ffffff70;border-radius:6px;font-weight:bold}.adminhead a:hover{background:#ffffff22}.admin .demo-note{border-radius:8px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.stat-card{background:#fff;border-radius:9px;padding:18px 21px;border:1px solid #e3e7ef;box-shadow:0 3px 12px #121b2a0a}.stat-card strong{display:block;color:var(--accent,#00a8ff);font-size:27px;line-height:1}.stat-card span{display:block;color:#6a7587;font-size:13px;margin-top:7px}.adminnav{border-radius:9px;position:sticky;top:16px;box-shadow:0 5px 20px #0c142026}.adminnav button{border-radius:5px;font-weight:600}.admincontent>h2{font-size:25px;margin-bottom:18px}.admincontent .panel{border-radius:9px;border:1px solid #e5e9f0;box-shadow:0 5px 18px #1111}.admincontent .formgrid{gap:20px}.admincontent label{font-size:14px;color:#344052}.admincontent input,.admincontent textarea,.admincontent select{border-radius:6px;background:#fbfcfe;transition:border-color .2s,box-shadow .2s}.admincontent input:focus,.admincontent textarea:focus,.admincontent select:focus{outline:0;border-color:var(--accent,#00a8ff);box-shadow:0 0 0 3px #00a8ff22}.admincontent .button{border-radius:6px;padding:12px 20px}.admincontent .item:hover{background:#f8f9fc}.backup-actions{justify-content:flex-end}@media(max-width:850px){.admin-stats{grid-template-columns:repeat(2,1fr)}.adminnav{position:static}.brand img{max-width:140px;height:70px}}@media(max-width:550px){.brand{min-width:0}.brand img{max-width:90px;height:62px}.mast-visual{width:63%;height:64px}.mast-visual>a span{font-size:10px}.adminwrap{padding:14px}.adminhead{padding:18px;gap:12px}.adminhead h1{font-size:20px}.adminhead a{font-size:12px}.admin-stats{gap:8px}.stat-card{padding:12px}.stat-card strong{font-size:21px}.stat-card span{font-size:11px}}

.program-photo{width:66px;height:55px;object-fit:cover;border-radius:7px;flex:none}.schedule{align-items:center}.footerbrand{display:flex;align-items:center;gap:20px}.footerbrand img{width:80px;height:65px;object-fit:contain}.footerbrand p{margin:3px 0}.player-logo{width:46px;height:46px;object-fit:contain;background:#ffffff18;border-radius:8px;padding:4px}.gallery-page{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:550px){.program-photo{width:48px;height:48px}.schedule{gap:10px}.schedule time{font-size:17px}.gallery-page{grid-template-columns:repeat(2,minmax(0,1fr))}}

.mast-visual.visual-ready{background:#fff}.mast-visual.visual-ready>a{background:#fff}.mast-visual.visual-ready img{object-fit:contain;filter:none}.mast-visual.visual-ready>a:hover img{filter:none}.playerinner{height:var(--player-height,75px)}body{padding-bottom:var(--player-height,75px)}.player-top{padding-top:var(--player-height,75px);padding-bottom:0}.embedded-player{width:100%;height:100%;border:0;display:block}.player:has(.embedded-player) .playerinner{max-width:none;padding:0}.camera-page video{width:100%;height:100%;object-fit:contain}.camera-page .empty{height:100%;display:grid;place-items:center}.poll-results{margin-top:20px;padding-top:16px;border-top:1px solid #ddd;font-size:12px}.poll-choice{margin:9px 0}.poll-track{height:7px;border-radius:5px;background:#e9e9ef;overflow:hidden}.poll-track i{height:100%;display:block;background:var(--accent,#00a8ff)}.live-dot{max-width:230px;overflow:hidden;text-overflow:ellipsis}.mobile-android .mobile-icon{font-size:22px}.mobile-iphone .mobile-icon{font-size:30px;line-height:1}@media(max-width:550px){.live-dot{max-width:105px;font-size:10px}}
.mobile-icon svg{width:25px;height:25px}.mobile-iphone .mobile-icon svg{width:27px;height:27px}

.mast-visual.visual-ready{border:1px solid #eceef2;border-radius:6px;overflow:hidden}.mast-visual.visual-ready>a{display:flex;align-items:center;justify-content:center}.mast-visual.visual-ready img{width:100%;height:100%;max-height:none;object-fit:contain;filter:none}.banner-preview img{display:block;max-width:100%;width:650px;height:110px;object-fit:contain;background:#f7f8fa;border:1px dashed #cad0da;border-radius:5px}.banner-preview p{color:#687486}.sidebar-top5{background:white;border-radius:6px;overflow:hidden}.top5-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-bottom:1px solid #edf0f4}.top5-item:hover{background:#f7f8fb}.top5-item>b{color:var(--accent,#00a8ff);font-size:20px}.top5-item img{width:48px;height:48px;object-fit:cover;border-radius:5px}.top5-item span{min-width:0}.top5-item strong,.top5-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top5-item small{font-size:12px;color:#748092}.whatsapp svg{width:31px;height:31px}.whatsapp[hidden]{display:grid}.footer-layout{display:flex;align-items:start;justify-content:space-between;gap:25px}.footerbrand img{width:115px;height:90px}.footerbrand strong{font-size:22px}.footer-nav{background:transparent;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px;max-width:570px}.footer-nav a{font-size:13px;color:#dce3ee}.footer-nav a:hover,.footer-bottom a{color:#ff718f}.footer-bottom{border-top:1px solid #384052;margin-top:27px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#b9c2d1;font-size:13px}@media(max-width:700px){.footer-layout,.footer-bottom{flex-direction:column}.footer-nav{justify-content:flex-start}}

.nav-tools{display:flex;align-items:center;gap:14px}.nav-tools button{color:#fff;background:#ffffff15;border:1px solid #ffffff38;border-radius:5px;padding:7px 10px;white-space:nowrap}.color-presets>div{display:flex;gap:12px}.color-presets button{height:35px;width:35px;border:2px solid white;box-shadow:0 0 0 1px #ccd1da;border-radius:50%}html[data-theme=dark] body:not(.admin){background:#101723!important;color:#e9edf5}html[data-theme=dark] header,html[data-theme=dark] .card,html[data-theme=dark] .prose,html[data-theme=dark] .songs,html[data-theme=dark] .poll,html[data-theme=dark] .daypanel,html[data-theme=dark] .sidebar-top5,html[data-theme=dark] .mobile-app,html[data-theme=dark] .gallery-tile,html[data-theme=dark] .article,html[data-theme=dark] .top5-item,html[data-theme=dark] .empty{background:#1b2737;color:#e9edf5}html[data-theme=dark] .card p,html[data-theme=dark] .schedule p,html[data-theme=dark] .top5-item small{color:#b9c5d6}html[data-theme=dark] .day{background:#233145;color:#fff;border-color:#45546b}html[data-theme=dark] .schedule-live{background:#3b2535}html[data-theme=dark] .mast-visual.visual-ready,html[data-theme=dark] .mast-visual.visual-ready>a{background:#fff}html[data-theme=dark] .footer-nav{background:none}@media(max-width:850px){.nav-tools{margin-left:auto}}@media(max-width:550px){.nav-tools{gap:5px}.nav-tools button{font-size:11px;padding:6px}}

.music-dialog{border:0;background:#141c29;color:#fff;padding:12px;border-radius:10px;width:min(92vw,720px);max-width:720px}.music-dialog::backdrop{background:#08101bcf}.music-dialog>button{display:block;margin-left:auto;background:none;color:#fff;border:0;font-size:25px}.music-frame{aspect-ratio:16/9}.music-frame iframe{border:0;width:100%;height:100%}#poll-tally[hidden]{display:none}

.mast-visual.photo-ready img{object-fit:cover}

/* Cores configuradas no painel para os temas claro e escuro. */
html body:not(.admin){background-color:var(--site-bg,#f4f5f8);color:var(--site-text,#1c2432)}
html[data-theme=dark] body:not(.admin){background-color:var(--site-bg,#101723)!important;color:var(--site-text,#e9edf5)}
html body:not(.admin) header{background:var(--site-header,#fff);color:var(--site-text,#1c2432)}
html body:not(.admin) nav:not(.footer-nav){background:var(--site-nav,#161b2a)}
html body:not(.admin) footer{background:var(--site-footer,#1c2535)}
html body:not(.admin) .player{background:var(--site-player,#171d2b)}
html body:not(.admin) :is(.card,.prose,.daypanel,.sidebar-top5,.mobile-app,.gallery-tile,.article,.poll,.top5-item){background-color:var(--site-surface,#fff);color:var(--site-text,#1c2432)}
html[data-theme=dark] body:not(.admin) :is(.card,.prose,.daypanel,.sidebar-top5,.mobile-app,.gallery-tile,.article,.poll,.top5-item){background-color:var(--site-surface,#1b2737);color:var(--site-text,#e9edf5)}
html body:not(.admin) :is(.sectiontitle h2,.card h3,.prose h2,.daypanel h2,.schedule b){color:var(--site-text,#1c2432)}
.admin-image-preview{display:block;width:100%;max-width:250px;height:110px;object-fit:contain;background:#f3f6fa;border:1px solid #d9dfe8;border-radius:6px;margin-top:9px}
.admin-item-thumb{width:76px;height:55px;object-fit:cover;border-radius:5px;background:#f3f6fa;flex:none}
.password-form{max-width:720px}
.adminnav-caption{display:block;color:#aeb8c8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:19px 12px 7px}
#chat-section[hidden]{display:none}

.video-highlights{align-items:start}.video-highlights .video{min-height:0;aspect-ratio:16/9}.video-highlights iframe{width:100%;height:100%;border:0;display:block}.video-highlights .cardbody{padding:12px 14px}.video-highlights h3{font-size:14px;margin:0}

.video-thumb{width:100%;aspect-ratio:16/9;padding:0;border:0;display:block;position:relative;overflow:hidden;background:linear-gradient(135deg,#192a40,#376583);color:#fff}.video-thumb img{display:block;width:100%;height:100%;object-fit:cover}.video-thumb img[hidden]{display:none}.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#151b24df;color:#fff;font-size:21px;padding-left:4px;box-shadow:0 4px 20px #0008}.video-thumb:hover .video-play,.video-thumb:focus-visible .video-play{background:var(--accent,#00a8ff)}.video-thumb:focus-visible{outline:3px solid var(--accent,#00a8ff);outline-offset:2px}

/* ==========================================================================
   AudioSolutions - Clean Modern Player (Minimalist & Centered)
   ========================================================================== */
.player {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 84px !important;
  min-height: 84px !important;
  max-height: 84px !important;
  background: #080d17 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.7) !important;
  z-index: 99999 !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

body {
  padding-bottom: 100px !important;
}

.playerinner {
  display: grid !important;
  grid-template-columns: 1.4fr 1fr 0.8fr !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 1240px !important;
  height: 84px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  gap: 20px !important;
  box-sizing: border-box !important;
}

/* Coluna 1: Tocando Agora */
.player-nowplaying {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.np-cover-wrap {
  position: relative !important;
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  flex: 0 0 54px !important;
  border-radius: 8px !important;
}

.np-cover {
  width: 54px !important;
  height: 54px !important;
  max-width: 54px !important;
  max-height: 54px !important;
  border-radius: 8px !important;
  object-fit: cover !important;
  display: block !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.6) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  background: #141c2c !important;
  position: relative !important;
  z-index: 2 !important;
}

.np-vinyl {
  position: absolute !important;
  top: 1px !important;
  left: 15px !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, #252525 25%, #050505 50%, #2e2e2e 70%, #000 100%) !important;
  border: 1px solid #444 !important;
  z-index: 1 !important;
  opacity: 0.92 !important;
  pointer-events: none !important;
  transition: transform 0.4s ease !important;
}

.np-vinyl.spinning {
  animation: vinylSpin 3.5s linear infinite !important;
}

@keyframes vinylSpin {
  100% { transform: rotate(360deg); }
}

.np-meta {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  overflow: hidden !important;
  gap: 3px !important;
}

.np-live-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
  color: #ff3b65 !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.np-pulse-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #ff3b65 !important;
  box-shadow: 0 0 6px #ff3b65 !important;
  animation: dotPulse 1.4s ease-in-out infinite !important;
}

@keyframes dotPulse {
  0%, 100% { transform: scale(0.8); opacity: 0.7; }
  50% { transform: scale(1.3); opacity: 1; }
}

.np-meta strong {
  font-size: 15px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
}

.np-meta small {
  font-size: 12px !important;
  color: #94a3b8 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
}

/* Coluna 2: Centro (Play + Equalizador) */
.player-center {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
}

.player button.play-btn {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  border-radius: 50% !important;
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  border: 0 !important;
  display: grid !important;
  place-items: center !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 18px rgba(236, 24, 79, 0.5) !important;
  transition: transform 0.2s ease, background 0.2s ease !important;
  flex: 0 0 52px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.player button.play-btn:hover {
  transform: scale(1.08) !important;
  background: #ff2862 !important;
}

.player button.play-btn.playing {
  background: #ffffff !important;
  color: var(--accent, #00a8ff) !important;
}

/* Equalizador */
.player-visualizer {
  display: flex !important;
  align-items: flex-end !important;
  gap: 3px !important;
  height: 26px !important;
  padding: 0 4px !important;
  flex: 0 0 auto !important;
}

.eq-bar {
  width: 3.5px !important;
  height: 4px !important;
  min-height: 4px !important;
  max-height: 26px !important;
  background: var(--accent, #00a8ff) !important;
  border-radius: 2px !important;
  transition: height 0.12s ease !important;
  opacity: 0.85 !important;
}

.eq-bar.active {
  opacity: 1 !important;
  box-shadow: 0 0 6px var(--accent, #00a8ff) !important;
}

/* Coluna 3: Direita (Volume) */
.player-right {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
}

.volume-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #94a3b8 !important;
}

.volume-wrap svg {
  width: 18px !important;
  height: 18px !important;
  flex: none !important;
}

.volume-wrap input {
  width: 90px !important;
  accent-color: var(--accent, #00a8ff) !important;
  cursor: pointer !important;
  margin: 0 !important;
}

/* Responsividade Mobile */
@media (max-width: 850px) {
  .playerinner {
    grid-template-columns: 1fr auto !important;
    padding: 0 16px !important;
  }
  .player-visualizer {
    display: none !important;
  }
  .player-right {
    display: none !important;
  }
}

@media (max-width: 550px) {
  .np-vinyl {
    display: none !important;
  }
  .np-cover-wrap, .np-cover {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
  }
  .np-meta strong, .np-meta small {
    max-width: 160px !important;
  }
  .player button.play-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    font-size: 16px !important;
  }
}

/* ==========================================================================
   AudioSolutions - Regional News Styles (Datas-MG & Alto Jequitinhonha)
   ========================================================================== */
.news-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.news-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18) !important;
}

.news-city-tag {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4) !important;
  z-index: 5 !important;
}

.read-more-btn {
  display: inline-block !important;
  margin-top: 10px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: var(--accent, #00a8ff) !important;
}

/* Página da Notícia Completa (Artigo) */
.news-full-article {
  background: #ffffff !important;
  border-radius: 10px !important;
  padding: 35px !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

html[data-theme=dark] .news-full-article {
  background: #1b2737 !important;
}

.news-city-badge {
  display: inline-block !important;
  background: rgba(236, 24, 79, 0.12) !important;
  border: 1px solid rgba(236, 24, 79, 0.4) !important;
  color: var(--accent, #00a8ff) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  padding: 5px 12px !important;
  border-radius: 20px !important;
  margin: 15px 0 10px !important;
}

.news-full-article h1 {
  font-size: 28px !important;
  line-height: 1.3 !important;
  margin: 8px 0 12px !important;
  color: inherit !important;
}

.news-meta-date {
  font-size: 13px !important;
  color: #64748b !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  padding-bottom: 12px !important;
}

html[data-theme=dark] .news-meta-date {
  color: #94a3b8 !important;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

.news-full-article img {
  width: 100% !important;
  max-height: 440px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

.news-summary-box {
  background: #f8fafc !important;
  border-left: 4px solid var(--accent, #00a8ff) !important;
  padding: 20px 24px !important;
  border-radius: 0 8px 8px 0 !important;
  margin-bottom: 26px !important;
}

html[data-theme=dark] .news-summary-box {
  background: #141f2e !important;
}

.news-summary-box h3 {
  font-size: 16px !important;
  margin: 0 0 10px !important;
  color: var(--accent, #00a8ff) !important;
}

.news-summary-box p {
  font-size: 16px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  color: inherit !important;
}

/* Card com Link da Fonte */
.news-source-card {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.08), rgba(236, 24, 79, 0.08)) !important;
  border: 1px solid rgba(37, 99, 235, 0.25) !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: 20px !important;
}

.source-tag {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #64748b !important;
}

html[data-theme=dark] .source-tag {
  color: #94a3b8 !important;
}

.source-action-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 8px 16px !important;
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  transition: opacity 0.2s ease !important;
}

.source-action-btn:hover {
  opacity: 0.9 !important;
}


/* =========================================================
   EQUIPE & LOCUTORES LINKADOS COM PROGRAMAÇÃO E NO AR
   ========================================================= */
/* =========================================================
   EQUIPE & LOCUTORES LINKADOS COM PROGRAMAÇÃO E NO AR
   ========================================================= */
.team-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
}

#team {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
}

@media (max-width: 1024px) {
  .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (max-width: 580px) {
  .team-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}

.team-card {
  position: relative !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
}

html[data-theme=dark] .team-card {
  background: #17202f !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.team-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,0.14) !important;
}

.team-card-live {
  border: 2px solid #ef4444 !important;
  box-shadow: 0 0 20px rgba(239, 68, 68, 0.35) !important;
  animation: liveGlow 2.5s infinite alternate !important;
}

@keyframes liveGlow {
  0% { box-shadow: 0 0 12px rgba(239, 68, 68, 0.25); }
  100% { box-shadow: 0 0 24px rgba(239, 68, 68, 0.6); }
}

.team-live-badge {
  position: absolute !important;
  bottom: 8px !important;
  right: 8px !important;
  top: auto !important;
  left: auto !important;
  z-index: 10 !important;
  background: #ef4444 !important;
  color: #ffffff !important;
  padding: 3px 9px !important;
  border-radius: 4px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  box-shadow: 0 2px 10px rgba(239, 68, 68, 0.6) !important;
}

.live-dot-pulse {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  animation: pulseDot 1s infinite alternate !important;
}

@keyframes pulseDot {
  0% { opacity: 0.4; transform: scale(0.8); }
  100% { opacity: 1; transform: scale(1.2); }
}

.team-photo-wrap {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  background: #090e18 !important;
  position: relative !important;
  display: block !important;
}

.team-photo {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  image-rendering: auto !important;
  transition: transform 0.4s ease !important;
  display: block !important;
}

.team-card:hover .team-photo {
  transform: scale(1.04) !important;
}

.team-cardbody {
  padding: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex: 1 !important;
}

.team-info-header {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.team-name {
  font-size: 16px !important;
  font-weight: 800 !important;
  margin: 0 !important;
  color: inherit !important;
  line-height: 1.2 !important;
}

.team-program {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--accent, #00a8ff) !important;
  line-height: 1.3 !important;
}

.team-schedule-meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  margin-top: 4px !important;
}

.team-day-pill, .team-time-pill {
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 5px !important;
  background: rgba(0, 0, 0, 0.05) !important;
  color: #475569 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  width: fit-content !important;
}

html[data-theme=dark] .team-day-pill, 
html[data-theme=dark] .team-time-pill {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #cbd5e1 !important;
}


/* =========================================================
   VIDEOS EM DESTAQUE (TOP 5 YOUTUBE CLIPS)
   ========================================================= */
#video {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 20px !important;
}

.video-thumb {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 140px !important;
  padding: 0 !important;
  border: none !important;
  background: #090e17 !important;
  border-radius: 8px 8px 0 0 !important;
  overflow: hidden !important;
  cursor: pointer !important;
  display: block !important;
}

.video-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.35s ease !important;
  display: block !important;
}

.video-thumb:hover img {
  transform: scale(1.06) !important;
}

.video-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 48px !important;
  height: 48px !important;
  background: rgba(239, 68, 68, 0.92) !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  padding-left: 3px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4) !important;
  transition: transform 0.2s ease, background 0.2s ease !important;
  pointer-events: none !important;
}

.video-thumb:hover .video-play {
  transform: translate(-50%, -50%) scale(1.15) !important;
  background: #ff0000 !important;
}


/* =========================================================
   CABEÇALHO HARMONIZADO & PROFISSIONAL (HEADER & NAV)
   ========================================================= */
header {
  background: #ffffff !important;
  border-bottom: 1px solid #e2e8f0 !important;
  width: 100% !important;
}

html[data-theme=dark] header {
  background: #111827 !important;
  border-bottom-color: #1f2937 !important;
}

.mast {
  height: 96px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

.brand {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
}

.brand img {
  width: auto !important;
  max-width: 180px !important;
  height: 72px !important;
  object-fit: contain !important;
  display: block !important;
}

.mast-visual {
  flex: 1 !important;
  max-width: 680px !important;
  height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.mast-visual.visual-ready {
  background: transparent !important;
  border: none !important;
}

.mast-visual.visual-ready>a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
}

.mast-visual.visual-ready img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

nav {
  background: #0f172a !important;
  color: #ffffff !important;
  border-bottom: 3px solid var(--accent, #00a8ff) !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
}

.navinner {
  min-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.links {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  flex-wrap: wrap !important;
}

.links a {
  padding: 15px 14px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: #e2e8f0 !important;
  transition: all 0.2s ease !important;
  border-radius: 4px !important;
}

.links a:hover, .links .active {
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
}

.nav-tools {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
}

.live-dot {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(239, 68, 68, 0.15) !important;
  border: 1px solid rgba(239, 68, 68, 0.4) !important;
  color: #ff4d6d !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  max-width: 320px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  transition: background 0.2s ease !important;
}

.live-dot:hover {
  background: rgba(239, 68, 68, 0.25) !important;
}

/* =========================================================
   NO AR AGORA COM FOTO DO LOCUTOR NO TOPO
   ========================================================= */
.onair {
  background: linear-gradient(145deg, #101726, #18243b) !important;
  color: #fff !important;
  border-radius: 12px !important;
  padding: 18px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  position: relative !important;
  overflow: hidden !important;
}

.onair-badge-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 4px !important;
}

.onair-pulse-tag {
  color: #ff4d6d !important;
  font-size: 10.5px !important;
  font-weight: 900 !important;
  letter-spacing: 1.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.onair-main-box {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 4px 0 8px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.onair-avatar-container {
  position: relative !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 2px solid #ef4444 !important;
  box-shadow: 0 0 14px rgba(239, 68, 68, 0.4) !important;
  background: #090e17 !important;
}

.onair-locutor-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  transition: transform 0.3s ease !important;
}

.onair-avatar-container:hover .onair-locutor-img {
  transform: scale(1.08) !important;
}

.onair-live-pill {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: #ef4444 !important;
  color: #ffffff !important;
  font-size: 8.5px !important;
  font-weight: 900 !important;
  text-align: center !important;
  padding: 1px 0 !important;
  letter-spacing: 0.5px !important;
}

.onair-details {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 0 !important;
  flex: 1 !important;
}

.onair-title {
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  color: #ffffff !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.onair-presenter {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--accent, #00a8ff) !important;
  margin: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.onair-time-badge {
  font-size: 11px !important;
  color: #94a3b8 !important;
  display: inline-block !important;
}

.onair-upcoming-title {
  color: #94a3b8 !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

.onair-full-schedule-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: var(--accent, #00a8ff) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  margin-top: 6px !important;
  transition: gap 0.2s ease !important;
}

.onair-full-schedule-link:hover {
  gap: 8px !important;
}

/* ==========================================================================
   Poll (Enquete) Component Styling
   ========================================================================== */
.poll {
  padding: 22px;
  border-radius: 8px;
}

.poll h3 {
  font-size: 16px;
  line-height: 1.4;
  margin: 0 0 16px 0;
  font-weight: 700;
}

.poll-option-label {
  display: flex !important;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  margin-bottom: 8px;
  background: rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.2s ease;
}

html[data-theme="dark"] .poll-option-label {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
  color: #e2e8f0;
}

.poll-option-label:hover {
  background: rgba(236, 24, 79, 0.08);
  border-color: var(--accent, #00a8ff);
}

.poll-option-label input[type="radio"] {
  accent-color: var(--accent, #00a8ff);
  width: 17px;
  height: 17px;
  cursor: pointer;
  margin: 0;
  flex-shrink: 0;
}

.poll .button {
  width: 100%;
  margin-top: 14px;
  padding: 12px;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 6px;
  box-shadow: 0 3px 12px rgba(236, 24, 79, 0.25);
  transition: transform 0.15s, filter 0.15s;
}

.poll .button:hover:not(:disabled) {
  filter: brightness(1.1);
  transform: translateY(-1px);
}

.poll .button:disabled {
  opacity: 0.65;
  cursor: not-allowed;
  transform: none;
}

.poll-result {
  margin: 12px 0 0 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
}

.poll-result.success {
  color: #10b981;
  background: rgba(16, 185, 129, 0.1);
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid rgba(16, 185, 129, 0.25);
}

.poll-result.error {
  color: #ef4444;
  background: rgba(239, 68, 68, 0.1);
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid rgba(239, 68, 68, 0.25);
}

.poll-results {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(150, 150, 150, 0.2);
}

.poll-results > strong {
  display: block;
  font-size: 12.5px;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  opacity: 0.85;
}

.poll-choice {
  margin-bottom: 12px;
}

.poll-choice-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 5px;
}

.poll-track {
  height: 9px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

html[data-theme="dark"] .poll-track {
  background: rgba(255, 255, 255, 0.08);
}

.poll-track i {
  height: 100%;
  display: block;
  background: linear-gradient(90deg, var(--accent, #00a8ff), #ff5374);
  border-radius: 6px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}



/* ==========================================================================
   Header & Navigation Bar - Clean, Aligned & Premium Redesign
   ========================================================================== */
header {
  background: #ffffff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
}

.mast {
  min-height: 105px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 28px !important;
  padding: 14px 0 !important;
}

.brand {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  text-decoration: none !important;
}

.brand img {
  height: 80px !important;
  max-height: 80px !important;
  width: auto !important;
  max-width: 220px !important;
  object-fit: contain !important;
  display: block !important;
  transition: transform 0.2s ease;
}

.brand:hover img {
  transform: scale(1.02);
}

.mast-visual {
  flex: 1 1 auto !important;
  max-width: 820px !important;
  height: 80px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
}

.mast-visual > a {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.mast-visual img {
  width: 100% !important;
  height: 100% !important;
  max-height: 80px !important;
  object-fit: cover !important;
  display: block !important;
}

nav {
  background: #111726 !important;
  border-bottom: 2px solid var(--accent, #00a8ff) !important;
  position: relative;
  z-index: 100;
}

.navinner {
  min-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 16px !important;
  position: relative;
}

.links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

.links a {
  display: inline-flex !important;
  align-items: center !important;
  padding: 15px 18px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.6px !important;
  color: #d1d9e6 !important;
  border-radius: 4px !important;
  margin: 0 2px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.links a:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.links a.active {
  color: #ffffff !important;
  background: var(--accent, #00a8ff) !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 8px rgba(236, 24, 79, 0.35) !important;
}

/* Menu responsivo mobile */
.menu {
  display: none;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  margin: 8px 0;
  transition: background 0.2s;
}

.menu:hover {
  background: rgba(255, 255, 255, 0.1);
}

@media (max-width: 880px) {
  .mast {
    flex-direction: column !important;
    gap: 14px !important;
    padding: 12px 0 !important;
    text-align: center !important;
  }
  
  .brand img {
    height: 65px !important;
    max-height: 65px !important;
  }
  
  .mast-visual {
    width: 100% !important;
    max-width: 100% !important;
    height: 70px !important;
  }
  
  .menu {
    display: block !important;
  }
  
  .navinner {
    justify-content: space-between !important;
  }
  
  .links {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background: #111726 !important;
    flex-direction: column !important;
    padding: 12px 16px !important;
    gap: 4px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5) !important;
  }
  
  .links.open {
    display: flex !important;
  }
  
  .links a {
    width: 100% !important;
    padding: 12px 16px !important;
    justify-content: flex-start !important;
  }
}


/* ==========================================================================
   AudioSolutions DSP Studio Master & Audio Enhancer Popover
   ========================================================================== */
.dsp-toggle-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  color: #e2e8f0 !important;
  padding: 6px 12px !important;
  border-radius: 20px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  outline: none !important;
  height: 32px !important;
}

.dsp-toggle-btn:hover {
  background: rgba(236, 24, 79, 0.2) !important;
  border-color: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.dsp-toggle-btn.active {
  background: linear-gradient(135deg, rgba(236, 24, 79, 0.25), rgba(255, 83, 116, 0.2)) !important;
  border-color: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  box-shadow: 0 0 14px rgba(236, 24, 79, 0.35) !important;
}

.dsp-sparkle {
  font-size: 13px !important;
  animation: dspPulse 2.5s infinite ease-in-out;
}

@keyframes dspPulse {
  0%, 100% { transform: scale(1); filter: drop-shadow(0 0 2px rgba(255, 215, 0, 0.6)); }
  50% { transform: scale(1.18); filter: drop-shadow(0 0 6px rgba(255, 215, 0, 1)); }
}

.dsp-popover {
  position: fixed !important;
  bottom: 96px !important;
  right: 24px !important;
  width: 320px !important;
  max-width: calc(100vw - 32px) !important;
  background: #0d1424 !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 14px !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(255, 255, 255, 0.05) !important;
  padding: 18px !important;
  color: #ffffff !important;
  z-index: 100000 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(12px) scale(0.96) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.dsp-popover.open {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
}

.dsp-popover-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 8px !important;
}

.dsp-popover-header strong {
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.3px !important;
  color: #ffffff !important;
}

.dsp-close-btn {
  background: transparent !important;
  border: 0 !important;
  color: #94a3b8 !important;
  font-size: 20px !important;
  cursor: pointer !important;
  line-height: 1 !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
}

.dsp-close-btn:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.dsp-popover-desc {
  font-size: 12px !important;
  color: #94a3b8 !important;
  margin: 0 0 14px 0 !important;
  line-height: 1.4 !important;
}

.dsp-presets-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.dsp-preset-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 12px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 8px !important;
  color: #e2e8f0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-align: left !important;
  width: 100% !important;
}

.dsp-preset-item:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}

.dsp-preset-item.selected {
  background: rgba(236, 24, 79, 0.18) !important;
  border-color: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

.dsp-preset-icon {
  font-size: 16px !important;
}

.dsp-preset-name {
  flex: 1 !important;
}

.dsp-check {
  color: var(--accent, #00a8ff) !important;
  font-weight: 900 !important;
  font-size: 14px !important;
}

@media (max-width: 768px) {
  .player-right {
    gap: 8px !important;
  }
  .dsp-toggle-btn {
    padding: 4px 8px !important;
    font-size: 10.5px !important;
    height: 28px !important;
  }
  .dsp-popover {
    bottom: 90px !important;
    right: 12px !important;
    left: 12px !important;
    width: auto !important;
  }
}


/* ==========================================================================
   Player Right Layout & Anti-Clipping DSP Button Refinement
   ========================================================================== */
.playerinner {
  grid-template-columns: 1.3fr 1fr 1.1fr !important;
}

.player-right {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  min-width: 0 !important;
}

.volume-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
}

.volume-wrap input {
  width: 80px !important;
}

.dsp-toggle-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  color: #e2e8f0 !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  outline: none !important;
  height: 32px !important;
  min-width: 120px !important;
  flex: 0 0 auto !important;
}

.dsp-toggle-btn.active {
  background: linear-gradient(135deg, rgba(236, 24, 79, 0.3), rgba(255, 83, 116, 0.22)) !important;
  border-color: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  box-shadow: 0 0 14px rgba(236, 24, 79, 0.4) !important;
}

.dsp-popover {
  bottom: 96px !important;
  right: 24px !important;
}

@media (max-width: 880px) {
  .playerinner {
    grid-template-columns: 1.5fr auto auto !important;
    gap: 10px !important;
    padding: 0 14px !important;
  }
  .player-visualizer {
    display: none !important;
  }
  .volume-wrap {
    display: none !important;
  }
  .player-right {
    display: flex !important;
    justify-content: flex-end !important;
  }
  .dsp-toggle-btn {
    min-width: auto !important;
    padding: 6px 10px !important;
    font-size: 11px !important;
  }
  .dsp-popover {
    right: 10px !important;
    left: 10px !important;
    width: auto !important;
    max-width: none !important;
  }
}

/* =========================================================================
   TOP 5 & AS MAIS TOCADAS (BROADCAST RANKING)
   ========================================================================= */
#sidebar-top5 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

.top5-item {
  display: grid !important;
  grid-template-columns: 32px 52px 1fr auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

[data-theme="light"] .top5-item {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.04) !important;
}

.top5-item:hover {
  transform: translateX(4px) !important;
  background: rgba(255, 255, 255, 0.09) !important;
  border-color: var(--accent, #00a8ff) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18) !important;
}

[data-theme="light"] .top5-item:hover {
  background: #f8fafc !important;
}

.top5-item b {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #94a3b8 !important;
  font-variant-numeric: tabular-nums !important;
}

/* Gold / Silver / Bronze rankings */
.top5-item:nth-child(1) b {
  background: linear-gradient(135deg, #f59e0b, #d97706) !important;
  color: #ffffff !important;
  box-shadow: 0 0 10px rgba(245, 158, 11, 0.5) !important;
}

.top5-item:nth-child(2) b {
  background: linear-gradient(135deg, #94a3b8, #64748b) !important;
  color: #ffffff !important;
}

.top5-item:nth-child(3) b {
  background: linear-gradient(135deg, #b45309, #78350f) !important;
  color: #ffffff !important;
}

.top5-item img {
  width: 52px !important;
  height: 52px !important;
  border-radius: 8px !important;
  object-fit: cover !important;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2) !important;
  transition: transform 0.3s ease !important;
}

.top5-item:hover img {
  transform: scale(1.06) !important;
}

.top5-item span {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  min-width: 0 !important;
}

.top5-item span strong {
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.2 !important;
}

.top5-item span small {
  font-size: 12px !important;
  color: #94a3b8 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.top5-item .top5-play-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: rgba(236, 24, 79, 0.15) !important;
  color: var(--accent, #00a8ff) !important;
  font-size: 12px !important;
  opacity: 0.8 !important;
  transition: all 0.2s ease !important;
}

.top5-item:hover .top5-play-btn {
  opacity: 1 !important;
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  transform: scale(1.1) !important;
}

/* =========================================================================
   VÍDEOS EM DESTAQUE & CLIPS OFICIAIS
   ========================================================================= */
.video-thumb {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #020617 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  border-radius: 12px 12px 0 0 !important;
  display: block !important;
}

.video-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: block !important;
}

.video-thumb:hover img {
  transform: scale(1.08) !important;
}

.video-thumb::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 100%) !important;
  pointer-events: none !important;
}

.video-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 50% !important;
  background: rgba(236, 24, 79, 0.9) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  padding-left: 3px !important;
  box-shadow: 0 0 24px rgba(236, 24, 79, 0.6) !important;
  z-index: 2 !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.video-thumb:hover .video-play {
  transform: translate(-50%, -50%) scale(1.15) !important;
  background: #ffffff !important;
  color: var(--accent, #00a8ff) !important;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.8) !important;
}

/* Modal de Vídeo / Clipe */
#music-dialog {
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 16px !important;
  background: #090d16 !important;
  color: #ffffff !important;
  padding: 0 !important;
  max-width: 900px !important;
  width: 92vw !important;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.8) !important;
  overflow: hidden !important;
}

#music-dialog::backdrop {
  background: rgba(0, 0, 0, 0.75) !important;
  backdrop-filter: blur(8px) !important;
}

#music-dialog .dialog-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 18px !important;
  background: #111827 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

#music-dialog .dialog-body {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  background: #000000 !important;
}

#music-dialog iframe {
  width: 100% !important;
  height: 100% !important;
  border: none !important;
  display: block !important;
}

/* =========================================================================
   CONTATO & RODAPÉ (INFORMAÇÕES OFICIAIS)
   ========================================================================= */
.footer-contact-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 16px 20px !important;
  margin-top: 24px !important;
  margin-bottom: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border-radius: 10px !important;
  color: #cbd5e1 !important;
  font-size: 13.5px !important;
}

.footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.footer-contact-item .f-icon {
  font-size: 18px !important;
}

.footer-contact-item strong {
  color: #ffffff !important;
}

.footer-contact-item a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  transition: color 0.2s ease !important;
}

.footer-contact-item a:hover {
  color: #22c55e !important;
  text-decoration: underline !important;
}

.footer-contact-wa {
  background: rgba(34, 197, 94, 0.12) !important;
  border: 1px solid rgba(34, 197, 94, 0.3) !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
}

.footer-contact-wa a {
  color: #22c55e !important;
  font-weight: 800 !important;
}

.footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.footer-contact-item .f-icon {
  font-size: 16px !important;
}

.footer-contact-item strong {
  color: #ffffff !important;
}

.footer-contact-item a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

.footer-contact-item a:hover {
  color: var(--accent, #00a8ff) !important;
  text-decoration: underline !important;
}

.footer-contact-wa a {
  color: #25d366 !important;
  font-weight: 700 !important;
}

.contact-card-premium {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}

.contact-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 18px !important;
  margin-top: 10px !important;
}

.contact-box {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 16px !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}

[data-theme="light"] .contact-box {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04) !important;
}

.contact-box:hover {
  transform: translateY(-3px) !important;
  border-color: var(--accent, #00a8ff) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15) !important;
}

.contact-icon-bubble {
  width: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: rgba(236, 24, 79, 0.12) !important;
  color: var(--accent, #00a8ff) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 22px !important;
  flex: 0 0 auto !important;
}

.contact-icon-bubble.wa-bubble {
  background: rgba(37, 211, 102, 0.15) !important;
  color: #25d366 !important;
}

.contact-text {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  min-width: 0 !important;
}

.contact-text small {
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.6px !important;
  color: #94a3b8 !important;
}

.contact-text strong {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: inherit !important;
}

.contact-text span {
  font-size: 13px !important;
  color: #94a3b8 !important;
}

.contact-sublink {
  font-size: 13px !important;
  color: var(--accent, #00a8ff) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  margin-top: 4px !important;
}

.contact-sublink:hover {
  text-decoration: underline !important;
}

.btn-wa-direct {
  margin-top: 8px !important;
  background: #25d366 !important;
  color: #ffffff !important;
  border: none !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3) !important;
  text-decoration: none !important;
}

.btn-wa-direct:hover {
  background: #20ba59 !important;
  transform: scale(1.02) !important;
}

/* ==========================================================================
   MASTER SITE ALIGNMENT & SPACE OPTIMIZATION (ZERO BROKEN SPACES)
   ========================================================================== */
.container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  width: 100% !important;
}

.hero {
  display: grid !important;
  grid-template-columns: 1fr 330px !important;
  gap: 22px !important;
  align-items: stretch !important;
  margin-bottom: 24px !important;
}

.slider, .onair {
  height: 385px !important;
  min-height: 385px !important;
  border-radius: 12px !important;
}

.columns {
  display: grid !important;
  grid-template-columns: 1fr 330px !important;
  gap: 28px !important;
  align-items: start !important;
  margin-top: 24px !important;
}

.columns.is-subpage {
  grid-template-columns: 1fr !important;
}

#home-content {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  min-width: 0 !important;
}

[hidden], #home-content[hidden], .sidebar[hidden], .hero[hidden], #page-content[hidden] {
  display: none !important;
}

.sidebar {
  display: flex !important;
  flex-direction: column !important;
  gap: 22px !important;
  min-width: 0 !important;
}

.sectiontitle {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  border-bottom: 2px solid rgba(0, 0, 0, 0.08) !important;
  margin: 0 0 16px 0 !important;
  padding-bottom: 6px !important;
}

html[data-theme="dark"] .sectiontitle {
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

.sectiontitle h2 {
  font-size: 19px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 !important;
  padding-bottom: 6px !important;
  border-bottom: 3px solid var(--accent, #00a8ff) !important;
  margin-bottom: -8px !important;
}

.sectiontitle a {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: var(--accent, #00a8ff) !important;
}

/* Grids do Conteúdo Principal */
#video {
  display: block !important;
  width: 100% !important;
}

#gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.page-content {
  min-height: 55vh !important;
  max-width: 1220px !important;
  margin: 0 auto !important;
  width: 100% !important;
}

.page-content > .grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.page-content > .team-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

/* Uniformidade dos Cards */
.card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05) !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}

html[data-theme="dark"] .card {
  background: #17202f !important;
  border-color: rgba(255, 255, 255, 0.07) !important;
}

.cardbody {
  padding: 14px 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex: 1 !important;
}

.card h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  color: inherit !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 38px !important;
}

.card p {
  font-size: 13px !important;
  color: #64748b !important;
  line-height: 1.45 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  flex: 1 !important;
}

html[data-theme="dark"] .card p {
  color: #94a3b8 !important;
}

/* Programação no Home */
#schedule {
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05) !important;
  padding: 8px 16px !important;
}

html[data-theme="dark"] #schedule {
  background: #17202f !important;
  border-color: rgba(255, 255, 255, 0.07) !important;
}

.schedule {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 12px 10px !important;
  border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
}

html[data-theme="dark"] .schedule {
  border-top-color: rgba(255, 255, 255, 0.06) !important;
}

.schedule:first-child {
  border-top: none !important;
}

.schedule time {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: var(--accent, #00a8ff) !important;
  min-width: 60px !important;
}

.schedule b {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: inherit !important;
}

.schedule p {
  font-size: 13px !important;
  color: #64748b !important;
  margin: 2px 0 0 0 !important;
}

html[data-theme="dark"] .schedule p {
  color: #94a3b8 !important;
}

/* Responsividade & Otimização de Espaços */
@media (max-width: 1080px) {
  .page-content > .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

@media (max-width: 960px) {
  .hero {
    grid-template-columns: 1fr !important;
  }
  .slider, .onair {
    height: auto !important;
    min-height: 320px !important;
  }
  .columns {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

@media (max-width: 780px) {
  #video, #gallery, .page-content > .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 550px) {
  .container {
    padding: 0 14px !important;
  }
  #video, #gallery, .team-slide-page, .page-content > .grid, .page-content > .team-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}

/* Barra de Contato no Rodapé (Acima dos Créditos) */
.footer-contact-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 16px 20px !important;
  margin-top: 24px !important;
  margin-bottom: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border-radius: 10px !important;
  color: #cbd5e1 !important;
  font-size: 13.5px !important;
}

.footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.footer-contact-item .f-icon {
  font-size: 18px !important;
}

.footer-contact-item strong {
  color: #ffffff !important;
}

.footer-contact-item a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  transition: color 0.2s ease !important;
}

.footer-contact-item a:hover {
  color: #22c55e !important;
  text-decoration: underline !important;
}

.footer-contact-wa {
  background: rgba(34, 197, 94, 0.12) !important;
  border: 1px solid rgba(34, 197, 94, 0.3) !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
}

.footer-contact-wa a {
  color: #22c55e !important;
  font-weight: 800 !important;
}

.footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.footer-contact-item .f-icon {
  font-size: 17px !important;
}

.footer-contact-item strong {
  color: #ffffff !important;
}

.footer-contact-item a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

.footer-contact-item a:hover {
  color: var(--accent, #00a8ff) !important;
  text-decoration: underline !important;
}

.footer-contact-wa a {
  color: #25d366 !important;
  font-weight: 700 !important;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  margin-top: 14px !important;
  padding-top: 14px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 15px !important;
  color: #94a3b8 !important;
  font-size: 12.5px !important;
}

@media (max-width: 820px) {
  .footer-contact-bar {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
}

/* Rodapé Seguro e de Alto Contraste */
footer, html body:not(.admin) footer, html[data-theme=dark] footer {
  background: #0c111c !important;
  color: #ffffff !important;
}
footer p, footer small {
  color: #94a3b8 !important;
}


/* =========================================================
   CARROSSEL DE NOTÍCIAS (3 POR COLUNA/SLIDE)
   ========================================================= */
#noticias .sectiontitle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-bottom: 18px !important;
}

.news-carousel-controls {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
}

.news-ctrl-btn {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.news-ctrl-btn:hover {
  background: var(--accent, #00a8ff) !important;
  border-color: var(--accent, #00a8ff) !important;
  transform: scale(1.05) !important;
}

.news-page-indicator {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #94a3b8 !important;
  min-width: 42px !important;
  text-align: center !important;
  letter-spacing: 0.5px !important;
}

.news-carousel-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  animation: fadeInNews 0.35s ease-out !important;
  width: 100% !important;
}

@keyframes fadeInNews {
  from { opacity: 0.3; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 960px) {
  .news-carousel-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (max-width: 640px) {
  .news-carousel-grid {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   ISOLAMENTO DE SUBPÁGINAS (APENAS CONTEÚDO DO MENU)
   ========================================================= */
.columns.is-subpage {
  display: block !important;
  grid-template-columns: 1fr !important;
  width: 100% !important;
}

.columns.is-subpage .maincol {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
}

.columns.is-subpage .sidebar {
  display: none !important;
}

.page-content {
  width: 100% !important;
  min-height: 400px !important;
  animation: fadeInPage 0.3s ease-out !important;
}

.page-content > .sectiontitle {
  margin-bottom: 24px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--accent, #00a8ff) !important;
  width: fit-content !important;
}

.page-content > .sectiontitle h2 {
  font-size: 26px !important;
  font-weight: 800 !important;
  letter-spacing: -0.5px !important;
}

@keyframes fadeInPage {
  from { opacity: 0.2; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}


/* =========================================================
   LAYOUT PRINCIPAL E GRID DE COLUNAS PERFEITO
   ========================================================= */
.columns {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 340px !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  margin-top: 10px !important;
}

.maincol {
  min-width: 0 !important;
  width: 100% !important;
}

#home-content, .sidebar {
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  width: 100% !important;
  min-width: 0 !important;
}

#home-content > section, .sidebar > section {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Alinhamento Perfeito dos Títulos de Seção */
.sectiontitle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-bottom: 2px solid rgba(255, 255, 255, 0.08) !important;
  margin: 0 0 16px 0 !important;
  padding-bottom: 6px !important;
  height: 38px !important;
  box-sizing: border-box !important;
}

.sectiontitle h2 {
  font-size: 19px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 !important;
  border-bottom: 3px solid var(--accent, #00a8ff) !important;
  padding-bottom: 6px !important;
  margin-bottom: -8px !important;
  line-height: 1.2 !important;
}

.sectiontitle a {
  color: var(--accent, #00a8ff) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: opacity 0.2s ease !important;
}

.sectiontitle a:hover {
  opacity: 0.85 !important;
}

/* =========================================================
   TOP 5 SIDEBAR (COMPACTO E ALINHADO COM AS NOTÍCIAS)
   ========================================================= */
.sidebar-top5 {
  background: #141d2b !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2) !important;
  height: 303px !important;
  max-height: 303px !important;
  box-sizing: border-box !important;
  padding: 0 !important;
  margin: 0 !important;
}

.top5-item {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 4px 12px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  text-decoration: none !important;
  color: #ffffff !important;
  transition: background 0.2s ease !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}

.top5-item:last-child {
  border-bottom: none !important;
}

.top5-item:hover {
  background: rgba(255, 255, 255, 0.05) !important;
}

.top5-item > b {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: var(--accent, #00a8ff) !important;
  min-width: 20px !important;
}

.top5-item img {
  width: 38px !important;
  height: 38px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  flex: none !important;
}

.top5-item span {
  flex: 1 !important;
  min-width: 0 !important;
}

.top5-item strong {
  display: block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

.top5-item small {
  display: block !important;
  font-size: 10.5px !important;
  color: #94a3b8 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

.top5-play-btn {
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: rgba(236, 24, 79, 0.15) !important;
  color: var(--accent, #00a8ff) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 10px !important;
  padding-left: 2px !important;
  flex: none !important;
  transition: all 0.2s ease !important;
}

.top5-item:hover .top5-play-btn {
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  transform: scale(1.1) !important;
}

/* =========================================================
   SPONSORS / ANUNCIANTES (ALINHADO COM OS VÍDEOS)
   ========================================================= */
#sponsors {
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

.adplaceholder {
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #141d2b !important;
  border-radius: 10px !important;
  border: 1px dashed rgba(255, 255, 255, 0.15) !important;
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  box-sizing: border-box !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2) !important;
}

/* =========================================================
   ENQUETE INTERATIVA (ALINHADA COM A EQUIPE)
   ========================================================= */
.poll {
  background: #141d2b !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 14px 16px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2) !important;
  height: 379px !important;
  min-height: 379px !important;
  max-height: 379px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  margin: 0 !important;
}

.poll h3 {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.poll-option-label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 6px 10px !important;
  margin-bottom: 5px !important;
  border-radius: 6px !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  font-size: 12.5px !important;
  color: #cbd5e1 !important;
}

.poll-option-label:hover {
  background: rgba(255, 255, 255, 0.07) !important;
  border-color: rgba(236, 24, 79, 0.3) !important;
}

.poll-option-label input[type="radio"] {
  accent-color: var(--accent, #00a8ff) !important;
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
}

.poll #vote-button {
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 6px !important;
  padding: 8px 14px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  margin-top: 6px !important;
  width: 100% !important;
  transition: all 0.2s ease !important;
}

.poll #vote-button:hover {
  filter: brightness(1.1) !important;
  transform: translateY(-1px) !important;
}

.poll-result {
  font-size: 11.5px !important;
  margin: 6px 0 0 0 !important;
}

.poll-result.success {
  color: #22c55e !important;
  font-weight: 600 !important;
}

.poll-result.error {
  color: #ef4444 !important;
  font-weight: 600 !important;
}

.poll-results {
  margin-top: 10px !important;
  padding-top: 8px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.poll-results strong {
  display: block !important;
  font-size: 11px !important;
  color: #94a3b8 !important;
  margin-bottom: 6px !important;
}

.poll-choice {
  margin-bottom: 6px !important;
}

.poll-choice-label {
  display: flex !important;
  justify-content: space-between !important;
  font-size: 11px !important;
  color: #cbd5e1 !important;
  margin-bottom: 2px !important;
}

.poll-track {
  height: 5px !important;
  border-radius: 4px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  overflow: hidden !important;
}

.poll-track i {
  height: 100% !important;
  display: block !important;
  background: var(--accent, #00a8ff) !important;
  border-radius: 4px !important;
  transition: width 0.4s ease !important;
}

/* =========================================================
   CARROSSEL DE NOTÍCIAS, EQUIPE E VÍDEOS (3 CARDS POR PÁGINA)
   ========================================================= */
#noticias, #equipe, #videos {
  width: 100% !important;
}

.news-carousel-slider, .team-carousel-slider, .video-carousel-slider {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
}

.news-slider-viewport {
  overflow: hidden !important;
  width: 100% !important;
  border-radius: 8px !important;
}

.news-slider-track {
  display: flex !important;
  width: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.news-slide-page, .team-slide-page, .video-slide-page {
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  box-sizing: border-box !important;
}

.news-slider-btn, .team-slider-btn, .video-slider-btn {
  position: absolute !important;
  top: 48% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  border: 0 !important;
  background: rgba(255, 255, 255, 0.95) !important;
  color: #0f172a !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45) !important;
  transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease !important;
}

.news-slider-btn.prev, .team-slider-btn.prev, .video-slider-btn.prev {
  left: -14px !important;
}

.news-slider-btn.next, .team-slider-btn.next, .video-slider-btn.next {
  right: -14px !important;
}

.news-slider-btn:hover, .team-slider-btn:hover, .video-slider-btn:hover {
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  transform: translateY(-50%) scale(1.12) !important;
}

.news-slider-dots, .team-slider-dots, .video-slider-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 14px !important;
}

.news-dot, .team-dot, .video-dot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.25) !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html[data-theme="light"] .news-dot,
html[data-theme="light"] .team-dot,
html[data-theme="light"] .video-dot {
  background: rgba(0, 0, 0, 0.22) !important;
}

.news-dot.active, .team-dot.active, .video-dot.active {
  width: 24px !important;
  border-radius: 12px !important;
  background: var(--accent, #00a8ff) !important;
}

/* Cards de Notícias */
.news-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-width: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #141d2b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  text-decoration: none !important;
  position: relative !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.news-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4) !important;
  border-color: rgba(236, 24, 79, 0.4) !important;
}

.news-card img {
  width: 100% !important;
  height: 135px !important;
  object-fit: cover !important;
  display: block !important;
}

.news-card .cardbody {
  padding: 12px 14px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  flex: 1 !important;
  gap: 6px !important;
}

.news-card h3 {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  color: #ffffff !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.news-card p {
  font-size: 11.5px !important;
  color: #94a3b8 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.news-card .read-more-btn {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--accent, #00a8ff) !important;
  margin-top: auto !important;
  padding-top: 4px !important;
  display: inline-block !important;
}

.news-city-tag {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  background: rgba(10, 14, 23, 0.85) !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(4px) !important;
  z-index: 2 !important;
}

/* =========================================================
   CARDS DA EQUIPE (PADRÃO 3 CARDS, DESTAQUE NO AR)
   ========================================================= */
.team-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-width: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #141d2b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  position: relative !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.team-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4) !important;
}

/* Destaque para Locutor que está No Ar */
.team-card-live {
  border: 2px solid #ef4444 !important;
  box-shadow: 0 0 22px rgba(239, 68, 68, 0.45) !important;
  animation: pulseLiveBorder 2.5s infinite ease-in-out !important;
}

@keyframes pulseLiveBorder {
  0%, 100% { box-shadow: 0 0 16px rgba(239, 68, 68, 0.35); }
  50% { box-shadow: 0 0 28px rgba(239, 68, 68, 0.65); }
}

.team-live-badge {
  position: absolute !important;
  bottom: 8px !important;
  right: 8px !important;
  top: auto !important;
  left: auto !important;
  background: #ef4444 !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  padding: 3px 9px !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 10px rgba(239, 68, 68, 0.6) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  letter-spacing: 0.5px !important;
  z-index: 10 !important;
}

.team-photo-wrap {
  width: 100% !important;
  aspect-ratio: 238 / 148 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  background: #090e18 !important;
  position: relative !important;
  display: block !important;
  border-radius: 8px 8px 0 0 !important;
}

.team-photo {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
  object-position: center !important;
  display: block !important;
  image-rendering: -webkit-optimize-contrast !important;
}

.team-cardbody {
  padding: 12px 14px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  flex: 1 !important;
  gap: 6px !important;
}

.team-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

.team-program {
  font-size: 11.5px !important;
  color: #94a3b8 !important;
  margin: 2px 0 0 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.team-schedule-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 4px 0 !important;
}

.team-time-pill {
  font-size: 10.5px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: #cbd5e1 !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  white-space: nowrap !important;
}

/* Grid de Galeria */
#gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
}

/* =========================================================
   RODAPÉ ESCURO E DEFINIDO
   ========================================================= */
footer, html body footer, html[data-theme=dark] footer {
  background: #0c111c !important;
  color: #ffffff !important;
  padding: 35px 0 20px 0 !important;
  margin-top: 40px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

footer p, footer small, footer strong {
  color: #cbd5e1 !important;
}

.footer-contact-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 14px 20px !important;
  margin-top: 24px !important;
  margin-bottom: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border-radius: 8px !important;
  color: #cbd5e1 !important;
  font-size: 13.5px !important;
}

.footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.footer-contact-item strong {
  color: #ffffff !important;
}

.footer-contact-item a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.footer-contact-wa {
  background: rgba(34, 197, 94, 0.12) !important;
  border: 1px solid rgba(34, 197, 94, 0.3) !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
}

.footer-contact-wa a {
  color: #22c55e !important;
  font-weight: 800 !important;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  margin-top: 20px !important;
  padding-top: 16px !important;
  display: flex !important;
  justify-content: space-between !important;
  color: #94a3b8 !important;
  font-size: 13px !important;
}

/* Responsividade Mobile */
@media (max-width: 960px) {
  .columns {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .news-slide-page, .team-slide-page, .video-slide-page, #gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .news-slider-btn.prev, .team-slider-btn.prev, .video-slider-btn.prev {
    left: 4px !important;
  }
  .news-slider-btn.next, .team-slider-btn.next, .video-slider-btn.next {
    right: 4px !important;
  }
}

@media (max-width: 600px) {
  .news-slide-page, .team-slide-page, .video-slide-page, #gallery {
    grid-template-columns: 1fr !important;
  }
  .news-slider-btn, .team-slider-btn, .video-slider-btn {
    width: 30px !important;
    height: 30px !important;
    font-size: 18px !important;
  }
  .news-slider-btn.prev, .team-slider-btn.prev, .video-slider-btn.prev {
    left: 4px !important;
  }
  .news-slider-btn.next, .team-slider-btn.next, .video-slider-btn.next {
    right: 4px !important;
  }
  .footer-contact-bar, .footer-bottom, .footer-layout {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* =========================================================
   HERO SLIDER (ESCRITAS NO CANTO INFERIOR DIREITO)
   ========================================================= */
.slider {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  height: 385px !important;
  min-height: 385px !important;
  max-height: 385px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
}

.slide {
  position: absolute !important;
  inset: 0 !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  padding: 8px 12px !important;
  color: #ffffff !important;
  opacity: 0 !important;
  transition: opacity 0.5s ease-in-out !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
}

.slide.visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Escritas discretas bem no cantinho inferior direito */
.slide-caption, .slide > div {
  max-width: 320px !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  background: rgba(10, 14, 23, 0.72) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
  margin: 0 !important;
  z-index: 5 !important;
}

.slide-caption .eyebrow, .slide .eyebrow {
  color: var(--accent, #00a8ff) !important;
  font-size: 8.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
  margin-bottom: 1px !important;
  display: inline-block !important;
}

.slide-caption h1, .slide h1 {
  font-size: clamp(15px, 1.5vw, 19px) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  margin: 0 0 1px 0 !important;
  color: #ffffff !important;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8) !important;
}

.slide-caption p, .slide p {
  font-size: 11px !important;
  color: #cbd5e1 !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8) !important;
}

.slider > button.prev, .slider > button.next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #0f172a !important;
  width: 34px !important;
  height: 34px !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.4) !important;
  transition: all 0.2s ease !important;
}

.slider > button.prev {
  left: 12px !important;
}

.slider > button.next {
  right: 12px !important;
}

.slider > button:hover {
  background: var(--accent, #00a8ff) !important;
  color: #ffffff !important;
  transform: translateY(-50%) scale(1.1) !important;
}

