@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-condensed-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-condensed-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/dm-sans-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;color:#26312e;font-synthesis:none;background:#e7ebeb;--panel:rgba(250,251,247,.97);--muted:#6e7770;--accent:#dcae29;--line:#cbd1c9}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #bc921b;outline-offset:3px}#app,#viewport{position:absolute;inset:0}#viewport canvas{display:block;outline:none;touch-action:none}.scene-vignette{pointer-events:none;position:absolute;inset:0;background:linear-gradient(180deg,#ffffff12,transparent 22%,transparent 83%,#2c332d0a)}.masthead{position:absolute;left:20px;right:20px;top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}.masthead>*{pointer-events:auto}.identity{display:flex;align-items:center;gap:12px;color:#202d2a;text-decoration:none;background:var(--panel);padding:11px 15px;border:1px solid #c8cec6;box-shadow:0 2px 4px #11201712}.monogram,.loading-mark{font-family:Barlow Condensed,sans-serif;display:block;font-size:39px;font-weight:700;line-height:1;letter-spacing:-2px}.monogram span,.loading-mark span{font-size:22px;position:relative;top:-14px;margin-left:1px;color:#ad751b}.identity small{font-size:8px;letter-spacing:1.5px;display:block;margin-bottom:4px;font-weight:650;color:#687469}.identity strong{font-size:19px;letter-spacing:-.6px;font-weight:650}.identity em{font-style:normal;font-weight:400;color:#637266;margin-left:7px}.header-actions{display:flex;align-items:center;gap:6px}.source-badge{display:flex;align-items:center;gap:7px;font-size:10px;border:1px solid #c4cdc5;background:var(--panel);padding:10px 12px}.source-badge i{width:5px;height:5px;border-radius:50%;background:#aa7d26}.icon-button{border:1px solid #bec7bf;background:var(--panel);color:#27362e;width:35px;height:35px;font-size:19px;box-shadow:0 2px 3px #2130210d}.panel{background:var(--panel);border:1px solid #b9c1b7;box-shadow:0 2px 5px #172f1b17;border-radius:2px}.locations{position:absolute;top:112px;left:20px;width:244px;padding:16px 13px 0}.panel-eyebrow{font-size:9px;letter-spacing:1.4px;color:#5f6e61;font-weight:700}.locations .panel-eyebrow{display:flex;align-items:center;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid #d2d8ce}.panel-eyebrow button{padding:0;background:none;color:#4c5d50;border:0;font-size:18px;line-height:12px}.location-button{width:100%;display:flex;align-items:center;gap:11px;text-align:left;border:1px solid transparent;background:#edf0e8;padding:10px 8px;color:inherit;margin-top:11px}.location-button:hover{border-color:#c0c8b7;background:#e4e9dc}.location-icon{width:23px;font-size:23px;line-height:28px;color:#916331}.location-button b{font-size:11px;font-weight:650;display:block;margin-bottom:3px}.location-button small{font-size:9px;color:#6e786a;display:block}.equipment-picker{display:block;margin-top:16px}.equipment-picker>span{display:block;font-size:9px;color:#596a5c;font-weight:650;margin-bottom:6px}.equipment-picker input,.equipment-picker select{display:block;width:100%;padding:8px 7px;background:#fff;color:#26372c;border:1px solid #c4ccc0;border-radius:2px;font-size:10px;margin-top:6px}.equipment-picker input::placeholder{color:#899282}.equipment-picker select{cursor:pointer}.equipment-picker option,.equipment-picker optgroup{background:#f8faf4;color:#27342b}.nav-hint{margin:14px 0;display:flex;flex-direction:column;gap:5px;font-size:9px;line-height:1.4;color:#687564}.nav-footnote{border-top:1px solid #d1d7cb;display:flex;align-items:center;gap:7px;margin:14px -13px 0;padding:11px 13px;font-size:9px;color:#6a775f}.operating-dot{width:5px;height:5px;border-radius:50%;background:#728747}.locations.collapsed .location-button,.locations.collapsed .equipment-picker,.locations.collapsed .nav-hint,.locations.collapsed .nav-footnote{display:none}.locations.collapsed{padding-bottom:5px}.locations.collapsed .panel-eyebrow{border:0;padding-bottom:8px}.inspector{position:absolute;top:112px;right:20px;width:303px;padding:23px;max-height:calc(100vh - 210px);overflow-y:auto}.close-button{position:absolute;right:11px;top:8px;background:none;border:0;color:#4b5d4c;font-size:23px;font-weight:400;padding:4px}.inspector h2{font-family:Barlow Condensed,sans-serif;font-size:28px;font-weight:600;line-height:1.08;margin:14px 0 10px;color:#25362b}.inspector p{font-size:11px;color:#667362;line-height:1.6}.inspector dl{margin:18px 0;display:grid;grid-template-columns:1fr auto;gap:10px 8px;font-size:10px}.inspector dt{color:#6f7a68}.inspector dd{margin:0;font-variant-numeric:tabular-nums;color:#27392b}.basis-note{font-size:9px;line-height:1.65;color:#806844;border-top:1px solid #d4d8ca;padding-top:13px}.text-button{margin-top:17px;width:100%;padding:12px 0 0;color:#74562d;background:none;border:0;border-top:1px solid #cbd2c1;font-size:11px;text-align:left}.text-button span{float:right}.inspection-button{width:100%;background:#e6bd4a;border:1px solid #bc9735;color:#283422;font-size:10px;font-weight:650;padding:10px 9px;margin-top:8px;text-align:left}.inspection-button[aria-pressed=true]{background:#394a3b;border-color:#394a3b;color:#fff}.mechanism-note{margin:13px 0;padding:12px;background:#edf1e6;border-left:2px solid #b29242;font-size:10px;line-height:1.7;color:#55644c}.mechanism-note strong{display:block;color:#35472f;margin-bottom:5px}.view-caption{display:none}.bottom-bar{position:absolute;bottom:20px;left:20px;right:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.scale-readout{min-width:126px;color:#29392d;display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 8px;background:#fafcf3e8;border:1px solid #c5ccbb;padding:9px}.scale-line{grid-column:1/-1;width:118px;border-bottom:2px solid #3d4b3a;display:flex;justify-content:space-between;position:relative;height:6px}.scale-line span{height:6px;width:2px;background:#3d4b3a}.scale-readout b{font-size:9px;letter-spacing:.2px;font-weight:650}.scale-readout small{font-size:7px;color:#6f7966;justify-self:end}.control-dock{display:flex;align-items:center;gap:3px;padding:7px 8px}.control-dock>button{border:1px solid transparent;background:none;color:#5d6b55;border-radius:2px;padding:8px 11px;display:flex;align-items:center;justify-content:center;gap:7px;min-height:34px}.control-dock>button span:first-child{font-size:16px;line-height:16px}.control-dock>button span:last-child{font-size:10px}.control-dock>button:hover{background:#edf1e5;border-color:#cdd5be;color:#273925}.control-dock>button.selected{background:#e4bb42;color:#2e3826;border-color:#bc9835}.control-dock>i{height:22px;width:1px;background:#d0d7c6;margin:0 5px}.quality-control{padding:0 8px 0 7px}.quality-control label{display:block;font-size:8px;color:#7d876f;letter-spacing:.4px;margin-bottom:2px}.quality-control select{background:#fff;border:1px solid #c4cdb7;color:#3e5034;font-size:10px;width:98px;cursor:pointer;padding:3px}.quality-control option{background:#fff}.interaction-hint{font-size:8px;line-height:1.8;display:flex;flex-direction:column;color:#35492d;min-width:105px;background:#f9fbf1e8;border:1px solid #cad3bf;padding:8px}.loading-screen{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f1f3ec;z-index:20;transition:opacity .45s,visibility .45s}.loading-mark{font-size:88px;position:relative;margin-bottom:29px;color:#3d4d3c}.loading-mark span{font-size:38px;top:-36px;margin-left:1px}.loading-screen>small{font-size:9px;letter-spacing:3px;color:#86927b}.loading-screen h2{font-family:Barlow Condensed,sans-serif;font-size:33px;font-weight:500;margin:18px 0 30px;letter-spacing:-.2px;color:#35472e}.loading-track{width:230px;background:#dce1d2;height:2px;overflow:hidden}.loading-track span{display:block;background:#a77729;height:100%;width:35%;animation:progress 1.7s ease-in-out infinite}.loading-screen p{font-size:10px;line-height:1.8;max-width:420px;text-align:center;color:#839174;margin-top:17px}.loading-screen.finished{opacity:0;visibility:hidden}.hidden{display:none!important}#toast{position:absolute;bottom:100px;left:50%;transform:translate(-50%) translateY(8px);background:#f9fbf0f5;border:1px solid #b9c2aa;border-radius:2px;padding:12px 18px;font-size:11px;color:#4a5b3e;pointer-events:none;opacity:0;transition:.2s;z-index:15;text-align:center;max-width:80vw}#toast.visible{opacity:1;transform:translate(-50%) translateY(0)}dialog{color:#33442d;background:#f4f6ee;border:1px solid #aebc9f;padding:34px;max-width:580px;border-radius:3px;box-shadow:0 15px 70px #15221940}dialog::backdrop{background:#23332460}dialog h2{font-family:Barlow Condensed,sans-serif;font-size:36px;margin:15px 0}dialog p,dialog li{font-size:12px;color:#718061;line-height:1.8}dialog h3{font-size:12px;margin:23px 0 6px;font-weight:650}dialog a{color:#7c591d}dialog ul{padding-left:18px}.dialog-footnote{font-size:10px!important;border-top:1px solid #d1d8c6;padding-top:17px}.primary-button{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#deb548;color:#303d23;border:1px solid #bc9834;border-radius:2px;font-weight:650;font-size:11px;padding:13px 16px;margin-top:23px;min-width:210px}.equipment-label{position:absolute;left:0;top:0;transform:translate(-50%,-100%);padding:5px 8px;background:#f5f8edf2;color:#34452e;border:1px solid #abb99d;border-radius:1px;font-size:9px;white-space:nowrap;pointer-events:auto;cursor:pointer;transition:opacity .15s}.equipment-label:after{content:"";width:1px;height:13px;background:#ac7f31;position:absolute;top:100%;left:50%}.zone-label{font-family:Barlow Condensed,sans-serif;letter-spacing:.3px;font-size:14px;padding:6px 10px;border-left:3px solid #a36d38}.equipment-label[data-kind=transfer]{font-size:8px;color:#6a785f}.equipment-label:hover{background:#e7eddb;border-color:#8d9e79}.measure-label{position:absolute;pointer-events:none;background:#dcae38;color:#29351f;padding:5px 8px;border:1px solid #ad8631;border-radius:2px;font-size:10px;font-weight:650;transform:translate(-50%,-50%)}.performance-text{position:absolute;right:23px;bottom:4px;font-size:7px;color:#3c4c306b;font-variant-numeric:tabular-nums;pointer-events:none}.clean-view .locations,.clean-view .inspector{display:none!important}.clean-view .equipment-label:not(.zone-label){display:none!important}.clean-view .control-dock{opacity:.85}.clean-view .control-dock:hover{opacity:1}@keyframes progress{0%{transform:translate(-100%)}to{transform:translate(360%)}}@media(max-width:1100px){.interaction-hint{display:none}.control-dock>button{padding:8px 9px}.source-badge{display:none}.inspector{width:280px}.locations{width:225px}}@media(max-width:1000px){.masthead{left:14px;right:14px;top:14px}.identity{gap:8px;padding:8px 10px}.monogram{font-size:31px}.monogram span{font-size:17px;top:-12px}.identity small{font-size:7px;letter-spacing:1px}.identity strong{font-size:16px}.identity em{display:none}.header-actions{gap:5px}.icon-button{width:31px;height:31px}.locations{top:94px;left:14px;width:218px;padding:13px 11px 0}.locations .panel-eyebrow{font-size:8px;letter-spacing:1px}.nav-footnote{margin-left:-11px;margin-right:-11px;padding:10px 11px}.bottom-bar{left:14px;right:14px;bottom:14px;display:block}.control-dock{justify-content:center;gap:1px;padding:5px}.control-dock>button{padding:8px 10px;flex-direction:column;gap:5px}.control-dock>button span:last-child{font-size:8px}.control-dock>i{margin:0 3px}.scale-readout{position:absolute;bottom:76px;right:0;width:126px;min-width:0;padding:7px}.scale-line{width:110px}.quality-control{padding-left:5px;padding-right:5px}.quality-control select{width:79px;font-size:9px}.inspector{inset:auto 14px 101px;width:auto;max-height:38vh;padding:20px;z-index:5}.inspector h2{font-size:25px}.inspector dl{grid-template-columns:1fr auto 1fr auto;gap:8px}.inspection-button{width:auto;min-width:180px}.mechanism-note{max-width:600px}.loading-screen h2{font-size:27px}.loading-screen p{padding:0 25px}dialog{max-width:calc(100vw - 30px);padding:25px}.performance-text{bottom:1px;right:17px}.equipment-label{font-size:8px}}@media(max-width:440px){.control-dock>button{padding:8px 6px}.quality-control select{width:67px}.control-dock>i{margin:0 1px}.control-dock{gap:0}.inspector dl{grid-template-columns:1fr auto}.identity small{display:none}}.tour-start{background:#e9c75b;border-color:#bea13f}.tour-start:hover{background:#edce72;border-color:#a88b2c}.tour-start:disabled{opacity:.5;cursor:wait}.tour-start .location-icon{color:#485438;font-size:17px}.tour-start[aria-pressed=true]{background:#e5e9df;border-color:#aebba3}.tour-inline{padding:9px 2px 2px}.tour-inline p{font-size:10px;color:#53654b;line-height:1.45;margin:0 0 6px}.tour-timeline{display:flex;gap:6px;align-items:center}.tour-timeline input{flex:1;min-width:0;accent-color:#aa8432;cursor:pointer;height:12px}.tour-timeline span{font-size:8px;font-variant-numeric:tabular-nums;color:#65715d;white-space:nowrap}.tour-inline button{border:1px solid #c3cdb7;border-radius:2px;background:#f6f8f0;color:#35492f;font-size:9px;padding:5px 10px;margin-top:6px}.locations.collapsed .tour-inline{display:none}.control-dock>button.moving{background:#e4bb42;color:#2e3826;border-color:#bc9835}.control-dock>button:disabled{opacity:.4;cursor:default}.orientation-control{position:absolute;top:111px;right:28px;width:112px;display:flex;flex-direction:column;align-items:center;z-index:4;-webkit-user-select:none;user-select:none;transition:right .2s}.view-gizmo{width:112px;height:112px;position:relative;touch-action:none;cursor:grab;border-radius:50%;background:radial-gradient(circle,#f5f7efbb 32%,#f5f7ef00 70%)}.view-gizmo:active{cursor:grabbing}.view-gizmo svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.gizmo-sphere{fill:#f6f8efb0;stroke:#b7c3b181;stroke-width:1}.gizmo-axis{position:absolute;transform:translate(-50%,-50%);width:25px;height:25px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--axis-color) 80%,#fff);background:var(--axis-color);color:#fff;font:650 10px DM Sans,sans-serif;box-shadow:0 1px 3px #16251c28;cursor:pointer;touch-action:none}.gizmo-axis.gizmo-rear{background:color-mix(in srgb,var(--axis-color) 16%,#f6f8ef);color:var(--axis-color);border-color:color-mix(in srgb,var(--axis-color) 55%,#fff);font-size:9px}.gizmo-axis:hover,.gizmo-axis:focus-visible{outline:2px solid #f9d267;outline-offset:2px;filter:brightness(1.1)}.gizmo-axis:disabled{cursor:default;opacity:.45}.gizmo-hint{font-size:7px;letter-spacing:1.1px;color:#445642;background:#f6f8efe3;padding:4px 7px;border-radius:8px;margin-top:3px;pointer-events:none}#frame-view{margin-top:7px;border:1px solid #bdc8b7;background:#f7f9f0ec;border-radius:3px;color:#3c5137;font-size:17px;padding:3px 10px;display:flex;align-items:center;gap:5px}#frame-view span{font-size:9px}#frame-view:hover{background:#e8eedf}.camera-controls{position:absolute;right:20px;bottom:98px;padding:12px;width:226px;z-index:4;-webkit-user-select:none;user-select:none;transition:right .2s}.camera-control-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.camera-control-title>span{font-size:8px;font-weight:700;letter-spacing:1.3px;color:#45563f}.camera-control-title small{font-size:8px;color:#87917e}.camera-movement-grid{display:flex;gap:12px;align-items:center}.direction-pad{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(3,38px);gap:3px}.direction-pad button,.elevation-pad button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1px;border:1px solid #bcc7b2;background:#fbfcf7;color:#3d5334;border-radius:4px;touch-action:none;padding:2px;cursor:pointer;box-shadow:0 1px 2px #2f432014}.direction-pad button span{font-size:18px;line-height:19px}.camera-movement-grid button small{font-size:7px;font-weight:500;line-height:10px}.camera-movement-grid button:hover{background:#e8eedf;border-color:#8da079}.camera-movement-grid button.moving{background:#e5bd49;color:#283d21;border-color:#b38d2c;box-shadow:inset 0 1px 3px #6b54192b}.camera-movement-grid button:disabled{opacity:.35;cursor:default}.camera-movement-grid button:focus-visible{outline:2px solid #b99033;outline-offset:2px}#nav-forward{grid-area:1/2}#nav-left{grid-area:2/1}.pad-centre{grid-area:2/2;display:grid;place-items:center;color:#8b9b7f;font-size:22px}#nav-right{grid-area:2/3}#nav-back{grid-area:3/2}.elevation-pad{border-left:1px solid #d5ddcf;padding-left:10px;display:grid;gap:7px;grid-template-rows:45px 45px}.elevation-pad button{width:42px}.elevation-pad button span{font-size:20px;line-height:22px}.movement-speed{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:9px;border-top:1px solid #d7dece;font-size:9px;color:#6b785e}.movement-speed select{border:1px solid #c4ceb8;border-radius:2px;padding:4px 5px;background:#fff;color:#3b4e30;font-size:9px;width:80px}.inspecting:not(.clean-view) .orientation-control{right:341px}.inspecting:not(.clean-view) .camera-controls{right:341px}.camera-controls.hidden{display:none}.clean-view .orientation-control{right:28px}.clean-view .camera-controls{right:20px}@media(max-width:1100px)and (min-width:1001px){.inspecting:not(.clean-view) .orientation-control,.inspecting:not(.clean-view) .camera-controls{right:318px}}@media(max-width:1000px){.orientation-control,.inspecting:not(.clean-view) .orientation-control{right:20px;top:89px;width:104px}.view-gizmo{width:104px;height:104px}.camera-controls,.inspecting:not(.clean-view) .camera-controls{right:14px;bottom:150px}.scale-readout{left:0;right:auto}.inspecting:not(.clean-view) .camera-controls{bottom:calc(38vh + 115px)}.inspecting:not(.clean-view) .orientation-control{right:245px}.camera-controls{width:226px}.interaction-hint{display:none}}@media(max-width:650px){.camera-controls,.inspecting:not(.clean-view) .camera-controls{right:14px;bottom:149px;width:204px;padding:10px}.direction-pad{grid-template-columns:repeat(3,38px);grid-template-rows:repeat(3,35px)}.camera-movement-grid{gap:8px}.elevation-pad{padding-left:8px}.elevation-pad button{width:40px}.inspecting:not(.clean-view) .camera-controls{bottom:calc(32vh + 115px)}.inspector{max-height:32vh}.orientation-control,.inspecting:not(.clean-view) .orientation-control{right:14px;top:90px;width:90px}.view-gizmo{width:90px;height:90px}.gizmo-hint{font-size:6px}.locations{width:calc(100vw - 140px);max-width:218px}.camera-control-title small{font-size:7px}.quality-control select{width:67px}.control-dock>button{padding:8px 6px}.control-dock>button span:last-child{font-size:7px}}@media(max-height:660px)and (min-width:1001px){.camera-controls{bottom:86px}.orientation-control{top:97px}.view-gizmo{width:90px;height:90px}.orientation-control{width:90px}}@media(max-width:650px){.inspecting:not(.clean-view) .orientation-control{left:20px;right:auto;top:150px}}
