/* atlas-v1: all geometry is in artwork space; custom artwork retains its presentation. */
.sscw-world[data-living-map-profile="atlas-v1"] {
	--sscw-gold: #dfbc83;
	--sscw-gold-bright: #f6dfb4;
	--sscw-teal: #a8d7d1;
	--sscw-line: rgba(202, 214, 211, .19);
	background: radial-gradient(ellipse at 80% 0, #19323d 0, transparent 50%), #091923;
	min-height: 0;
}
.sscw-world[data-living-map-profile="atlas-v1"]::before { display: none; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-header { padding: 5px 2px 14px; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-brand { font-size: .87rem; letter-spacing: .16em; font-weight: 600; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-eyebrow { margin-top: 5px !important; font-size: .58rem; color: #a7b8be; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction { padding: 24px 2px 22px; gap: 7px 30px; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-overline { font-size: .64rem; letter-spacing: .2em; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: clamp(2.05rem, 3.1vw, 3.2rem); letter-spacing: -.045em; line-height: 1.13; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction > p:last-child { font-size: .91rem; line-height: 1.6; color: #b9c8cb; max-width: 440px; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-map-shell { border: 1px solid var(--sscw-line); border-radius: 20px; box-shadow: 0 22px 65px #020a1044; background: #0a1b24; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-map-shell::after { box-shadow: inset 0 0 32px #0002; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-map-canvas { aspect-ratio: 4 / 3; }
.sscw-atlas-scene, .sscw-atlas-atmosphere { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.sscw-atlas-scene { z-index: 1; }
.sscw-atlas-terrain { display: block; width: 100%; height: 100%; }
.sscw-atlas-landmark { position: absolute; display: block; max-width: none; user-select: none; }
.sscw-atlas-scene[hidden], .sscw-atlas-motion-toggle[hidden] { display: none; }
/* Slot 1 has a named exterior; retain its existing ID, footprint and unavailable state. */
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon:not(.is-planned)[data-place-id="animal-farm"] .sscw-hotspot-label { display:block; color:#f6dfb4; }
.sscw-atlas-atmosphere { z-index: 2; opacity: 0; }
.sscw-atlas-atmosphere[data-running] { opacity: 1; }
.sscw-atlas-atmosphere i { position: absolute; display: block; pointer-events: none; animation-duration: var(--atlas-duration); animation-delay: var(--atlas-delay); animation-timing-function: ease-in-out; animation-iteration-count: infinite; animation-play-state: paused; }
.sscw-atlas-atmosphere[data-running="true"] i { animation-play-state: running; }
.sscw-atlas-light { background: radial-gradient(ellipse, #ffd39070 0%, #e4b77c18 35%, transparent 70%); animation-name: sscwAtlasLight; }
.sscw-atlas-water { background: radial-gradient(ellipse, #cdeef154, #b5e4f11a 45%, transparent 72%); animation-name: sscwAtlasWater; }
.sscw-atlas-firefly { min-width: 2px; min-height: 2px; border-radius: 50%; background: #ffe0a0; box-shadow: 0 0 5px 2px #ffc67555; animation-name: sscwAtlasFirefly; }
@keyframes sscwAtlasLight { 0%,100% { opacity: .3; } 50% { opacity: .85; } }
@keyframes sscwAtlasWater { 0%,100% { opacity: .15; transform: translateY(-3%); } 55% { opacity: .65; transform: translateY(6%); } }
@keyframes sscwAtlasFirefly { 0%,100% { opacity: .12; transform: translate(0,0); } 40% { opacity: .9; transform: translate(8px,-12px); } 75% { opacity: .4; transform: translate(-5px,-18px); } }

/* Existing hotspot centers, DOM buttons, locks and live markers retain ownership. */
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-dot { width: 34px; height: 34px; color: #eee7d7; background: #102733f2; border: 1px solid #e9d4a9ad; font-size: .78rem; box-shadow: 0 3px 14px #0005; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-pulse { animation: none; opacity: .25; border: 1px solid #ebdbb680; box-shadow: none; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-label { opacity: 1; transform: translateX(-50%); display: block; padding: 6px 11px; border: 1px solid #d4dcc638; border-radius: 7px; color: #f5f0e5; background: #10232fea; box-shadow: 0 4px 16px #0003; font-size: .76rem; font-weight: 500; letter-spacing: .01em; max-width: 200px; white-space: normal; width: max-content; line-height: 1.35; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-label::after { display: none; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-label-above .sscw-hotspot-label,
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-label-below .sscw-hotspot-label { top: calc(50% + 23px); bottom: auto; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon .sscw-hotspot-dot { width: 25px; height: 25px; color: #cbd4ce; background: #0d252cc9; border-color: #acb9b980; font-size: .63rem; box-shadow: none; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon .sscw-hotspot-label { background: #122830c9; color: #cad4d0; font-size: .64rem; border: 1px solid #abbdb829; padding: 4px 8px; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon .sscw-hotspot-pulse { display: none; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot:is(:hover,:focus-visible,[aria-expanded="true"]) .sscw-hotspot-dot { border-color: #fff0c8; background: #dfc495; color: #132730; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-pass-locked .sscw-hotspot-dot { color: #b6c3c1; border-color: #84928e; background: #112831; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-live .sscw-hotspot-dot { color: #102723; background: #afddce; border-color: #e0f6e5; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-card { background: #0c222ef5; border: 1px solid #c4c8b34d; box-shadow: 0 18px 65px #0007; backdrop-filter: blur(14px); }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-card h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.025em; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-card-enter { background: #e4cd9f; color: #102631; box-shadow: none; }
@media (max-width: 1000px) {
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-label { font-size: .66rem; padding: 5px 8px; }
}
@media (max-width: 620px) {
	.sscw-world[data-living-map-profile="atlas-v1"] { padding-left: max(10px,env(safe-area-inset-left)); padding-right: max(10px,env(safe-area-inset-right)); }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction { padding: 20px 2px; gap: 8px; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction h1 { font-size: 2.1rem; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-introduction > p:last-child { font-size: .83rem; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot { width: 44px; height: 44px; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-dot { width: 26px; height: 26px; font-size: .65rem; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot-label { font-size: .64rem; line-height: 1.2; padding: 3px 5px; min-width: 0; max-width: 90px; top: calc(50% + 15px); }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon:not(.is-planned) .sscw-hotspot-label { display: none; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot:focus-visible .sscw-hotspot-label { display: block; }
	.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-coming-soon .sscw-hotspot-dot { width: 19px; height: 19px; font-size: .56rem; }
}
@media (prefers-reduced-motion: reduce) {
	.sscw-atlas-atmosphere { display: none !important; }
	.sscw-atlas-atmosphere i { animation: none !important; }
	[data-atlas-motion-toggle] { display: none !important; }
}
@media (forced-colors: active) {
	.sscw-atlas-atmosphere { display: none; }
}

/* Optional information and motion control stay in the header, clear of the artwork. */
.sscw-atlas-info { position:relative;flex:none;color:#b9c8cb;font:12px/1.4 system-ui; }
.sscw-atlas-info summary { min-height:44px;display:flex;align-items:center;gap:6px;padding:0 6px;cursor:pointer;list-style:none; }
.sscw-atlas-info summary::-webkit-details-marker { display:none; }
.sscw-atlas-info summary::after { content:'⌄'; }
.sscw-atlas-info[open] summary::after { content:'⌃'; }
.sscw-atlas-info-panel { position:absolute;z-index:20;right:0;top:100%;width:196px;padding:8px;background:#10232f;border:1px solid #c4c8b34d;border-radius:8px;box-shadow:0 8px 24px #0005; }
.sscw-atlas-legal { display:grid; }
.sscw-atlas-info-panel a,.sscw-world .sscw-atlas-motion-toggle { display:flex;align-items:center;width:100%;min-height:44px;padding:8px;color:#e8e1d3;background:none;border:0;border-radius:4px;font:12px/1.4 system-ui;text-align:left;text-decoration:underline;text-underline-offset:3px; }
.sscw-atlas-info-panel a:hover,.sscw-atlas-motion-toggle:hover { background:#ffffff0a; }
.sscw-world .sscw-atlas-motion-toggle[hidden] { display:none; }
.sscw-atlas-info :focus-visible { outline:2px solid #f9e3b8;outline-offset:2px; }
.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned .sscw-hotspot-label { color:#f0e5cd;font-size:.72rem;background:#162d36ed; }
@media(max-width:620px){.sscw-world[data-living-map-profile="atlas-v1"] .sscw-header{align-items:center;gap:8px}.sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned .sscw-hotspot-label{font-size:.59rem}}
/* Local, artwork-profile motion: no live activity or recording state is represented. */
.sscw-atlas-motif {position:absolute;display:block;pointer-events:none;}
.sscw-atlas-motif b {position:absolute;display:block;animation-duration:var(--atlas-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-play-state:paused;}
.sscw-atlas-motif b:nth-child(2){animation-delay:-2s}.sscw-atlas-motif b:nth-child(3){animation-delay:-4s}
.sscw-atlas-atmosphere[data-running="true"] .sscw-atlas-motif b {animation-play-state:running}
.sscw-atlas-motif-lantern-sway b {left:30%;top:22%;width:30%;height:24%;transform-origin:50% -100%;background:radial-gradient(ellipse,#ffda96b3 10%,#edb46b70 35%,transparent 72%);border-radius:50%;animation-name:sscwAtlasSway;}
.sscw-atlas-motif-lantern-sway b:nth-child(2){left:80%;top:10%}.sscw-atlas-motif-lantern-sway b:nth-child(3){display:none}
.sscw-atlas-motif-petals,.sscw-atlas-motif-leaves {overflow:hidden;}
.sscw-atlas-motif-petals b,.sscw-atlas-motif-leaves b {width:7%;height:5%;min-width:3px;min-height:2px;left:25%;top:12%;border-radius:80% 0 80% 0;background:#e6bfd2;animation-name:sscwAtlasPetal;}
.sscw-atlas-motif-petals b:nth-child(2),.sscw-atlas-motif-leaves b:nth-child(2){left:55%;top:5%}.sscw-atlas-motif-petals b:nth-child(3),.sscw-atlas-motif-leaves b:nth-child(3){left:75%;top:25%}
.sscw-atlas-motif-leaves b {background:#d1d5a6;animation-name:sscwAtlasLeaf;}
.sscw-atlas-motif-lens b {inset:10%;border:1px solid #b9a6f4a8;border-radius:50%;animation-name:sscwAtlasLens;}
.sscw-atlas-motif-lens b:nth-child(2){inset:24%;border-color:#97dbe9a8}.sscw-atlas-motif-lens b:nth-child(3){display:none}
.sscw-atlas-motif-screen {overflow:hidden;border-radius:3px;transform:perspective(180px) rotateY(-5deg)}
.sscw-atlas-motif-screen b {inset:0;background:linear-gradient(105deg,transparent 15%,#fae5b98c 48%,transparent 74%);animation-name:sscwAtlasScreen;}
.sscw-atlas-motif-screen b:nth-child(n+2){display:none}
.sscw-atlas-motif-piano {overflow:hidden;border-radius:55% 55% 15% 15%;}
.sscw-atlas-motif-piano b {top:8%;left:10%;height:75%;width:14%;background:linear-gradient(transparent,#e9d8f478,transparent);transform:rotate(-24deg);animation-name:sscwAtlasPiano;}
.sscw-atlas-motif-piano b:nth-child(2){left:42%}.sscw-atlas-motif-piano b:nth-child(3){left:72%}
.sscw-atlas-motif-rhythm b {inset:10%;border:1px solid #e3bb7ae0;border-radius:50%;animation-name:sscwAtlasRhythm;}
.sscw-atlas-motif-rhythm b:nth-child(2){animation-delay:-1.5s}.sscw-atlas-motif-rhythm b:nth-child(3){animation-delay:-3s}
.sscw-atlas-motif-voice b {left:8%;top:5%;width:18%;height:78%;border-radius:50%;background:linear-gradient(transparent,#f7d6969c,transparent);transform-origin:50% 60%;animation-name:sscwAtlasVoice;}
.sscw-atlas-motif-voice b:nth-child(2){left:40%}.sscw-atlas-motif-voice b:nth-child(3){left:72%}
@keyframes sscwAtlasSway {0%,100%{transform:rotate(-12deg);opacity:.45}50%{transform:rotate(12deg);opacity:.9}}
@keyframes sscwAtlasPetal {0%{transform:translate(0,0) rotate(0);opacity:0}18%{opacity:.9}80%{opacity:.7}100%{transform:translate(260%,640%) rotate(160deg);opacity:0}}
@keyframes sscwAtlasLeaf {0%,100%{transform:translate(-80%,0) rotate(-25deg);opacity:.15}50%{transform:translate(190%,210%) rotate(55deg);opacity:.85}}
@keyframes sscwAtlasLens {0%,100%{transform:scale(.85);opacity:.15}50%{transform:scale(1.08);opacity:.85}}
@keyframes sscwAtlasScreen {0%,100%{transform:translateX(-85%);opacity:0}30%{opacity:.85}75%{transform:translateX(75%);opacity:.7}90%{opacity:0}}
@keyframes sscwAtlasPiano {0%,100%{opacity:.1;transform:translateY(8%) rotate(-24deg)}50%{opacity:.85;transform:translateY(-12%) rotate(-24deg)}}
@keyframes sscwAtlasRhythm {0%{transform:scale(.6);opacity:0}20%{opacity:.85}85%,100%{transform:scale(1.18);opacity:0}}
@keyframes sscwAtlasVoice {0%,100%{transform:scaleY(.45);opacity:.2}50%{transform:scaleY(1.1);opacity:.8}}
@media(prefers-reduced-motion:reduce){.sscw-atlas-motif b{animation:none!important}}
@media(forced-colors:active){.sscw-atlas-motion-toggle{border:1px solid ButtonText}}

/* The south pavilion uses a compact named badge over foreground water on phones. */
@media (max-width:620px) {
 .sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned {transform:translate(-50%,-75%);}
 .sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned .sscw-hotspot-dot {display:none;}
 .sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned .sscw-hotspot-label {top:calc(50% + 11px);bottom:auto;transform:translate(-50%,-50%);max-width:none;white-space:nowrap;display:flex;align-items:center;gap:4px;padding:2px 5px;}
 .sscw-world[data-living-map-profile="atlas-v1"] .sscw-hotspot.is-planned .sscw-hotspot-label::before {content:"8";display:grid;place-items:center;width:16px;height:16px;border:1px solid #acb9b980;border-radius:50%;font-size:9px;}
}

/* Piano signage sits on its approach, clear of the glasshouse piano and Beat roof. */
.sscw-world[data-living-map-profile="atlas-v1"] [data-place-id="song-writing-station"] .sscw-hotspot-label {left:auto;right:calc(50% + 23px);top:50%;bottom:auto;transform:translateY(-50%);}
@media(max-width:620px){.sscw-world[data-living-map-profile="atlas-v1"] [data-place-id="song-writing-station"] .sscw-hotspot-label{right:calc(50% + 15px);}}
