:root{color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#081426;color:#e8f1fa;font-family:system-ui,sans-serif}button,a,summary{touch-action:manipulation}#world-shell{position:fixed;inset:0;display:block;background:#081426}#world-shell canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.site-brand{position:fixed;left:max(18px,env(safe-area-inset-left));top:max(14px,env(safe-area-inset-top));z-index:2;pointer-events:none}.site-brand a{pointer-events:auto;color:#c6fff2;font-size:14px;font-weight:800;letter-spacing:.17em;text-decoration:none}.site-brand p{font-size:12px;margin:5px 0;color:#c1d1e3}#tour-status{position:fixed;left:18px;bottom:max(48px,env(safe-area-inset-bottom));max-width:calc(100% - 135px);font-size:11px;color:#d2dfed;background:#081426bd;border-radius:9px;padding:7px;z-index:3}.site-links{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:18px;display:flex;gap:14px;align-items:center;z-index:3}.site-links a,.site-links button{font:12px system-ui;color:#c6fff2;background:#10263b;border:1px solid #43647b;border-radius:8px;padding:8px;text-decoration:none}.cinematic-persistent{right:max(10px,env(safe-area-inset-right))!important;top:80px!important;bottom:auto!important;display:flex;flex-direction:column;gap:5px;max-width:108px;max-height:65dvh;overflow:auto;z-index:8}.cinematic-persistent[hidden],.cinematic-holds[hidden]{display:none!important}.cinematic-persistent button{min-height:35px;font-size:11px;padding:6px;background:#10263be8;color:#eff9ff;border:1px solid #557d94;border-radius:7px}.cinematic-holds{right:max(10px,env(safe-area-inset-right))!important;bottom:max(55px,env(safe-area-inset-bottom))!important;top:auto!important;z-index:8}.public-timing{background:#10263bef;border:1px solid #557d94;border-radius:7px;padding:7px;font-size:11px}.public-timing summary{cursor:pointer}.public-timing fieldset{padding:4px;margin:6px 0}.public-timing .cinematic-live-pads{display:block;max-height:32dvh;overflow:auto}.public-timing .cinematic-rates{display:flex;flex-wrap:wrap}.cinematic-ui-available{padding:0!important}.cinematic-tempo-dialog,#projects-dialog{background:#102138;color:#eff8ff;border:1px solid #5c819b;border-radius:16px;width:min(700px,92vw);max-height:84dvh;padding:24px}#projects-dialog article{border-bottom:1px solid #35516c;padding:16px 0}#projects-dialog h2{font-size:19px}#projects-dialog p{line-height:1.6;color:#cedced}#projects-dialog::backdrop{background:#010812cf}.world-toast{display:none!important}@media(max-width:480px){.site-brand{left:12px;top:12px}.site-brand p{max-width:215px}.cinematic-persistent{max-width:91px;top:86px!important}.cinematic-persistent button{font-size:10px}.site-links{left:10px;gap:6px}.site-links a,.site-links button{font-size:10px}#tour-status{left:5px;font-size:10px;max-width:calc(100% - 105px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Public stacking boundary: the inherited author shell uses z-index 1000. */
#world-shell{z-index:0!important}.site-brand,.site-links,#tour-status{z-index:4}.cinematic-persistent,.cinematic-holds{z-index:8}
#current-project{position:fixed;z-index:4;left:18px;bottom:100px;width:min(440px,calc(100vw - 138px));padding:17px 19px;background:linear-gradient(145deg,#10283af5,#081625f2);border:1px solid #41677c;border-radius:14px;box-shadow:0 10px 40px #0005}
#current-project[hidden]{display:none}#project-position{color:#89dcca;font-size:10px;font-weight:700;letter-spacing:.13em}#project-title{font-size:21px;line-height:1.2;color:#f0fbff;margin:9px 0 11px}.project-caption-scroll{max-height:200px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.project-caption-scroll p{font-size:13px;line-height:1.5;color:#d3e2ef;margin:0 0 12px}.project-caption-scroll .caption-label{font-weight:700;color:#a0ead9;margin:12px 0 5px}#project-benefit{margin-bottom:0}@media(max-width:480px){#current-project{left:10px;bottom:108px;width:calc(100vw - 121px);padding:12px;border-radius:11px}#project-title{font-size:17px}.project-caption-scroll{max-height:155px}.project-caption-scroll p{font-size:12px;line-height:1.5}}@media(max-height:560px){#current-project{bottom:75px;width:min(330px,calc(100vw - 145px));padding:9px}.project-caption-scroll{max-height:75px}#project-title{font-size:15px;margin:4px 0}}

/* Public cobalt presentation; no animated blur or glass transmission cost. */
#startup-cover{position:fixed;inset:0;z-index:6;display:grid;place-items:center;background:radial-gradient(ellipse at 60% 20%,#153e7c,#071426 65%);padding:26px;text-align:center}
#startup-cover[hidden]{display:none}.startup-card{width:min(480px,100%);padding:35px 24px;border:1px solid #4c7ebc;border-radius:28px;background:linear-gradient(145deg,#183b68,#0a1a32);box-shadow:inset 0 1px #a4d9ff55,0 30px 90px #0006}
.startup-mark{display:inline-grid;place-items:center;width:64px;height:64px;border:1px solid #7fbfff;border-radius:18px;font-size:24px;font-weight:800;color:#d6f4ff;background:#204b95}.startup-kicker{font-size:10px;letter-spacing:.15em;color:#99d6d4;margin-top:26px}.startup-card h1{font-size:clamp(28px,6vw,42px);letter-spacing:-.04em;line-height:1.08;margin:18px 0}.startup-card p:not(.startup-kicker){font-size:14px;line-height:1.6;color:#bdd0e7}.startup-progress{display:block;width:75px;height:3px;margin:24px auto 0;border-radius:3px;background:linear-gradient(90deg,#4383ff,#80e4c6)}
.site-brand{z-index:9}.site-links{z-index:9}.cinematic-persistent{border:1px solid #36578a;padding:6px;border-radius:14px;background:linear-gradient(160deg,#142d50f5,#09182bf5);box-shadow:inset 0 1px #b0dfff20,0 12px 35px #0005;scrollbar-width:thin}
.cinematic-persistent button{border-color:#466ca1;border-radius:9px;min-height:38px}.public-timing{border-color:#304b76;background:#0b1d35;padding:8px}.public-timing summary{padding:3px 0;font-weight:700;color:#d3e6ff}.public-timing .cinematic-live-pads{max-height:23dvh}
.public-layout{border-top:1px solid #36547d;margin-top:12px;padding-top:10px}.public-layout #public-scatter{width:100%;min-height:42px;background:linear-gradient(145deg,#167156,#105241);border:1px solid #59cda4;color:#f0fff8;font-size:12px;font-weight:700}.public-layout #public-scatter[aria-pressed=false]{background:#163e37}
.public-layout label{display:grid;grid-template-columns:1fr auto;gap:3px;margin-top:10px;font-size:12px;color:#d3e4f8}.public-layout output{font-weight:700;color:#a9e9d1}.public-layout input{grid-column:1/-1;width:100%;min-height:30px;margin:0;accent-color:#67dbb1}
#current-project{border-color:#4973ac;background:linear-gradient(145deg,#163968f5,#0a1a31f5);border-radius:19px;box-shadow:inset 0 1px #9bd7ff35,0 16px 48px #0005}#project-title{letter-spacing:-.025em}.project-caption-scroll .caption-label{color:#8fe0c8}
#projects-dialog article{padding:22px 0}#projects-dialog h2{color:#c9e6ff}

/* Compact journey: current stop first, earlier title chips below it. */
#tour-trail{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:100px;z-index:4;width:min(278px,calc(100vw - 128px));max-height:43dvh;display:flex;flex-direction:column;gap:5px;pointer-events:none}
#current-project{position:relative;inset:auto;width:100%;padding:10px 12px;border:1px solid #afdcaf;border-radius:13px;flex:none;animation:stage-border 3.6s ease-in-out infinite;pointer-events:auto}
#project-title{font-size:16px;line-height:1.18;margin:5px 0 6px}#project-position{font-size:9px}#project-problem{display:none}.project-caption-scroll{max-height:65px}.project-caption-scroll p{font-size:12px;line-height:1.4;margin:0}#project-benefit{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#tour-history{display:flex;flex-direction:column;gap:4px;min-height:0;overflow:auto;scrollbar-width:none;pointer-events:auto}.tour-history-chip{flex:none;display:block;width:92%;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:6px 9px;border:1px solid #365480;border-radius:8px;color:#a9c4e6;background:linear-gradient(140deg,#162f53f5,#0b192cf5)}
@keyframes stage-border{0%,100%{border-color:#a9d9b3;box-shadow:0 0 0 1px #080e18,inset 0 1px #e9f8b544}50%{border-color:#e1dea3;box-shadow:0 0 0 1px #080e18,0 0 7px #c7e7b51c}}
#public-string-theory{width:100%;margin-top:12px;background:#233967;border-color:#6990ca}#public-string-theory[aria-pressed=true]{background:#334a86;color:#e4efff}
#comic-discovery{position:fixed;left:max(12px,env(safe-area-inset-left));top:72px;z-index:9;max-width:min(290px,calc(100vw - 126px));display:flex;flex-direction:column;gap:6px}#comic-discovery button,#comic-library summary{font:700 12px system-ui;border:1px solid #121921;border-radius:11px;padding:9px 12px;cursor:pointer}#new-comic{background:#f1df82;color:#151b20;box-shadow:0 3px 12px #0005}#new-comic.unseen{animation:comic-notice 2.4s ease-in-out infinite}#comic-library summary{color:#d6e5f9;background:#162d4a;font-size:11px;padding:7px 10px;border-color:#3d5b83}#comic-list{max-height:26dvh;overflow:auto;display:grid;gap:5px;padding-top:5px}#comic-list button{text-align:left;background:#102642;color:#d9e9fc;border-color:#4b719a;font-weight:500}#comic-discovery [hidden]{display:none!important}
@keyframes comic-notice{0%,100%{box-shadow:0 0 0 1px #0a1019,0 0 5px #f5e38d44}50%{box-shadow:0 0 0 1px #0a1019,0 0 14px #f5e38d77}}
#new-comic{transition:opacity .24s ease}#new-comic.settling{opacity:0;pointer-events:none}
body.comic-active .cinematic-persistent,body.comic-active .cinematic-holds{display:none!important}#comic-transport{position:fixed!important;left:auto!important;right:max(10px,env(safe-area-inset-right))!important;top:85px!important;bottom:auto!important;width:min(215px,47vw)!important;max-height:63dvh!important;overflow:auto!important;border:1px solid #5b7faf!important;border-radius:15px!important;background:linear-gradient(145deg,#143564,#08172d)!important;z-index:10!important;padding:10px!important;font:12px system-ui!important}#comic-transport strong{font-size:12px}#comic-transport button,#comic-transport select{font:11px system-ui;min-height:34px;border:1px solid #5379aa;border-radius:8px;background:#17375d;color:#edf7ff}#comic-transport input{max-width:100%;accent-color:#8ad7b8}#comic-exit{position:fixed!important;right:10px!important;left:auto!important;top:auto!important;bottom:70px!important;font:700 12px system-ui!important;border:1px solid #8bc6af!important;border-radius:12px!important;background:#153f38!important;color:#e5fff3!important;padding:11px!important;z-index:11!important}#comic-stop,#comic-compact{display:none!important}#comic-transport[hidden],#comic-exit[hidden]{display:none!important}
@media(max-height:560px){#tour-trail{bottom:78px;max-height:35dvh;width:min(250px,calc(100vw - 128px))}.project-caption-scroll{max-height:34px}#project-title{font-size:14px}}
@media(prefers-reduced-motion:reduce){#current-project,#new-comic.unseen{animation:none}}

/* Preparation never obscures the page or the first rendered scene. */
#startup-cover{inset:auto auto auto 12px;top:75px;z-index:5;display:block;background:transparent;padding:0;pointer-events:none;text-align:left}
.startup-card{width:auto;max-width:240px;padding:9px 12px;border-radius:12px;box-shadow:none;background:#102640e6}
.startup-card .startup-mark,.startup-card .startup-kicker,.startup-card h1,.startup-progress{display:none}.startup-card p:not(.startup-kicker){margin:0;font-size:11px;line-height:1.4}

/* Keep the disclosure first and reachable; the whole rail can become one chip. */
#public-rail-body{display:flex;flex-direction:column;gap:5px}#public-rail-body[hidden]{display:none}
#public-rail-toggle{position:sticky;top:0;z-index:1;color:#dcf7de;background:linear-gradient(140deg,#254934,#152538);border-color:#a9d9b3;box-shadow:0 0 5px #d6eaa82b;min-height:32px;font-size:10px}
.cinematic-persistent.rail-collapsed{width:auto;max-width:112px;overflow:visible;padding:3px;border-radius:10px}
.tour-rail-collapsed .cinematic-holds{display:none!important}
body.comic-active .cinematic-persistent{display:flex!important;max-height:none;overflow:visible}
body.comic-active #public-rail-body{display:none}body.comic-active #comic-transport{top:132px!important}
body.tour-rail-collapsed #comic-transport,body.tour-rail-collapsed #comic-exit{display:none!important}
.tour-history-chip{text-align:left;font-family:inherit;cursor:pointer;touch-action:manipulation;min-height:28px}
.tour-history-chip:hover,.tour-history-chip:focus-visible{color:#effff7;border-color:#a7d9bd;outline:1px solid #beddbb;outline-offset:1px}
#public-stage-return{align-self:flex-start;pointer-events:auto;font:700 11px system-ui;color:#eaffed;background:#163b34;border:1px solid #acd6af;border-radius:10px;padding:8px 11px}
#public-stage-return[hidden]{display:none}
#public-rail-body,.public-timing{contain:layout style}
.stage-review-active .cinematic-holds{display:none!important}.stage-review-active .public-timing{opacity:.6;pointer-events:none}

/* One bounded journey viewport; the world stays clear on a narrow phone. */
#tour-trail{max-height:25dvh;width:min(248px,38vw);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#527a9a transparent;pointer-events:auto;gap:3px}
#tour-history{overflow:visible;flex:none;gap:3px}
#current-project{padding:8px 10px;border-radius:11px}
#project-title{font-size:14px;margin:4px 0;line-height:1.16}
#project-position{font-size:8px;letter-spacing:.08em}
.project-caption-scroll{max-height:none;overflow:hidden}
.project-caption-scroll p{font-size:11px;line-height:1.3}
#project-benefit{-webkit-line-clamp:2}
.tour-history-chip{min-height:28px;padding:4px 7px;font-size:10px;width:96%}
#public-stage-return{flex:none;font-size:10px;padding:6px 8px;min-height:28px}

/* Both header actions remain visible; only the body scrolls or collapses. */
.cinematic-persistent{top:max(4px,env(safe-area-inset-top))!important;right:max(4px,env(safe-area-inset-right))!important;width:132px;max-width:calc(100vw - 8px);max-height:calc(100dvh - max(8px,env(safe-area-inset-top)) - env(safe-area-inset-bottom));padding:4px;gap:4px;overflow:hidden;border-radius:11px}
#public-rail-header{display:flex;flex:none;align-items:stretch;gap:3px;min-width:0}
#public-rail-header button{flex:1;min-width:0;min-height:32px;padding:4px 3px;font-size:10px;line-height:1.15;overflow-wrap:normal}
#public-rail-toggle{position:static}
#public-rail-width{background:#1a3555;color:#ddedff}
#public-rail-body{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.cinematic-persistent.rail-wide{width:min(264px,calc(100vw - 8px))}
.cinematic-persistent.rail-collapsed{width:132px;max-width:calc(100vw - 8px);overflow:hidden;padding:3px}
.cinematic-persistent .cinematic-holds{position:static!important;inset:auto!important;width:100%;padding:0;overflow:visible;flex:none}
.cinematic-persistent button,.cinematic-persistent .cinematic-holds button{min-height:32px;padding:5px 4px;font-size:10px;box-shadow:none}
.public-timing{padding:4px;flex:none;min-width:0}
.public-timing .cinematic-live-pads{max-height:none;overflow:visible}
.public-timing .cinematic-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}
.public-timing fieldset{min-width:0;padding:2px}
.public-layout label{font-size:10px;margin-top:6px}
.public-layout #public-scatter{font-size:10px;min-height:34px}
.public-layout{padding-top:6px;margin-top:6px}
#public-string-theory{margin-top:6px}
body.comic-active .cinematic-persistent{max-height:calc(100dvh - 8px);overflow:hidden}
body.comic-active #comic-transport{top:48px!important;max-height:calc(100dvh - 130px)!important}
@media(max-width:480px){
  .site-brand{left:8px;top:6px;max-width:calc(100vw - 148px)}
  .site-brand a{font-size:10px;letter-spacing:.1em}.site-brand p{font-size:9px;margin-top:3px}
  #tour-trail{left:max(6px,env(safe-area-inset-left));bottom:90px;width:min(190px,52vw);max-height:25dvh}
  #current-project{padding:6px 8px}#project-title{font-size:12px}#project-position{font-size:7px}
  .project-caption-scroll p{font-size:10px}.tour-history-chip{font-size:10px;min-height:26px;padding:3px 6px}
  .site-links{gap:5px;left:6px}.site-links a,.site-links button{font-size:9px;padding:6px}
  #tour-status{font-size:9px;bottom:42px;max-width:calc(100vw - 16px)}
}
@media(max-height:560px){#tour-trail{bottom:72px;max-height:25dvh;width:min(225px,38vw)}#project-benefit{display:none}#project-title{font-size:12px}.site-brand p{display:none}}
