:root{--bg:#03121f;--panel:#051a29;--line:#427a963e;--ink:#e6f3fb;--muted:#85a6bb;--accent:#6be6e9}
body{background:#03121f}#map{inset:0!important}header{position:absolute;top:0;left:0;right:0;height:94px;padding:18px 26px;background:linear-gradient(#031321f2,#0313219c,transparent);border:0!important;pointer-events:none;z-index:4;gap:20px}header>*{pointer-events:auto}.map-heading h1{font-size:30px;font-weight:800;letter-spacing:-.8px;margin:0 0 3px;line-height:1.2}.map-heading p{margin:0;color:#8aa8bd;font-size:12px}.edition{margin-left:auto;font-size:8px}.edition strong{font-size:20px}.edition i{background:#34ddd1;box-shadow:0 0 10px #37e9ee}header button{background:#051b2cbf;border:1px solid #3f778b70;border-radius:9px}
aside{top:108px;left:22px;bottom:auto;width:278px;max-height:calc(100vh - 255px);padding:16px;background:linear-gradient(135deg,#041625ef,#061d2ade);border:1px solid #36718c70;border-radius:12px;backdrop-filter:blur(18px);box-shadow:0 8px 40px #0007,inset 0 1px #8ac9dc12;scrollbar-width:thin;scrollbar-color:#34647a #061827}.panel-heading{display:flex;gap:8px;align-items:center;font-size:12px}.status-dot{width:6px;height:6px;background:#49e0d6;border-radius:50%;box-shadow:0 0 9px #49e0d6}.panel-badge{margin-left:auto;border:1px solid #2b7c8e;color:#6bd3d6;padding:2px 6px;border-radius:4px;font-size:8px;letter-spacing:1px}.search{margin:14px 0 10px;padding:5px 9px;background:#061b29;border-color:#34607766;border-radius:8px}.search input{font-size:10px}.control-group{border-top:1px solid #427a9635;padding:12px 0 0;margin-top:10px}.control-group summary{font-size:11px;font-weight:700;cursor:pointer;list-style:none;color:#c9e1ed;display:flex;justify-content:space-between}.control-group summary:after{content:'+';color:#74b2cc}.control-group[open] summary:after{content:'−'}.control-group .switch{font-size:10px;margin:12px 0}.switch input[type=checkbox]{appearance:none;width:30px;height:17px;border-radius:12px;background:#193a4c;border:1px solid #3f6579;position:relative;flex-shrink:0;transition:.2s}.switch input[type=checkbox]:before{content:'';position:absolute;width:11px;height:11px;background:#91afbf;border-radius:50%;top:2px;left:2px;transition:.2s}.switch input:checked{background:#0c97a4;border-color:#32c6d6;box-shadow:0 0 10px #15bbc22c}.switch input:checked:before{left:15px;background:#e3ffff;box-shadow:0 0 4px #cfffff}.heat-switch input:checked{background:#f36535;border-color:#ff9b69;box-shadow:0 0 12px #fc5b3955}.sun-select{font-size:9px;margin:12px 0;gap:8px}.sun-select select{min-width:0;max-width:166px!important;font-size:9px;background:#071d2b;border-color:#34617b;border-radius:6px}.segmented{margin-top:12px;background:#041320;border-color:#35647b55;border-radius:8px}.segmented .active{background:#103f60;color:#b7e7ff;box-shadow:inset 0 0 0 1px #4ca2d36b}.segmented button{font-size:9px}.destinations{margin-top:12px}.destinations button{border-color:#2d5d7466;font-size:9px}.data-note{font-size:8px;margin:15px 0 0}.related{font-size:9px}.map-tools{top:28px;right:125px;gap:5px;z-index:5}.map-tools button{padding:8px 12px;border-radius:8px;background:#051e30df;border-color:#367a9877}.maplibregl-ctrl-top-right{top:108px!important}.maplibregl-ctrl-group{background:#062235e8!important;border:1px solid #4a8caa5c!important;border-radius:8px!important}.maplibregl-ctrl-scale{background:#061b2bc9!important;color:#accbdb!important;border-color:#75acbe!important}.maplibregl-ctrl-attrib{background:#041321c9!important;color:#91afbe!important}.maplibregl-ctrl-attrib a{color:#91afbe!important}
.legend{left:auto!important;right:22px;bottom:38px;width:300px;padding:15px 16px;background:#041827e8;border:1px solid #427e986b;border-radius:11px;box-shadow:0 5px 30px #0006,inset 0 1px #a4d1e316}.ramp{height:10px;margin:12px 0 7px;border-radius:6px;box-shadow:0 0 12px #f5782923;background:linear-gradient(90deg,#06334c,#08748a,#12b4ba,#45d3c2,#e4dca0,#ffb15b,#ff713c,#ef3c24,#b91420)}.legend-foot{font-size:8px}.legend p{font-size:9px}.gesture{left:50%!important;transform:translateX(-50%);bottom:5px;font-size:8px;background:transparent;white-space:nowrap;color:#86a2b3}#loading{left:50%;background:#061e30f5;border-color:#4b8da866}#info{top:auto;bottom:245px;right:22px;max-height:calc(100vh - 350px);background:#041827ef;border:1px solid #4a8da780;box-shadow:0 8px 40px #0008;backdrop-filter:blur(18px);padding:20px;border-radius:12px}#info h2{font-size:20px}.reading>span{font-size:34px}.reading small{font-size:9px}body.collapsed .legend{left:auto!important}
#timeline{position:absolute;left:22px;bottom:38px;width:570px;display:flex;gap:16px;align-items:center;padding:16px 18px;background:#041827eb;border:1px solid #427e9870;border-radius:12px;backdrop-filter:blur(18px);box-shadow:0 6px 30px #0008;z-index:3}#timeline-play{border:1px solid #6ab8df;width:40px;height:40px;flex-shrink:0;border-radius:50%;color:#d5f5ff;font-size:18px;box-shadow:0 0 12px #4cc5ff40,inset 0 0 14px #2b9ad74d}.timeline-content{flex:1;min-width:0}.timeline-title{display:flex;justify-content:space-between;gap:6px;font-size:9px;color:#99b8cc;margin-bottom:14px}.timeline-title b{font-weight:500;color:#c3e6f3}#timeline-dates{display:flex;justify-content:space-between;position:relative;gap:8px}#timeline-dates:before{content:'';position:absolute;left:10px;right:10px;height:2px;background:#3e6a83;top:4px}#timeline-dates button{position:relative;font-size:9px;border:0;padding:14px 0 0;color:#92b1c7;min-width:40px}#timeline-dates button:before{content:'';position:absolute;top:1px;left:calc(50% - 3px);width:7px;height:7px;border-radius:50%;background:#7aacc4}#timeline-dates button.active{color:#f4feff}#timeline-dates button.active:before{width:11px;height:11px;top:-1px;left:calc(50% - 5px);background:#d9ffff;box-shadow:0 0 13px 4px #37d4ff7d}#timeline-median{font-size:8px;padding:4px 7px;margin-top:10px;border:1px solid #325d72;border-radius:5px;color:#8db3c5}#timeline-median.active{border-color:#53d0cf;color:#b0ffff;background:#10565e55}
@media(max-width:1050px){.edition{display:none}.map-heading h1{font-size:24px}#timeline{width:470px}.legend{width:265px}.map-tools{right:110px}.map-tools button{font-size:10px;padding:8px}.map-heading p{font-size:10px}}
@media(max-width:760px){header{height:86px;padding:14px 16px;align-items:flex-start}.map-heading h1{font-size:21px;max-width:260px}.map-heading p{font-size:9px}header button{font-size:9px;padding:7px}.map-tools{top:88px;right:12px}.maplibregl-ctrl-top-right{top:137px!important}aside{top:130px;left:12px;width:270px;max-height:calc(100vh - 290px)}.legend{bottom:157px;right:12px;left:auto!important;width:220px!important;padding:10px;max-width:calc(100vw - 24px)}.legend-foot{display:none}.legend p{margin:5px 0}.legend .ramp{margin:8px 0 5px}#timeline{left:12px;right:12px;bottom:34px;width:auto;padding:12px;gap:10px}#timeline-play{width:32px;height:32px;font-size:14px}.timeline-title{font-size:8px}#timeline-dates{gap:2px}#timeline-dates button{min-width:28px;font-size:8px}#info{bottom:285px;right:12px;width:270px;max-height:calc(100vh - 420px)}.gesture{display:none}}

.season[hidden]{display:none!important}.edition{display:none}

.map-heading{display:flex;align-items:center;gap:14px}.urban-brand{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:56px;height:56px}.urban-brand img{width:100%;height:100%;object-fit:contain}.urban-brand:focus-visible{outline:2px solid #6be6e9;outline-offset:4px}@media(max-width:1050px){.map-heading h1{font-size:22px}.urban-brand{width:42px;height:42px}.map-heading{gap:10px}}@media(max-width:760px){.map-heading h1{font-size:18px;max-width:225px}.urban-brand{width:36px;height:36px}.map-heading{gap:8px}}

.thermal-key{display:flex;justify-content:space-between;font-size:9px;margin:0 0 7px;color:#bfd2de}.thermal-key span:last-child{color:#ffae82}

#plain-view{flex:0 0 30%}#thermal-view{flex:1;white-space:normal;line-height:1.3;padding:8px 5px}

#rotate-map{width:100%;padding:9px;margin-top:10px;font-size:11px;border-color:#3b7189;background:#0a283b}#rotate-map[aria-pressed=true]{color:#b7ffff;border-color:#62c9d2}.compact-lighting{margin:12px 0}.compact-lighting select{flex:1;max-width:185px!important}#panel>[hidden]{display:none!important}.render-mode .thermal-key{display:none}
.celestial{right:auto;transition:left 1s linear,top 1s linear}.bird-flock{position:absolute;inset:0;pointer-events:none}.bird{position:absolute;top:calc(35% + var(--i)*4%);left:-8%;display:flex;width:18px;height:8px;animation:bird-flight 42s linear infinite;animation-delay:calc(var(--i)*-5s);opacity:.75;transform:scale(.8)}.bird span{width:9px;height:6px;border-top:2px solid #122c42;border-radius:70% 70% 0 0;transform-origin:right center;animation:bird-wing .85s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.13s)}.bird span+span{transform-origin:left center;animation-direction:alternate-reverse}.scene-sky[data-time=night] .bird{opacity:.25}.paused .bird,.paused .bird span{animation-play-state:paused}@keyframes bird-flight{0%{left:-8%;translate:0 5px}50%{translate:0 -10px}100%{left:108%;translate:0 5px}}@keyframes bird-wing{from{transform:rotate(-22deg) scaleY(.65)}to{transform:rotate(18deg) scaleY(1)}}@media(prefers-reduced-motion:reduce){.bird{animation:none;left:calc(20% + var(--i)*8%)}.bird span{animation:none}.celestial{transition:none}}
/* Compact date navigation and the temperature controls inside the left menu. */
aside{max-height:calc(100vh - 132px);padding:13px;width:290px}aside .legend,body.collapsed aside .legend{position:relative;inset:auto!important;width:100%!important;max-width:none;padding:14px 0 0;margin:14px 0 0;border:0;border-top:1px solid #427e986b;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.legend .ramp{background:linear-gradient(90deg,#284d62,#397a8e,#5ca5ac,#95c4bd,#e1d9b4,#dcb07f,#cc8768,#bb6657,#9b484b);box-shadow:none}.legend .legend-foot{display:flex;font-size:8px}.legend .legend-top{font-size:9px}.manual-scale .switch{font-size:10px;margin:12px 0 8px}.range-values{display:flex;justify-content:space-between;font-size:10px;color:#a6becb}.range-values output{color:#e8f2f7}.dual-range{height:30px;position:relative;margin:4px 0}.dual-range .ramp{position:absolute;left:0;right:0;top:11px;height:8px;margin:0}.dual-range input[type=range]{position:absolute;inset:0;width:100%;height:30px;margin:0;appearance:none;background:transparent;pointer-events:none}.dual-range input::-webkit-slider-thumb{appearance:none;width:16px;height:22px;border-radius:5px;border:2px solid #d8eaf2;background:#254f63;cursor:ew-resize;pointer-events:auto;box-shadow:0 1px 5px #0007}.dual-range input::-moz-range-thumb{width:13px;height:19px;border-radius:5px;border:2px solid #d8eaf2;background:#254f63;pointer-events:auto;cursor:ew-resize}.dual-range input:focus-visible{outline:none}.dual-range input:focus-visible::-webkit-slider-thumb{outline:2px solid #65def3;outline-offset:2px}#range-reset{font-size:9px;padding:4px 7px;margin:2px 0 5px}.legend:not(.manual) .range-values,.legend:not(.manual) .dual-range input,.legend:not(.manual) #range-reset{display:none}.legend:not(.manual) .dual-range{height:18px}.legend .thermal-key{margin:3px 0 6px}.render-mode .manual-scale,.render-mode .thermal-key{display:none}#timeline{left:50%;right:auto;transform:translateX(-50%);bottom:20px;width:520px;padding:9px 12px;gap:10px;border-radius:9px}#timeline-play{width:30px;height:30px;font-size:14px}.timeline-title{margin-bottom:8px;font-size:8px}#timeline-dates button{padding-top:11px;font-size:8px}#timeline-median{margin-top:5px;font-size:8px;padding:2px 5px}.overlay-control{margin:12px 0}.control-group{padding-top:9px;margin-top:9px}.control-group .switch{margin:9px 0}.compact-lighting{margin:8px 0}.search{margin:9px 0}
@media(max-width:1050px){#timeline{width:450px;left:calc(50% + 85px)}}@media(max-width:760px){aside{top:130px;max-height:calc(100vh - 235px);width:280px}#timeline{left:12px;right:12px;bottom:20px;transform:none;width:auto;padding:8px 10px}aside .legend{bottom:auto!important;right:auto!important}#info{bottom:125px}.timeline-title{margin-bottom:7px}}

aside{display:flex;flex-direction:column;height:calc(100vh - 132px);overflow:hidden}.panel-body{min-height:0;overflow:auto;scrollbar-width:thin;flex:1}.panel-body>[hidden]{display:none!important}aside .legend{flex-shrink:0}.legend #legend-note{display:none}.control-group .switch{margin:6px 0}.legend .legend-foot{padding-top:8px}.legend #scale-caption{margin:6px 0;font-size:9px}.legend .legend-top{letter-spacing:.5px}@media(max-width:760px){aside{height:calc(100vh - 235px)}}

/* Sidebar order: layers, scale, date timeline, opacity. */
aside{width:320px}.panel-body{flex:1;min-height:125px}.panel-body .control-group:first-child{margin-top:0;padding-top:0;border-top:0}.shared-scale-switch{gap:10px;font-size:10px;margin:12px 0}.shared-scale-switch small{display:block;font-size:8px;line-height:1.4;font-weight:400;color:var(--muted);margin-top:4px}aside .legend{margin-top:10px;padding-top:12px}aside #timeline{position:relative;inset:auto!important;transform:none!important;flex-shrink:0;width:100%!important;max-width:none;margin:12px 0 0;padding:10px 8px;gap:8px;border-radius:9px;background:#041827bd;box-shadow:0 3px 15px #0004}aside #timeline-play{width:27px;height:27px;font-size:13px}aside .timeline-title{font-size:8px;margin-bottom:10px;gap:4px;flex-wrap:wrap}aside #timeline-dates{gap:2px}aside #timeline-dates button{min-width:0;flex:1;white-space:nowrap;font-size:7px;padding-top:12px}aside #timeline-dates:before{left:8px;right:8px}aside #timeline-median{font-size:8px;margin-top:7px;padding:3px 5px}aside>.overlay-control{flex-shrink:0;display:block;font-size:10px;margin:12px 0 0;padding-top:10px;border-top:1px solid #427e983b}aside>.overlay-control input{margin:10px 0 0}aside>.overlay-control:last-child{margin-bottom:0}@media(max-width:760px){aside{width:300px;max-width:calc(100vw - 24px);height:calc(100vh - 150px);max-height:calc(100vh - 150px)}.panel-body{min-height:100px}aside #timeline-dates button{font-size:7px}aside .legend{padding-top:9px;margin-top:8px}aside #timeline{padding:8px 6px;margin-top:8px}aside>.overlay-control{margin-top:8px;padding-top:8px}}

/* Midnight atlas: quiet panels, clear street grain and luminous temperature accents. */
:root{--bg:#031321;--panel:#051826;--accent:#65d8de}header{background:linear-gradient(#031321e8,#03132165,transparent)}aside{background:linear-gradient(145deg,#041725f0,#061c2be8);border-color:#38738b70;box-shadow:0 12px 45px #0008,inset 0 1px #7acbdf12}aside .legend{border-top-color:#36718c55}.legend .ramp{box-shadow:0 0 14px #f58b3426}.legend #scale-caption{font-size:8px;color:#87a6b8}.ticks{gap:5px;font-size:9px}.ticks span:nth-child(2){color:#89a5b7}.map-tools button,header button{background:#041b2cdb}.map-heading p{color:#80a6ba}aside #timeline{border-color:#3b789160;background:#031726d6}.scene-sky{z-index:1}#map{background:#041523}.maplibregl-canvas{outline:none}

.context-key{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#789aaa;font-size:8px}.context-key span{display:flex;align-items:center;gap:4px}.context-key i{display:inline-block;width:7px;height:7px;border-radius:2px;border:1px solid #69b2c144}.water-key{background:#075b73}.wood-key{background:#105154}.city-key{background:#425465}

/* Compact lighting and final composite as the last timeline stop. */
#panel .compact-lighting{display:flex;margin:12px 0;padding:0 2px;gap:12px;align-items:center;color:#aec6d1;font-size:13px}
#panel .compact-lighting select{flex:1;min-width:0;background:#072333;border:1px solid #326078;color:#e1f0f4;border-radius:9px;padding:8px}
#timeline-dates{display:flex;align-items:flex-start;justify-content:space-between;gap:0}
#timeline-dates button{flex:1;min-width:0;font-size:10px}
#timeline-dates #timeline-median{margin:0;padding:16px 0 0;border:0;border-radius:0;background:transparent;color:#b9d7df;font-size:10px}
#timeline-dates #timeline-median.active{color:#dcfcff;background:transparent}
#dgis-link{display:block;margin-top:12px;color:#78d7dc}

/* Editorial masthead: one entrance, only the status dot keeps moving. */
header{height:108px;align-items:flex-start;padding-top:20px}
.map-heading{align-items:flex-start;max-width:calc(100% - 355px);gap:17px}
.urban-brand{margin-top:1px;width:51px;height:57px}
.masthead-copy{position:relative;padding-bottom:13px;animation:masthead-in .85s cubic-bezier(.2,.7,.25,1) both}
.map-heading h1{font-size:clamp(22px,2.35vw,34px);font-weight:800;letter-spacing:-1.05px;line-height:1.07;margin:0 0 7px;white-space:nowrap}
.map-heading h1 span{color:#edf4f5}
.map-heading p{font-size:11px;letter-spacing:.15px;color:#adc2cd;margin:0}
.masthead-data{display:flex;gap:17px;align-items:center;margin-top:8px;color:#89a9bb;font-size:9px;letter-spacing:1.1px;text-transform:uppercase}
.masthead-temperature{display:flex;align-items:center;gap:7px;letter-spacing:.25px;text-transform:none}
.masthead-temperature strong{font-size:12px;font-variant-numeric:tabular-nums;font-weight:700;color:#d5e5eb;letter-spacing:0}
.masthead-temperature i{display:block;flex-shrink:0;width:5px;height:5px;background:#72ddd5;border-radius:50%;animation:temperature-breathe 3.5s ease-in-out infinite}
.masthead-line{position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,#4fd8ea 0%,#70dcd1 35%,#dfc797 72%,#ff9753 100%);transform-origin:left;animation:masthead-line 1.2s .25s cubic-bezier(.2,.7,.25,1) both;opacity:.75}
@keyframes masthead-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes masthead-line{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:.75}}
@keyframes temperature-breathe{0%,100%{box-shadow:0 0 0 0 #71d9d333;opacity:.65}50%{box-shadow:0 0 0 4px #71d9d300;opacity:1}}
@media(max-width:1050px){.map-heading{max-width:calc(100% - 200px);gap:12px}.map-heading h1{font-size:23px}.urban-brand{width:42px;height:48px}.map-heading p{font-size:10px}}
@media(max-width:760px){header{height:116px;padding:16px 13px}.map-heading{max-width:calc(100% - 65px);gap:9px}.map-heading h1{font-size:18px;white-space:normal;max-width:none;letter-spacing:-.5px}.map-heading h1 span{display:block}.urban-brand{width:34px;height:43px}.map-heading p{font-size:9px;max-width:250px}.masthead-data{font-size:8px;gap:9px;flex-wrap:wrap;margin-top:6px}.masthead-temperature strong{font-size:10px}.masthead-copy{padding-bottom:9px}.map-tools{top:123px}.maplibregl-ctrl-top-right{top:171px!important}aside{top:166px}}
@media(prefers-reduced-motion:reduce){.masthead-copy,.masthead-line,.masthead-temperature i{animation:none}.masthead-copy{opacity:1;transform:none}.masthead-line{transform:none}}

.masthead-author{display:inline-block;color:#9dbbc9;font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;margin:0 0 7px;transition:color .2s}
.masthead-author:hover{color:#7be3e6}.masthead-author span{margin-left:4px;color:#6bd9dd}
header{height:133px}.urban-brand{margin-top:16px}
@media(min-width:761px){aside{top:143px;height:calc(100vh - 167px)}}
@media(max-width:760px){.masthead-author{font-size:7px;letter-spacing:.7px;margin-bottom:5px}header{height:138px}.urban-brand{margin-top:17px}aside{top:166px;height:calc(100vh - 190px);max-height:calc(100vh - 190px)}}

#object-photos{border-top:1px solid #427e983b;margin-top:18px;padding-top:14px}#object-photos[hidden]{display:none}#object-photos h3{font-size:13px;font-weight:600;margin:0 0 10px;color:#d9eaf0}.object-photo-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}.object-photo-track figure{margin:0;flex:0 0 232px;scroll-snap-align:start}.object-photo-track img{display:block;width:232px;height:155px;object-fit:cover;border-radius:8px}.object-photo-track figcaption{font-size:9px;line-height:1.5;color:#8fabb8;margin-top:6px}

.map-photo-marker{padding:3px;width:48px;height:43px;border:1px solid #91c9d0;border-radius:8px;background:#071f2e;box-shadow:0 3px 13px #0009;cursor:pointer;z-index:2}.map-photo-marker img{width:100%;height:100%;object-fit:cover;border-radius:4px}.map-photo-marker:hover{border-color:#fff;z-index:3}.map-photo-marker[hidden]{display:none!important}#object-photos{margin:14px 0 18px;padding-top:0;border-top:0}.object-photo-track figure{flex-basis:270px}.object-photo-track img{width:270px;height:180px}.photo-open{display:block;padding:0;border:0;border-radius:8px;overflow:hidden}.photo-credit a,.object-photo-track figcaption a{color:#a6c9d4;text-decoration:none}.photo-credit a:hover,.object-photo-track figcaption a:hover{text-decoration:underline}.photo-viewer{width:min(1100px,96vw);max-width:96vw;max-height:94vh;padding:20px;background:#061a28;border:1px solid #486c7c;border-radius:14px;color:#e1eff3}.photo-viewer::backdrop{background:#000c;backdrop-filter:blur(5px)}.photo-viewer h2{font-size:18px;margin:0 45px 15px 0}.photo-viewer>img{display:block;width:100%;height:min(65vh,720px);object-fit:contain;background:#020c13;border-radius:8px}.photo-close{position:absolute;right:14px;top:10px;font-size:28px;padding:0 9px}.photo-viewer-tools{display:flex;align-items:center;justify-content:center;gap:25px;margin:12px 0}.photo-viewer-tools button{padding:6px 18px}.photo-credit{font-size:11px;line-height:1.7;text-align:center}.photo-counter{font-variant-numeric:tabular-nums}

/* Real photographs pinned to mapped objects, without recreating markers on zoom. */
.map-photo-marker{width:94px;height:84px;padding:3px 3px 20px;border:1px solid #9bc8d2;border-radius:9px;background:#071c2fee;box-shadow:0 4px 16px #000b;overflow:visible}
.map-photo-marker img{display:block;width:86px;height:57px;object-fit:cover;border-radius:5px}
.map-photo-marker:after{content:'';position:absolute;bottom:-6px;left:calc(50% - 5px);width:10px;height:10px;transform:rotate(45deg);background:#092337;border-right:1px solid #9bc8d2;border-bottom:1px solid #9bc8d2}
.map-photo-name{display:block;position:absolute;left:5px;right:5px;bottom:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:12px;color:#e5f2f5;text-align:left}
.map-photo-count{position:absolute;top:6px;right:6px;padding:1px 4px;background:#031827dc;border-radius:4px;color:white;font-size:9px}
.map-photo-marker:hover,.map-photo-marker:focus-visible{z-index:5;border-color:#8bf7f1;box-shadow:0 4px 20px #000c,0 0 0 2px #63dcd744}
@media(max-width:760px){.map-photo-marker{width:76px;height:70px;padding-bottom:18px}.map-photo-marker img{width:68px;height:45px}.map-photo-name{font-size:8px;bottom:4px}}
/* Let menu sections follow their content instead of filling the viewport. */
aside#panel{height:auto;max-height:calc(100dvh - 163px);overflow-y:auto;display:block}
#panel .panel-body{flex:none;min-height:0;overflow:visible}
#panel .legend{margin-top:12px}
@media(max-width:760px){aside#panel{height:auto;max-height:calc(100dvh - 190px)}}
