
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;background:#061629;color:#fff;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
body{overflow:hidden}
button,input{font:inherit}
button{cursor:pointer}
.broadcast-stage{position:relative;width:100vw;height:100vh;min-width:980px;min-height:620px;overflow:hidden;background:
radial-gradient(circle at 63% 22%,rgba(21,87,154,.30),transparent 24%),
linear-gradient(180deg,#071d37 0,#07182d 62%,#04101d 100%)}
.broadcast-stage:before{content:'';position:absolute;inset:74px 0 210px;background:
linear-gradient(90deg,rgba(10,31,57,.85),rgba(8,30,58,.08) 55%,rgba(7,34,67,.7)),
repeating-linear-gradient(0deg,rgba(30,95,165,.08) 0 2px,transparent 2px 38px);pointer-events:none}
.broadcast-stage:after{content:'';position:absolute;left:52%;right:0;top:76px;height:56%;background:
linear-gradient(90deg,rgba(10,38,72,.45),rgba(5,24,49,.2)),
linear-gradient(180deg,transparent 55%,rgba(0,0,0,.22));border-left:1px solid rgba(75,154,226,.18);pointer-events:none}

.broadcast-header{position:absolute;z-index:60;left:0;right:0;top:0;height:76px;display:flex;align-items:center;gap:14px;padding:0 18px;background:rgba(4,25,48,.97);border-bottom:1px solid #1e5b91;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.brand{text-decoration:none;color:#fff;white-space:nowrap}.brand strong{font-size:34px;letter-spacing:-1.4px}.brand strong>span,.brand small{color:#ffc21b}.brand small{font-size:.58em;font-weight:700;letter-spacing:-.2px}
.live-badge{background:#d9282e;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:800}
.broadcast-nav{display:flex;align-items:stretch;justify-content:center;gap:2px;flex:1;height:100%;min-width:0}
.broadcast-nav button{border:0;background:transparent;color:#f2f6fa;padding:0 10px;display:flex;align-items:center;gap:6px;font-size:13px;border-bottom:2px solid transparent}
.broadcast-nav button:hover,.broadcast-nav button.active,.broadcast-nav .nav-laura[aria-expanded=true]{background:rgba(255,255,255,.05);border-bottom-color:#2e9cff}
.nav-laura-face{width:34px;height:34px;border-radius:10px;overflow:hidden;background:#0d3153;position:relative}.nav-laura-face img{height:54px;position:absolute;left:50%;top:-5px;transform:translateX(-50%)}
.broadcast-clock{min-width:152px;text-align:right}.broadcast-clock span{display:block;font-size:10px;color:#d8e4ed}.broadcast-clock b{font-size:20px}

.studio-main{position:absolute;z-index:5;left:12px;right:12px;top:84px;height:60vh;min-height:390px;display:grid;grid-template-columns:54% 25% 21%;gap:0}
.sat-wall{position:relative;overflow:visible}
.sat-wall-top{position:absolute;z-index:25;top:18px;left:20px;padding:8px 12px;background:rgba(6,47,87,.90);border-radius:7px;font-size:14px;letter-spacing:.3px;box-shadow:0 8px 20px rgba(0,0,0,.28)}
.sat-curved-frame{position:absolute;left:0;right:14px;top:0;bottom:82px;border-radius:18px 18px 45px 28px;overflow:hidden;border:1px solid rgba(83,164,237,.58);background:#03101b;box-shadow:inset 0 0 0 10px rgba(9,44,80,.35),0 16px 45px rgba(0,0,0,.42)}
#map{position:absolute;inset:0;z-index:1}.leaflet-control-container{display:none}.leaflet-container{background:#071927}
.map-vignette{position:absolute;z-index:5;inset:0;pointer-events:none;box-shadow:inset 0 0 44px 18px rgba(1,10,20,.65);border-radius:inherit}
.map-tools{position:absolute;z-index:30;left:10px;bottom:12px;display:grid;gap:5px}.map-tools button{width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:rgba(3,23,44,.75);color:#fff;font-size:20px}
.studio-floor-logo{position:absolute;left:4%;right:8%;bottom:6px;height:70px;border-radius:50%;display:grid;place-items:center;transform:perspective(260px) rotateX(58deg);background:radial-gradient(ellipse at center,#123e73 0,#0b2f5a 50%,#061b34 73%);border:2px solid #226bb0;box-shadow:0 0 30px #1976ce66 inset;color:#e8f2fb;font-size:48px;font-weight:900;font-style:italic;letter-spacing:-2px;text-shadow:0 4px 12px #000}
.studio-floor-logo span,.studio-floor-logo small{color:#ffbf13}.studio-floor-logo small{font-size:.48em}

.presenter-zone{position:relative;z-index:8;overflow:visible;background:
linear-gradient(180deg,rgba(12,57,103,.14),rgba(5,23,44,.18)),
repeating-linear-gradient(90deg,transparent 0 54px,rgba(24,91,156,.09) 55px 57px)}
.presenter-zone:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,90,166,.18),transparent 40%,rgba(255,34,44,.05));border-left:1px solid rgba(45,116,184,.2)}
.presenter-glow{position:absolute;inset:0;background:radial-gradient(circle at 55% 20%,rgba(50,137,220,.25),transparent 38%);pointer-events:none}
.studio-laura-image{position:absolute;z-index:3;left:-8%;right:-6%;top:4%;bottom:0;display:flex;justify-content:center;align-items:flex-end;overflow:visible}
.studio-laura-image img{height:100%;max-width:none;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.38))}
.laura-speech{position:absolute;z-index:7;right:-1%;bottom:6px;width:67%;min-width:190px;padding:10px 11px;border-radius:10px;background:rgba(5,42,78,.94);border:1px solid #2774b2;box-shadow:0 10px 25px rgba(0,0,0,.34)}
.laura-speech b{font-size:13px}.laura-speech p{font-size:10px;line-height:1.42;margin:6px 0;max-height:54px;overflow:hidden}.laura-speech div{display:flex;gap:7px}.laura-speech button{border:0;border-radius:6px;padding:6px 9px;color:#fff;font-size:10px;background:#177fcf}.laura-speech button:last-child{background:#b3302f}

.current-card{position:relative;z-index:10;margin:12px 0 24px 6px;border-radius:12px;background:linear-gradient(180deg,#0a3763,#061b31);border:1px solid #1779b8;box-shadow:0 15px 40px rgba(0,0,0,.38);padding:0 15px 14px;overflow:hidden}
.current-title{margin:0 -15px 12px;padding:10px 14px;background:#0a4a80;font-size:13px;font-weight:900}
.current-card h2{font-size:22px;margin:0}.current-region{font-size:11px;color:#d7e2eb;margin-top:2px}
.current-temp{display:flex;align-items:center;gap:11px;margin:20px 0 8px}.current-temp span{font-size:42px}.current-temp strong{font-size:34px}
.current-condition{font-size:13px;margin-top:8px}.current-feels{font-size:12px;color:#e3ecf3}
.current-stats{display:grid;gap:10px;border-top:1px solid rgba(255,255,255,.11);margin-top:13px;padding-top:12px;font-size:11px}.current-updated{display:block;margin-top:13px;color:#c5d5e1;font-size:9px}

.lower-weather{position:absolute;z-index:30;left:18px;right:18px;bottom:100px;height:190px;display:grid;grid-template-columns:205px 1fr;gap:10px}
.warning-card{border-radius:10px;background:linear-gradient(180deg,#8e241e,#5d1714);border:1px solid #ef5e54;overflow:hidden;box-shadow:0 14px 35px rgba(0,0,0,.28)}
.warning-card.ok{background:linear-gradient(180deg,#155c3d,#0a3523);border-color:#3fa772}.warning-head{padding:9px 10px;background:rgba(141,21,16,.72);font-size:12px;font-weight:900}.warning-card.ok .warning-head{background:rgba(15,86,55,.78)}#studioWarningText{padding:11px;font-size:11px;line-height:1.48}.warning-card small{display:block;padding:0 11px;color:#e8e8e8;font-size:9px}
.forecast-card{border-radius:10px;background:linear-gradient(180deg,#0a3a67,#061d35);border:1px solid #1a79b8;overflow:hidden}.forecast-head{height:31px;padding:7px 12px;font-weight:900;font-size:12px;background:rgba(8,58,102,.85)}
.forecast-grid{display:grid;grid-template-columns:repeat(7,1fr);height:calc(100% - 31px)}.studio-fday{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid rgba(255,255,255,.11);gap:4px;text-align:center}.studio-fday:last-child{border-right:0}.studio-fday b{font-size:11px}.studio-fday .ico{font-size:28px;line-height:1.1}.studio-fday strong{font-size:13px}.studio-fday small{font-size:9px;color:#c9d9e5}

.ticker-row{position:absolute;z-index:35;left:18px;right:18px;bottom:62px;height:34px;display:flex;align-items:center;background:#061421;border-top:1px solid #164e7f;border-bottom:1px solid #164e7f;overflow:hidden}.ticker-label{height:100%;display:grid;place-items:center;padding:0 14px;background:#ae2823;font-size:11px;font-weight:900;white-space:nowrap}.ticker-viewport{flex:1;overflow:hidden;white-space:nowrap}.ticker-text{display:inline-block;padding-left:100%;font-size:11px;animation:newsTicker 38s linear infinite}@keyframes newsTicker{from{transform:translateX(0)}to{transform:translateX(-100%)}}

.broadcast-footer{position:absolute;z-index:38;left:18px;right:18px;bottom:10px;height:44px;display:flex;align-items:center;gap:44px;padding:0 26px;border-top:1px solid rgba(79,145,199,.45);background:rgba(3,15,28,.92);font-size:11px;color:#d4e0e8}.broadcast-footer>span{white-space:nowrap}.footer-brand{margin-left:auto}.footer-brand strong{font-size:14px}.footer-brand strong span{color:#ffc21b}.broadcast-footer button{border:0;background:transparent;color:#bcd0df;font-size:10px}

.place-fab{position:absolute;z-index:55;left:24px;top:86px;border:1px solid rgba(116,188,244,.38);border-radius:999px;background:rgba(5,32,58,.82);color:#fff;padding:8px 12px;display:flex;align-items:center;gap:7px;backdrop-filter:blur(10px)}.place-fab span{font-size:18px}.place-fab strong{font-size:13px}
.layer-switch{position:absolute;z-index:55;left:235px;top:87px;display:flex;gap:4px;background:rgba(4,25,46,.78);padding:4px;border-radius:10px;border:1px solid rgba(101,174,230,.28)}.layer-switch button{border:0;background:transparent;color:#dce9f1;padding:6px 8px;border-radius:7px;font-size:10px}.layer-switch button.active{background:#157fd4;color:#fff}
.utility-btn{position:absolute;z-index:56;bottom:12px;width:34px;height:34px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(5,28,50,.8);color:#fff}.utility-btn.full{right:18px}.utility-btn.mute{right:58px}

.place-dialog,.info-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;padding:20px}.place-dialog.open,.info-modal.open{display:flex}
.dialog-card,.info-card{width:min(560px,94vw);max-height:82vh;overflow:auto;background:#071b31;border:1px solid #2b6088;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.65)}.dialog-card{padding:16px}.dialog-head,.info-head{display:flex;align-items:center;justify-content:space-between}.dialog-head button,.info-head button{border:0;background:none;color:#fff;font-size:26px}.search{display:flex;gap:7px;margin-top:12px}.search input{flex:1;background:#061421;border:1px solid #2e5876;color:#fff;border-radius:9px;padding:10px}.search button,.locate{border:0;border-radius:8px;background:#1684d7;color:#fff;padding:9px 12px}.locate{width:100%;margin-top:9px;background:#173a57}.suggestions,.recent{display:grid;gap:5px;margin-top:7px}.suggestions button,.recent button{border:0;background:#0c2a47;color:#fff;text-align:left;padding:9px;border-radius:8px}.info-head{padding:12px 15px;background:#0a2c4c}.info-body{padding:16px 18px;font-size:12px;line-height:1.55}.info-body a{color:#68b7ff}

.laura-panel{position:fixed;z-index:1100;left:50%;top:90px;transform:translateX(-50%);width:min(540px,92vw);max-height:75vh;display:none;background:#071b31;border:1px solid #2b6b9c;border-radius:15px;overflow:auto;box-shadow:0 25px 80px rgba(0,0,0,.65)}.laura-panel.open{display:block}.laura-panel-head{display:flex;justify-content:space-between;padding:12px 14px;background:#0a3154}.laura-panel-head button{border:0;background:none;color:#fff;font-size:23px}.laura-text{padding:14px;font-size:12px;line-height:1.55}.seven-day-title{padding:0 14px 7px;font-weight:800;font-size:11px}.laura-forecast7{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 10px 10px}.laura-day{padding:6px 3px;border-radius:8px;background:#0b2a47;text-align:center;font-size:9px}.laura-day .day-icon{display:block;font-size:20px}.laura-actions{padding:10px 14px 14px}.laura-actions button{border:0;border-radius:8px;background:#1385dc;color:#fff;padding:9px 12px}

.status{position:fixed;z-index:1200;left:50%;top:84px;transform:translateX(-50%);background:#071b31;border:1px solid #396a8f;border-radius:999px;padding:7px 12px;font-size:10px;opacity:0;pointer-events:none;transition:.2s}.status.show{opacity:1}
.layer-credit{position:absolute;z-index:40;right:120px;bottom:12px;font-size:8px;color:#8499aa}
.compat{display:none!important}.cms-hidden{display:none!important}

.w24-place-marker{background:transparent!important;border:0!important;overflow:visible!important}.w24-place-marker .pin-shape{position:absolute;left:0;top:0;width:30px;height:38px;border-radius:50% 50% 50% 0;background:#d71920;border:3px solid #fff;transform:rotate(-45deg);box-shadow:0 3px 12px rgba(0,0,0,.55)}.w24-place-marker .pin-shape span{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;left:8px;top:8px}.w24-place-marker .pin-label{position:absolute;left:35px;top:10px;white-space:nowrap;color:#fff;font-size:12px;font-weight:700;text-shadow:0 2px 5px #000;background:rgba(3,13,24,.6);padding:4px 7px;border-radius:6px}

@media(max-width:1200px){
 .broadcast-stage{min-width:760px}.broadcast-nav button{padding:0 6px;font-size:11px}.broadcast-clock{min-width:110px}.brand strong{font-size:28px}
 .studio-main{grid-template-columns:56% 24% 20%}.current-card{min-width:0}.current-temp strong{font-size:28px}.studio-laura-image img{height:94%}.lower-weather{grid-template-columns:185px 1fr}.broadcast-footer{gap:18px;padding:0 14px}
}
@media(max-width:900px){
 body{overflow:auto}.broadcast-stage{min-width:0;min-height:1180px;height:auto;overflow:visible;padding-bottom:120px}
 .broadcast-header{position:sticky;top:0;height:auto;min-height:68px;flex-wrap:wrap;padding:8px 10px}.brand strong{font-size:24px}.live-badge{font-size:10px}.broadcast-clock{margin-left:auto}.broadcast-nav{order:3;width:100%;overflow-x:auto;justify-content:flex-start;height:42px}.broadcast-nav button{flex:0 0 auto}
 .studio-main{position:relative;left:8px;right:auto;top:16px;width:calc(100% - 16px);height:auto;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:430px 360px;gap:10px}
 .sat-wall{grid-column:1/-1}.sat-curved-frame{right:0;bottom:55px}.studio-floor-logo{height:50px;font-size:32px}
 .presenter-zone{grid-column:1}.current-card{grid-column:2;margin:0;height:350px}.studio-laura-image img{height:100%}.laura-speech{width:88%;right:6%}
 .lower-weather{position:relative;left:8px;right:auto;bottom:auto;top:25px;width:calc(100% - 16px);height:auto;grid-template-columns:1fr}.warning-card{min-height:110px}.forecast-card{height:160px}.forecast-grid{overflow-x:auto;grid-template-columns:repeat(7,110px)}
 .ticker-row{position:relative;left:8px;right:auto;bottom:auto;top:35px;width:calc(100% - 16px)}
 .broadcast-footer{position:relative;left:8px;right:auto;bottom:auto;top:45px;width:calc(100% - 16px);height:auto;min-height:56px;flex-wrap:wrap;gap:12px;padding:10px 12px}.footer-brand{margin-left:0}
 .place-fab{position:fixed;top:auto;bottom:16px;left:12px}.layer-switch{position:fixed;top:auto;bottom:16px;left:auto;right:100px}.utility-btn{display:none}.layer-credit{display:none}
}
@media(max-width:560px){
 .broadcast-clock span{display:none}.broadcast-clock b{font-size:15px}.broadcast-nav span{display:inline}
 .studio-main{grid-template-columns:1fr;grid-template-rows:360px 330px 300px}.sat-wall{grid-column:1}.presenter-zone{grid-column:1}.current-card{grid-column:1;height:290px}.current-temp{margin:10px 0}.current-stats{grid-template-columns:1fr 1fr}
 .lower-weather{top:18px}.forecast-grid{grid-template-columns:repeat(7,92px)}.place-fab{font-size:11px}.layer-switch{right:10px;bottom:58px}
}

/* V13.2 – photorealistic studio compositing */
html,body{background:#03101f}
.broadcast-stage{
  background:#03101f url('studio-photorealistic.png') center top/cover no-repeat!important;
}
.broadcast-stage:before,.broadcast-stage:after{display:none!important}

/* Header remains interactive but visually follows the background */
.broadcast-header{
  height:7.3vh!important;min-height:58px!important;
  background:rgba(2,14,27,.72)!important;
  border-bottom:1px solid rgba(54,130,198,.45)!important;
  backdrop-filter:blur(3px);
}
.brand strong{font-size:clamp(25px,2.25vw,35px)!important}
.broadcast-nav button{font-size:clamp(10px,.92vw,14px)!important}
.broadcast-clock b{font-size:clamp(15px,1.25vw,21px)!important}

/* Main studio becomes an overlay canvas aligned to the generated backdrop */
.studio-main{
  position:absolute!important;
  left:0!important;right:0!important;top:7.3vh!important;
  height:61.7vh!important;min-height:0!important;
  display:block!important;
  pointer-events:none;
}

/* Live map exactly over the monitor face, leaving the studio frame visible */
.sat-wall{
  position:absolute!important;
  left:.7%!important;top:5.8%!important;
  width:52.1%!important;height:84.4%!important;
  pointer-events:auto;
}
.sat-wall-top{display:none!important}
.sat-curved-frame{
  position:absolute!important;inset:0!important;
  border-radius:4px 10px 22px 8px!important;
  overflow:hidden!important;
  border:0!important;
  box-shadow:0 0 0 2px rgba(50,118,183,.26),inset 0 0 26px rgba(0,0,0,.28)!important;
  background:#071725!important;
}
.sat-curved-frame #map{inset:0!important}
.map-vignette{box-shadow:inset 0 0 26px 8px rgba(0,0,0,.3)!important}
.studio-floor-logo{display:none!important}
.map-tools{left:10px!important;top:12%!important;bottom:auto!important}

/* Laura is part of the photorealistic background. Keep only her live speech box. */
.presenter-zone{
  position:absolute!important;
  left:53.7%!important;top:0!important;
  width:28.3%!important;height:100%!important;
  background:transparent!important;
  pointer-events:none!important;
}
.presenter-zone:before,.presenter-glow,.studio-laura-image{display:none!important}
.laura-speech{
  pointer-events:auto!important;
  right:1.2%!important;bottom:2.8%!important;
  width:61%!important;min-width:0!important;
  padding:10px 11px!important;
  background:rgba(3,38,70,.92)!important;
  border:1px solid rgba(62,153,223,.75)!important;
  border-radius:10px!important;
}

/* Dynamic current-weather panel over the right display */
.current-card{
  position:absolute!important;
  right:1.2%!important;top:3.4%!important;
  width:15.9%!important;height:78.2%!important;
  margin:0!important;
  padding:0 14px 12px!important;
  background:linear-gradient(180deg,rgba(7,48,86,.97),rgba(3,23,43,.97))!important;
  border:1px solid rgba(37,135,205,.86)!important;
  border-radius:10px!important;
  pointer-events:auto;
}
.current-title{margin:0 -14px 10px!important;padding:9px 13px!important;background:#0a477a!important}
.current-card h2{font-size:clamp(18px,1.45vw,25px)!important}
.current-temp{margin:14px 0 8px!important}
.current-temp span{font-size:clamp(32px,2.7vw,48px)!important}
.current-temp strong{font-size:clamp(28px,2.45vw,42px)!important}
.current-stats{gap:8px!important;margin-top:10px!important;padding-top:10px!important}

/* Lower area precisely follows the reference proportions */
.lower-weather{
  left:1.1%!important;right:1.1%!important;
  bottom:11.9%!important;height:20.3%!important;
  grid-template-columns:13.8% 1fr!important;
  gap:.7%!important;
}
.warning-card,.forecast-card{
  background:linear-gradient(180deg,rgba(7,49,88,.985),rgba(3,24,45,.985))!important;
  box-shadow:0 12px 32px rgba(0,0,0,.22)!important;
}
.warning-card{
  background:linear-gradient(180deg,rgba(139,32,27,.985),rgba(83,18,16,.985))!important;
}
.warning-card.ok{
  background:linear-gradient(180deg,rgba(18,87,57,.985),rgba(7,49,31,.985))!important;
}
.forecast-grid{height:calc(100% - 31px)!important}
.studio-fday .ico{font-size:clamp(20px,2vw,31px)!important}

.ticker-row{
  left:1.1%!important;right:1.1%!important;
  bottom:6.45%!important;height:4.35%!important;
  background:rgba(3,17,31,.97)!important;
}
.broadcast-footer{
  left:1.1%!important;right:1.1%!important;
  bottom:.9%!important;height:4.8%!important;
  background:rgba(3,14,27,.95)!important;
}

/* Floating controls are intentionally compact, to preserve the TV look */
.place-fab{
  left:1.4%!important;top:8.6%!important;
  padding:6px 10px!important;font-size:10px!important;
  opacity:.92;
}
.layer-switch{
  left:34.5%!important;top:13.7%!important;
  opacity:.92;
}
.utility-btn{opacity:.72}
.layer-credit{display:none!important}

/* Keep dialogs and Laura text panel above the whole studio */
.place-dialog,.info-modal{z-index:4000!important}
.laura-panel{z-index:4100!important}

@media(max-width:900px){
  .broadcast-stage{
    background-image:none!important;
    min-height:1180px!important;
  }
  .studio-main{
    position:relative!important;top:12px!important;left:8px!important;right:auto!important;
    width:calc(100% - 16px)!important;height:auto!important;
    display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:420px 350px!important;gap:10px!important;
    pointer-events:auto!important;
  }
  .sat-wall{position:relative!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important;grid-column:1/-1!important}
  .presenter-zone{position:relative!important;left:auto!important;top:auto!important;width:auto!important;height:350px!important;background:linear-gradient(180deg,#0b2e52,#071a2e)!important}
  .presenter-zone:before{display:block!important}.studio-laura-image{display:flex!important}
  .current-card{position:relative!important;right:auto!important;top:auto!important;width:auto!important;height:350px!important}
  .lower-weather{position:relative!important;left:8px!important;right:auto!important;bottom:auto!important;top:24px!important;width:calc(100% - 16px)!important;height:auto!important;grid-template-columns:1fr!important}
  .ticker-row{position:relative!important;left:8px!important;right:auto!important;bottom:auto!important;top:34px!important;width:calc(100% - 16px)!important;height:38px!important}
  .broadcast-footer{position:relative!important;left:8px!important;right:auto!important;bottom:auto!important;top:44px!important;width:calc(100% - 16px)!important;height:auto!important}
}

/* V13.3 clean studio: lower graphic blocks removed */
.lower-weather{display:none!important}
.broadcast-footer{display:none!important}
.ticker-row{bottom:1.2%!important;height:4.8%!important}
.studio-main{height:84.5vh!important}
.sat-wall{height:91%!important}
.current-card{height:86%!important}
.presenter-zone{height:100%!important}
@media(max-width:900px){
  .lower-weather,.broadcast-footer{display:none!important}
  .ticker-row{position:relative!important;bottom:auto!important;top:28px!important}
}

/* V13.4 – Laura in AKTUELL integriert */
.laura-speech{display:none!important}
.current-card{display:flex!important;flex-direction:column!important}
.current-laura{
  margin-top:auto;
  padding:10px 10px 9px;
  border-radius:9px;
  background:rgba(5,34,62,.88);
  border:1px solid rgba(69,151,214,.55);
}
.current-laura b{display:block;font-size:12px;margin-bottom:4px}
.current-laura p{
  margin:0 0 7px;
  font-size:9px;
  line-height:1.4;
  color:#dce8f1;
  max-height:42px;
  overflow:hidden
}
.current-laura-actions{display:flex;gap:6px}
.current-laura-actions button{
  border:0;
  border-radius:6px;
  padding:6px 8px;
  color:#fff;
  font-size:9px;
  background:#147fcf
}
.current-laura-actions button:last-child{background:#aa302d}
.current-updated{margin-top:8px!important}
@media(max-width:900px){
  .current-laura p{max-height:54px}
  .current-laura-actions button{font-size:11px;padding:8px 10px}
}


/* V13.6 – clean studio background, no masking workaround */
.current-card{
  background:linear-gradient(180deg,#07345f 0%,#041d36 100%)!important;
  opacity:1!important;
}
.presenter-zone::after{display:none!important;content:none!important}

.broadcast-nav .nav-link{display:flex;align-items:center;gap:6px;padding:0 10px;color:#f2f6fa;text-decoration:none;font-size:13px;border-bottom:2px solid transparent}
.broadcast-nav .nav-link:hover{background:rgba(255,255,255,.05);border-bottom-color:#2e9cff}
@media(max-width:1200px){.broadcast-nav .nav-link{padding:0 6px;font-size:11px}}

/* V14.1 – Partner/Linktausch out of main navigation */
.partner-link{
  position:absolute;
  z-index:57;
  right:102px;
  bottom:12px;
  height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(4,24,44,.82);
  color:#dce8f1;
  font-size:10px;
  backdrop-filter:blur(8px);
}
.partner-link:hover{background:#0b416c;color:#fff}
@media(max-width:900px){
  .partner-link{
    position:fixed;
    right:10px;
    bottom:102px;
    height:36px;
    z-index:120;
  }
}

/* V14.2 – Partner & Linktausch rechts neben der Karte, oberhalb von Laura */
@media(min-width:901px){
  .partner-link{
    position:absolute!important;
    left:54.2%!important;
    right:auto!important;
    top:9.2%!important;
    bottom:auto!important;
    height:34px!important;
    z-index:58!important;
    padding:0 13px!important;
    background:rgba(4,31,56,.90)!important;
    border:1px solid rgba(76,158,220,.58)!important;
    box-shadow:0 7px 20px rgba(0,0,0,.25)!important;
  }
}

/* V14.3 – Linktausch is a direct hyperlink, not a popup control */
a.partner-link{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

/* V14.5 – actual partner link displayed directly over Laura */
a.partner-link{
  height:auto!important;
  padding:4px 7px!important;
  border:0!important;
  border-radius:4px!important;
  background:rgba(3,20,37,.62)!important;
  box-shadow:none!important;
  color:#d9ebfa!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
  font-size:10px!important;
}
a.partner-link:hover{color:#fff!important;background:rgba(8,55,91,.78)!important}

/* V16 – real Tina video layer */
.presenter-zone{overflow:hidden!important}
.tina-video{
  position:absolute;z-index:8;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center center;
  display:none;background:transparent;
}
.tina-video.active{display:block}
.tina-video-badge{
  position:absolute;z-index:10;left:10px;top:10px;
  padding:5px 8px;border-radius:7px;background:rgba(177,20,28,.92);
  color:#fff;font-size:9px;font-weight:800;letter-spacing:.5px;
  display:none
}
.tina-video.active + .tina-video-badge,.tina-video-badge.active{display:block}
.tina-video-status{display:block;margin-top:6px;color:#aecdde;font-size:8px;line-height:1.3}
.current-laura-actions{flex-wrap:wrap}
.current-laura-actions #tinaVideoBtn{background:#0d8bdf}
@media(max-width:900px){
  .tina-video{object-fit:cover}
  .current-laura-actions button{min-height:40px}
  .tina-video-status{font-size:9px}
}

/* V16 – Tina fallback on tablet/smartphone without a newly generated cutout */
@media(max-width:900px){
  .studio-laura-image{display:none!important}
  .presenter-zone{
    background:
      linear-gradient(180deg,rgba(5,24,44,.08),rgba(5,24,44,.18)),
      url('studio-photorealistic.png') 66% 32%/auto 165% no-repeat!important;
  }
  .presenter-zone:before{display:none!important}
}

/* V17 – Android/PWA */
html.pwa-standalone body{overscroll-behavior:none}
.pwa-standalone .broadcast-header{padding-top:max(8px,env(safe-area-inset-top))}
#installAppBtn{background:rgba(19,133,232,.16)!important;border-bottom-color:#1385e8!important}
@media(max-width:900px){
  .pwa-standalone .broadcast-stage{padding-bottom:calc(120px + env(safe-area-inset-bottom))}
  .pwa-standalone .place-fab{bottom:calc(16px + env(safe-area-inset-bottom))}
}
