/* Fit the live dashboard to the available browser height without page scrolling. */
html{height:100%;overflow:hidden;overscroll-behavior:none;scroll-padding:0}
body{position:fixed;inset:0;height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
.topbar{height:56px;flex:0 0 56px;position:relative;backdrop-filter:none}
main{width:100%;flex:1;min-height:0;max-width:1136px;margin:0 auto;padding:16px 24px 0;display:flex;flex-direction:column}
.hero{flex:1;min-height:0!important;display:grid;grid-template-columns:1.25fr 1fr;align-items:stretch;overflow:hidden}
.hero-copy{width:100%;min-width:0;padding:clamp(20px,4vh,40px);align-self:center}
.clock-wrap{margin-top:20px;min-height:0}.clock b{font-size:clamp(50px,10vh,96px);letter-spacing:-3px}.clock>span{font-size:clamp(44px,8.7vh,83px)}
.expected{font-size:14px;margin-top:16px}.announcement{margin-top:20px;max-width:100%;padding:14px}.announcement blockquote{max-height:64px;font-size:13px}.announcement time{font-size:11px}.announcement figcaption{font-size:11px}
.stage{position:relative;right:auto;bottom:auto;width:100%;height:auto;min-height:0;margin:0;align-self:stretch}
.person{height:calc(100% - 115px);max-height:400px;width:auto;max-width:100%;aspect-ratio:1428/1101;bottom:-1px;right:auto;left:50%;transform:translateX(-50%)}
.person-photo{width:100%;height:100%;object-fit:contain}
.wish-meter{top:24px;min-height:0;margin-left:-115px}.radar{display:none}
footer{flex:0 0 auto;margin-top:10px;padding:12px 0;gap:10px;font-size:10px;line-height:1.5}footer b{font-size:12px}footer div p{margin-top:0}footer>p{margin:0}
@media(max-width:700px){
.topbar{height:48px;flex-basis:48px}.topbar-inner{padding:0 16px}.brand{font-size:18px}
main{padding:10px 12px 0}.hero{display:flex;flex-direction:column;border-radius:16px}.hero-copy{flex:none;padding:18px 20px 12px;align-self:stretch}
.status{font-size:11px;height:23px}.clock-wrap{margin-top:14px}.clock-wrap>p{font-size:12px}.clock{gap:5px;margin-top:5px}.clock b{font-size:clamp(48px,8.3dvh,70px);letter-spacing:-3px}.clock>span{font-size:clamp(42px,7.2dvh,60px)}.clock small{margin-top:2px;font-size:10px}
.expected{font-size:12px;margin-top:10px;gap:7px}.date-icon{width:16px;height:16px}.announcement{margin-top:12px;padding:10px 12px;border-radius:12px}.announcement figcaption{align-items:center}.announcement figcaption>div{gap:5px}.announcement blockquote{font-size:12px;margin-top:6px;max-height:40px}.announcement time{font-size:10px}.announcement a{font-size:10px}.badge{font-size:10px;padding:2px 6px}
.stage{flex:1;min-height:0;width:100%;height:auto;right:auto}.wish-meter{top:0;padding:8px 12px;width:230px;margin-left:-115px;border-radius:11px;box-shadow:none}.wish-meter strong{font-size:22px}.wish-meter p{font-size:9px;margin-top:3px}.person{height:calc(100% - 65px);max-height:320px;width:auto;max-width:100%;right:auto;left:50%;bottom:-1px}
footer{flex-direction:row;align-items:center;margin-top:7px;padding:7px 0;gap:8px;font-size:9px}footer div p{display:none}footer>p{text-align:right}footer b{font-size:11px}#expired{font-size:23px;padding:10px 0}.live-message{margin-top:6px;font-size:10px;line-height:1.4}
}
@media(max-width:700px) and (max-height:680px){.hero-copy{padding:12px 16px 8px}.clock-wrap{margin-top:9px}.clock b{font-size:47px}.clock>span{font-size:41px}.expected{margin-top:7px;font-size:11px}.announcement{margin-top:8px;padding:8px 10px}.announcement blockquote{max-height:32px;font-size:11px;line-height:1.4}.person{height:calc(100% - 61px)}.wish-meter{padding:6px 10px}.wish-meter strong{font-size:20px}}
@media(max-height:500px) and (min-width:600px){.topbar{height:42px;flex-basis:42px}main{padding-top:8px}.hero{display:grid;grid-template-columns:1.25fr 1fr}.hero-copy{padding:12px 18px;align-self:center}.clock-wrap{margin-top:8px}.clock b{font-size:48px}.clock>span{font-size:42px}.clock small{font-size:9px;margin-top:0}.expected{margin-top:6px;font-size:11px}.announcement{margin-top:8px;padding:8px 10px}.announcement blockquote{font-size:11px;max-height:32px;margin-top:5px}.stage{height:auto;align-self:stretch}.wish-meter{top:8px;padding:6px 10px}.person{height:calc(100% - 75px);max-height:none}footer{margin-top:5px;padding:5px 0;font-size:9px}footer div p{display:none}}

/* Preserve the source text beneath the Chinese translation. */
.announcement-translation{font-size:14px;line-height:1.55;margin-top:10px;color:var(--fg)}
.announcement-translation:not([hidden])+blockquote{font-size:12px;color:var(--muted);line-height:1.5;margin-top:4px;max-height:none;overflow:visible}
@media(max-width:700px){.announcement-translation{font-size:12px;margin-top:7px}.announcement-translation:not([hidden])+blockquote{font-size:10px;line-height:1.4;margin-top:4px}}
@media(max-height:680px){.announcement-translation{font-size:12px;margin-top:6px}.announcement-translation:not([hidden])+blockquote{font-size:10px;line-height:1.4}}
