/* The existing valley is the hero. One quiet rail replaces the stacked docks. */
:root{--experience-ink:#30263e;--experience-glass:linear-gradient(145deg,#ffffffd9,#ffffffa1)}
/* Keep the masthead readable if WebKit drops its gradient while compositing WebGL. */
body #workspace,body:not(.has-project) #workspace{height:100dvh}
body .scene,body:not(.following-agent) .scene{inset:0}
body .topbar,body:not(.has-project) .topbar{position:absolute;inset:12px 18px auto;width:auto;height:auto;min-height:0;padding:13px 20px;display:grid;grid-template-columns:1fr auto auto;gap:12px 24px;border:1px solid #ffffffb8;background:#f5f4f0dd var(--experience-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 35px #38295505;border-radius:24px;z-index:12}
body .brand-group{display:block}body .brand-row{gap:9px}body .brand{font-size:29px;letter-spacing:-1.4px}body .brand-mark{display:none}body .brand-tagline{display:block!important;font-size:12px;font-weight:550;line-height:1.35;max-width:285px;color:#665a72;margin:4px 0 0}
body .project-control{order:0;max-width:none;width:auto;flex:initial;margin:0;display:flex;flex-direction:row;align-items:center;gap:8px}
body .project-picker-button{max-width:230px;min-height:42px;border:1px solid #d9cfe885;background:#ffffff85;font-size:12px;padding:8px 12px;border-radius:14px}
body .project-picker-button>span:first-child{display:none}.compact-mode{font-family:inherit;font-weight:600;font-size:12px;line-height:1.2;background:transparent;border:0;border-radius:12px;padding:10px;min-height:42px;color:#6a51ac}
body .top-actions{align-self:start;gap:4px}body .top-actions #return-open{display:none}body .top-actions .icon-button{width:40px;height:40px;min-width:40px}
body .view-dock,body .follow-launch{display:none!important}
.experience-controls{position:fixed;z-index:24;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(420px,calc(100% - 32px));display:grid;grid-template-columns:1fr 54px 1fr;gap:7px;padding:6px;background:var(--experience-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #fff;border-bottom-color:#dbd3e5;box-shadow:0 6px 28px #3e2b6411;border-radius:23px}
.experience-controls button{border:0;background:transparent;font-family:inherit;font-weight:600;font-size:13px;line-height:1.2;color:#58476e;min-height:44px;border-radius:16px;padding:8px 10px;white-space:nowrap}
.experience-controls .experience-home{display:grid;place-items:center;background:#eee8f6b5;color:#7254b6}.experience-home svg{width:23px;height:23px}.experience-controls button:hover{background:#eee8f6}.experience-controls button:focus-visible,.compact-mode:focus-visible{outline:2px solid #7858c1;outline-offset:2px}
.experience-status{position:absolute;left:30px;top:100px;z-index:14;background:#ffffffe0;border:1px solid #ffffffb8;border-radius:99px;min-height:30px;padding:6px 12px;font-family:inherit;font-weight:500;font-size:11px;line-height:1.3;color:#736681;max-width:calc(100% - 60px);backdrop-filter:blur(8px)}
.experience-back{position:fixed;top:14px;right:14px;z-index:29;border:1px solid #fff;border-radius:20px;padding:9px 12px;min-height:42px;background:var(--experience-glass);color:#544465;font-family:inherit;font-weight:600;font-size:12px;line-height:1.2}
.experience-focus .topbar,.following-agent .topbar{display:none!important}.experience-focus .experience-status,.following-agent .experience-status{top:17px;left:16px;max-width:calc(100% - 125px)}
body .camera-modebar{display:none!important}.following-agent .camera-modebar{display:flex!important;position:fixed!important;top:61px!important;right:16px!important;left:auto!important;bottom:auto!important;transform:none!important;padding:4px;max-width:calc(100% - 26px);background:var(--experience-glass);border:1px solid #fff;border-radius:18px;gap:2px;z-index:17}
.camera-modebar #view-city,.camera-modebar #view-follow,.camera-modebar #follow-pause{display:none}.camera-modebar #view-agent{min-height:36px;font-size:11px;padding:8px 11px}.camera-modebar #camera-fullscreen{font-size:17px;min-height:36px;padding:8px;width:38px}
body .follow-story{position:fixed;top:61px;left:16px;right:auto;max-width:190px;width:auto;padding:10px 13px;border-radius:19px;background:var(--experience-glass);z-index:18;box-shadow:0 3px 18px #38285b09}.follow-identity{grid-template-columns:30px 1fr}.follow-avatar{width:29px;height:29px}.follow-identity .agent-name-button{font-size:13px;padding:0;min-height:25px;text-align:left}.follow-story .follow-phase{font-size:11px;margin:6px 0 0}.follow-story .follow-proof{font-size:9px;max-width:140px;margin:5px 0 0}.follow-story .follow-options{display:none}
.agent-name-button{border:0;background:transparent;color:#352a45;font-family:inherit;font-weight:700;cursor:pointer;border-radius:6px}.agent-name-button:hover{text-decoration:underline;text-underline-offset:3px}.agent-name-button:focus-visible{outline:2px solid #7858c1;outline-offset:2px}
body .agent-composer{bottom:calc(78px + env(safe-area-inset-bottom));max-width:520px}body .with-agent-chat .follow-work{bottom:270px}.preview-playing .agent-composer,.preview-playing .agent-chat-bubble,.preview-playing .follow-work{display:none!important}.preview-playing .follow-story{max-width:174px}.preview-playing .follow-story .follow-proof{display:none}
.preview-story{position:fixed;z-index:22;left:50%;transform:translateX(-50%);bottom:calc(80px + env(safe-area-inset-bottom));width:min(480px,calc(100% - 32px));padding:18px 20px 16px;border:1px solid #fff;background:var(--experience-glass);border-radius:24px;box-shadow:0 12px 45px #36254a12;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--experience-ink)}
.preview-proof{display:block;font-size:10px;color:#82738f;margin-bottom:7px}.preview-story h2{font-size:21px;letter-spacing:-.6px;line-height:1.16;margin:0 30px 14px 0;max-width:340px}.preview-steps{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;padding:0;margin:0;color:#796b87;font-size:11px}.preview-steps li.current{color:#6846b3;font-weight:700}.preview-steps li+li:before{content:'→';color:#b2a4c0;margin-right:10px}.preview-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.preview-actions:empty{display:none}.preview-actions .primary{width:100%;margin-top:12px;min-height:46px;border-radius:15px;font-size:14px}.preview-actions small{width:100%;text-align:center;font-size:10px;color:#766684}.preview-actions .quiet{margin:2px auto 0;font-size:11px;min-height:34px}.preview-actions p{font-size:12px;line-height:1.5;margin:12px 0 0}.preview-dismiss,.preview-pause{position:absolute;right:9px;border:0;background:transparent;color:#81728f;font-size:19px;width:36px;height:36px;border-radius:50%;padding:0}.preview-dismiss{top:8px}.preview-pause{top:43px;font-size:12px}
.preview-story[data-phase=cta] h2{font-size:25px}.preview-story[data-phase=cta] .preview-steps{font-size:12px;line-height:1.5;max-width:330px}
.preview-article{padding:0;width:min(670px,calc(100% - 24px));max-height:88dvh;border:1px solid #fff;border-radius:25px;background:#fff;box-shadow:0 30px 90px #281c4330}.preview-article>header{position:sticky;top:0;padding:12px 20px;display:flex;align-items:center;gap:12px;background:#fffffff0;backdrop-filter:blur(12px);border-bottom:1px solid #ede9f2;z-index:1}.preview-article>header span{font-size:10px;color:#887993}.preview-article>header button{margin-left:auto}.preview-article>article{padding:27px}.preview-article article>small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#807584}.preview-article h2{font-size:29px;line-height:1.15;margin:13px 0 20px;letter-spacing:-1px}.preview-article h3{font-size:17px}.preview-article p{font-size:14px;line-height:1.65}.preview-article .preview-article-lead{font-size:16px;color:#706475}.preview-article .muted{font-size:11px;margin-top:24px}.preview-article .primary{width:100%;margin-top:12px}
.follow-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.follow-list>p{grid-column:1/-1}.team-choice{display:flex;align-items:center;gap:10px;padding:12px 8px;background:#f8f6fb;border:1px solid #eee8f4;border-radius:18px;min-width:0}.team-look{border:0;border-radius:14px;width:60px;min-width:60px;height:73px;background:linear-gradient(150deg,#edf4f0,#ede7f2);padding:3px}.team-look svg{width:100%;height:100%}.team-choice>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.team-choice .agent-name-button{padding:5px 0;font-size:15px}.team-choice span{font-size:11px;color:#6d6279;line-height:1.3}.team-choice small{font-size:10px;color:#8b7b98;margin-top:6px}.follow-picker .follow-auto{font-size:11px}
.mode-dialog{padding:26px;width:min(430px,calc(100% - 24px));border-radius:25px}.mode-dialog>.icon-button{float:right}.mode-dialog h2{font-size:25px;line-height:1.2;margin:8px 30px 20px 0}.mode-dialog #project-work-controls{display:flex;flex-wrap:wrap;gap:10px}.mode-dialog .mode-switch{width:100%}.mode-dialog .mode-switch button{flex:1}.mode-dialog p{font-size:14px;line-height:1.6;color:#776882}.mode-dialog .control-status{font-size:12px}
#world-menu .language-switch{display:flex;position:static;margin:18px 0 0;justify-content:center}#world-menu .experience-menu-item{font-size:14px;min-height:48px;padding:12px 14px;border-radius:14px;background:#f8f6fb;margin-top:8px}.offer-includes{list-style:none;padding:0;margin:20px 0;display:grid;gap:12px}.offer-includes li{font-size:15px}.offer-includes li:before{content:'✓';color:#719181;margin-right:12px}.offer-availability{font-size:12px!important;color:#8a7a95}.offer-trust{font-weight:700;margin-top:25px}#offer-content h2,.activation-value h2{font-size:29px;letter-spacing:-.9px}.activation-value{margin-bottom:25px}.pricing-status,#pricing-intro{display:none}
.details-open .experience-controls,.details-open .preview-story,.details-open .experience-status,.details-open .experience-back{visibility:hidden}.chat-keyboard-open .experience-controls{visibility:hidden}
@media(max-width:600px){body .topbar,body:not(.has-project) .topbar{inset:8px 12px auto;padding:10px 13px;grid-template-columns:1fr 40px;gap:9px;border-radius:21px}body .brand{font-size:24px}body .brand-tagline{font-size:12px;max-width:238px;line-height:1.3;margin:3px 0 0}body .brand-group{grid-column:1;grid-row:1}body .top-actions{grid-column:2;grid-row:1}body .project-control{grid-column:1/-1;grid-row:2;display:flex;flex-direction:row;align-items:center;width:100%;justify-content:space-between;gap:4px}body .project-picker-button{width:auto;max-width:230px;min-height:34px;padding:5px 8px;font-size:11px}body .compact-mode{font-family:inherit;font-size:11px;min-height:34px;padding:6px 8px}body .project-picker-button>span:last-child{margin-left:8px}.experience-status{top:118px;left:18px;padding:4px 9px;min-height:26px;font-family:inherit;font-size:9px}.experience-controls{width:calc(100% - 28px);bottom:calc(9px + env(safe-area-inset-bottom));grid-template-columns:1fr 50px 1fr;padding:5px;gap:5px;border-radius:21px}.experience-controls button{font-family:inherit;font-size:12px;min-height:44px}.preview-story{bottom:calc(75px + env(safe-area-inset-bottom));width:calc(100% - 28px);padding:16px}.preview-story h2{font-size:19px;max-width:260px}.preview-story[data-phase=cta] h2{font-size:24px}.preview-steps{font-size:10px;gap:5px 8px}.preview-steps li+li:before{margin-right:7px}.experience-back{font-family:inherit;font-size:11px}.following-agent .camera-modebar{top:61px!important;right:14px!important}.following-agent .camera-modebar #camera-fullscreen{display:none}.following-agent .camera-modebar #view-agent{font-size:10px;min-height:34px}.follow-story{max-width:165px!important;left:14px!important}.follow-identity{gap:3px 8px}.follow-list{grid-template-columns:1fr}.team-choice{padding:8px 12px}.team-look{width:54px;min-width:54px;height:63px}.team-choice>div{flex:1}.team-choice .agent-name-button{font-size:16px;min-height:30px}.team-choice span{font-size:12px}.team-choice small{font-size:11px}.follow-picker{max-height:85dvh}.preview-article>article{padding:21px}.preview-article h2{font-size:26px}.preview-article p{font-size:13px}body .agent-composer{bottom:calc(75px + env(safe-area-inset-bottom));width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.experience-controls,.preview-story,.experience-status{transition:none;animation:none}}

.preview-story[data-phase=hq]{top:170px;bottom:auto;background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:10px 15px}.preview-story[data-phase=hq] .preview-proof,.preview-story[data-phase=hq] .preview-steps{display:none}.preview-story[data-phase=hq] h2{font-size:18px;font-weight:600;color:#655472;max-width:240px}.preview-teaser{width:100%;padding:13px 0 0}.preview-teaser strong{display:block;font-size:16px;line-height:1.3;letter-spacing:-.3px}.preview-teaser p{font-size:11px;line-height:1.45;margin:7px 0 0;color:#776985}body .channel-label[data-selected=true]{display:flex!important;flex-direction:row!important;flex-wrap:nowrap;gap:9px;min-width:0;min-height:38px;padding:7px 11px;border-radius:13px}body .channel-label[data-selected=true] strong{font-size:12px;margin:0;line-height:1.2;max-width:160px}body .channel-label[data-selected=true] .house-info-dot{display:inline-flex!important;margin:0;width:18px;height:18px}body.preview-playing #world-canvas{outline:none!important}

body[data-camera-mode="agent"] #view-follow{display:inline-flex!important}body[data-camera-mode="agent"] #view-agent{display:none!important}

body .scene .channel-label[data-selected=true]{max-width:min(230px,calc(100vw - 32px))!important;width:max-content!important}body .scene .channel-label[data-selected=true] strong{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}

.preview-story[data-phase=hq][data-prepared=true] .preview-proof{display:block}.preview-story[data-phase=hq] h2{max-width:300px}

.agent-composer.is-collapsed{width:auto!important;left:auto!important;right:16px!important;transform:none!important;padding:7px 13px;border-radius:17px}.agent-composer.is-collapsed .chat-form,.agent-composer.is-collapsed .chat-hint,.agent-composer.is-collapsed .chat-speed,.agent-composer.is-collapsed .chat-meta small{display:none!important}.agent-composer.is-collapsed .chat-meta{margin:0}.agent-composer.is-collapsed .chat-history-button{min-height:30px}
/* Follow preview: the existing room remains the hero, with a compact document. */
.preview-story[data-phase=hq]{top:auto;bottom:calc(80px + env(safe-area-inset-bottom));background:var(--experience-glass);border:1px solid #fff;backdrop-filter:blur(12px);padding:16px 20px}.preview-story[data-phase=hq] .preview-proof{display:block}.preview-story[data-phase=hq] h2{font-size:20px;color:var(--experience-ink)}
.preview-speed{display:flex;gap:5px;margin-top:9px}.preview-speed button{border:1px solid transparent!important;background:transparent;border-radius:10px;min-width:42px;min-height:32px;padding:5px 10px!important;margin:0!important}.preview-speed button[aria-pressed=true]{background:#e7def4;border-color:#d4c4ed!important;color:#603ba2}
.preview-story[data-phase=writing],.preview-story[data-phase=review],.preview-story[data-phase=sit],.preview-story[data-phase=entry]{width:min(380px,calc(100% - 28px));padding:14px 18px}.preview-story[data-phase=writing] h2,.preview-story[data-phase=review] h2,.preview-story[data-phase=sit] h2,.preview-story[data-phase=entry] h2{font-size:18px;margin-bottom:9px}
.preview-story[data-phase=article],.preview-story[data-phase=cta]{width:min(380px,calc(100% - 28px));padding:14px 18px}.preview-story[data-phase=cta] h2{font-size:18px}.preview-story[data-phase=article] h2{font-size:18px}.preview-story[data-phase=cta] .preview-steps,.preview-story[data-phase=article] .preview-steps{display:none}.preview-teaser{padding:0}.preview-teaser strong{font-family:Georgia,serif;font-size:18px;max-width:290px;line-height:1.25;font-weight:500}.preview-actions a{color:#665082;text-decoration:none;display:block;text-align:center;line-height:1.3;padding:8px}
.preview-article{width:min(820px,calc(100% - 24px));max-height:92dvh;border-radius:24px;color:#29333b}.preview-article>article{max-width:670px;margin:auto;padding:35px 48px 46px}.preview-article article>h1{font:500 clamp(34px,5vw,48px)/1.12 Georgia,serif;letter-spacing:-1.1px;margin:18px 0 22px}.preview-article article>h2{font:650 23px/1.3 system-ui,sans-serif;letter-spacing:-.5px;margin:40px 0 17px}.preview-article article>p{font:18px/1.85 Georgia,serif;margin:18px 0}.preview-article article>.preview-article-lead{font:19px/1.5 system-ui,sans-serif;color:#716879;margin-bottom:32px}.preview-article article>.muted{font:11px/1.6 system-ui,sans-serif}.preview-article .article-signoff{border-top:1px solid #e5e0ea;padding-top:24px}.preview-article a.primary{display:block;background:#7152b5;border-radius:14px;padding:14px;color:#fff;text-decoration:none;font:600 14px system-ui;text-align:center;width:auto}.preview-article::backdrop{background:#2e293854;backdrop-filter:blur(7px)}
@media(max-width:600px){.preview-article{width:calc(100% - 12px);border-radius:24px 24px 12px 12px;max-height:92dvh}.preview-article>article{padding:24px}.preview-article article>p{font-size:17px}.preview-article article>h1{font-size:35px}.preview-story[data-phase=cta],.preview-story[data-phase=article]{bottom:73px}.preview-story[data-phase=cta] h2,.preview-story[data-phase=article] h2{font-size:15px;margin-bottom:8px}.preview-teaser strong{font-size:17px}.preview-actions .primary{min-height:40px;margin-top:8px}}
.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]){width:min(370px,calc(100% - 28px));padding:12px 15px}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-proof,.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-steps{display:none}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) h2{font:600 12px/1.3 system-ui;margin:0 25px 8px 0;color:#6a5c79}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-actions{display:grid;grid-template-columns:1fr 92px;gap:8px}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-actions .primary{font-size:12px;padding:9px;min-height:40px;margin:0}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-actions>a{grid-column:1/-1;padding:3px;min-height:27px}.preview-story:is([data-phase=article],[data-phase=stand],[data-phase=cta]) .preview-teaser strong{font-size:16px}.preview-story[data-phase=stand] .preview-pause{display:none}
.demo-monitor-open{position:absolute;z-index:9;width:60px;height:48px;min-height:44px;padding:0;transform:translate(-50%,-50%);border:1px solid #e1fff370;border-radius:9px;background:#b9f4d50c;cursor:pointer;box-shadow:0 0 15px #c7f5da28;animation:monitor-ready 1.2s ease-out 1}.demo-monitor-open:hover,.demo-monitor-open:focus-visible{outline:2px solid #9ed7bb;outline-offset:3px;background:#c4f5d925}@keyframes monitor-ready{0%{box-shadow:0 0 0 #c7f5da00}45%{box-shadow:0 0 24px #c7f5da99}100%{box-shadow:0 0 15px #c7f5da28}}@media(prefers-reduced-motion:reduce){.demo-monitor-open{animation:none}}

/* First visit: one input, then the world. Shared by touch and desktop. */
/* The entry belongs to the sky, never to a facade. Its measured edge frames the city lens. */
.experience-welcome{position:absolute;top:var(--welcome-top,100px);left:50%;transform:translateX(-50%);z-index:15;width:min(680px,calc(100% - 40px));display:grid;grid-template-columns:1fr 290px;align-items:center;gap:10px 26px;color:#352a46;pointer-events:auto}
.experience-welcome[hidden]{display:none}.experience-welcome h1{font-size:23px;line-height:1.2;letter-spacing:-.7px;margin:0;font-weight:650;text-wrap:balance}.experience-welcome h1 span{display:block}.experience-welcome>p:not(.error){display:none}
.experience-welcome #traffic-form{box-sizing:border-box;width:100%;height:52px;display:flex;align-items:center;gap:8px;padding:3px 4px 3px 14px;background:#fffffff0;border:1px solid #e1d9ec;border-radius:17px;box-shadow:0 6px 24px #4027650a}
.experience-welcome #traffic-form input{min-width:0;flex:1;width:auto;border:0;background:transparent;outline:none;font:inherit;font-size:16px;color:#382c49;padding:8px 0}.experience-welcome #traffic-form:focus-within{outline:2px solid #9881cf;outline-offset:2px}.experience-welcome #traffic-form button{width:44px;min-width:44px;height:44px;min-height:44px;padding:11px;background:#7453b7;border:0;border-radius:13px;color:white}.experience-welcome #traffic-form button svg{width:22px;height:22px}.experience-welcome .search-symbol{display:none}.experience-welcome .error{grid-column:1/-1;font-size:12px;background:#fff8f6;color:#703c45;padding:8px 10px;border-radius:12px;margin:0}

body:has(#world-canvas[data-light-mood="night"][data-quality-ready-ms]) .experience-welcome{color:#f7f2ff;text-shadow:0 1px 12px #18233f}
.preview-playing .follow-story .follow-phase{display:none}.preview-story:not([data-phase=cta]) .preview-steps{display:none}.preview-story:not([data-phase=cta]) .preview-proof{display:none}.preview-story:not([data-phase=cta]){padding:13px 44px 13px 16px}.preview-story:not([data-phase=cta]) h2{font-size:16px;margin:0 15px 0 0;line-height:1.3;letter-spacing:-.3px}.preview-story:not([data-phase=cta]) .preview-speed{display:none}.preview-story:not([data-phase=cta]) .preview-pause{top:8px;right:6px}.preview-story:not([data-phase=cta]) .preview-dismiss{display:none}.preview-story[data-phase=hq]{top:auto;bottom:calc(80px + env(safe-area-inset-bottom));background:var(--experience-glass);border:1px solid #fff;backdrop-filter:blur(12px)}
.preview-story[data-phase=cta]{padding:18px;width:min(400px,calc(100% - 28px))}.preview-story[data-phase=cta] h2{font-size:23px;line-height:1.13;margin:0 25px 10px 0}.preview-story[data-phase=cta] .preview-actions{display:flex;flex-direction:column;gap:8px}.preview-story[data-phase=cta] .preview-actions .primary{width:100%;font-size:15px;min-height:46px;margin:0}.preview-story[data-phase=cta] .preview-steps{display:none}.preview-story[data-phase=cta] .preview-proof{display:none}.preview-story[data-phase=cta] .preview-actions small{font-size:11px}.preview-story[data-phase=cta] .preview-actions .quiet{font-size:11px}
.preview-article .reader-next{margin-top:30px;padding-top:24px;border-top:1px solid #e6e0ed}.reader-next h3{font-family:inherit;font-size:23px!important;line-height:1.2;margin:0}.reader-next p{font-family:inherit!important;font-size:14px!important;line-height:1.5!important}.reader-next small{display:block;font-size:11px;color:#7d7187;text-align:center;margin:12px 0}.preview-article .primary{display:block;text-align:center;text-decoration:none}
@media(max-width:600px){
 body .topbar,body:not(.has-project) .topbar{inset:8px 10px auto;padding:8px 11px;grid-template-columns:auto 1fr 32px;gap:5px;border-radius:19px;align-items:center}
 body .brand{font-size:22px}body .brand-row{gap:5px}body .about-button{width:20px;height:24px;min-width:20px;min-height:24px;font-size:10px}
 body .brand-group{grid-column:1;grid-row:1}body .top-actions{grid-column:3;grid-row:1;align-self:center}body .top-actions .icon-button{width:32px;min-width:32px;height:38px}
 body .project-control{grid-column:2;grid-row:1;flex-direction:row;gap:1px;justify-content:flex-end}body .project-picker-button{max-width:112px;min-height:38px;font-size:10px;padding:6px;border:0;background:transparent}body .project-picker-button #current-project-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .project-picker-button>span:last-child{margin-left:3px}body .compact-mode{font-size:9px;padding:5px;min-height:38px}
 .experience-status{top:70px;left:16px;font-size:9px}.experience-welcome{width:min(340px,calc(100% - 40px));grid-template-columns:1fr;gap:10px;text-align:center}.experience-welcome h1{font-size:20px;letter-spacing:-.5px}.experience-welcome #traffic-form{height:52px}
 .preview-story[data-phase=hq]{bottom:calc(75px + env(safe-area-inset-bottom))}.preview-story:not([data-phase=cta]){width:calc(100% - 28px)}
 .preview-story:is([data-phase=article],[data-phase=stand]) .preview-actions{grid-template-columns:1fr 88px}.preview-story:is([data-phase=article],[data-phase=stand]) h2{font-size:11px}.preview-story:is([data-phase=article],[data-phase=stand]) .preview-teaser strong{font-size:14px}.reader-next .primary{min-height:48px}
}

/* A single, local lighting clock; the small non-modal sheet leaves the city interactive. */
body .city-light-open{position:relative;display:grid;place-items:center;color:#615482}
.city-light-open svg{width:21px;height:21px;pointer-events:none}
.city-light-open[data-fixed="true"]::after{content:"";position:absolute;right:8px;bottom:7px;width:4px;height:4px;border-radius:50%;background:currentColor}
body dialog.city-light-panel{position:fixed;inset:auto 18px auto auto;margin:0;box-sizing:border-box;width:352px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 116px);overflow:auto;padding:16px 20px 20px;border:1px solid rgba(255,255,255,.88);border-radius:24px;background:rgba(250,249,255,.93);color:#302a42;box-shadow:0 14px 48px #32234324,0 1px 4px #3223430d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:65;animation:city-light-reveal .16s ease-out}
.city-light-panel:not([open]){display:none}
.city-light-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-5px -7px 16px 0}
.city-light-head h2{font-size:16px;line-height:1.4;letter-spacing:-.02em;font-weight:650;margin:0}
.city-light-head .icon-button{width:40px;height:40px;min-height:40px;min-width:40px;font-size:25px;font-weight:300;color:#777082;background:transparent;border:0}
.city-light-time{display:flex;align-items:baseline;gap:9px;margin-bottom:4px}
.city-light-time label{font-size:12px;color:#686172}
.city-light-time output{font-size:24px;font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.city-light-state{margin-left:auto;max-width:45%;font-size:10px;letter-spacing:.01em;color:#796898;text-align:right}
.city-light-range{display:block;width:100%;height:44px;margin:0;padding:0;cursor:ew-resize;appearance:none;-webkit-appearance:none;background:transparent;touch-action:pan-y;accent-color:#7458bd}
.city-light-range::-webkit-slider-runnable-track{height:7px;border-radius:8px;background:linear-gradient(90deg,#29324b,#a87d9b 21%,#ecc18c 30%,#c9e3ed 50%,#e3a371 73%,#8d7299 82%,#29324b)}
.city-light-range::-moz-range-track{height:7px;border-radius:8px;background:linear-gradient(90deg,#29324b,#a87d9b 21%,#ecc18c 30%,#c9e3ed 50%,#e3a371 73%,#8d7299 82%,#29324b)}
.city-light-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:25px;height:25px;margin-top:-9px;border:3px solid #fff;border-radius:50%;background:#7961ad;box-shadow:0 1px 8px #35224b45}
.city-light-range::-moz-range-thumb{box-sizing:border-box;width:25px;height:25px;border:3px solid #fff;border-radius:50%;background:#7961ad;box-shadow:0 1px 8px #35224b45}
.city-light-range:focus-visible{outline:2px solid #856ac9;outline-offset:2px;border-radius:12px}
.city-light-ticks{display:flex;justify-content:space-between;color:#8b8398;font-size:10px;font-variant-numeric:tabular-nums;margin:-2px 4px 17px;pointer-events:none}
.city-light-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.city-light-presets button{grid-column:span 2}.city-light-presets button:nth-child(n+4){grid-column:span 3}
.city-light-presets button{min-width:0;min-height:38px;padding:8px 8px;border:1px solid #dad2e866;border-radius:12px;font:inherit;font-size:11px;line-height:1.3;background:#ffffff6b;color:#635972;cursor:pointer;transition:background .15s,color .15s}
.city-light-presets button[aria-pressed="true"]{background:#e8dff8;color:#6344a4;border-color:#c8b6e75c}
.city-light-presets button:hover{background:#ede6f7}
.city-light-presets button:focus-visible,.city-light-open:focus-visible{outline:2px solid #856ac9;outline-offset:2px}
.city-light-note{font-size:11px;line-height:1.5;color:#7c728a;margin:15px 0 0}
@keyframes city-light-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){
 body .topbar,body:not(.has-project) .topbar{grid-template-columns:auto minmax(0,1fr) auto}
 body .top-actions{gap:2px}
 body .top-actions .icon-button{width:34px;min-width:34px;height:40px}
 body .project-control{min-width:0}
 body .project-picker-button{min-width:0;max-width:108px}
 body dialog.city-light-panel{right:12px;padding:14px 19px 19px;max-height:calc(100dvh - 100px)}
 .city-light-presets button{min-height:42px}
}
@media(max-width:360px){
 body .topbar,body:not(.has-project) .topbar{grid-template-columns:1fr auto}
 body .top-actions{grid-column:2}
 body .project-control{grid-column:1 / -1;grid-row:2;justify-content:center}
 body .project-picker-button{max-width:180px}
 body .experience-status{top:110px}
}
@media(prefers-reduced-motion:reduce){body dialog.city-light-panel{animation:none}.city-light-presets button{transition:none}}

/* Remains reachable while Follow or manual camera focus hides the main header. */
body>.city-light-open{position:fixed;top:16px;right:16px;z-index:45;width:40px;min-width:40px;height:40px;min-height:40px;border:1px solid #ffffffbd;border-radius:15px;background:#faf9ffdb;box-shadow:0 4px 18px #29203616;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
