/* MAIS TUNER 24.200.15 — TalkLand no Player A. Só vale com .is-talk: as outras rádios não mudam. */
.tk-closed{display:none}
.pa:not(.is-talk) :is([data-pa="tab-news"],[data-pa="tab-weather"],.tk-pane){display:none!important}
.pa:not(.is-open) [data-pa="tab-weather"]{display:none}
.pa.is-talk .pa-strip{display:none}
.pa.is-talk .pa-sheet{min-height:calc(164px + env(safe-area-inset-bottom))}
.pa.is-talk .pa-tabs{gap:13px;margin-right:-20px;padding-right:20px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.pa.is-talk .pa-tabs::-webkit-scrollbar{display:none}
.pa.is-talk .pa-tabs button{flex:none}

/* painel fechado: manchete à esquerda, arte encostada no canto */
.pa.is-talk:not(.is-open) .tk-closed{flex:1;min-height:0;display:block}
.pa.just-closed .tk-closed{animation:paFade .22s ease both}
.tk-head{display:block;width:calc(100% - 130px);height:100%;padding:7px 0 0;border:0;background:none;text-align:left}
.tk-closed.no-art .tk-head{width:100%}
.tk-head-in{display:block;animation:tkHead .4s cubic-bezier(.22,1,.36,1) both}
@keyframes tkHead{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.tk-head small{display:block;font-size:12px;font-weight:600;line-height:15px;color:rgba(244,248,253,.78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-head em{font-style:normal;font-weight:700;color:#65efcf}
.tk-head strong{display:-webkit-box;margin-top:3px;overflow:hidden;font-size:15.5px;font-weight:800;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}

.tk-art{position:absolute;right:0;top:60px;bottom:0;width:138px;padding:0;overflow:hidden;border:0;border-radius:20px 0 0 0;background:#0b2443;text-align:left}
.tw-slide{position:absolute;inset:0;overflow:hidden;background:linear-gradient(160deg,var(--tw-a),var(--tw-b));animation:twIn .55s cubic-bezier(.22,1,.36,1) both}
@keyframes twIn{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
.tw-box{position:absolute;left:0;right:0;top:0;bottom:env(safe-area-inset-bottom);color:var(--tw-ink)}
.tw-temp{position:absolute;right:12px;top:11px;font-size:27px;font-weight:800;line-height:1;letter-spacing:-.5px}
.tw-name,.tw-desc{position:absolute;left:14px;right:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .35s ease}
.tw-name{bottom:27px;font-size:12.5px;font-weight:800;line-height:15px}
.tw-desc{bottom:11px;font-size:12px;font-weight:600;line-height:15px;color:var(--tw-mute)}
.tw-days{position:absolute;left:14px;right:12px;bottom:8px;display:flex;justify-content:space-between;opacity:0;transform:translateY(34px);transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .35s ease}
.tw-days span{display:flex;flex-direction:column;align-items:center}
.tw-days i{font-style:normal;font-size:11px;font-weight:700;line-height:13px;color:var(--tw-mute)}
.tw-days b{font-size:13.5px;font-weight:800;line-height:16px}
/* o efeito para cima: a cidade sobe e os próximos dias entram por baixo; a temperatura de hoje não sai do canto */
.is-days .tw-name{transform:translateY(-15px)}
.is-days .tw-desc{opacity:0;transform:translateY(-16px)}
.is-days .tw-days{opacity:1;transform:none}

/* cenas do clima */
.tw-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.tw-sun{position:absolute;right:-28px;top:-28px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,#fff6c9 0%,rgba(255,230,140,.55) 45%,rgba(255,230,140,0) 72%);animation:twGlow 3.5s ease-in-out infinite}
.tw-sun.is-small{right:-14px;top:-16px;width:80px;height:80px;background:radial-gradient(circle,#fff3bf 0%,rgba(255,226,130,0) 70%);animation-duration:4s}
.tw-rays{position:absolute;right:-80px;top:-80px;width:210px;height:210px;border-radius:50%;background:repeating-conic-gradient(rgba(255,255,255,.2) 0 12deg,transparent 12deg 34deg);animation:twSpin 26s linear infinite}
.tw-cloud{position:absolute;aspect-ratio:2/1;border-radius:99px;background:rgba(255,255,255,var(--o,.3));filter:blur(6px);animation:twCloud 7s ease-in-out infinite alternate}
.tw-drop{position:absolute;top:0;width:1px;height:14px;border-radius:2px;background:linear-gradient(180deg,rgba(226,238,250,0),rgba(226,238,250,.5) 62%,rgba(226,238,250,0));animation:twRain 1.2s linear infinite}
.tw-flash{position:absolute;inset:0;background:#e9e0ff;opacity:0;animation:twFlash 4s linear infinite}
.tw-moon{position:absolute;left:-16px;top:-20px;width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,#f4f1ff 0%,#f4f1ff 24%,rgba(214,222,255,.34) 34%,rgba(214,222,255,0) 68%);animation:twGlow 5s ease-in-out infinite}
.tw-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;animation:twStar 3.4s ease-in-out infinite}
@keyframes twGlow{50%{transform:scale(1.18);opacity:.95}}
@keyframes twSpin{to{transform:rotate(360deg)}}
@keyframes twCloud{from{transform:translateX(-18px)}to{transform:translateX(18px)}}
@keyframes twRain{from{transform:translate(8px,-40px) rotate(14deg)}to{transform:translate(-44px,210px) rotate(14deg)}}
@keyframes twFlash{0%,60%,66%,72%,100%{opacity:0}62%,69%{opacity:.75}}
@keyframes twStar{50%{opacity:.25}}

/* painel aberto */
.tk-pane{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
.tk-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 8px;background:#050f1d}
.tk-logo{display:block;flex:none;width:auto;height:24px}
.tk-pick{position:relative;min-width:0;display:flex;align-items:center;gap:6px;height:34px;padding:0 10px 0 9px;border:1px solid rgba(255,255,255,.18);border-radius:99px;background:rgba(255,255,255,.08)}
.tk-pick::after{content:"";position:absolute;left:0;right:0;top:-5px;bottom:-5px}
.tk-pick svg{flex:none;stroke-width:2.4}
.tk-flag{flex:none;font-size:16px;line-height:1}
.tk-pick-name{min-width:0;font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-upd{min-height:15px;margin:0;font-size:12px;font-weight:600;line-height:15px;color:rgba(244,248,253,.72)}
.tk-img{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--a),var(--b));color:rgba(255,255,255,.82)}
.tk-img svg{stroke-width:1.5}
.tk-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tk-img.is-lead{height:178px;border-radius:16px}
.tk-img.is-thumb{flex:none;width:88px;height:88px;border-radius:12px}
.tk-lead{display:block;width:100%;margin-top:10px;padding:0 0 14px;border:0;background:none;text-align:left}
.tk-kick{display:block;font-size:12px;font-weight:800;line-height:15px;letter-spacing:.04em;text-transform:uppercase;color:#65efcf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-lead .tk-kick{margin-top:10px}
.tk-title{display:block;margin-top:3px;font-size:21px;font-weight:800;line-height:1.18;letter-spacing:-.2px}
.tk-sum{display:-webkit-box;margin-top:6px;overflow:hidden;font-size:14px;font-weight:500;line-height:1.38;color:rgba(244,248,253,.82);-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}
.tk-meta{display:block;margin-top:5px;font-size:12px;font-weight:600;line-height:15px;color:rgba(244,248,253,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-row{display:flex;gap:12px;width:100%;padding:12px 0;border:0;border-top:1px solid rgba(255,255,255,.09);background:none;text-align:left}
.tk-row-copy{flex:1;min-width:0;display:block}
.tk-row .tk-kick{font-weight:800;letter-spacing:0;text-transform:none}
.tk-row-title{display:-webkit-box;margin-top:2px;overflow:hidden;font-size:15px;font-weight:700;line-height:1.22;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}
.tk-more{display:block;width:100%;height:46px;margin-top:6px;border:1px solid rgba(101,239,207,.5);border-radius:99px;background:none;color:#65efcf!important;font-size:14px!important;font-weight:800!important}
.tk-link{display:block;width:100%;height:44px;margin-top:6px;padding:0;border:0;background:none;color:rgba(244,248,253,.8)!important;font-size:13px!important;font-weight:700!important}
.tk-msg{padding:22px 0;font-size:14px;line-height:1.4;color:rgba(255,255,255,.84)}
.tk-msg p{margin:0}
.tk-msg button{height:44px;margin-top:10px;padding:0 18px;border:1px solid rgba(101,239,207,.5);border-radius:99px;background:none;color:#65efcf!important;font-weight:800!important}
.tk-skel i{display:block;height:64px;margin-top:10px;border-radius:12px;background:rgba(255,255,255,.08);animation:tkPulse 1.3s ease-in-out infinite}
.tk-skel i.is-big{height:178px;border-radius:16px}
@keyframes tkPulse{50%{opacity:.5}}

/* 24.200.18: o programa que está tocando tem cor própria: dourado, no lugar do verde-menta */
.tk-dot{display:inline-block;flex:none;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#ffc65c;vertical-align:1px;animation:tkOnAir 1.6s ease-in-out infinite}
@keyframes tkOnAir{50%{opacity:.35}}
.tk-head.is-air em{color:#ffc65c}
.tk-air{margin:10px 0 12px;padding:10px 10px 0;border:1px solid rgba(255,198,92,.3);border-radius:14px;background:rgba(255,198,92,.07)}
.tk-air-title{margin:0;font-size:12px;font-weight:800;line-height:15px;letter-spacing:.04em;text-transform:uppercase;color:#ffc65c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-air-title span{letter-spacing:0;text-transform:none}
.tk-air .tk-kick{color:#ffc65c}
.tk-air .tk-row{border-top-color:rgba(255,198,92,.16)}
.tk-air .tk-air-title+.tk-row{border-top:0}
.tk-pick.is-air{border-color:rgba(255,198,92,.5);background:rgba(255,198,92,.12)}
.tk-g.is-air strong{color:#ffc65c}
.tk-disc img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
/* toque duplo não pinta o texto de amarelo */
.tk-closed,.tk-bar,.tk-menu,.tk-pane button,.tm{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}

/* aba Tempo: mapa 3D com passeio pelas capitais. As etiquetas ficam em camada plana: sempre retas */
.tk-pane.is-map{position:relative;margin:0 -20px calc(-1*env(safe-area-inset-bottom));padding:0;overflow:hidden}
.tk-pane.is-map .tk-weather{position:absolute;inset:0}
.tk-pane.is-map .pa-empty{margin:16px 20px}
.tm{position:absolute;inset:0;overflow:hidden;background:radial-gradient(circle at 50% 34%,#12365a,#050f1d 74%)}
.tm-canvas{position:absolute;left:0;top:0;width:100%;height:100%}
.tm-labels{position:absolute;inset:0;overflow:hidden}
.tm-pin{position:absolute;left:0;top:0;transition:opacity .18s ease}
.tm-btn{position:relative;display:block;padding:0;border:0;background:none}
.tm-btn::after{content:"";position:absolute;inset:-11px -5px}
.tm-pin.is-off{opacity:0;pointer-events:none}
.tm-t,.tm-n{display:block;border-radius:99px;color:#04121f;font-weight:800;white-space:nowrap;box-shadow:0 3px 8px rgba(0,0,0,.45)}
.tm-t{padding:2px 7px;background:var(--c);font-size:12.5px;line-height:17px}
.tm-n{display:none;padding:5px 12px;background:#fff;font-size:14.5px;line-height:18px}
.tm-pin.is-sel{z-index:2}
.tm-pin.is-sel .tm-t{display:none}
.tm-pin.is-sel .tm-n{display:block;animation:tmPop .28s cubic-bezier(.22,1,.36,1) both}
@keyframes tmPop{from{opacity:0;transform:translateY(8px) scale(.92)}to{opacity:1;transform:none}}
.tm-top{position:absolute;left:20px;right:20px;top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px}
.tm-hint{min-width:0;margin:0;font-size:12px;font-weight:700;line-height:1.25;color:rgba(244,248,253,.82)}
.tm-tour{position:relative;flex:none;display:flex;align-items:center;gap:5px;height:34px;padding:0 12px 0 10px;border:1px solid rgba(255,255,255,.18);border-radius:99px;background:rgba(5,15,29,.62)}
.tm-tour::after{content:"";position:absolute;left:0;right:0;top:-5px;bottom:-5px}
.tm-tour span{font-size:13px;font-weight:700}
.tm-bottom{position:absolute;left:0;right:0;bottom:calc(8px + env(safe-area-inset-bottom));pointer-events:none}
.tm-bottom>*{pointer-events:auto}
.tm-chips{display:flex;gap:6px;padding:0 20px 8px;overflow-x:auto;scrollbar-width:none}
.tm-chips::-webkit-scrollbar{display:none}
.tm-chip{flex:none;display:flex;align-items:center;gap:6px;height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#0e2036;font-size:13.5px!important;font-weight:700!important;white-space:nowrap;transition:background .25s ease,color .25s ease}
.tm-chip b{font-weight:800}
.tm-chip.is-on{border-color:#65efcf;background:#65efcf;color:#062640!important}
.tm-card{margin:0 20px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#0e2036;transition:opacity .2s ease}
.tm-card.is-going{opacity:.55}
/* o cartão entra subindo, no mesmo movimento da arte do canto */
.tm-card-in{animation:tkHead .4s cubic-bezier(.22,1,.36,1) both}
.tm-ic{display:block;flex:none}
.tm-head{display:flex;align-items:center;gap:12px}
.tm-head-copy{flex:1;min-width:0}
.tm-head-copy strong{display:block;font-size:17px;font-weight:800;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-head-copy small{display:block;font-size:13px;line-height:1.3;color:rgba(244,248,253,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-head>b{font-size:34px;font-weight:800;line-height:1;letter-spacing:-.5px}
.tm-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}
.tm-day{display:flex;flex-direction:column;align-items:center;gap:2px}
.tm-day i{font-style:normal;font-size:12px;font-weight:700;color:rgba(244,248,253,.72)}
.tm-day b{font-size:14px;font-weight:800;line-height:1.1}
.tm-day small{font-size:12px;line-height:1.1;color:rgba(244,248,253,.72)}
.tm-credit{margin:5px 20px 0;font-size:11px;line-height:13px;text-align:right;color:rgba(244,248,253,.55)}
.wi-ray{transform-box:fill-box;transform-origin:center;animation:twSpin 14s linear infinite}
.wi-core{transform-box:fill-box;transform-origin:center;animation:wiPulse 3s ease-in-out infinite}
.wi-cloud{animation:wiDrift 3.6s ease-in-out infinite alternate}
.wi-cloud2{animation:wiDrift 5s ease-in-out infinite alternate-reverse}
.wi-drop{animation:wiDrop .9s linear infinite}
.wi-bolt{animation:wiBolt 2.8s linear infinite}
@keyframes wiPulse{50%{transform:scale(1.1)}}
@keyframes wiDrift{from{transform:translateX(-1.2px)}to{transform:translateX(1.2px)}}
@keyframes wiDrop{0%{transform:translateY(-2.5px);opacity:0}25%{opacity:1}80%{opacity:1}100%{transform:translateY(3px);opacity:0}}
@keyframes wiBolt{0%,62%,70%,78%,100%{opacity:.35}64%,74%{opacity:1}}

/* seletor: o mesmo menu flutuante do seletor de rádio */
.tk-menu{top:var(--tk-top,180px);bottom:auto;max-height:calc(100% - var(--tk-top,180px) - 14px - env(safe-area-inset-bottom));padding-bottom:0}
.tk-menu-title{margin:6px 10px 6px;font-size:13px;font-weight:700;color:rgba(255,255,255,.76)}
.tk-menu-wait{margin:6px 12px 10px;font-size:13px;color:rgba(255,255,255,.8)}
.tk-disc{display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);font-size:22px;line-height:1}
.tk-disc svg{stroke-width:1.8}
.tk-g[aria-expanded="true"]{background:rgba(255,255,255,.05)}
.tk-g.is-off{opacity:.55}
.tk-opts{padding:2px 0 6px}
.tk-box{flex:none;display:grid;place-items:center;width:24px;height:24px;box-sizing:border-box;border:2px solid rgba(255,255,255,.34);border-radius:8px;color:#062640}
.tk-box.is-on{border-color:#65efcf;background:#65efcf}
.tk-box svg{stroke-width:3}
.tk-cities .pa-m-city em{flex:1 1 0;min-height:0;display:grid;place-items:center;padding:4px 6px;overflow:hidden;font-style:normal;font-size:12px;font-weight:700;line-height:1.15;text-align:center;color:#fff}
.tk-go-wrap{position:sticky;bottom:0;margin:0 -6px;padding:8px 6px 8px;background:linear-gradient(180deg,rgba(16,35,61,0),#10233d 28%)}
.tk-go{display:block;width:100%;height:46px;border:0;border-radius:99px;background:#65efcf;color:#062640!important;font-size:15px!important;font-weight:800!important}

@media (max-height:700px){
  .tk-head strong{-webkit-line-clamp:3;line-clamp:3}
  .tm-day .tm-ic,.tm-day small{display:none}
  .tm-days{margin-top:6px}
  .tm-hint{font-size:12px}
}
@media (max-height:620px){
  .pa.is-talk .pa-sheet{min-height:calc(150px + env(safe-area-inset-bottom))}
  .tw-temp{font-size:22px;top:9px}
}
@media (prefers-reduced-motion:reduce){
  .tk-closed *,.tk-pane *{animation:none!important;transition:none!important}
}
