/* Mobile uses a measured map viewport and one scrollable panel, not stacked overlays. */
#mobileStage,#mobileDock{display:none}
#mobilePanel:not([open]){display:none}
.mobile-layout{height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.mobile-layout main{display:contents}
.mobile-layout header{grid-row:1;height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));gap:10px;z-index:1;background:#07101e;border-bottom:1px solid var(--line)}
.mobile-layout .brand{font-size:13px;gap:7px;flex-shrink:0}
.mobile-layout .brand-mark{font-size:28px;width:29px}
.mobile-layout .brand b{font-size:8px}
.mobile-layout .project,.mobile-layout #fullscreen{display:none}
.mobile-layout #guideToggle{white-space:normal;margin-left:auto;font-size:10px;line-height:1.25;max-width:86px;min-height:44px;padding:7px 9px}
.mobile-layout .film-link{font-size:10px;line-height:1.3;white-space:normal;max-width:68px;margin-left:0}
.mobile-layout #mobileStage{display:block;grid-row:2;min-height:0;min-width:0;position:relative;overflow:hidden;isolation:isolate}
.mobile-layout #scene{position:absolute;inset:0}
.mobile-layout #scene canvas{touch-action:none}
.mobile-layout .hero{left:max(16px,env(safe-area-inset-left));top:12px}
.mobile-layout .hero h1{font-size:27px;letter-spacing:-1px;margin:0;line-height:1.15}
.mobile-layout .hero .eyebrow,.mobile-layout .hero p,.mobile-layout .metrics{display:none}
.mobile-layout #mobileContext{position:absolute;top:48px;left:max(16px,env(safe-area-inset-left));right:16px;z-index:1;font-size:11px;line-height:1.4;color:#b7cde0;pointer-events:none;text-shadow:0 1px 4px #000}
.mobile-layout #mobileDock{display:flex;grid-row:3;flex-direction:column;min-width:0;background:#081321;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.mobile-layout #mobileToolbar{display:grid;grid-template-columns:1.45fr .85fr 1fr 44px;gap:6px;padding:8px 12px 4px}
.mobile-layout #mobileToolbar>button{position:static!important;display:block!important;width:auto;max-width:none;min-height:44px;padding:8px 5px;font-size:11px;line-height:1.3}
.mobile-layout #drawerOpen{font-size:0!important}
.mobile-layout #drawerOpen:after{content:'Evidence';font-size:11px}
.mobile-layout #mobilePlayback{display:flex;align-items:center;gap:4px;padding:5px 12px;border-bottom:1px solid var(--line)}
.mobile-layout #mobilePlayback[hidden]{display:none}
.mobile-layout #mobilePlayback>button{min-height:44px;min-width:44px;padding:6px;background:transparent;border:0}
.mobile-layout #mobileChapterInfo{flex:1;text-align:left;font-size:11px;line-height:1.3}
.mobile-layout #mobileChapterInfo small{display:block;color:var(--cyan);font-size:9px;margin-top:3px}
.mobile-layout .time-regions{position:static;transform:none;display:flex;justify-content:space-between;padding:0 12px;gap:6px}
.mobile-layout .time-regions button{min-height:44px;font-size:8px;letter-spacing:.15px;padding:6px 0;line-height:1.3;flex:1}
.mobile-layout .time-regions small{display:block;white-space:nowrap;font-size:8px;margin:4px 0 0}
.mobile-layout .time-regions i{margin-right:4px}
.mobile-layout footer{position:static;height:auto;width:auto;padding:0 12px 10px;backdrop-filter:none;background:transparent}
.mobile-layout .timeline-head{gap:8px;font-size:9px;letter-spacing:.4px}
.mobile-layout .timeline-head button{min-height:44px;min-width:44px;padding:5px}
.mobile-layout .timeline-head label{display:flex;align-items:center;gap:4px;font-size:9px;min-height:44px;max-width:142px}
.mobile-layout .timeline-head label input{width:18px;height:18px;flex-shrink:0}
.mobile-layout .timeline-note,.mobile-layout .footnote{display:none}
.mobile-layout #timeline{height:24px;margin:0;width:100%;display:block}
.mobile-layout .timeline-ticks{height:12px;font-size:7px;letter-spacing:0;display:flex;justify-content:space-between}
.mobile-layout .timeline-ticks span{position:static!important;transform:none!important}
.mobile-layout .timeline-ticks [data-date="2026-07-01"],.mobile-layout .timeline-ticks [data-date="2026-08-01"]{display:none}
.mobile-layout #chapterCard,.mobile-layout:not(.recording).tour #chapterCard{top:12px;left:16px;right:16px;transform:none;width:auto;max-width:none;text-align:left}
.mobile-layout.tour #chapterCard:not([hidden]){display:block}
.mobile-layout #chapterCard h2{font-size:19px;line-height:1.25;letter-spacing:-.3px;margin:7px 0}
.mobile-layout #chapterNumber{font-size:9px;letter-spacing:1px}
.mobile-layout #chapterSummary{display:none}
.mobile-layout.tour .hero,.mobile-layout.tour #mobileContext{display:none}
.mobile-layout #captions{bottom:10px!important;max-width:calc(100% - 24px);font-size:17px;line-height:1.35;padding:8px 10px;gap:2px 7px}
.mobile-layout #tooltip{display:none!important}
.mobile-layout #mobilePanel{position:fixed;inset:auto 0 0;width:100%;max-width:100%;height:70vh;height:70dvh;max-height:calc(100dvh - 64px);margin:0;padding:0 0 env(safe-area-inset-bottom);border:1px solid #718eaa;border-bottom:0;border-radius:18px 18px 0 0;background:#0b1727;color:var(--ink);box-shadow:0 -14px 50px #0008;overflow:hidden}
.mobile-layout #mobilePanel[open]{display:flex;flex-direction:column}
.mobile-layout #mobilePanel::backdrop{background:#02091466}
.mobile-layout .mobile-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 12px 0;flex-shrink:0}
.mobile-layout .mobile-panel-heading h2{font-size:17px;letter-spacing:-.3px;font-weight:500;margin:0}
.mobile-layout #mobilePanelClose{min-width:44px;min-height:44px;padding:0;border:0;background:transparent;font-size:27px}
.mobile-layout .mobile-panel-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px 12px 8px;border-bottom:1px solid var(--line);flex-shrink:0}
.mobile-layout .mobile-panel-tabs button{min-height:44px;font-size:12px;padding:8px 3px;background:transparent}
.mobile-layout .mobile-panel-tabs [aria-pressed=true]{background:#243e56;border-color:var(--cyan);color:#fff}
.mobile-layout .mobile-panel-content{min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px}
.mobile-layout [data-mobile-pane][hidden]{display:none!important}
.mobile-layout .mobile-panel-footer{padding:10px 12px;border-top:1px solid var(--line);flex-shrink:0;margin-top:auto}
.mobile-layout #mobilePanelDone{width:100%;min-height:44px;font-size:12px;line-height:1.3}
.mobile-layout #mobilePanel .controls,.mobile-layout #mobilePanel #graphLegend,.mobile-layout #mobilePanel #inspector,.mobile-layout #mobilePanel .audio-bar,.mobile-layout #mobilePanel #guideNavigator,.mobile-layout #mobilePanel #guideCue,.mobile-layout #mobilePanel #transcript,.mobile-layout #mobilePanel #growthCard,.mobile-layout #mobilePanel #ontologyCard,.mobile-layout #mobilePanel #enterpriseStory{position:static!important;inset:auto!important;transform:none!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;overflow:visible;pointer-events:auto}
.mobile-layout #mobilePanel .controls,.mobile-layout #mobilePanel #graphLegend,.mobile-layout #mobilePanel #inspector{display:block!important;opacity:1!important}
.mobile-layout #mobilePanel #closeInspector{display:none}
.mobile-layout #mobilePanel .section-label{display:block;font-size:10px;margin:15px 0 8px}
.mobile-layout #mobilePanel .section-label:first-child{margin-top:0}
.mobile-layout #mobilePanel .segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 18px}
.mobile-layout #mobilePanel .segmented button{font-size:12px;line-height:1.4;padding:7px 4px;min-height:48px}
.mobile-layout #subjectPicker{font-size:14px;margin:0}
.mobile-layout #subjectPicker summary{min-height:44px;padding:12px;line-height:1.4}
.mobile-layout .subject-options{position:static;width:auto;max-height:none;margin-top:8px;padding:8px;background:#0b1727;box-shadow:none}
.mobile-layout #subjectChoices label{font-size:14px;line-height:1.5;padding:9px 4px;min-height:44px;gap:10px}
.mobile-layout #subjectChoices input{width:20px;height:20px;flex-shrink:0}
.mobile-layout #allSubjects{min-height:44px;font-size:13px}
.mobile-layout #mobilePanel .edition-label{display:flex;align-items:center;justify-content:space-between}
.mobile-layout #resetEditions{min-height:44px;font-size:12px;padding:8px}
.mobile-layout #mobilePanel #editions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin:0}
.mobile-layout #mobilePanel .edition{font-size:12px;line-height:1.4;min-height:44px;padding:6px 0}
.mobile-layout #mobilePanel .edition i{flex-shrink:0}
.mobile-layout #mobilePanel .edition span{display:none}
.mobile-layout #mobilePanel #graphScope button{font-size:12px;min-height:44px;padding:8px}
.mobile-layout #mobilePanel .controls-foot{display:flex;align-items:center;margin-top:12px;padding-top:12px;font-size:11px}
.mobile-layout #mobilePanel .controls-foot span{display:none}
.mobile-layout #mobilePanel .controls-foot:before{content:'Drag to orbit · Pinch to zoom'}
.mobile-layout #mobilePanel #resetCamera{min-height:44px;font-size:12px;margin-left:auto}
.mobile-layout #mobilePanel #graphLegend{padding:0}
.mobile-layout #legendEditions{font-size:14px;gap:12px}
.mobile-layout #mobilePanel #graphLegend h3{font-size:17px}
.mobile-layout #mobilePanel #graphLegend p,.mobile-layout .mobile-legend-intro{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 18px}
.mobile-layout #mobilePanel #graphLegend small{font-size:12px;line-height:1.6}
.mobile-layout:not(.graph-lens) #graphLegend h3,.mobile-layout:not(.graph-lens) #graphLegend p,.mobile-layout:not(.graph-lens) #graphLegend small,.mobile-layout:not(.graph-lens) #graphLegend .shared-key,.mobile-layout:not(.graph-lens) #graphLegend .index-key{display:none}
.mobile-layout #mobilePanel #method{min-height:44px;font-size:13px;margin-top:16px;width:100%;text-align:left}
.mobile-layout #mobilePanel #detailTitle{font-size:24px;line-height:1.2;padding-right:0}
.mobile-layout #mobilePanel #detailContent{font-size:14px;line-height:1.65}
.mobile-layout #mobilePanel #detailContent .small,.mobile-layout #mobilePanel #detailContent blockquote{font-size:12px}
.mobile-layout #mobilePanel #detailContent .subject-link{font-size:13px;min-height:44px;line-height:1.4}
.mobile-layout #mobilePanel #detailContent summary{min-height:44px;padding:10px 0}
.mobile-layout #mobilePanel .audio-bar{display:flex!important;gap:8px;margin-bottom:18px}
.mobile-layout #mobilePanel .audio-bar .voice{display:block}
.mobile-layout #mobilePanel .audio-bar .primary{min-height:44px;font-size:12px}
.mobile-layout #mobilePanel #transcriptToggle{min-height:44px;font-size:12px;margin-left:0}
.mobile-layout #mobilePanel .audio-progress{width:100%;gap:10px}
.mobile-layout #mobilePanel #audioSeek{height:28px;min-width:0}
.mobile-layout #mobilePanel .guide-heading{display:flex;font-size:12px;gap:8px;margin-bottom:8px}
.mobile-layout #mobilePanel .guide-actions{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}
.mobile-layout #mobilePanel .guide-actions button{min-height:44px;font-size:12px;padding:7px}
.mobile-layout #mobilePanel #guideChapter{width:100%;min-width:0;font-size:16px;min-height:44px;margin:0;padding:6px}
.mobile-layout #mobilePanel #guideExplore{grid-column:1/-1}
.mobile-layout #mobilePanel #guideCue{border-left:2px solid var(--cyan);padding:0 0 0 12px;margin:18px 0}
.mobile-layout #mobilePanel #guideCue b{font-size:14px;line-height:1.5}
.mobile-layout #mobilePanel #guideCue span{font-size:12px;line-height:1.6}
.mobile-layout #mobilePanel #growthCard{margin:18px 0}
.mobile-layout #mobilePanel #ontologyCard{margin:18px 0;font-size:10px;gap:6px}
.mobile-layout #mobilePanel #enterpriseStory>div{position:static!important;inset:auto!important;transform:none;width:auto!important;max-height:none!important;padding:0;margin:18px 0;background:none;border:0;overflow:visible;text-align:left}
.mobile-layout #mobilePanel .enterprise-hook h2,.mobile-layout #mobilePanel .enterprise-close h2{font-size:25px;letter-spacing:-.4px;line-height:1.3}
.mobile-layout #mobilePanel .enterprise-hook>p,.mobile-layout #mobilePanel .enterprise-cta{font-size:16px;line-height:1.5}
.mobile-layout #mobilePanel .enterprise-sidebar h3{font-size:12px!important}
.mobile-layout #mobilePanel .enterprise-sidebar small,.mobile-layout #mobilePanel #enterpriseStory small{font-size:12px!important;line-height:1.6}
.mobile-layout #mobilePanel .enterprise-evidence blockquote{font-size:14px;line-height:1.6}
.mobile-layout #mobilePanel .enterprise-evidence button{font-size:13px;min-height:44px}
.mobile-layout #mobilePanel .decision-questions{display:block;margin:16px 0}
.mobile-layout #mobilePanel .decision-questions p{font-size:16px;max-width:none;margin:12px 0}
.mobile-layout #mobilePanel #transcript{margin-top:18px;font-size:14px;line-height:1.7}
.mobile-layout #guideWelcome{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:22px;overflow:auto}
.mobile-layout #guideWelcome button{min-height:44px;font-size:13px}
/* Phone controls roll into a narrow right-edge rail; one side drawer opens at a time. */
.mobile-layout header{height:calc(48px + env(safe-area-inset-top))}
.mobile-layout #guideToggle{display:none}
.mobile-layout .film-link{margin-left:auto;max-width:none;font-size:11px}
.mobile-layout #mobileToolbar{position:absolute;right:max(6px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);z-index:4;display:flex;flex-direction:column;width:48px;max-height:calc(100% - 16px);overflow-y:auto;padding:0;gap:5px;scrollbar-width:none}
.mobile-layout #mobileToolbar button{min-height:44px;flex-shrink:0;line-height:1.2;font-size:10px;padding:8px 2px;background:#0b1a2eeb;border-color:#8aa8bf55;border-radius:12px;box-shadow:0 2px 10px #0004}
.mobile-layout #mobileToolbar #drawerOpen:after{font-size:9px}
.mobile-layout #mobileToolbar #mobileExpand{font-size:23px;padding:0}
.mobile-layout #mobilePlayback{display:block;padding:0;border:0}
.mobile-layout #mobilePlayback[hidden],.mobile-layout #mobileChapterInfo,.mobile-layout #mobileNext{display:none}
.mobile-layout #mobileToolbar #mobilePlay{width:48px;background:#d9f5ff;color:#071321;font-size:17px}
.mobile-layout #mobileDock{padding:0 max(8px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(8px,env(safe-area-inset-left))}
.mobile-layout #mobileTimeToggle{width:100%;min-height:48px;border:0;background:transparent;font-size:11px;letter-spacing:.4px;text-align:center}
.mobile-layout #mobileTimeline[hidden]{display:none}
.mobile-layout #mobileTimeline{padding-bottom:4px}
.mobile-layout #mobileContext{right:64px}
.mobile-layout #mobileContext:after{content:'Drag to turn · Pinch to zoom · Two fingers to pan';display:block;color:#9aafc2;font-size:9px;margin-top:5px}
.mobile-layout #chapterCard,.mobile-layout:not(.recording).tour #chapterCard{right:68px}
.mobile-layout #mobilePanel{inset:0 0 0 auto;width:min(350px,calc(100vw - 44px));height:100vh;height:100dvh;max-height:100dvh;border-radius:18px 0 0 18px;border:1px solid #718eaa;border-right:0;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right)}
.mobile-layout .mobile-panel-tabs{padding-left:10px;padding-right:10px}
.mobile-layout #mobilePanel .mobile-panel-content{padding:14px}
.mobile-layout.mobile-map-focus{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.mobile-layout.mobile-map-focus header,.mobile-layout.mobile-map-focus .hero,.mobile-layout.mobile-map-focus #mobileContext,.mobile-layout.mobile-map-focus #mobileDock{display:none}
.mobile-layout.mobile-map-focus #mobileStage{grid-column:1;grid-row:1}
@media(min-width:600px) and (max-height:500px) and (orientation:landscape){
  .mobile-layout #mobilePanel{width:min(400px,65vw)}
  .mobile-layout .hero h1{font-size:23px}
  .mobile-layout #mobileContext{top:43px}
  .mobile-layout #mobileTimeline{max-height:38dvh;overflow:auto}
}
