@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.138s14ivx2xer.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.3b2emle-7szv-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.13rul5q9jl2r0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_bef538ac-module__ZUHYQq__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_bef538ac-module__ZUHYQq__variable{--font-sans:"Archivo", "Archivo Fallback"}
@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d203b9464cfa0970-s.3urxfn-r2f0wy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a69e508140118fbc-s.1sf_atgfbezm1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a9a434ecf764164f-s.p.422uhnrlcv_7h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fragment Mono Fallback;src:local(Arial);ascent-override:68.53%;descent-override:18.03%;line-gap-override:0.0%;size-adjust:138.63%}.fragment_mono_8d13df4b-module__x7VY6G__className{font-family:Fragment Mono,Fragment Mono Fallback;font-style:normal;font-weight:400}.fragment_mono_8d13df4b-module__x7VY6G__variable{--font-mono:"Fragment Mono", "Fragment Mono Fallback"}
:root{--paper:#e9e6dc;--paper-raised:#f6f2e8;--ink:#181916;--ink-muted:#696b64;--viewport:#0c0f0d;--viewport-raised:#151916;--line:#b9b7ad;--line-dark:#343934;--pass:#c9f24d;--pass-ink:#526a0a;--fail:#ff5c35;--fail-ink:#b93317;--focus:#087e8b;--ease-out:cubic-bezier(.16, 1, .3, 1);--font-sans:sans-serif;--font-mono:monospace}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{background:linear-gradient(#1819160a 1px, transparent 1px), linear-gradient(90deg, #1819160a 1px, transparent 1px), var(--paper);min-width:320px;min-height:100vh;font-family:var(--font-sans), sans-serif;background-size:24px 24px;margin:0}button,input,textarea,select{color:inherit;font:inherit}button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.workspace-shell{width:min(100%,1800px);min-height:100vh;margin:0 auto;padding:18px clamp(16px,2vw,34px) 14px}.workspace-header{border-top:2px solid var(--ink);min-height:68px;animation:interface-enter .52s var(--ease-out) both;justify-content:space-between;align-items:flex-start;padding-top:10px;display:flex}.workspace-wordmark{align-items:center;gap:11px;display:flex}.workspace-wordmark h1,.workspace-wordmark p,.viewport-header h2,.rail-section h2,.evidence-ledger h2{margin:0}.workspace-wordmark h1{letter-spacing:-.045em;font-size:1.24rem;font-weight:690;line-height:1}.workspace-wordmark p{color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;margin-top:4px;font-size:.62rem}.wordmark-mark{border:1px solid var(--ink);width:34px;height:34px;font-family:var(--font-mono), monospace;letter-spacing:.05em;place-items:center;font-size:.65rem;display:grid}.workspace-context{color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;gap:24px;font-size:.63rem;line-height:34px;display:flex}.workspace-context span+span:before{content:"/";color:var(--line);margin-right:24px}.workspace-grid{border:1px solid var(--ink);background:var(--paper-raised);grid-template-columns:minmax(245px,.82fr) minmax(560px,2.5fr) minmax(248px,.9fr);min-height:calc(100vh - 128px);display:grid}.section-index{color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.09em;text-transform:uppercase;font-size:.61rem}.contract-rail{border-right:1px solid var(--ink);min-width:0;animation:rail-enter .58s 60ms var(--ease-out) both;flex-direction:column;display:flex}.rail-section{padding:clamp(18px,2vw,28px)}.rail-section+.rail-section{border-top:1px solid var(--line)}.rail-section h2{letter-spacing:-.035em;margin-top:18px;font-size:clamp(1.05rem,1.3vw,1.35rem);font-weight:620}.source-section{flex:none}.source-readout{align-items:flex-start;gap:10px;margin-top:20px;display:flex}.source-readout strong{font-size:.82rem;font-weight:620;line-height:1.25;display:block}.source-readout p{color:var(--ink-muted);font-family:var(--font-mono), monospace;text-transform:uppercase;margin:5px 0 0;font-size:.58rem;line-height:1.55}.source-signal{background:var(--pass);border-radius:50%;flex:none;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 4px #c9f24d2e}.source-metadata{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:22px 0 0;display:grid}.source-metadata div{min-width:0;padding:10px 4px 0 0}.source-metadata div+div{border-left:1px solid var(--line);padding-left:9px}.source-metadata dt,.source-metadata dd{font-family:var(--font-mono), monospace;margin:0;font-size:.55rem}.source-metadata dt{color:var(--ink-muted);text-transform:uppercase}.source-metadata dd{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;overflow:hidden}.marble-link{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:44px;color:var(--ink);font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:16px;font-size:.58rem;text-decoration:none;display:flex}.marble-link:hover{color:var(--pass-ink)}.generation-drawer{border-bottom:1px solid var(--line);margin-top:14px;padding-bottom:12px}.generation-drawer summary{cursor:pointer;min-height:44px;font-family:var(--font-mono), monospace;letter-spacing:.055em;text-transform:uppercase;font-size:.58rem;line-height:44px;list-style-position:outside}.generation-drawer label,.generation-drawer label>span{display:block}.generation-drawer label>span{color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.05em;text-transform:uppercase;margin:9px 0 7px;font-size:.54rem}.generation-drawer textarea{resize:vertical;border:1px solid var(--line);background:0 0;border-radius:0;width:100%;padding:9px;font-size:.68rem;line-height:1.45}.generation-drawer button{border:1px solid var(--ink);cursor:pointer;width:100%;min-height:44px;font-family:var(--font-mono), monospace;letter-spacing:.055em;text-transform:uppercase;background:0 0;border-radius:0;margin-top:9px;font-size:.57rem}.generation-drawer button:hover:not(:disabled){background:var(--ink);color:var(--paper-raised)}.generation-drawer button:disabled{cursor:wait;opacity:.55}.generation-progress,.generation-error{font-family:var(--font-mono), monospace;margin:9px 0 0;font-size:.55rem;line-height:1.45}.generation-progress{color:var(--pass-ink)}.generation-error{color:var(--fail-ink)}.contract-section{flex-direction:column;flex:1;min-height:0;display:flex}.requirement-field{margin-top:18px;display:block}.requirement-field textarea{resize:vertical;border:1px solid var(--line);background:0 0;border-radius:0;width:100%;min-height:132px;padding:12px;font-size:.78rem;line-height:1.52}.requirement-field textarea:hover,.requirement-field textarea:focus{border-color:var(--ink);background:#ffffff47}.metric-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:18px;display:grid}.metric-field{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.03em;text-transform:uppercase;padding:9px;font-size:.56rem}.metric-input-wrap{color:var(--ink);align-items:baseline;margin-top:5px;display:flex}.metric-input-wrap input{width:100%;min-width:0;font-family:var(--font-mono), monospace;background:0 0;border:0;outline:0;padding:0;font-size:1rem}.metric-input-wrap small{color:var(--ink-muted);text-transform:lowercase;font-size:.55rem}.run-test-button{border:1px solid var(--ink);background:var(--ink);width:100%;min-height:52px;color:var(--paper-raised);cursor:pointer;font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;transition:background .18s ease, color .18s ease, transform .18s var(--ease-out);border-radius:0;justify-content:space-between;align-items:center;margin-top:auto;padding:0 15px;font-size:.66rem;display:flex}.run-test-button:not(:disabled):hover{background:var(--pass);color:var(--ink);transform:translateY(-2px)}.run-test-button:disabled{border-color:var(--line);color:var(--ink-muted);cursor:not-allowed;background:0 0}.viewport-stage{background:var(--viewport);color:#eceee8;min-width:0;animation:viewport-enter .7s 80ms var(--ease-out) both;grid-template-rows:auto minmax(390px,1fr) auto;display:grid}.viewport-header{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:flex-start;min-height:78px;padding:17px 20px 14px;display:flex}.viewport-header .section-index{color:#7d857e}.viewport-header h2{letter-spacing:-.035em;margin-top:7px;font-size:clamp(1.05rem,1.4vw,1.45rem);font-weight:560}.viewport-coordinates{color:#7d857e;font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;gap:14px;font-size:.56rem;line-height:1.3;display:flex}.viewport-coordinates span+span{border-left:1px solid var(--line-dark);padding-left:14px}.viewer-frame{background:radial-gradient(circle at 50% 45%, #404a4133, transparent 52%), var(--viewport);min-width:0;min-height:390px;position:relative;overflow:hidden}.world-viewer,.world-viewer-canvas{position:absolute;inset:0}.world-viewer-canvas canvas{width:100%;height:100%;display:block}.world-viewer-status{pointer-events:none;position:absolute;top:14px;left:14px}.world-viewer-status span{border:1px solid var(--line-dark);color:#aeb5af;min-height:25px;font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;background:#0c0f0dd1;align-items:center;padding:0 8px;font-size:.55rem;display:inline-flex}.world-viewer[data-status=ready] .world-viewer-status span:before{background:var(--pass);content:"";border-radius:50%;width:5px;height:5px;margin-right:6px}.world-viewer[data-status=error] .world-viewer-status span{border-color:var(--fail);color:#ff9b82;max-width:min(420px,100vw - 90px);line-height:1.4}.frame-corner{z-index:2;pointer-events:none;width:28px;height:28px;position:absolute}.frame-corner-tl{border-top:1px solid #747d75;border-right:1px solid #747d75;top:14px;right:14px}.frame-corner-br{border-bottom:1px solid #747d75;border-right:1px solid #747d75;bottom:14px;right:14px}.analysis-scan{z-index:3;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(#0000,#c9f24d26,#c9f24d99,#0000);height:30%;animation:1.8s linear infinite scan-field;position:absolute;top:-20%;left:0;right:0}.scene-toolbar{border-top:1px solid var(--line-dark);background:var(--viewport-raised)}.placement-status{border-bottom:1px solid var(--line-dark);color:#949c95;min-height:40px;font-family:var(--font-mono), monospace;letter-spacing:.035em;align-items:center;gap:9px;padding:0 14px;font-size:.58rem;display:flex}.placement-crosshair{color:var(--pass);font-size:.9rem}.scene-actions{grid-template-columns:1fr 1fr .75fr;display:grid}.scene-actions.has-verified-route{grid-template-columns:1fr 1fr .7fr .9fr}.scene-actions button{border:0;border-right:1px solid var(--line-dark);color:#dce0db;cursor:pointer;text-align:left;background:0 0;border-radius:0;min-width:0;min-height:60px;padding:10px 14px;transition:background .16s,color .16s}.scene-actions button:last-child{border-right:0}.scene-actions button:hover:not(:disabled),.scene-actions button.is-active{background:#242b25}.scene-actions button.is-active{box-shadow:inset 0 3px var(--pass);color:var(--pass)}.scene-actions button:disabled{cursor:wait;opacity:.5}.scene-actions button span,.scene-actions button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.scene-actions button span{font-family:var(--font-mono), monospace;letter-spacing:.05em;text-transform:uppercase;font-size:.63rem}.scene-actions button small{color:#7d857e;font-family:var(--font-mono), monospace;margin-top:7px;font-size:.53rem}.collider-toggle[aria-pressed=true] small{color:var(--pass)}.evidence-ledger{border-left:1px solid var(--ink);min-width:0;animation:evidence-enter .65s .14s var(--ease-out) both;padding:clamp(18px,2vw,28px);position:relative;overflow:hidden}.evidence-ledger:before{background:var(--line);content:"";height:5px;position:absolute;top:0;left:0;right:0}.evidence-ledger.is-pass:before{background:var(--pass)}.evidence-ledger.is-fail:before{background:var(--fail)}.evidence-empty,.evidence-pending,.evidence-result{margin-top:clamp(78px,12vh,150px)}.evidence-empty h2,.evidence-pending h2,.evidence-result h2{letter-spacing:-.06em;margin-top:18px;font-size:clamp(1.65rem,2.8vw,2.8rem);font-weight:650;line-height:.98}.evidence-empty p,.evidence-pending p,.evidence-result>p{color:var(--ink-muted);margin:18px 0 0;font-size:.78rem;line-height:1.55}.empty-glyph{color:var(--line);font-size:3.2rem;line-height:1;display:block}.is-error h2,.is-error p{color:var(--fail-ink)}.evidence-spinner{border:1px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:33px;height:33px;animation:.8s linear infinite spinner-turn;display:block}.result-kicker{font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:8px;font-size:.61rem;display:flex}.result-kicker span:first-child{border:1px solid;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.is-pass .result-kicker{color:var(--pass-ink)}.is-fail .result-kicker{color:var(--fail-ink)}.evidence-metrics{border-top:1px solid var(--ink);margin:30px 0 0}.evidence-metrics div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:12px 0;display:flex}.evidence-metrics dt,.evidence-metrics dd{font-family:var(--font-mono), monospace;margin:0}.evidence-metrics dt{color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.57rem}.evidence-metrics dd{font-size:.88rem}.clearance-comparison{border-left:3px solid var(--fail);color:var(--fail-ink);font-family:var(--font-mono), monospace;background:#ff5c3514;gap:8px;margin-top:24px;padding:12px;font-size:.62rem;display:grid}.workspace-status-strip{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);border-left:1px solid var(--ink);min-height:30px;color:var(--ink-muted);font-family:var(--font-mono), monospace;letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:0 10px;font-size:.53rem;display:flex}.workspace-status-strip i{background:var(--pass);border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}@keyframes interface-enter{0%{opacity:0;transform:translateY(-8px)}}@keyframes rail-enter{0%{opacity:0;transform:translate(-16px)}}@keyframes viewport-enter{0%{opacity:0;transform:scale(.985)}}@keyframes evidence-enter{0%{opacity:0;transform:translate(16px)}}@keyframes scan-field{to{transform:translateY(500%)}}@keyframes spinner-turn{to{transform:rotate(1turn)}}@media (max-width:1180px){.workspace-grid{grid-template-columns:minmax(255px,.8fr) minmax(520px,2fr)}.evidence-ledger{border-top:1px solid var(--ink);border-left:0;grid-column:1/-1;min-height:285px}.evidence-empty,.evidence-pending,.evidence-result{max-width:760px;margin-top:50px}.evidence-metrics{grid-template-columns:repeat(3,1fr);display:grid}.evidence-metrics div{border-right:1px solid var(--line);padding:12px;display:block}.evidence-metrics div:last-child{border-right:0}.evidence-metrics dd{margin-top:7px}}@media (max-width:899px){.workspace-shell{padding:12px}.workspace-header{min-height:62px}.workspace-context span:first-child{display:none}.workspace-context span+span:before{content:none}.workspace-grid{flex-direction:column;display:flex}.viewport-stage{order:1;grid-template-rows:auto minmax(390px,1fr) auto;min-height:620px}.contract-rail{border-top:1px solid var(--ink);border-right:0;order:2}.source-section{grid-template-columns:.7fr 1.3fr;gap:0 24px;display:grid}.source-section .section-index,.source-section h2{grid-column:1}.source-readout,.source-metadata{grid-column:2}.source-section .marble-link,.source-section .generation-drawer{grid-column:1/-1}.source-readout{grid-row:1/span 2;margin-top:0}.contract-section{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.contract-section .section-index,.contract-section h2,.requirement-field{grid-column:1}.metric-grid{grid-area:1/2/span 3;margin-top:0}.run-test-button{grid-column:1/-1;margin-top:20px}.evidence-ledger{order:3}}@media (max-width:560px){.workspace-shell{padding:8px}.workspace-context{display:none}.viewport-stage{min-height:570px}.viewport-header{min-height:70px;padding:14px}.viewport-coordinates span:nth-child(2),.viewport-coordinates span:nth-child(3){display:none}.viewer-frame{min-height:350px}.placement-status{min-height:48px;line-height:1.4}.scene-actions,.scene-actions.has-verified-route{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-actions button{min-height:64px}.scene-actions button:nth-child(2n){border-right:0}.scene-actions button:nth-child(n+3){border-top:1px solid var(--line-dark)}.scene-actions .collider-toggle{border-top:1px solid var(--line-dark);grid-column:1/-1;min-height:48px}.scene-actions.has-verified-route .collider-toggle{grid-column:auto}.source-section,.contract-section{display:block}.source-readout,.source-metadata,.metric-grid,.run-test-button{margin-top:18px}.evidence-ledger{min-height:330px}.evidence-empty,.evidence-pending,.evidence-result{margin-top:44px}.evidence-metrics{grid-template-columns:1fr}.evidence-metrics div{border-right:0;display:flex}.workspace-status-strip span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
