:root{--u:min(1vw,1.7777778dvh);--v:min(1dvh,.5625vw)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;background:#e7e4f3;color:#17283f}.tv{width:calc(100 * var(--u));height:calc(100 * var(--v));padding:calc(1.4 * var(--v)) calc(1.8 * var(--u));display:grid;grid-template-rows:calc(7.4 * var(--v)) minmax(0,1fr) calc(6.7 * var(--v));gap:calc(1.6 * var(--v));background:radial-gradient(ellipse at 5% 5%,#ffd8a2 0%,transparent 45%),radial-gradient(ellipse at 90% 100%,#9bbcf9 0%,transparent 48%),radial-gradient(ellipse at 90% 0%,#e4b4dd 0%,transparent 55%),#e7e4f3}.glass{background:#ffffffb8;border:1px solid #ffffffdc;box-shadow:0 calc(.5 * var(--u)) calc(1.3 * var(--u)) #43325b15,inset 0 1px 0 #fff;backdrop-filter:blur(20px)}.top{display:flex;align-items:stretch;justify-content:space-between;gap:calc(2 * var(--u));min-height:0}.logo{border-radius:calc(1.4 * var(--u));padding:calc(.6 * var(--v)) calc(1.5 * var(--u));display:flex;align-items:center;justify-content:center}.logo img{display:block;height:100%;width:auto;max-width:calc(20 * var(--u));object-fit:contain}.info{border-radius:calc(4 * var(--u));display:flex;align-items:center;gap:calc(1.5 * var(--u));padding:0 calc(1.8 * var(--u));white-space:nowrap}#clock{font-size:calc(2.4 * var(--u));font-weight:600;letter-spacing:-calc(.1 * var(--u));font-variant-numeric:tabular-nums}#date{font-size:calc(1.2 * var(--u));color:#3c4960;text-transform:capitalize}.weather{border-left:1px solid #aab3c64d;padding-left:calc(1.5 * var(--u));display:flex;align-items:center;gap:calc(.8 * var(--u));font-size:calc(1.2 * var(--u))}.weather>span:last-child{display:flex;align-items:center;gap:calc(.7 * var(--u))}.temperature{font-size:calc(1.8 * var(--u))}small{font-size:calc(.8 * var(--u));color:#607089}.sun{width:calc(1.5 * var(--u));height:calc(1.5 * var(--u));border-radius:50%;background:#f8ad36;box-shadow:0 0 0 calc(.25 * var(--u)) #f8ad3626}.stage{min-height:0;display:flex;align-items:center;justify-content:center;container-type:size}.player{position:relative;height:100%;width:auto;aspect-ratio:16/9;max-width:100%;max-height:100%;border-radius:calc(1.8 * var(--u));overflow:hidden;background:#101b30;border:1px solid #ffffffa6;box-shadow:0 calc(.8 * var(--u)) calc(2 * var(--u)) #36336133}video{display:block;width:100%;height:100%;object-fit:contain;background:#101b30}#status{position:absolute;inset:0;display:grid;place-items:center;color:#fff;padding:calc(3 * var(--u));font-size:calc(1.5 * var(--u));text-align:center;background:#101b30}#status[hidden]{display:none}.ticker{display:flex;align-items:center;gap:calc(1 * var(--u));border-radius:calc(3 * var(--u));padding:calc(.5 * var(--v));min-width:0;overflow:hidden}.badge{display:flex;align-items:center;justify-content:center;align-self:stretch;border-radius:calc(3 * var(--u));background:linear-gradient(135deg,#b1358c,#7356a7);color:#fff;font-size:calc(1.5 * var(--u));font-weight:600;padding:0 calc(2.1 * var(--u));flex-shrink:0;box-shadow:0 calc(.2 * var(--u)) calc(.6 * var(--u)) #7c438a2b}.ticker-window{overflow:hidden;min-width:0;flex:1}.ticker-track{display:flex;width:max-content;animation:scroll-news 65s linear infinite}.ticker-copy{display:flex;gap:calc(3 * var(--u));align-items:center;white-space:nowrap;flex-shrink:0;padding:0 calc(1.5 * var(--u));color:#23334d;font-size:calc(1.65 * var(--u))}.ticker-copy b{color:#af2b86}@keyframes scroll-news{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.ticker-track{animation-duration:130s}}@supports(width:1cqh){.player{width:min(100cqw,177.7778cqh);height:auto;aspect-ratio:16/9}}
body{display:flex;align-items:center;justify-content:center;background:#e7e4f3}.player{border:0;outline:1px solid #ffffffa6}.news-source{font-size:calc(.85 * var(--u));color:#4d4363;max-width:calc(14 * var(--u));flex-shrink:0;padding-right:calc(.8 * var(--u));border-right:1px solid #b6adca;line-height:1.25}
.stage{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:calc(1.5 * var(--u));align-items:center}.player{width:100%;height:auto;aspect-ratio:16/9}.energy-box{align-self:stretch;min-height:0;border-radius:calc(1.8 * var(--u));padding:calc(1.7 * var(--u));display:flex;flex-direction:column;overflow:hidden}.energy-category{font-size:calc(.75 * var(--u));font-weight:700;letter-spacing:calc(.17 * var(--u));color:#9c3489}.energy-heading h1{font-size:calc(1.8 * var(--u));margin:calc(.6 * var(--u)) 0 calc(.4 * var(--u));letter-spacing:calc(-.05 * var(--u))}.energy-heading p{font-size:calc(1 * var(--u));color:#68516f;margin:0}.energy-heading{padding-bottom:calc(1.1 * var(--u));border-bottom:1px solid #cfc4db}#energy-stories{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-evenly;font-size:calc(1.2 * var(--u));gap:calc(.5 * var(--u))}.energy-story{padding:calc(1 * var(--u)) 0;border-bottom:1px solid #cfc4db}.energy-story:last-child{border-bottom:0}.energy-story time{font-size:calc(.85 * var(--u));color:#68516f}.energy-story h2{font-size:calc(1.35 * var(--u));font-weight:600;line-height:1.3;letter-spacing:calc(-.02 * var(--u));margin:calc(.4 * var(--u)) 0 0;overflow-wrap:anywhere}.energy-bottom{display:flex;justify-content:space-between;gap:calc(.5 * var(--u));font-size:calc(.75 * var(--u));color:#68516f;padding-top:calc(.8 * var(--u));border-top:1px solid #cfc4db}
/* Video determines the shared row height; news never enlarge it. */
.stage{grid-template-rows:min-content;align-content:center}
.energy-box{contain:size;padding:calc(1.1 * var(--u)) calc(1.5 * var(--u))}
#energy-stories{display:block;overflow:hidden;position:relative;mask-image:linear-gradient(transparent,#000 3%,#000 97%,transparent)}
.energy-track{animation:scroll-energy 150s linear infinite;will-change:transform}
.energy-copy{display:flow-root}
.energy-story,.energy-story:last-child{padding:calc(.7 * var(--u)) 0;border-bottom:1px solid #cfc4db}
.energy-story h2{line-height:1.18;margin:calc(.2 * var(--u)) 0 0;font-size:calc(1.3 * var(--u))}
.energy-story time{font-size:calc(.78 * var(--u))}
.energy-bottom{flex-shrink:0;margin-top:calc(.6 * var(--u));padding-top:calc(.6 * var(--u))}
@keyframes scroll-energy{to{transform:translateY(-50%)}}
