*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#080e19;color:#e9eff9;font:18px/1.5 system-ui,sans-serif}button,select{font:inherit;color:inherit;cursor:pointer;border:1px solid #8196b54d;border-radius:12px;background:#132135;padding:12px 18px;min-height:52px}button:hover,button.active{border-color:#e2c68b;background:#413826;color:#ffe4ad}button:disabled,select:disabled{opacity:.45;cursor:wait}button:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #efcc80;outline-offset:3px}a{color:inherit}#sky{position:fixed;inset:0;width:100%;height:100%;touch-action:none}header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;gap:12px;padding:16px 24px;background:linear-gradient(#080e19eb,transparent);pointer-events:none}header>*{pointer-events:auto}.brand{color:#f5d99a;font-size:24px;letter-spacing:2px;text-decoration:none;white-space:nowrap}.brand span{color:#f4f7ff;font-weight:300;margin-left:6px}.place{margin-left:auto;font-size:15px}.place small{display:block;color:#9eafc4;font-size:12px}#language{max-width:150px;font-size:16px}#menu-toggle{font-weight:600;white-space:nowrap}#fullscreen{font-size:25px;line-height:1}#mobile-controls{display:none;position:fixed;inset:0;z-index:100;background:#09121ff7;backdrop-filter:blur(18px);overflow-y:auto;overscroll-behavior:contain;padding:0 max(20px,env(safe-area-inset-right)) max(30px,env(safe-area-inset-bottom));scrollbar-width:thin}body.menu-open #mobile-controls{display:block}.panel-heading{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;background:#09121ff5;border-bottom:1px solid #8196b533}.panel-heading strong{font-size:24px;letter-spacing:3px;color:#f0d59f}.panel-content{width:100%;max-width:1120px;margin:0 auto;padding:24px 0}.panel-heading #menu-close{font-weight:600;min-width:145px}main{margin-bottom:28px}.eyebrow{font-size:12px;letter-spacing:2px;color:#d6c394}h1{font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.15;margin:16px 0}main p{font-size:18px;color:#aab9cd;margin:12px 0}#status{font-size:15px;color:#dfc48e}aside,footer{display:block}details{margin:14px 0;border:1px solid #8196b538;border-radius:16px;background:#101d2cbf;overflow:hidden}summary{cursor:pointer;font-size:clamp(20px,2.5vw,26px);font-weight:500;padding:20px 24px;min-height:72px;color:#f1d9ac}summary::marker{color:#d8bd83}.section-body{padding:6px 24px 24px}label{font-size:13px;letter-spacing:2px;color:#cdb98e}.row{display:flex;gap:12px;margin-top:14px}.row select{flex:1;min-width:0}.row button{white-space:nowrap}#selection{font-size:18px;color:#a8b9d0;margin:18px 0 0}.toggles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.toggles button{font-size:20px;min-height:70px;padding:18px;text-align:left}.clock{font-size:22px;margin:8px 0 20px}.clock small{display:block;font-size:15px;color:#9eafc4;margin-top:8px}.time{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.time button{min-height:64px;font-size:20px}.credit{font-size:17px;line-height:2;color:#a8b9cf}.zoom{position:fixed;right:22px;bottom:max(24px,env(safe-area-inset-bottom));z-index:10;display:grid;gap:9px;text-align:center}.zoom button{font-size:26px;width:56px;height:56px;padding:0}.zoom span{font-size:14px;color:#b4bfd2}body.menu-open .zoom{visibility:hidden}#menu-backdrop{display:none}
@media(max-width:700px){header{padding:12px;gap:8px;flex-wrap:wrap}.brand{font-size:21px;margin-right:auto;letter-spacing:1px}.place{display:none}#language{font-size:16px;width:113px;padding:10px 8px;min-height:48px}#menu-toggle{font-size:17px;padding:10px 14px;min-height:48px}#fullscreen{font-size:24px;min-width:48px;min-height:48px;padding:6px}#mobile-controls{padding-left:16px;padding-right:16px}.panel-heading strong{font-size:20px}.panel-heading #menu-close{font-size:18px;min-width:135px;padding:12px}.panel-content{padding-top:18px}h1{font-size:32px}.eyebrow{font-size:10px;letter-spacing:1px}summary{font-size:21px;padding:18px;min-height:68px}.section-body{padding:4px 16px 20px}.row{flex-direction:column}.row select,.row button{width:100%;font-size:20px;min-height:58px}.toggles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.toggles button{font-size:18px;min-height:68px;padding:14px 10px}.time{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.time button{font-size:19px}.clock{font-size:20px}.credit{font-size:16px}.zoom{right:14px;bottom:20px}}

/* Date, time and navigation remain available in every view. */
header{z-index:120;background:#09121fe8}header .place{display:none}.brand{margin-right:auto}
.observation-toolbar{position:fixed;z-index:120;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px max(14px,env(safe-area-inset-bottom));background:#09121ff2;border-top:1px solid #8196b540;backdrop-filter:blur(14px)}
.observation-toolbar .clock{font-size:20px;margin:0;line-height:1.4}.observation-toolbar .clock small{font-size:13px;margin-top:3px}.observation-toolbar .time{width:min(520px,48%);grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.observation-toolbar .time button{font-size:18px;min-height:52px;padding:10px}
.zoom{z-index:121;bottom:120px}body.menu-open .zoom{visibility:visible}
#mobile-controls{top:88px;bottom:100px}.panel-heading{padding:14px 0}.panel-content{padding-bottom:28px}
@media(max-width:700px){
 header{min-height:76px}.brand{font-size:19px}#language{width:108px}#menu-toggle{font-size:17px;padding:10px}
 .observation-toolbar{display:block;padding:10px 12px max(12px,env(safe-area-inset-bottom))}.observation-toolbar .clock{font-size:17px}.observation-toolbar .clock small{font-size:11px;margin-bottom:9px}.observation-toolbar .time{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.observation-toolbar .time button{font-size:16px;min-height:48px;padding:8px 3px}
 #mobile-controls{top:80px;bottom:142px;padding-left:14px;padding-right:14px}.panel-heading strong{font-size:18px}.panel-heading #menu-close{font-size:17px;min-width:130px}.zoom{bottom:155px;right:12px}.zoom button{width:50px;height:50px}
}
@media(max-width:370px){header{gap:6px;padding:8px}.brand{font-size:17px}#language{width:96px}#fullscreen{min-width:42px}#menu-toggle{padding:10px 8px}}
/* Large edge controls, including touch devices using a wide embedded viewport. */
header button,header #language{font-size:22px;min-height:64px;padding:14px 20px}header #fullscreen{font-size:34px;min-width:68px}.brand{font-size:28px}
.observation-toolbar .clock{font-size:24px}.observation-toolbar .clock small{font-size:16px}.observation-toolbar .time button{font-size:22px;min-height:68px;padding:14px 10px}.observation-toolbar .time{width:min(620px,52%)}
.zoom button{width:72px;height:72px;font-size:38px}.zoom span{font-size:19px}.zoom{gap:12px;bottom:145px}#mobile-controls{top:108px;bottom:130px}
@media(max-width:1100px),(pointer:coarse){
 header{display:grid;grid-template-columns:1fr 1fr 72px;gap:10px;padding:12px 16px;min-height:142px}.brand{grid-column:1/-1;font-size:26px;line-height:1.2;margin:0}header .place{display:none}header #language{width:100%;max-width:none;font-size:22px;min-height:64px;padding:12px}header #menu-toggle{font-size:23px;min-height:64px;padding:12px 16px}header #fullscreen{font-size:34px;min-width:68px;min-height:64px;padding:8px}
 .observation-toolbar{display:block;padding:12px 16px max(14px,env(safe-area-inset-bottom))}.observation-toolbar .clock{font-size:23px}.observation-toolbar .clock small{font-size:15px;margin:4px 0 12px}.observation-toolbar .time{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.observation-toolbar .time button{font-size:21px;min-height:68px;padding:12px 3px}
 .zoom{right:16px;bottom:190px}.zoom button{width:72px;height:72px;font-size:38px}.zoom span{font-size:19px}
 #mobile-controls{top:148px;bottom:180px}.panel-heading #menu-close{font-size:22px;min-height:62px;min-width:160px}.panel-heading strong{font-size:23px}
}
@media(max-width:370px){header{padding:10px;gap:8px;grid-template-columns:1fr 1fr 62px}header #language{font-size:21px;padding:10px 6px}header #menu-toggle{font-size:22px;padding:10px 6px}header #fullscreen{min-width:60px}.observation-toolbar{padding-left:10px;padding-right:10px}.observation-toolbar .time{gap:6px}.observation-toolbar .time button{font-size:19px}.observation-toolbar .clock{font-size:21px}}
/* Join the settings panel to the actual toolbar edges without sky slivers. */
body.menu-open header{background:#09121f;backdrop-filter:none}
body.menu-open .observation-toolbar{background:#09121f}
#mobile-controls{top:var(--sky-header-height,108px);bottom:var(--sky-toolbar-height,130px);background:#09121f;backdrop-filter:none;border-top:1px solid #8196b533}
#mobile-controls .panel-heading{background:#09121f}
/* Balanced control sizing between the original compact and oversized versions. */
header button,header #language{font-size:18px;min-height:50px;padding:10px 14px}header #fullscreen{font-size:27px;min-width:52px}.brand{font-size:24px}
.observation-toolbar .clock{font-size:20px}.observation-toolbar .clock small{font-size:13px}.observation-toolbar .time button{font-size:18px;min-height:52px;padding:10px 6px}
.zoom button{width:54px;height:54px;font-size:29px}.zoom span{font-size:15px}.zoom{gap:8px;bottom:calc(var(--sky-toolbar-height,110px) + 16px)}
@media(max-width:1100px),(pointer:coarse){
 header{min-height:0;padding:9px 12px;gap:7px;grid-template-columns:1fr 1fr 54px}.brand{font-size:21px;line-height:1.1}header #language{font-size:18px;min-height:48px;padding:8px 10px}header #menu-toggle{font-size:19px;min-height:48px;padding:8px 12px}header #fullscreen{font-size:27px;min-width:52px;min-height:48px;padding:6px}
 .observation-toolbar{padding:9px 12px max(10px,env(safe-area-inset-bottom))}.observation-toolbar .clock{font-size:18px}.observation-toolbar .clock small{font-size:12px;margin:3px 0 8px}.observation-toolbar .time{gap:7px}.observation-toolbar .time button{font-size:17px;min-height:50px;padding:8px 3px}
 .zoom{right:12px;bottom:calc(var(--sky-toolbar-height,130px) + 14px)}.zoom button{width:54px;height:54px;font-size:29px}.zoom span{font-size:15px}
 .panel-heading #menu-close{font-size:18px;min-height:48px;min-width:130px}.panel-heading strong{font-size:20px}
}
