/* A shared system type scale and restrained, product-focused composition. */
:root{--ui-type:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif}
body,button,input,select,textarea{font-family:var(--ui-type)}
#landing,#landing *{font-family:var(--ui-type)}
#landing{--lens-x:76%;--lens-y:53%}
.landing-nav{top:24px;left:5.2%;right:5.2%;min-height:58px;padding:0 0 18px;border-bottom:1px solid #ffffff16;gap:40px}
.landing-brand{gap:12px;flex-shrink:0;letter-spacing:0;line-height:1.25}.landing-brand img{width:42px;height:46px}.landing-brand-label{font-size:12px;font-weight:400;letter-spacing:-.1px;color:#d1d1d8}.landing-brand strong{font-size:17px;font-weight:600;letter-spacing:-.25px}
.landing-links{gap:30px;align-items:center}.landing-links button{font-size:12px;font-weight:400;letter-spacing:0;line-height:1.5;opacity:.82;transition:opacity .2s;white-space:nowrap}.landing-links button:hover{opacity:1;box-shadow:none}
.landing-copy{left:7.5%;top:31%;max-width:56%;animation-duration:1s}
.landing-copy h1{font-size:clamp(58px,6.8vw,112px);line-height:1.005;font-weight:650;letter-spacing:-.055em;margin:0;text-wrap:balance}
.landing-copy p{font-size:clamp(16px,1.4vw,23px);line-height:1.45;font-weight:400;letter-spacing:-.025em;color:#c7c5d0;margin:27px 0 29px}
.landing-cta{padding:12px 22px;border-radius:24px;border-color:#ffffff50;font-size:15px;line-height:1.3;font-weight:400;letter-spacing:-.015em;gap:24px;background:transparent!important;backdrop-filter:blur(10px)}
.landing-cta:after{right:16px;top:9px}.landing-cta span{font-size:18px;font-weight:300}
.landing-copy .landing-scale{margin-top:28px;width:170px;opacity:.8}.landing-scale>div{height:4px;background:linear-gradient(90deg,#06053c,#2b0c71,#9d1988,#ed3b53,#f96b36,#ffe069)}.landing-scale>span{font-size:10px;letter-spacing:0;font-weight:400;color:#a7a4b3}
.landing-shade{background:linear-gradient(90deg,#01030edd 0%,#02040a95 28%,#02040a14 55%,transparent 78%),linear-gradient(180deg,#02030b55,transparent 25%,transparent 85%,#02030b30)}
.landing-lens{border-width:2px;box-shadow:0 20px 65px #0006}.landing-lens-tip{font-size:10px;font-weight:400;background:#14121fd9;backdrop-filter:blur(15px);border-color:#ffffff20;padding-right:18px}.landing-lens-handle{font-family:var(--ui-type);font-size:25px}
/* Carry the same typography through the actual map and object cards. */
header .map-heading h1{font-family:var(--ui-type);font-weight:650;letter-spacing:-.045em}header .map-heading p{font-weight:400;letter-spacing:-.015em}.masthead-author{font-weight:500;letter-spacing:.5px}
aside#panel{border-color:#ffffff24;border-radius:18px;background:linear-gradient(145deg,#071725ed,#0a1625ed);backdrop-filter:blur(26px);box-shadow:0 14px 44px #0005}
.control-group summary{font-size:13px;font-weight:600;letter-spacing:-.015em}.control-group .switch{font-size:12px;font-weight:400;letter-spacing:-.015em}.legend-top{font-size:10px;font-weight:500;letter-spacing:.35px}.shared-scale-switch{font-size:11px}.shared-scale-switch small{font-size:9px;letter-spacing:0}.legend #scale-caption{font-size:9px}.ticks{font-variant-numeric:tabular-nums}.timeline-title{font-weight:400;letter-spacing:0}
#info{border-radius:20px;background:#071725f2;border-color:#ffffff30;backdrop-filter:blur(24px)}#info h2{font-weight:600;letter-spacing:-.04em;line-height:1.12}#info .reading{font-variant-numeric:tabular-nums}#info .reading>span{font-weight:500;letter-spacing:-.055em}#info .eyebrow{font-size:10px;font-weight:500;letter-spacing:1.3px}#info-details{letter-spacing:-.015em}.photo-viewer h2,dialog h2{font-weight:600;letter-spacing:-.04em}
@media(min-width:1600px){.landing-copy{left:8%;top:30%}.landing-copy h1{font-size:112px}}
@media(max-width:1050px){.landing-nav{gap:20px}.landing-links{gap:19px}.landing-links button{font-size:11px}.landing-copy{left:6%;top:32%;max-width:61%}.landing-copy h1{font-size:7.1vw}.landing-copy p{font-size:17px}.landing-lens-tip{display:none}}
@media(max-width:650px){#landing{--lens-x:76%;--lens-y:75%}.landing-nav{left:6%;right:6%;top:20px;padding-bottom:15px;row-gap:17px}.landing-brand img{width:30px;height:33px}.landing-brand-label{font-size:10px}.landing-brand strong{font-size:14px}.landing-links{gap:10px;justify-content:space-between}.landing-links button{font-size:10px}.landing-copy{left:7%;right:6%;top:25%;max-width:none}.landing-copy h1{font-size:clamp(43px,12vw,66px);line-height:1.02;font-weight:650;letter-spacing:-.055em}.landing-copy p{font-size:16px;line-height:1.4;margin:20px 0 23px}.landing-cta{font-size:14px;padding:11px 20px}.landing-copy .landing-scale{width:155px;margin-top:22px}.landing-scale>span{font-size:9px}.landing-lens{width:145px}}
@media(max-height:650px) and (min-width:651px){.landing-copy{top:27%}.landing-copy h1{font-size:clamp(48px,6vw,76px)}.landing-copy p{margin:18px 0;font-size:16px}.landing-copy .landing-scale{margin-top:18px}}
.landing-lens-tip{left:50%;right:auto;top:calc(100% + 17px);transform:translateX(-50%);background:transparent;border:0;padding:0;color:#d3d0df;font-size:11px;opacity:.75;backdrop-filter:none}

/* Requested navigation emphasis and brand hierarchy. */
.landing-brand-label{font-size:14px;font-weight:700;color:#f5f5f7;letter-spacing:-.2px}.landing-brand strong{font-size:17px;font-weight:400;letter-spacing:-.2px;color:#d0d0d7}
.landing-links{gap:30px}.landing-links button{font-size:18px;font-weight:500;opacity:.95;letter-spacing:-.025em}
@media(max-width:1050px){.landing-links{gap:20px}.landing-links button{font-size:16px}.landing-brand-label{font-size:12px}.landing-brand strong{font-size:16px}}
@media(max-width:650px){.landing-brand-label{font-size:12px;font-weight:700}.landing-brand strong{font-size:14px;font-weight:400}.landing-links{display:grid;grid-template-columns:1.6fr 1.25fr .65fr .85fr;gap:8px;width:100%}.landing-links button{font-size:12px;font-weight:500;white-space:nowrap;text-align:left}.landing-nav{left:5%;right:5%}}

/* First-screen conversion hierarchy: purpose, promise, action, evidence. */
#landing{--lens-y:53%}
.landing-nav{padding-bottom:20px;border-bottom-color:#ffffff14}.landing-links button{transition:color .2s,opacity .2s}.landing-links button:hover{color:#b8f2ed}.landing-links button:focus-visible{outline:2px solid #b6e7ed;outline-offset:7px}
.landing-copy{top:26%;max-width:56%}.landing-eyebrow{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:500;letter-spacing:.035em;color:#bdcbd5;margin-bottom:20px}.landing-eyebrow i{width:5px;height:5px;border-radius:50%;background:#8ad4ce;box-shadow:0 0 9px #77d1ca35}
.landing-copy h1{font-size:clamp(64px,6.55vw,108px);line-height:1.025;letter-spacing:-.052em;font-weight:650}
.landing-copy p{font-size:clamp(17px,1.4vw,23px);line-height:1.48;letter-spacing:-.017em;color:#c9cdd4;margin:26px 0 28px}
.landing-actions{display:flex;align-items:center;gap:26px}.landing-cta{min-width:180px;justify-content:space-between;padding:14px 23px;font-size:16px;font-weight:500;border-color:#ffffff65;background:#ffffff0b!important;box-shadow:inset 0 1px 0 #ffffff0e,0 5px 22px #0002;backdrop-filter:blur(12px)}.landing-cta:hover{border-color:#d7fff3;background:#ffffff13!important}.landing-cta span{font-size:22px;color:#c8f3ed;transition:translate .2s}.landing-cta:hover span{translate:3px 0}
.landing-data-link{border:0;background:transparent;color:#c0c8d1;padding:10px 0;font-size:14px;font-weight:400;letter-spacing:-.01em;border-radius:0}.landing-data-link span{font-size:15px;margin-left:5px;opacity:.6}.landing-data-link:hover{color:white;background:none}
.landing-evidence{display:flex;flex-wrap:wrap;gap:9px;margin-top:21px;font-size:10px;line-height:1.5;color:#8d9ba9;letter-spacing:.015em;font-weight:400}.landing-evidence>span{opacity:.5}
.landing-lens{width:clamp(240px,24vw,390px);border-color:#ffffffe6;box-shadow:0 20px 75px #0006,0 0 0 8px #ffffff04}.landing-natural{clip-path:circle(var(--lens-r,calc(clamp(240px,24vw,390px)/2 - 3px)) at var(--lens-x,76%) var(--lens-y,53%))}.landing-lens-handle{box-shadow:0 3px 15px #0003}.landing-lens-tip{font-size:11px;line-height:1.4;max-width:290px;text-align:center;color:#bcc8d2;white-space:normal;width:290px;opacity:.85}
@media(min-width:1600px){.landing-copy{top:27%}.landing-copy h1{font-size:108px}}
@media(max-width:1050px){.landing-copy{top:27%;max-width:60%}.landing-eyebrow{font-size:11px;margin-bottom:16px}.landing-copy h1{font-size:7.1vw}.landing-copy p{font-size:17px;margin:22px 0}.landing-lens{width:26vw;min-width:220px}.landing-actions{gap:18px}.landing-cta{min-width:165px;padding:13px 20px}.landing-data-link{font-size:13px}.landing-evidence{font-size:9px}}
@media(max-width:650px){#landing{--lens-y:76%}.landing-copy{top:23%;max-width:none}.landing-eyebrow{font-size:10px;margin-bottom:15px}.landing-copy h1{font-size:clamp(43px,12vw,64px);line-height:1.03}.landing-copy p{font-size:15px;line-height:1.5;margin:21px 0 23px}.landing-actions{gap:23px}.landing-cta{font-size:15px;min-width:165px;padding:12px 20px}.landing-data-link{font-size:13px}.landing-evidence{font-size:9px;gap:6px;margin-top:17px}.landing-lens{width:158px;min-width:0}.landing-natural{clip-path:circle(var(--lens-r,76px) at var(--lens-x,76%) var(--lens-y,76%))}}
@media(max-height:720px) and (max-width:650px){.landing-copy{top:23%}.landing-eyebrow{margin-bottom:12px}.landing-copy h1{font-size:43px}.landing-copy p{margin:16px 0 18px;font-size:14px}.landing-evidence{margin-top:13px}#landing{--lens-y:83%}.landing-lens{width:130px}}
@media(max-height:650px) and (min-width:651px){.landing-copy{top:25%}.landing-eyebrow{margin-bottom:13px}.landing-copy h1{font-size:clamp(48px,5.7vw,76px)}.landing-copy p{font-size:16px;margin:18px 0}.landing-evidence{margin-top:14px}.landing-cta{padding:11px 19px}}
@media(prefers-reduced-motion:reduce){.landing-cta span{transition:none}}

/* Four chapters form a right-hand editorial rail. */
#landing{--lens-x:63%;--lens-y:54%}
.landing-nav{right:5.2%;border-bottom-color:#ffffff12}
.landing-story{position:absolute;right:4.8%;top:50%;transform:translateY(-50%);width:215px;z-index:5;padding-left:24px;border-left:1px solid #ffffff28}
.story-menu-heading{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#93a8b7;margin:0 0 20px}
.landing-story ol{list-style:none;padding:0;margin:0}.landing-story li+li{margin-top:24px}.landing-story button{display:grid;grid-template-columns:24px 1fr;gap:9px;width:100%;padding:0;border:0;border-radius:0;text-align:left;background:none;align-items:start;color:#c7d1db;transition:color .2s,translate .2s}
.landing-story button:hover,.landing-story button[aria-current=step]{color:#fff;background:none;translate:3px 0}.story-number{font-size:10px;line-height:25px;font-variant-numeric:tabular-nums;color:#7f99a9}.landing-story strong{display:block;font-size:18px;line-height:1.3;letter-spacing:-.025em;font-weight:500}.landing-story small{display:block;font-size:11px;line-height:1.5;font-weight:400;color:#839bab;margin-top:5px;letter-spacing:0}.landing-story button:hover .story-number,.landing-story button[aria-current=step] .story-number{color:#a3e8df}
.landing-copy{max-width:48%;left:6.5%}.landing-copy h1{font-size:clamp(62px,6.1vw,106px)}.landing-copy p{max-width:440px}.landing-lens{width:clamp(210px,21vw,340px)}.landing-natural{clip-path:circle(var(--lens-r,calc(clamp(210px,21vw,340px)/2 - 3px)) at var(--lens-x,63%) var(--lens-y,54%))}
.story-dialog{background:#071d2cf5!important;color:#e7f1f5;border:1px solid #416c83!important;border-radius:20px!important;max-width:650px!important;padding:36px!important;width:90vw;max-height:87vh;overflow:auto;box-shadow:0 25px 100px #0008}.story-dialog::backdrop{background:#020914bd;backdrop-filter:blur(14px)}.story-dialog h2{font-size:32px!important;line-height:1.1;font-weight:600;letter-spacing:-.04em;margin:20px 25px 22px 0}.story-dialog h3{font-size:17px;font-weight:550;letter-spacing:-.02em;margin-top:24px}.story-dialog p{font-size:14px;line-height:1.65;color:#b3c5d1}.story-dialog .micro{font-size:11px;color:#7e9aaa}.story-next{display:block;margin-top:26px;padding:12px 18px;border:1px solid #80b7bd65;border-radius:24px;background:#193d4f77;color:#e0f7f4;font-size:14px}.story-result{border-left:2px solid #68c6c4;padding:12px 17px;margin:26px 0;background:#23495436;border-radius:0 8px 8px 0}.story-result strong{display:block;font-size:13px;font-weight:600;margin-bottom:7px}.story-result span{display:block;font-size:13px;line-height:1.6;color:#b2cbd7}
@media(min-width:1600px){.landing-story{width:245px;right:5.5%}.landing-story strong{font-size:21px}.landing-story small{font-size:12px}.landing-story li+li{margin-top:30px}}
@media(max-width:1050px) and (min-width:651px){#landing{--lens-x:62%;--lens-y:65%}.landing-story{right:3%;width:170px;padding-left:15px}.landing-story strong{font-size:15px}.landing-story small{font-size:10px}.landing-copy{max-width:56%;left:6%;top:26%}.landing-copy h1{font-size:6.8vw}.landing-lens{width:210px;min-width:0}}
@media(max-width:650px){#landing{--lens-x:77%;--lens-y:51%}.landing-nav{padding-bottom:16px;min-height:0}.landing-copy{top:18%;max-width:none;left:7%}.landing-copy h1{font-size:clamp(41px,11.5vw,61px)}.landing-copy p{font-size:14px;max-width:310px;margin:19px 0 22px}.landing-lens{width:120px;min-width:0}.landing-natural{clip-path:circle(var(--lens-r,57px) at var(--lens-x,77%) var(--lens-y,51%))}.landing-story{right:7%;left:7%;width:auto;top:auto;bottom:5.5%;transform:none;padding-left:0;border-left:0;border-top:1px solid #ffffff28;padding-top:17px}.story-menu-heading{font-size:9px;margin-bottom:15px}.landing-story ol{display:grid;grid-template-columns:1fr 1fr;column-gap:22px;row-gap:18px}.landing-story li+li{margin-top:0}.landing-story strong{font-size:15px}.landing-story small{font-size:10px;margin-top:3px}.landing-story button{grid-template-columns:18px 1fr;gap:6px}.story-number{font-size:9px;line-height:21px}.story-dialog{padding:25px!important}.story-dialog h2{font-size:28px!important}}
@media(max-height:720px) and (max-width:650px){.landing-copy{top:18%}.landing-copy h1{font-size:38px}.landing-copy p{margin:13px 0 17px;font-size:13px;max-width:260px}.landing-lens{width:98px}#landing{--lens-y:52%}.landing-story{bottom:4%;padding-top:13px}.landing-story ol{row-gap:13px}.landing-story strong{font-size:13px}.landing-story small{font-size:9px}.story-menu-heading{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.landing-story button{transition:none}}

.landing-story{isolation:isolate}.landing-story:before{content:'';position:absolute;inset:-20px -15px -20px -15px;z-index:-1;border-radius:14px;background:linear-gradient(90deg,#04132028,#04132080);backdrop-filter:blur(9px)}.story-number{color:#9aafbd}.landing-story strong{color:#ecf2f5}.landing-story small{color:#a0b1be}
.story-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin:22px 0 26px;padding:18px 0;border-top:1px solid #ffffff16;border-bottom:1px solid #ffffff16}.story-facts[hidden]{display:none}.story-facts strong{display:block;font-size:29px;font-weight:500;letter-spacing:-.05em;color:#a9e4e0}.story-facts span{display:block;margin-top:5px;font-size:11px;color:#a3bcc9}.story-facts small{grid-column:1/-1;font-size:10px;line-height:1.5;color:#7e9aaa}
@media(max-width:650px){.landing-story:before{inset:-8px -14px -12px;background:#04132055;backdrop-filter:blur(10px)}}

/* Compact map masthead, sharing the landing identity. */
header.map-header{height:88px;padding:16px 24px;align-items:center;gap:20px;background:linear-gradient(180deg,#031321f5,#031321dd 80%,#03132100);}
.map-header .map-heading{display:flex;align-items:center;gap:32px;flex:1;max-width:none;min-width:0}
.map-identity{display:flex;align-items:center;gap:10px;text-decoration:none;color:#f5f8fa;flex-shrink:0}.map-identity img{width:36px;height:42px;object-fit:contain}.map-identity>span{display:grid;gap:2px;font-size:12px;line-height:1.3}.map-identity b{font-weight:650}.map-identity>span>span{font-weight:400;color:#afbec9}
.map-project{border-left:1px solid #8bcbd32b;padding-left:28px;min-width:0}.map-header .map-heading h1{font-size:21px;line-height:1.2;letter-spacing:-.65px;margin:0;font-weight:600;white-space:nowrap}.map-header .masthead-data{display:flex;gap:15px;align-items:center;margin-top:6px;font-size:10px;color:#a4bac6}.map-header .masthead-temperature{display:flex;align-items:center;gap:5px}.map-header .masthead-temperature strong{font-size:11px;color:#c6f2ed}.map-header-actions{display:flex;gap:7px;flex-shrink:0}.map-header-actions button{font:inherit;font-size:11px;padding:9px 13px;border-radius:20px;color:#cbdde5}.map-header .edition{display:none}
.map-tools{top:101px;right:22px}.maplibregl-ctrl-top-right{top:153px!important}aside#panel{top:104px;max-height:calc(100dvh - 128px)}
@media(max-width:760px){header.map-header{height:118px;padding:12px 14px;align-items:flex-start;gap:8px}.map-header .map-heading{display:block}.map-identity>span{font-size:10px}.map-identity img{width:27px;height:32px}.map-project{padding:0;border:0;margin-top:12px}.map-header .map-heading h1{font-size:16px;letter-spacing:-.4px}.map-header .masthead-data{font-size:8px;gap:8px;margin-top:5px}.map-header .masthead-temperature strong{font-size:9px}.map-header-actions{gap:4px}.map-header-actions button{font-size:9px;padding:7px 8px}.map-tools{top:128px;right:12px}.maplibregl-ctrl-top-right{top:178px!important}aside#panel{top:170px;max-height:calc(100dvh - 194px)}}

#landing .landing-copy p{max-width:none;white-space:nowrap;font-size:clamp(11px,1.55vw,24px)}
@media(max-width:650px){#landing .landing-copy p{font-size:clamp(9px,2.35vw,15px)}}

#loading{position:fixed;inset:0;left:0;top:0;transform:none;width:auto;max-width:none;min-width:0;border:0;border-radius:0;background:#031321;z-index:900;justify-content:center;padding:32px;gap:18px}#loading b{font-size:22px;font-weight:550;letter-spacing:-.5px}#loading .spinner{width:32px;height:32px;border-top-color:#65d8de}#loading[hidden]{display:none}

.map-header .map-heading .map-subtitle{margin:6px 0 0;color:#a4bac6;font-size:12px;font-weight:400;line-height:1.4;letter-spacing:0}.map-subtitle strong{color:#e6f0f4;font-weight:650}@media(max-width:760px){.map-header .map-heading .map-subtitle{font-size:9px;max-width:310px}}

#panel .range-values,#panel #range-reset,#panel #scale-caption{display:none!important}
header.map-header{height:126px;align-items:flex-start}.map-header .map-heading{display:block}.map-project{border:0;padding:0;margin-top:14px}.map-header-actions{padding-top:7px;gap:3px}.map-header-actions button{border:0;background:transparent;border-radius:0;padding:5px 9px;font-size:12px;white-space:nowrap}.map-header-actions button:hover{color:#fff;text-decoration:underline;text-underline-offset:7px}.map-header #about-open{display:none}.map-tools{top:142px}aside#panel{top:142px;max-height:calc(100dvh - 166px)}.maplibregl-ctrl-top-right{top:190px!important}.landing-links{display:flex;gap:20px}.landing-links button{font-size:13px;white-space:nowrap}
@media(max-width:900px){.map-header-actions button{font-size:10px;padding:5px}.landing-links{gap:10px}.landing-links button{font-size:11px}}
@media(max-width:650px){header.map-header{height:164px;display:block}.map-header-actions{position:absolute;left:12px;right:12px;top:123px;overflow-x:auto;gap:5px}.map-header-actions button{font-size:10px;padding:5px 3px}.map-project{margin-top:12px}.map-tools{top:174px}aside#panel{top:215px;max-height:calc(100dvh - 239px)}.maplibregl-ctrl-top-right{top:220px!important}.landing-nav{flex-wrap:wrap;gap:15px}.landing-links{width:100%;justify-content:space-between;gap:5px}.landing-links button{font-size:9px}.landing-copy{top:23%}}

aside#panel #timeline{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0;padding-left:0;padding-right:0}

#map .date-dissolve{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}

/* Align project identity with the brand and compact the top controls. */
header.map-header{height:100px}.map-header .map-heading{display:flex;align-items:center;gap:22px}.map-header .map-project{margin:0;border-left:1px solid #8bcbd32b;padding-left:22px}.map-header .map-heading h1{font-size:19px}.map-header .map-heading .map-subtitle{font-size:10px;max-width:365px}.map-header-actions{padding-top:4px}.map-header-actions button{font-size:11px;padding:5px 7px}.map-tools{top:72px;right:24px}aside#panel{top:110px;max-height:calc(100dvh - 134px)}.maplibregl-ctrl-top-right{top:120px!important}
@media(max-width:1100px) and (min-width:761px){.map-header .map-heading{gap:12px}.map-header .map-project{padding-left:12px}.map-header .map-heading h1{font-size:16px}.map-header .map-heading .map-subtitle{font-size:9px;max-width:270px}.map-identity>span{font-size:10px}.map-header-actions button{font-size:9px;padding:5px 4px}}
@media(max-width:760px){header.map-header{height:164px}.map-header .map-heading{display:flex;gap:12px;align-items:flex-start}.map-header .map-project{padding-left:12px;max-width:calc(100% - 140px)}.map-header .map-heading h1{font-size:15px;white-space:normal}.map-header .map-heading .map-subtitle{font-size:9px;margin-top:5px}.map-header-actions{top:97px;left:12px;right:12px}.map-header-actions button{font-size:10px;padding:5px 3px}.map-tools{top:136px;right:12px}aside#panel{top:179px;max-height:calc(100dvh - 203px)}.maplibregl-ctrl-top-right{top:183px!important}}

.scene-sky{height:27%;min-height:160px;mask-image:linear-gradient(#000 35%,#0009 65%,transparent);}.scene-sky[data-time=night] .cloud{opacity:.36}.cloud-a{animation-delay:-21s}

#info #osm-link,#info #dgis-link{display:none!important}

#ramp{overflow:hidden}#ramp::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#56636b 0%,#56636b var(--range-start,0%),transparent var(--range-start,0%),transparent var(--range-end,100%),#56636b var(--range-end,100%),#56636b 100%)}#ticks span:last-child{color:#bbc9ce}

#heat-opacity{appearance:none;height:5px;border:0;border-radius:20px;background:linear-gradient(90deg,#ffffff99 0%,#ffffff99 var(--opacity-progress,72%),#ffffff24 var(--opacity-progress,72%),#ffffff24 100%);cursor:pointer;accent-color:#ffffff99}#heat-opacity::-webkit-slider-thumb{appearance:none;width:17px;height:17px;border-radius:50%;border:1px solid #ffffff66;background:#ffffffb3;box-shadow:0 1px 5px #0004}#heat-opacity::-moz-range-thumb{width:17px;height:17px;border:1px solid #ffffff66;border-radius:50%;background:#ffffffb3}.overlay-control #opacity-value{color:#ffffffb3}

/* One typographic system across the map sidebar. */
#panel{font-family:var(--ui-type);font-size:12px;font-weight:400;line-height:1.45;letter-spacing:0;font-variant-numeric:tabular-nums}
#panel .control-group summary,#panel .legend .legend-top,#panel .timeline-title>span{font-size:12px;font-weight:600;line-height:1.45;letter-spacing:0;text-transform:none;color:#dce9f0}
#panel .control-group .switch,#panel .shared-scale-switch,#panel .sun-select,#panel .compact-lighting,#panel .overlay-control{font-size:12px;font-weight:400;line-height:1.45;letter-spacing:0;color:#c0d1dc}
#panel .control-group .switch.small{font-size:12px;font-weight:400;color:#c0d1dc}
#panel select{font-family:inherit;font-size:11px;font-weight:400;letter-spacing:0}
#panel .shared-scale-switch small,#panel .legend-foot,#panel .thermal-key,#panel .ticks,#panel .timeline-title b,#panel #timeline-dates button{font-size:10px;font-weight:400;line-height:1.45;letter-spacing:0;color:#91adbd}
#panel .legend-foot b,#panel .overlay-control output,#panel .timeline-title b{font-weight:500;color:#dce9f0}
#panel .legend-top span{font-size:11px;font-weight:400;letter-spacing:0}#panel .control-group summary{margin-bottom:12px}#panel .timeline-title{margin-bottom:10px}

#panel .control-group label:has(#heat-toggle),#panel .control-group label:has(#buildings-toggle){font-weight:300}#panel .control-group label:has(#heat-toggle)>span,#panel .control-group label:has(#buildings-toggle)>span{font-weight:300}

#panel .control-group summary::after{content:none!important}

#heat-opacity{background:linear-gradient(90deg,#dab27eaa 0%,#dab27eaa var(--opacity-progress,72%),#ffffff24 var(--opacity-progress,72%),#ffffff24 100%);accent-color:#dab27e}#heat-opacity::-webkit-slider-thumb{background:#dab27e;border-color:#e8c79c99}#heat-opacity::-moz-range-thumb{background:#dab27e;border-color:#e8c79c99}.overlay-control #opacity-value{color:#dab27ecc}

#panel .thermal-key span:first-child{color:#36c7d1}

/* A warming thermometer replaces the generic loading ring. */
#loading .heat-loader{position:relative;display:block;width:90px;height:104px;margin-bottom:7px;border:0;border-radius:0;animation:none;overflow:visible}
.heat-loader-tube{position:absolute;left:29px;top:9px;width:23px;height:72px;border:2px solid #adc9d68c;border-radius:16px 16px 7px 7px;background:#0b2636;overflow:hidden}
.heat-loader-column{position:absolute;left:5px;right:5px;bottom:0;height:60px;border-radius:7px 7px 0 0;background:linear-gradient(0deg,#ff7641,#ffc966);transform-origin:bottom;animation:thermometer-rise 2.8s ease-in-out infinite}
.heat-loader-bulb{position:absolute;left:23px;top:72px;width:35px;height:35px;border:2px solid #adc9d68c;border-radius:50%;background:radial-gradient(circle,#ff9e44 0 45%,#0b2636 49%);animation:thermometer-glow 2.8s ease-in-out infinite}
.heat-loader-sun{position:absolute;right:0;top:0;font-size:35px;line-height:1;color:#ffc966;text-shadow:0 0 20px #ffae4550;animation:heat-sun 2.8s ease-in-out infinite}
@keyframes thermometer-rise{0%,100%{transform:scaleY(.17);filter:hue-rotate(150deg)}65%,85%{transform:scaleY(1);filter:hue-rotate(0deg)}}
@keyframes thermometer-glow{0%,100%{box-shadow:0 0 4px #ff914522}65%,85%{box-shadow:0 0 24px #ff914555}}
@keyframes heat-sun{0%,100%{opacity:.5;transform:scale(.88)}65%,85%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.heat-loader-column,.heat-loader-bulb,.heat-loader-sun{animation:none}.heat-loader-column{transform:scaleY(.75)}}

/* Quiet, continuous warming instead of a pulsing pictogram. */
#loading .heat-loader{width:72px;height:102px;margin-bottom:10px}
.heat-loader-tube{left:24px;top:13px;width:18px;height:69px;border:1px solid #b0c4cf80;border-radius:12px 12px 4px 4px;background:#102635}
.heat-loader-column{left:5px;right:5px;height:62px;background:linear-gradient(0deg,#d18c58,#e8b77c);border-radius:4px 4px 0 0;animation:thermometer-calm 9s cubic-bezier(.45,0,.55,1) infinite;will-change:transform;filter:none}
.heat-loader-bulb{left:19px;top:75px;width:28px;height:28px;border:1px solid #b0c4cf80;background:radial-gradient(circle,#d99b66 0 40%,#102635 44%);animation:none;box-shadow:none}
.heat-loader-sun{right:0;top:3px;width:15px;height:15px;font-size:0;border:1px solid #d6af7880;border-radius:50%;color:transparent;text-shadow:none;animation:none;opacity:.8;background:#d6af7808;box-shadow:0 0 18px #d6af7814}
.heat-loader-sun::before,.heat-loader-sun::after{content:'';position:absolute;inset:-5px;border:1px solid transparent;border-top-color:#d6af7840;border-bottom-color:#d6af7840;border-radius:50%}.heat-loader-sun::after{transform:rotate(90deg)}
@keyframes thermometer-calm{0%,100%{transform:scaleY(.18)}50%{transform:scaleY(.96)}}
@media(prefers-reduced-motion:reduce){.heat-loader-column{animation:none;transform:scaleY(.7)}}

#loading .heat-loader-column{animation:thermometer-ready 6s cubic-bezier(.4,0,.2,1) both}
#loading .heat-loader-sun{animation:sun-ready 6s cubic-bezier(.4,0,.2,1) both;transform-origin:center}
@keyframes thermometer-ready{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@keyframes sun-ready{from{transform:scale(.55);opacity:.4;box-shadow:0 0 4px #d6af7808}to{transform:scale(1.3);opacity:1;box-shadow:0 0 22px #d6af7833}}
@media(prefers-reduced-motion:reduce){#loading .heat-loader-column,#loading .heat-loader-sun{animation-duration:.01ms}}

:root{--map-right:24px}.map-tools{right:var(--map-right)}.map-header-actions button:last-child{padding-right:0}.maplibregl-ctrl-top-right,.maplibregl-ctrl-bottom-right{right:var(--map-right)!important}.maplibregl-ctrl-top-right .maplibregl-ctrl,.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin-right:0!important}
#panel #timeline-dates{gap:4px;min-width:0}#panel #timeline-dates button{font-size:7px;font-weight:400;letter-spacing:-.15px;line-height:1.3;min-width:0;padding-left:0;padding-right:0;white-space:nowrap}#panel #timeline-dates #timeline-median{font-size:8px}#panel .timeline-content{min-width:0;flex:1}
@media(max-width:760px){:root{--map-right:12px}#panel #timeline-dates button{font-size:6.5px}#panel #timeline-dates{gap:3px}}

#loading .heat-loader-sun{width:27px;height:27px;right:-4px;top:0;border:0;background:none;color:#dfb47b;box-shadow:none}#loading .heat-loader-sun::before,#loading .heat-loader-sun::after{content:none}.heat-loader-sun svg{display:block;width:100%;height:100%}

#info #info-date,#info #info-note{display:none!important}

#object-photos{font-size:11px;line-height:1.5;color:#91adbd}#object-photos[aria-busy=true]{padding:18px 0;color:#a4bfcb}

body.landing-boot> :not(#landing):not(script){visibility:hidden}

@media(max-width:760px){#loading .heat-loader-column,#loading .heat-loader-sun{animation-duration:3s}}

@media(max-width:760px){body:not(.panel-open) aside#panel{display:none}}

/* Palette controls and graduated temperature legend. */
#panel .palette-control{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:11px;color:#a9bdc9;font-weight:400}
#palette-select{width:100%;padding:8px 10px;background:#0b2432;color:#e2ebee;border:1px solid #3b6677;border-radius:8px;font:inherit}
#panel .dual-range{height:38px;margin-bottom:0}
#panel .dual-range .ramp{height:22px;top:8px;border-radius:3px;box-shadow:none}
#panel .dual-range input{height:38px}
#panel .dual-range input::-webkit-slider-thumb{height:30px;width:14px;border-radius:4px}
#panel .dual-range input::-moz-range-thumb{height:26px;width:11px;border-radius:4px}
#scale-graduations{position:relative;height:23px;margin:0 7px 5px;pointer-events:none}
#scale-graduations span{position:absolute;transform:translateX(-50%);padding-top:5px;font-size:9px;color:#9bb3bd;font-variant-numeric:tabular-nums}
#scale-graduations span:before{content:'';position:absolute;width:1px;height:26px;background:#d7e8e288;top:-26px;left:50%}
#scale-graduations span:first-child{transform:none;left:0!important}#scale-graduations span:first-child:before{left:0}
#scale-graduations span:last-child{transform:translateX(-100%)}#scale-graduations span:last-child:before{left:100%}
#model-status{font-size:10px;color:#91adbd;margin:0 0 8px;line-height:1.4}

/* Toolbar controls stay accessible while the whole panel is collapsed. */
@media(min-width:761px){body.collapsed aside#panel{display:none!important}}
#satellite-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;padding:9px}
#satellite-toggle[aria-pressed="true"]{border-color:#64c5d5;color:#a8eef3;background:#163d4de8}
#satellite-toggle:focus-visible,#panel-toggle:focus-visible{outline:2px solid #a8eef3;outline-offset:3px}
