:root{font-family:IBM Plex Sans,Noto Sans SC,Microsoft YaHei,sans-serif;color:#171a1d;background:#f4f1ea;font-synthesis:none;--paper: #f4f1ea;--surface: #fcfbf7;--ink: #171a1d;--muted: #656a6d;--line: #cdd0cc;--signal: #d64b32;--observed: #246b5c;--precomputed: #8a651c;--danger: #a43636;--viewport: #101315}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}#root{padding-right:152px}html{scroll-behavior:smooth;scroll-padding-top:58px}button,select,input{font:inherit}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.app-shell{min-height:100vh;padding:20px 24px 24px}.masthead{min-height:112px;display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:16px}.eyebrow,.section-index{margin:0 0 8px;color:var(--muted);font:600 11px/1.2 IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase}h1{margin:0;font-size:clamp(42px,6vw,86px);font-weight:600;line-height:.82;letter-spacing:-.055em}h2{margin:0 0 12px;font-size:20px;font-weight:600}.truth-labels{display:flex;gap:8px;font:600 10px/1 IBM Plex Mono,monospace}.truth-labels span{border:1px solid var(--observed);color:var(--observed);padding:7px 9px}.truth-labels .unverified{border-color:var(--precomputed);color:var(--precomputed)}.workspace{display:grid;grid-template-columns:244px minmax(480px,1fr) 248px;min-height:calc(100vh - 157px);border-bottom:1px solid var(--ink)}.control-rail,.inspector{padding:28px 20px 20px 0}.inspector{padding-left:20px;padding-right:0}.muted{color:var(--muted);font-size:13px;line-height:1.5}fieldset{margin:28px 0 20px;padding:0;border:0}legend,.select-field{display:block;margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.radio-row{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font-size:14px}.radio-row:last-child{border-bottom:1px solid var(--line)}.radio-row input{accent-color:var(--signal)}.primary-action,.secondary-action{width:100%;border:1px solid var(--ink);padding:12px 14px;cursor:pointer}.primary-action{color:var(--surface);background:var(--ink)}.secondary-action{margin-top:12px;color:var(--ink);background:transparent}button:disabled{cursor:not-allowed;opacity:.45}.status-block{display:flex;gap:10px;margin:18px 0 24px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.status-dot{width:7px;height:7px;margin-top:4px;flex:0 0 auto;border-radius:50%;background:var(--precomputed)}.status-block strong{font:600 10px/1.2 IBM Plex Mono,monospace;letter-spacing:.1em}.status-block p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.status-block.is-error .status-dot{background:var(--danger)}.status-block.is-error p{color:var(--danger)}.select-field select{width:100%;margin-top:7px;padding:8px;border:1px solid var(--line);color:var(--ink);background:var(--surface);font-size:12px;text-transform:none}.viewport-panel{position:relative;min-height:620px;margin:16px 0;overflow:hidden;background:var(--viewport)}.viewport-panel canvas{display:block;width:100%;height:100%;min-height:620px}.viewport-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;pointer-events:none;text-align:center;color:#d9ddd8}.viewport-empty span{color:#858d88;font:500 11px/1 IBM Plex Mono,monospace;letter-spacing:.18em}.viewport-empty p{margin:14px 0 0;font-size:15px}.viewport-caption{position:absolute;right:14px;bottom:12px;left:14px;display:flex;justify-content:space-between;color:#aeb5b1;font:500 10px/1.3 IBM Plex Mono,monospace;pointer-events:none}.inspector dl{margin:24px 0}.inspector dl div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid var(--line)}.inspector dl div:last-child{border-bottom:1px solid var(--line)}.inspector dt{color:var(--muted);font-size:12px}.inspector dd{margin:0;font:500 12px/1.3 IBM Plex Mono,monospace;text-align:right}.inspector dd.warning{color:var(--precomputed)}.camera-readout{display:grid;gap:7px;padding:14px;background:var(--ink);color:var(--surface)}.camera-readout span{color:#aeb5b1;font:500 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em}.camera-readout strong{font-size:12px}.camera-readout code{color:#c9d2cd;font-size:10px;overflow-wrap:anywhere}.research-note{margin-top:24px;border-left:2px solid var(--precomputed);padding-left:12px}.research-note strong{font-size:12px}.research-note p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}@media(max-width:1050px){.workspace{grid-template-columns:220px minmax(0,1fr)}.inspector{display:none}}@media(max-width:760px){.app-shell{padding:16px}.masthead{align-items:flex-start;gap:20px;flex-direction:column}.workspace{display:block}.control-rail{padding-right:0}.viewport-panel,.viewport-panel canvas{min-height:440px}.viewport-caption{gap:8px;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.top-nav{position:fixed;z-index:40;top:0;right:0;bottom:0;display:grid;grid-template-rows:76px 1fr auto;width:152px;border-left:1px solid var(--line);background:var(--surface)}.top-nav button{border:0;color:var(--ink);background:transparent;cursor:pointer}.wordmark{border-bottom:1px solid var(--line)!important;font:700 19px/1 IBM Plex Mono,monospace!important;letter-spacing:-.04em;text-align:left;padding-left:20px}.wordmark span{color:var(--signal)}.nav-items{display:flex;flex-direction:column;min-height:0}.nav-items button{position:relative;display:grid;grid-template-columns:24px 1fr;flex:0 0 auto;min-height:58px;align-items:center;gap:4px;padding:10px 16px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.25;text-align:left}.nav-items button:after{position:absolute;top:0;right:auto;bottom:0;left:0;width:3px;background:var(--signal);content:"";transform:scaleY(0);transition:transform .15s}.nav-items button.active:after,.nav-items button:hover:after{transform:scaleY(1)}.nav-items small{color:var(--muted);font:9px/1 IBM Plex Mono,monospace}.nav-status{padding:16px 18px;color:var(--observed);font:600 9px/1.4 IBM Plex Mono,monospace;letter-spacing:.04em}.landing-page{overflow:hidden}.hero-section{position:relative;display:grid;grid-template-columns:minmax(330px,.82fr) minmax(500px,1.3fr);min-height:calc(100vh - 58px);border-bottom:1px solid var(--ink)}.hero-copy{z-index:2;display:flex;flex-direction:column;justify-content:center;padding:7vw 4vw 5vw 5vw}.hero-copy h1{font-size:clamp(58px,8vw,112px);line-height:.86}.hero-subtitle{margin:44px 0 32px;font:400 clamp(20px,2vw,31px)/1.15 "IBM Plex Sans",sans-serif;letter-spacing:-.035em}.hero-action,.text-action{align-self:flex-start;border:0;border-bottom:1px solid var(--ink);padding:10px 0;color:var(--ink);background:transparent;font-weight:600;cursor:pointer}.hero-action span{padding-left:34px;color:var(--signal)}.hero-visual{position:relative;min-height:650px;margin:22px 22px 22px 0;overflow:hidden;background:var(--viewport)}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-visual figcaption{position:absolute;z-index:2;right:14px;bottom:12px;left:14px;display:flex;justify-content:space-between;color:#fff;font:500 9px/1.3 IBM Plex Mono,monospace;letter-spacing:.07em}.hero-index{display:none}.statement-section{padding:150px max(5vw,32px) 100px}.statement{max-width:1000px;margin:30px 0 70px;font-size:clamp(30px,3.8vw,54px);line-height:1.15;letter-spacing:-.035em}.fact-line{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.fact-line span{padding:22px 18px;border-right:1px solid var(--line);color:var(--muted);font-size:12px}.fact-line span:last-child{border-right:0}.fact-line strong{display:block;margin-bottom:6px;color:var(--ink);font:500 24px/1 IBM Plex Mono,monospace}.pipeline-section{padding:80px 5vw 150px;background:var(--ink);color:var(--surface)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:58px}.section-heading h2{max-width:650px;margin:0;font-size:clamp(36px,5vw,70px);line-height:.95;letter-spacing:-.05em}.pipeline-track{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #585c5e;border-bottom:1px solid #585c5e}.pipeline-track button{position:relative;min-height:170px;padding:20px 16px;border:0;border-right:1px solid #585c5e;color:inherit;background:transparent;text-align:left;cursor:pointer;transition:background .15s,color .15s}.pipeline-track button:last-child{border-right:0}.pipeline-track button:hover{color:var(--ink);background:var(--surface)}.pipeline-track small{color:#929898;font:500 10px/1 IBM Plex Mono,monospace}.pipeline-track strong{display:block;margin-top:42px;font-size:15px;font-weight:500}.pipeline-track span{position:absolute;bottom:20px;left:16px;color:var(--signal);font-size:11px}.evidence-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;padding:140px 5vw}.evidence-copy h2{max-width:530px;margin:22px 0 28px;font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.05em}.evidence-copy>p:not(.eyebrow){max-width:560px;color:var(--muted);font-size:17px;line-height:1.7}.evidence-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:center}.evidence-triptych figure{margin:0}.evidence-triptych img{width:100%;aspect-ratio:4/3;object-fit:cover}.evidence-triptych figcaption{margin-top:8px;color:var(--muted);font:500 8px/1.3 IBM Plex Mono,monospace}.landing-cta{display:flex;justify-content:space-between;align-items:flex-end;margin:0 22px;padding:90px 5vw;color:#fff;background:var(--signal)}.landing-cta h2{margin:12px 0 0;font-size:clamp(44px,6vw,86px);line-height:.9;letter-spacing:-.055em}.landing-cta button{border:1px solid white;padding:18px 22px;color:#fff;background:transparent;cursor:pointer}.landing-cta button span{margin-left:45px}.landing-page footer{display:flex;justify-content:space-between;margin:0 22px;padding:32px 0;color:var(--muted);font:500 9px/1.3 IBM Plex Mono,monospace}.module-page{min-height:calc(100vh - 58px);padding:60px 5vw 100px}[data-page-section]:not(#top){border-top:1px solid var(--ink)}.viewer-deferred{min-height:72vh;display:grid;place-content:center;gap:14px;color:#aeb5b1;background:var(--viewport);text-align:center}.viewer-deferred span{font:500 10px/1 IBM Plex Mono,monospace;letter-spacing:.14em}.viewer-deferred strong{color:#fff;font-size:clamp(26px,4vw,52px);font-weight:500}.section-deferred{min-height:70vh;display:grid;place-content:center;gap:10px;color:var(--muted);text-align:center}.section-deferred span{font:600 10px/1 IBM Plex Mono,monospace;letter-spacing:.14em}.section-deferred strong{color:var(--ink);font-size:clamp(24px,3vw,42px);font-weight:500}.module-header{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding-bottom:36px;border-bottom:1px solid var(--ink)}.module-header h1{font-size:clamp(42px,5vw,72px);line-height:.95}.module-header p:not(.eyebrow){max-width:580px;margin:28px 0 0;color:var(--muted)}.module-header-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}.upstream-link{display:grid;grid-template-columns:22px 1fr;gap:5px 9px;min-width:188px;border:1px solid var(--ink);padding:8px 11px;color:var(--ink);text-decoration:none}.github-icon{grid-row:1 / 3;align-self:center;width:20px;height:20px}.upstream-link span{color:var(--muted);font:500 8px/1 IBM Plex Mono,monospace;text-transform:uppercase}.upstream-link strong{grid-column:2;font:500 10px/1 IBM Plex Mono,monospace}.upstream-link:hover,.upstream-link:focus-visible{color:#fff;background:var(--ink)}.upstream-link:hover span,.upstream-link:focus-visible span{color:#b9c0bc}.version-switch{display:flex;border:1px solid var(--ink)}.version-switch button{min-width:100px;border:0;border-right:1px solid var(--ink);padding:11px 14px;background:transparent;cursor:pointer}.version-switch button:last-child{border-right:0}.version-switch button.active{color:#fff;background:var(--ink)}.module-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:30px 0;border-bottom:1px solid var(--line)}.module-stats span{padding:0 22px 22px 0;color:var(--muted);font-size:12px}.module-stats strong{display:block;margin-bottom:8px;color:var(--ink);font:500 24px/1 IBM Plex Mono,monospace}.dataset-gallery-header{display:flex;justify-content:space-between;align-items:center;margin:8px 0 10px;padding-top:12px;border-top:1px solid var(--ink)}.dataset-gallery-header>div{display:flex;gap:12px;align-items:baseline;font:500 10px/1 IBM Plex Mono,monospace;text-transform:uppercase}.dataset-gallery-header>div span{color:var(--muted)}.dataset-gallery-header button{border:1px solid var(--ink);padding:8px 11px;color:var(--ink);background:transparent;font:500 9px/1 IBM Plex Mono,monospace;cursor:pointer}.dataset-gallery-header button:hover,.dataset-gallery-header button:focus-visible{color:#fff;background:var(--ink)}.mode-badge{border:1px solid #375a9e;padding:9px 12px;color:#375a9e;font:600 9px/1 IBM Plex Mono,monospace}.route-loading{min-height:calc(100vh - 58px);display:grid;place-content:center;color:var(--muted);font:500 12px/1 IBM Plex Mono,monospace}.photo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px}.photo-grid button{position:relative;overflow:hidden;border:0;padding:0;background:#ddd;cursor:zoom-in;aspect-ratio:4/3}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-grid span{position:absolute;top:8px;left:8px;padding:4px 5px;color:#fff;background:#00000094;font:500 9px/1 IBM Plex Mono,monospace}.photo-grid small{position:absolute;right:7px;bottom:7px;color:#fff;font:500 8px/1 IBM Plex Mono,monospace;text-shadow:0 1px 4px black}.lightbox{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;padding:5vw;background:#0a0c0df0;cursor:zoom-out}.lightbox>button{position:absolute;top:22px;right:28px;border:0;color:#fff;background:transparent;font-size:32px;cursor:pointer}.lightbox img{max-width:86vw;max-height:78vh;object-fit:contain}.lightbox div{display:flex;justify-content:space-between;margin-top:12px;color:#fff}.lightbox span{color:#aeb5b1;font:500 9px/1.3 IBM Plex Mono,monospace}.colmap-viewer-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px}.colmap-scene{position:relative;height:min(66vh,680px);min-height:500px;overflow:hidden;background:var(--viewport)}.colmap-scene canvas{width:100%;height:100%;display:block}.colmap-scene>span{position:absolute;z-index:2;top:12px;left:14px;padding:5px 6px;color:#d6dcd8;background:#101315b8;font:500 8px/1 IBM Plex Mono,monospace;pointer-events:none}.colmap-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;margin-top:24px}.stat-monolith{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.stat-monolith div{padding:18px 0;border-bottom:1px solid var(--line)}.stat-monolith strong{display:block;font:500 23px/1 IBM Plex Mono,monospace}.stat-monolith span{display:block;margin-top:7px;color:var(--muted);font-size:11px}.camera-image{position:relative;background:var(--viewport);aspect-ratio:4/3}.colmap-viewer-layout .camera-browser{display:flex;min-width:0;flex-direction:column}.colmap-viewer-layout .camera-image{flex:1;min-height:0;aspect-ratio:auto}.camera-image img{width:100%;height:100%;object-fit:contain}.camera-image>span{position:absolute;bottom:10px;left:10px;padding:5px;color:#fff;background:var(--observed);font:600 8px/1 IBM Plex Mono,monospace}.camera-strip{display:flex;gap:2px;margin-top:6px;overflow-x:auto}.camera-strip button{flex:0 0 34px;height:26px;border:1px solid var(--line);background:transparent;cursor:pointer}.camera-strip button.active{border-color:var(--signal);color:#fff;background:var(--signal)}.camera-meta{display:flex;justify-content:space-between;gap:20px;padding:14px 0}.camera-meta code{color:var(--muted);font-size:10px}.method-note{padding:22px;color:#fff;background:var(--ink)}.method-note h2{margin-top:42px;font-size:30px;line-height:1}.method-note>p:not(.eyebrow){color:#bec3c0;font-size:13px;line-height:1.6}.method-note dl{margin-top:34px}.method-note dl div{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #505557;font-size:11px}.method-note dd{margin:0}.colmap-provenance{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr);gap:40px;margin-top:70px;padding-top:34px;border-top:1px solid var(--ink)}.colmap-provenance header h2{margin:14px 0;font-size:clamp(25px,3vw,40px);line-height:1.15}.colmap-provenance header>p:last-child{color:var(--muted);font-size:12px;line-height:1.6}.provenance-table{border-top:1px solid var(--ink)}.provenance-table>div{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:12px;padding:12px 10px;border-bottom:1px solid var(--line);font-size:12px}.provenance-table .table-head{color:var(--muted);font-size:10px}.provenance-table .selected{background:#ebe5d9}.provenance-notes{grid-column:2}.provenance-notes p{display:grid;grid-template-columns:120px 1fr;gap:18px;margin:0;padding:11px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}.provenance-notes strong{color:var(--ink)}.pgsr-layout{display:grid;grid-template-columns:1fr 240px;gap:24px;margin-top:32px}.line-chart{margin:0;border:1px solid var(--line);background:var(--surface)}.line-chart figcaption,.chart-range{display:flex;justify-content:space-between;padding:12px 16px;font-size:11px}.line-chart figcaption strong{color:var(--muted);font-weight:400}.line-chart svg{display:block;width:100%}.line-chart line{stroke:#dedfdb;stroke-width:1}.chart-range{color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace}.metric-aside{border-top:1px solid var(--ink)}.metric-aside>div{display:grid;gap:5px;padding:15px 0;border-bottom:1px solid var(--line)}.metric-aside strong{font:500 24px/1 IBM Plex Mono,monospace}.metric-aside span,.metric-aside>p:last-child{color:var(--muted);font-size:10px}.render-lab{margin-top:48px}.render-toolbar{display:flex;justify-content:space-between;margin-bottom:8px}.render-toolbar button,.render-toolbar select,.lf-toolbar button{border:1px solid var(--ink);padding:9px 13px;color:var(--ink);background:transparent;cursor:pointer}.render-toolbar button.active,.lf-toolbar button.active{color:#fff;background:var(--ink)}.render-lab figure{position:relative;margin:0;background:var(--viewport)}.render-lab img{display:block;width:100%;max-height:75vh;object-fit:contain}.render-lab figcaption{position:absolute;right:12px;bottom:10px;left:12px;display:flex;justify-content:space-between;color:#fff;font:500 9px/1 IBM Plex Mono,monospace}.capture-workbench{display:grid;grid-template-columns:220px minmax(460px,1fr) 260px;gap:18px;margin-top:32px;align-items:start}.capture-workbench .array-controls{position:sticky;top:20px}.capture-facts{margin:22px 0;border-top:1px solid var(--ink)}.capture-facts div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font:500 10px/1 IBM Plex Mono,monospace}.capture-facts dd{margin:0}.secondary-action{width:100%;margin-top:7px;border:1px solid var(--ink);padding:11px;color:var(--ink);background:transparent;cursor:pointer}.capture-stage{min-width:0}.capture-viewport{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--viewport);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.capture-viewport>img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.viewfinder{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.viewfinder:before,.viewfinder:after{position:absolute;content:"";background:#fff6}.viewfinder:before{top:50%;left:46%;width:8%;height:1px}.viewfinder:after{top:46%;left:50%;width:1px;height:8%}.viewfinder i{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid rgba(255,255,255,.28)}.viewfinder i:nth-child(2){inset:33.333% 0 auto;height:33.333%;border-width:1px 0}.viewfinder span{position:absolute;top:12px;left:12px;padding:5px 7px;color:#fff;background:#00000094;font:500 8px/1 IBM Plex Mono,monospace}.capture-hud{position:absolute;right:12px;bottom:12px;left:12px;display:flex;justify-content:space-between;gap:12px;padding:8px 10px;color:#fff;background:#0c0f0eb8;font:500 8px/1 IBM Plex Mono,monospace}.capture-flash{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid white;animation:capture-flash .12s ease-out;pointer-events:none}@keyframes capture-flash{0%{background:#ffffff59}to{background:transparent}}.capture-progress{height:3px;margin-top:5px;background:var(--line)}.capture-progress span{display:block;height:100%;background:var(--signal);transition:width .08s linear}.capture-stage>p{margin:9px 0 0;color:var(--muted);font-size:10px}.capture-array-panel{min-width:0;border-top:1px solid var(--ink)}.capture-array-panel>header{display:flex;justify-content:space-between;padding:11px 0;font:500 10px/1 IBM Plex Mono,monospace}.capture-grid{display:grid;gap:2px;padding:2px;background:var(--ink)}.capture-grid button{position:relative;min-width:0;border:0;padding:0;overflow:hidden;color:#858b88;background:#343a37;cursor:pointer}.capture-grid button.active{outline:2px solid var(--signal);outline-offset:-2px;z-index:1}.capture-grid button img{width:100%;height:100%;object-fit:cover}.capture-grid button i{position:absolute;top:34%;right:34%;bottom:34%;left:34%;border:1px solid #78807b;transform:rotate(45deg)}.capture-grid button span{position:absolute;right:2px;bottom:2px;padding:2px;color:#fff;background:#0000008c;font:500 6px/1 IBM Plex Mono,monospace}.selected-pose{display:grid;grid-template-columns:1fr auto auto;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.array-layout{display:grid;grid-template-columns:250px minmax(450px,1fr) 240px;gap:40px;margin-top:44px}.array-controls label{display:grid;grid-template-columns:1fr 45px;gap:8px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.array-controls input{grid-column:1 / -1;width:100%;accent-color:var(--signal)}.array-controls strong{grid-area:1/2;color:var(--ink);text-align:right;font-family:IBM Plex Mono,monospace}.parameter-note{margin:20px 0;padding-left:12px;border-left:2px solid var(--precomputed);color:var(--muted);font-size:11px;line-height:1.5}.array-stage{padding:40px;background:var(--viewport)}.array-grid{display:grid;gap:8px;width:min(65vh,100%);margin:0 auto}.array-grid div{position:relative;display:grid;place-content:center;border:1px solid #59605c;color:#aab1ad;font:500 8px/1 IBM Plex Mono,monospace}.array-grid i{position:absolute;top:28%;right:28%;bottom:28%;left:28%;border:1px solid #737b76;transform:rotate(45deg)}.array-grid div.center{border-color:var(--signal);color:#fff;background:#d64b322e}.array-axis{display:flex;justify-content:space-between;margin-top:20px;color:#7e8581;font:500 8px/1 IBM Plex Mono,monospace}.array-readout>strong{display:block;margin-top:35px;font:500 68px/.9 IBM Plex Mono,monospace}.array-readout>span{color:var(--muted);font-size:11px}.array-readout pre{margin-top:30px;padding:14px;overflow:auto;color:#c5ccc8;background:var(--ink);font:10px/1.7 IBM Plex Mono,monospace}.live-lf-capture{margin-top:34px;padding-bottom:54px;border-bottom:1px solid var(--ink)}.live-lf-capture>header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.live-lf-capture h2{margin:8px 0 0;font-size:28px}.live-lf-actions{display:flex;gap:7px}.live-lf-actions button{border:1px solid var(--ink);padding:10px 14px;color:var(--ink);background:transparent;cursor:pointer}.live-lf-actions button.primary-action{width:auto;color:#fff;background:var(--ink)}.live-lf-actions button:disabled{opacity:.4;cursor:default}.live-lf-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px}.live-lf-viewport{position:relative;min-height:520px;overflow:hidden;background:var(--viewport)}.live-lf-viewport canvas{display:block;width:100%;height:100%}.live-lf-viewport>span{position:absolute;right:12px;bottom:12px;left:12px;padding:8px 10px;color:#fff;background:#0c0f0eb8;font:500 9px/1.2 IBM Plex Mono,monospace;pointer-events:none}.live-lf-reticle{position:absolute;top:50%;left:50%;width:32px;height:32px;border:1px solid rgba(255,255,255,.5);transform:translate(-50%,-50%);pointer-events:none}.live-lf-reticle:before,.live-lf-reticle:after{position:absolute;content:"";background:#fff9}.live-lf-reticle:before{top:50%;left:-9px;width:48px;height:1px}.live-lf-reticle:after{top:-9px;left:50%;width:1px;height:48px}.live-array-controls{padding:20px;color:#fff;background:var(--ink)}.live-array-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;padding:15px 0;border-bottom:1px solid #4d5350;color:#c2c8c4;font-size:10px}.live-array-controls input{grid-column:1 / -1;width:100%;accent-color:var(--signal)}.live-array-controls label strong{color:#fff;font-family:IBM Plex Mono,monospace}.live-array-controls .live-camera-select{display:block}.live-camera-select select{display:block;width:100%;margin-top:9px;border:1px solid #69716c;padding:8px;color:#fff;background:#202522;font:500 9px/1 IBM Plex Mono,monospace}.live-array-controls dl{margin:22px 0 0}.live-array-controls dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #4d5350;font-size:10px}.live-array-controls dd{margin:0;font-family:IBM Plex Mono,monospace;text-align:right}.capture-export{width:100%;margin-top:14px;border:1px solid #69716c;padding:10px;color:#fff;background:transparent;cursor:pointer}.capture-export:disabled{opacity:.35;cursor:default}.live-capture-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:2px;margin-top:8px;padding:2px;background:var(--ink)}.live-capture-grid>div{position:relative;aspect-ratio:4/3;overflow:hidden;background:#343a37}.live-capture-grid img{display:block;width:100%;height:100%;object-fit:cover}.live-capture-grid span{position:absolute;right:2px;bottom:2px;padding:2px;color:#ccd1ce;background:#0000008c;font:500 6px/1 IBM Plex Mono,monospace}.live-capture-grid .captured{animation:live-frame-in .18s ease-out}@keyframes live-frame-in{0%{opacity:.25;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.lf-toolbar{display:flex;justify-content:space-between;align-items:center;margin:28px 0 10px}.lf-toolbar span{color:var(--precomputed);font:600 9px/1 IBM Plex Mono,monospace}.lf-viewfinder-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:8px;margin-bottom:8px}.lf-viewfinder{position:relative;width:100%;max-height:72vh;overflow:hidden;aspect-ratio:16/9;background:var(--viewport);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.lf-viewfinder>img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.lf-viewfinder-lines{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid rgba(255,255,255,.35);background-image:linear-gradient(90deg,transparent calc(33.333% - .5px),rgba(255,255,255,.3) 33.333%,transparent calc(33.333% + .5px),transparent calc(66.666% - .5px),rgba(255,255,255,.3) 66.666%,transparent calc(66.666% + .5px)),linear-gradient(transparent calc(33.333% - .5px),rgba(255,255,255,.3) 33.333%,transparent calc(33.333% + .5px),transparent calc(66.666% - .5px),rgba(255,255,255,.3) 66.666%,transparent calc(66.666% + .5px));pointer-events:none}.lf-viewfinder-hud{position:absolute;right:12px;bottom:12px;left:12px;display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:9px 11px;color:#fff;background:#0c0f0ec2;font:500 9px/1 IBM Plex Mono,monospace;pointer-events:none}.lf-viewfinder-hud strong{color:#ffcf4a}.lf-viewfinder-sidebar{display:grid;gap:8px;min-width:0}.lf-array-navigator{padding:18px;color:#fff;background:var(--ink)}.lf-array-navigator>header,.lf-array-navigator>footer{display:flex;justify-content:space-between;color:#929a95;font:500 8px/1 IBM Plex Mono,monospace}.lf-array-navigator>header strong{color:#fff;font-weight:500}.lf-array-navigator>div{display:grid;gap:5px;width:min(190px,100%);margin:18px auto}.lf-array-navigator button{aspect-ratio:1;border:1px solid #8d9690;padding:0;background:transparent;cursor:pointer}.lf-array-navigator button:hover{border-color:#fff;background:#555e59}.lf-array-navigator button.active{border-color:#ffcf4a;background:#ffcf4a;box-shadow:0 0 0 2px #ffcf4a2e}.lf-camera-matrix{display:flex;min-width:0;flex-direction:column;padding:20px;color:#fff;background:var(--ink)}.lf-camera-matrix>header{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid #4d5350}.lf-camera-matrix>header p{margin:0}.lf-camera-matrix>header strong{color:#ffcf4a;font:500 11px/1 IBM Plex Mono,monospace}.lf-camera-matrix section{padding:19px 0;border-bottom:1px solid #4d5350}.lf-camera-matrix section>span{display:block;margin-bottom:12px;color:#939b96;font:500 8px/1 IBM Plex Mono,monospace}.matrix-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 6px}.matrix-grid code{display:grid;gap:3px;overflow:hidden;color:#e4e7e5;font-size:9px;text-overflow:ellipsis}.matrix-grid code small{color:#ffcf4a;font:500 8px/1 IBM Plex Mono,monospace}.lf-camera-matrix sub{font-size:7px}.vector-row{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.vector-row code{color:#e4e7e5;font-size:9px}.lf-camera-matrix dl{margin:0}.lf-camera-matrix dl div{display:flex;justify-content:space-between;padding:6px 0;font-size:10px}.lf-camera-matrix dd{margin:0;font-family:IBM Plex Mono,monospace}.lf-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:2px;padding:2px;background:var(--ink)}.lf-grid.subset{grid-template-columns:repeat(5,1fr)}.lf-grid button{position:relative;border:0;padding:0;overflow:hidden;background:var(--viewport);cursor:zoom-in}.lf-grid button.active{outline:2px solid #ffcf4a;outline-offset:-2px;z-index:1}.lf-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.lf-grid span{position:absolute;right:3px;bottom:3px;padding:2px;color:#fff;background:#0000008c;font:500 6px/1 IBM Plex Mono,monospace}.lf-analysis{display:grid;grid-template-columns:1fr 260px;gap:28px;margin-top:50px}.lf-analysis figure{margin:0}.lf-analysis img{width:100%}.lf-analysis figcaption{margin-top:8px;color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace}.lf-analysis>div{border-top:1px solid var(--ink)}.lf-analysis strong{display:block;margin-top:24px;font:500 31px/1 IBM Plex Mono,monospace}.lf-analysis span{color:var(--muted);font-size:11px}.lf-analysis>div>p:last-child{margin-top:38px;color:var(--muted);font-size:12px;line-height:1.6}.compact-landing{padding:48px 5vw 72px}.editorial-hero{padding-bottom:34px;border-bottom:1px solid var(--ink)}.hero-meta{display:flex;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace;text-transform:uppercase}.hero-heading{display:flex;min-height:min(60vh,650px);flex-direction:column;justify-content:center;align-items:center;gap:38px;padding:72px 24px;text-align:center}.hero-heading h1{max-width:100%;margin:0;font-family:IBM Plex Sans,Noto Sans SC,sans-serif;font-size:clamp(64px,9.2vw,144px);font-weight:500;line-height:.94;letter-spacing:-.065em;white-space:nowrap}.hero-intro{padding-bottom:5px}.hero-intro>p{max-width:520px;margin:0 0 28px;font-size:clamp(17px,1.55vw,23px);line-height:1.35;letter-spacing:-.02em}.hero-intro>div{display:flex;flex-wrap:wrap;gap:8px}.hero-intro button{border:1px solid var(--ink);padding:13px 17px;color:#fff;background:var(--ink);cursor:pointer}.hero-repo-link{display:grid;grid-template-columns:22px 1fr;gap:5px 10px;min-width:250px;border:1px solid var(--ink);padding:12px 15px;color:var(--ink);text-align:left;text-decoration:none}.hero-repo-link .github-icon{grid-row:1 / 3}.hero-repo-link span{color:var(--muted);font:500 8px/1 IBM Plex Mono,monospace;text-transform:uppercase}.hero-repo-link strong{font:500 9px/1 IBM Plex Mono,monospace}.hero-repo-link:hover,.hero-repo-link:focus-visible{color:#fff;background:var(--ink)}.hero-repo-link:hover span,.hero-repo-link:focus-visible span{color:#bcc2be}.editorial-hero figure{margin:0}.editorial-hero img{display:block;width:100%;max-height:72vh;aspect-ratio:16/8.5;object-fit:cover;background:var(--viewport)}.editorial-hero figcaption{display:flex;justify-content:space-between;margin-top:9px;color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace;text-transform:uppercase}.compact-hero{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr);gap:40px;align-items:end;padding-bottom:34px;border-bottom:1px solid var(--ink)}.compact-hero h1{margin:14px 0 18px;font-size:clamp(48px,7vw,92px);line-height:.88;letter-spacing:-.06em}.compact-hero header>p:last-child{max-width:520px;margin:0;color:var(--muted);font:500 12px/1.65 IBM Plex Mono,monospace}.compact-hero figure,.result-board figure{margin:0}.compact-hero img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--viewport)}.compact-hero figcaption{margin-top:8px;color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace}.summary-table{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ink)}.summary-table>div{display:grid;gap:7px;min-height:92px;padding:20px;border-right:1px solid var(--line);border-top:1px solid var(--line)}.summary-table>div:nth-child(3n){border-right:0}.summary-table span,.compact-pipeline small{color:var(--muted);font:500 9px/1.2 IBM Plex Mono,monospace;text-transform:uppercase}.summary-table strong{font:500 18px/1.25 IBM Plex Mono,monospace}.compact-pipeline{padding:50px 0 18px}.compact-pipeline h2{margin:0 0 20px;font-size:28px}.compact-pipeline>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.compact-pipeline button{display:grid;grid-template-columns:28px 1fr;gap:8px 12px;min-height:94px;padding:17px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);background:transparent;text-align:left;cursor:pointer}.compact-pipeline button:nth-child(3n){border-right:0}.compact-pipeline button:hover,.compact-pipeline button:focus-visible{background:var(--surface)}.compact-pipeline button>span{color:var(--muted);font:500 10px/1 IBM Plex Mono,monospace}.compact-pipeline button>strong{font-size:15px}.compact-pipeline button>small{grid-column:2}.result-board{margin-top:42px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.result-board>header{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 0}.result-board h2{margin:7px 0 0;font-size:26px}.result-board>header>span{color:var(--muted);font:500 9px/1 IBM Plex Mono,monospace;text-transform:uppercase}.result-board>header select{min-width:210px;border:1px solid var(--ink);padding:9px 12px;color:var(--ink);background:transparent}.pgsr-result-board{margin-top:48px}.result-board figure{padding:8px;color:#fff;background:var(--ink)}.result-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.result-panel{position:relative;min-width:0;overflow:hidden;background:var(--viewport)}.result-panel img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.result-label{position:absolute;right:0;bottom:0;left:0;display:grid;grid-template-columns:34px 1fr;align-items:center;min-height:48px;background:#0f1211d1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.result-label>b{display:grid;place-items:center;align-self:stretch;border-right:1px solid rgba(255,255,255,.25);color:#cfd3d0;font:500 10px/1 IBM Plex Mono,monospace}.result-label>span{display:grid;gap:3px;padding:0 11px}.result-label strong{font:600 11px/1 IBM Plex Mono,monospace;letter-spacing:.08em}.result-label small{color:#aeb4b0;font:500 8px/1 IBM Plex Mono,monospace}.result-board figcaption{display:flex;justify-content:space-between;gap:16px;padding:11px 4px 4px;color:#aeb4b0;font:500 8px/1 IBM Plex Mono,monospace;text-transform:uppercase}@media(max-width:1100px){.nav-status{display:none}#root{padding-right:118px}.top-nav{width:118px;grid-template-rows:68px 1fr}.nav-items button{grid-template-columns:20px 1fr;padding:8px 10px;font-size:10px}.hero-section{grid-template-columns:1fr}.hero-visual{min-height:58vh;margin-left:22px}.pipeline-track{grid-template-columns:repeat(3,1fr)}.pipeline-track button:nth-child(3){border-right:0}.pipeline-track button:nth-child(-n+3){border-bottom:1px solid #585c5e}.colmap-layout,.array-layout{grid-template-columns:180px 1fr}.method-note,.array-readout{grid-column:1 / -1}.compact-hero{grid-template-columns:1fr;align-items:start}.hero-heading{gap:42px}.colmap-viewer-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-monolith{grid-template-columns:1fr 1fr}.capture-workbench{grid-template-columns:190px minmax(400px,1fr)}.capture-array-panel{grid-column:2}.live-lf-layout{grid-template-columns:1fr 210px}}@media(max-width:760px){#root{padding-right:74px}.top-nav{width:74px;grid-template-rows:58px 1fr}.wordmark{padding-left:10px;font-size:15px!important}.nav-items button{display:flex;justify-content:center;min-height:48px;padding:6px 4px;font-size:9px;text-align:center}.nav-items small{display:none}.hero-copy{padding:70px 22px}.hero-visual{min-height:52vh;margin:0 12px 12px}.statement-section,.pipeline-section,.evidence-section{padding:80px 22px}.fact-line,.pipeline-track{grid-template-columns:1fr 1fr}.pipeline-track button{min-height:210px;border-bottom:1px solid #585c5e}.pipeline-track button:nth-child(2n){border-right:0}.evidence-section{grid-template-columns:1fr}.landing-cta,.module-header,.lf-toolbar{align-items:flex-start;flex-direction:column;gap:25px}.landing-page footer{gap:14px;flex-direction:column}.module-page{padding:42px 16px 70px}.module-header-actions{width:100%}.upstream-link{flex:1 1 170px}.photo-grid{grid-template-columns:repeat(2,1fr)}.module-stats,.colmap-layout,.pgsr-layout,.array-layout,.lf-analysis,.colmap-provenance{grid-template-columns:1fr}.provenance-notes{grid-column:1}.colmap-viewer-layout{grid-template-columns:1fr}.colmap-scene{height:58vh;min-height:420px}.colmap-viewer-layout .camera-image{aspect-ratio:4/3}.camera-browser{order:-1}.array-stage{padding:18px}.capture-workbench{grid-template-columns:1fr}.capture-workbench .array-controls{position:static}.capture-array-panel{grid-column:auto}.lf-grid,.lf-grid.subset{grid-template-columns:repeat(5,1fr)}.live-lf-capture>header{align-items:flex-start;flex-direction:column;gap:18px}.live-lf-layout{grid-template-columns:1fr}.live-lf-viewport{min-height:430px}.lf-viewfinder-layout{grid-template-columns:1fr}.compact-landing{padding:36px 16px 56px}.hero-meta,.editorial-hero figcaption{align-items:flex-start;flex-direction:column;gap:8px}.hero-heading{min-height:52vh;gap:30px;padding:48px 0}.hero-heading h1{font-size:clamp(48px,13vw,82px);line-height:1;white-space:normal}.hero-intro>div{align-items:stretch;flex-direction:column}.hero-intro button,.hero-repo-link{width:100%;box-sizing:border-box}.editorial-hero img{aspect-ratio:4/3}.compact-hero{gap:26px}.compact-hero h1{font-size:clamp(42px,12vw,68px)}.summary-table{grid-template-columns:1fr 1fr}.summary-table>div:nth-child(3n){border-right:1px solid var(--line)}.summary-table>div:nth-child(2n){border-right:0}.compact-pipeline>div{grid-template-columns:1fr 1fr}.compact-pipeline button:nth-child(3n){border-right:1px solid var(--line)}.compact-pipeline button:nth-child(2n){border-right:0}.result-board>header,.result-board figcaption{align-items:flex-start;flex-direction:column;gap:8px}.result-preview{grid-template-columns:1fr}}
