@font-face{font-family:Anybody;src:url('/assets/fonts/Anybody-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-stretch:50% 150%;font-display:swap}
@font-face{font-family:OpticalDisplay;src:url('/assets/fonts/Anton-Regular.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
.article-heading h1{max-width:860px}.execution-note .article-copy{width:min(100%,780px)}.execution-note .article-section{padding-bottom:48px;margin-bottom:48px}.execution-note .article-section h2{font-size:clamp(32px,4vw,46px)}.execution-note .article-section>blockquote{font-size:clamp(23px,3vw,31px);letter-spacing:-.02em;line-height:1.4}.execution-note .article-section>blockquote p{margin:0}.execution-note .article-section p a,.execution-note details a{color:var(--signal);text-decoration:underline;text-underline-offset:3px}.execution-note .article-meta{line-height:1.5}.draft-tag{color:#dcc894}.adapter-diagram{border:1px solid #505343;background:#10120f;padding:22px;margin:36px 0}.figure-kicker{font:10px/1.6 var(--mono);letter-spacing:.07em;color:#c6caac;margin:0 0 15px}.placement-controls{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.placement-controls[hidden]{display:none}.placement-controls button{border:1px solid #666b57;background:#191c16;color:#e0e1d4;border-radius:4px;padding:9px 12px;font:12px/1.3 var(--mono);cursor:pointer}.placement-controls button[aria-pressed=true]{background:#d6e382;color:#12140e;border-color:#d6e382}.placement-controls button:focus-visible{outline:2px solid #fff;outline-offset:4px}.adapter-diagram svg{display:block;width:min(100%,580px);height:auto;margin:auto}.network-box{fill:#1b1e18;stroke:#737762;stroke-width:1.5}.projection-box{fill:#25291f;stroke:#727862}.diagram-ink{fill:#ececdd}.diagram-muted{fill:#bac0aa}.network-arrow{fill:none;stroke:#a8af96;stroke-width:2}.selected-target .projection-box,.selected-target .network-box{fill:#353d20;stroke:#d6e382;stroke-width:2}.selected-target .diagram-ink{fill:#efffb5}.optional-correction{visibility:hidden}.adapter-diagram[data-placement=residual] .optional-correction{visibility:visible}.bypass-label{display:block}.adapter-diagram[data-placement=residual] .bypass-label{display:none}.placement-explanation{padding:17px 0 0;border-top:1px solid #464b39;min-height:145px}.placement-explanation h3{font:600 16px/1.4 Arial,sans-serif;margin:0 0 8px;color:#e7ebd9}.placement-explanation p,.adapter-diagram figcaption{font:14px/1.65 Arial,sans-serif;color:#c8cdbb;margin:0}.adapter-diagram figcaption{border-top:1px solid #464b39;padding-top:15px;margin-top:18px;font-size:12px}.framing-comparison{margin:34px 0}.conversation-comparison-heading{margin-bottom:18px}.conversation-comparison-heading h3{font:600 22px/1.35 Arial,sans-serif;color:#eceee2;margin:0 0 8px}.conversation-comparison-heading>p{font:14px/1.6 Arial,sans-serif;color:#bac2ac;margin:0}.conversation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.saved-conversation{min-width:0;padding:20px;border:1px solid #444c38;border-radius:10px;background:#11150f}.saved-conversation>h4{font:600 14px/1.4 Arial,sans-serif;color:#cbd3b9;margin:0 0 22px}.framing-comparison .conversation-messages{display:flex;flex-direction:column;gap:24px;list-style:none;margin:0;padding:0}.framing-comparison .conversation-message{display:flex;flex-direction:column;min-width:0;margin:0;padding:0}.framing-comparison .from-user{align-items:flex-end}.framing-comparison .from-model{align-items:flex-start}.framing-comparison .conversation-speaker{font:600 12px/1.4 Arial,sans-serif;color:#c1c6b5;margin:0 0 7px}.framing-comparison .from-model .conversation-speaker{color:#d6e382}.conversation-bubble{min-width:0;padding:14px 16px;overflow-wrap:anywhere}.from-user .conversation-bubble{max-width:92%;border:1px solid #454c3d;border-radius:12px 12px 4px 12px;background:#24291f;color:#e2e5d9}.from-model .conversation-bubble{max-width:96%;border:1px solid #60733f;border-radius:12px 12px 12px 4px;background:#1e2818;color:#e8efcc}.framing-comparison .conversation-bubble p{font:16px/1.6 Arial,sans-serif;letter-spacing:0;white-space:pre-wrap;margin:0}.framing-comparison .conversation-bubble blockquote{border:0;padding:0;margin:0;color:inherit}.framing-comparison .conversation-bubble blockquote:before,.framing-comparison .conversation-bubble blockquote:after{content:none}.framing-comparison .from-model .conversation-bubble p{font:20px/1.5 var(--serif)}.framing-comparison figcaption{margin-top:18px;padding-top:16px;border-top:1px solid #444c38}.conversation-settings summary{font:13px/1.5 Arial,sans-serif;color:#b9c4a7;cursor:pointer;width:fit-content}.conversation-settings summary:focus-visible{outline:2px solid #d6e382;outline-offset:5px}.framing-comparison .conversation-settings p{font:13px/1.65 Arial,sans-serif;color:#b9c0a9;margin:12px 0 0}.framing-comparison .conversation-settings a{color:var(--signal);text-decoration:underline;text-underline-offset:3px}@media(max-width:680px){.conversation-grid{grid-template-columns:1fr;gap:18px}.saved-conversation{padding:18px 16px}.conversation-comparison-heading h3{font-size:20px}.framing-comparison .from-model .conversation-bubble p{font-size:20px}.conversation-bubble{padding:13px 14px}}.method-details{border:1px solid #505343;padding:20px;margin:35px 0;font:14px/1.7 Arial,sans-serif;color:#c8cdbb}.method-details summary{cursor:pointer;font:13px/1.5 var(--mono);color:#e0e7c6}.method-details p:last-child{margin-bottom:0}.method-details .table-scroll{overflow-x:auto}.method-details table{border-collapse:collapse;min-width:460px;width:100%;font-size:12px;margin:18px 0}.method-details th,.method-details td{padding:10px 8px;text-align:left;vertical-align:top;border-bottom:1px solid #424735}.method-details th{color:#e6edca}.method-details code{font-size:12px}.article-receipts{font:13px/1.7 Arial,sans-serif;color:#bec5ad}.article-receipts a{color:#d6e382;text-decoration:underline}.article-footer .actions{display:flex;flex-wrap:wrap;gap:20px}.note-disclosure{font:12px/1.6 Arial,sans-serif!important;color:#b4bba5!important}@media(max-width:760px){.adapter-diagram{padding:15px}.placement-controls{display:grid;grid-template-columns:1fr 1fr}.placement-controls button{font-size:11px;padding:11px 7px}.placement-explanation{min-height:0}.execution-note .article-aside{margin-bottom:40px}.method-details{padding:16px}.execution-note .article-section{padding-bottom:36px;margin-bottom:36px}}@media print{.site-header,.article-aside,.placement-controls,.site-footer,.article-footer{display:none}.article-hero,.article-layout{width:100%;padding:0}.article-number{display:none}.article-hero{display:block;min-height:0}.article-hero h1{font-size:32px}.adapter-diagram{break-inside:avoid}.method-details{display:block}}
.mental-model-note{border-top:1px solid #464b39;padding-top:16px;margin-top:18px}.mental-model-note summary{font:13px/1.5 var(--mono);cursor:pointer;color:#e5ebd0}.mental-model-note p{font:14px/1.65 Arial,sans-serif;color:#c8cdbb;margin:14px 0 0}
.execution-note .article-aside{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center;justify-content:center;text-align:center;border:0;border-bottom:1px solid #34372f;padding:0 0 24px;margin:0 0 56px}.execution-note .article-aside>a{display:block;min-height:0;border:0;padding:0;font:14px/1.5 Arial,sans-serif;letter-spacing:0;text-transform:none;color:#c8cdbb;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#62684f}.execution-note .article-aside>a:hover{color:var(--signal);background:transparent}
.execution-note .article-section>h3{font-size:24px;line-height:1.35;letter-spacing:-.01em;margin:34px 0 16px}@media print{.execution-note .article-aside{display:none}}

.block-stack-overview{border-top:1px solid #464b39;border-bottom:1px solid #464b39;padding:20px 0;margin:0 0 20px}.block-stack-overview>h3{font:600 16px/1.4 Arial,sans-serif;color:#e7ebd9;margin:0 0 16px}.stack-chain{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px 22px 16px minmax(0,1fr);gap:8px;align-items:center;max-width:600px;margin:0 auto}.stack-node{display:flex;align-items:center;justify-content:center;min-height:50px;min-width:0;text-align:center;border:1px solid #727862;border-radius:5px;background:#1b1e18;padding:8px 5px;font:14px/1.35 var(--mono);color:#e7ebd9}.stack-arrow,.stack-ellipsis{text-align:center;color:#b7c198;font:21px/1 Arial,sans-serif}.block-stack-overview>p{font:13px/1.6 Arial,sans-serif;color:#bac0aa;margin:14px 0 0}.block-zoom-label{font:12px/1.5 var(--mono);color:#c6caac;margin:0 0 12px}.lora-location-badge{visibility:hidden}.adapter-diagram[data-placement=attention] [data-lora-badge=attention],.adapter-diagram[data-placement=combined] [data-lora-badge=attention],.adapter-diagram[data-placement=mlp] [data-lora-badge=mlp],.adapter-diagram[data-placement=combined] [data-lora-badge=mlp]{visibility:visible}@media(max-width:760px){.stack-chain{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px 18px 12px minmax(0,1fr);gap:4px}.stack-node{font-size:12px;padding:8px 3px}.stack-arrow{font-size:16px}.stack-ellipsis{font-size:18px}.block-stack-overview>h3{font-size:15px}.block-zoom-label{font-size:11px}}

.execution-note .article-section>ul{padding-left:22px;margin:22px 0 28px;font:18px/1.55 var(--serif)}.execution-note .article-section>ul>li+li{margin-top:14px}

/* Shadow-art mental model: original research figures retain their aspect ratios. */
.shadow-story .shadow-kicker{font:10px/1.6 var(--mono);letter-spacing:.08em;color:var(--signal);margin-bottom:16px}
.shadow-figure{margin:32px 0 36px;min-width:0}
.shadow-figure>a{display:block;background:#fff;border:1px solid #535b45;padding:8px}
.shadow-figure img{display:block;width:100%;height:auto}
.shadow-figure figcaption{margin-top:12px;font:12px/1.65 Arial,sans-serif;color:#b9c0a9;overflow-wrap:anywhere}
.shadow-figure figcaption strong{color:#e0e5d1}
.shadow-photo{max-width:560px;margin-inline:auto}
.shadow-model-flow{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr);gap:10px;align-items:center;margin:30px 0;padding:22px 0;border-block:1px solid #464b39}
.shadow-model-flow>div{min-width:0;align-self:stretch;background:#161c11;border:1px solid #515e3d;padding:16px}
.shadow-model-flow>div>span{font:11px/1.4 var(--mono);letter-spacing:.08em;color:var(--signal)}
.shadow-model-flow p{font:15px/1.55 Arial,sans-serif;color:#d0d7c3;margin:10px 0 0}
.shadow-flow-arrow{font:20px/1 Arial,sans-serif;text-align:center;color:var(--signal)}
.shadow-frontiers{margin-bottom:28px}
@media(max-width:600px){.shadow-model-flow{grid-template-columns:1fr;gap:10px}.shadow-flow-arrow{transform:rotate(90deg)}.shadow-figure>a{padding:4px}.shadow-figure figcaption{font-size:12px}}
@media print{.shadow-figure{break-inside:avoid}.shadow-model-flow{break-inside:avoid}}

.shadow-figure figcaption a{color:var(--signal);text-decoration:underline;text-underline-offset:3px}

.geometry-ledger{width:100%;border-collapse:collapse;margin:18px 0;font:13px/1.6 Arial,sans-serif;color:#c8cdbb;table-layout:fixed}.geometry-ledger th,.geometry-ledger td{text-align:left;vertical-align:top;border-bottom:1px solid #464b39;padding:10px 8px;overflow-wrap:anywhere}.geometry-ledger th{color:#e5ebd0}.geometry-ledger th:first-child{width:65%}

/* Soft execution: an interactive optical graph with a click-through state view. */
.soft-execution-demo{width:min(1280px,calc(100vw - 24px));margin:42px 0 48px 50%;transform:translateX(-50%);color:#f0eade}
.soft-demo-stage{--demo-signal:#d9ff37;position:relative;isolation:isolate;min-height:0;aspect-ratio:25/16;overflow:hidden;border:1px solid #4a4b40;background:#080906;box-shadow:0 24px 80px #0009;color-scheme:dark;touch-action:pan-y}
.soft-demo-stage:focus-within{border-color:#7f865f}
.soft-demo-scene{position:absolute;inset:0;z-index:0;min-width:0}
.soft-demo-block-controls{display:none}
.soft-demo-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}
.soft-demo-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#090a0838 0,transparent 31%,#05060520 62%,#050605d6 100%),radial-gradient(circle at 52% 56%,transparent 0 45%,#05060570 100%)}
.soft-demo-stage [hidden]{display:none!important}
.soft-demo-stage button{appearance:none;border:0;background:none;color:inherit;cursor:pointer}
.soft-demo-stage button:focus-visible,.soft-demo-stage input:focus-visible{outline:1px solid var(--demo-signal);outline-offset:4px}
.soft-demo-header{position:absolute;z-index:3;inset:22px 25px auto;display:flex;justify-content:space-between;gap:24px;align-items:center;padding-bottom:13px;border-bottom:1px solid #f0eade3b;color:#d8d6cc;font:9px/1.2 var(--mono);letter-spacing:.16em}
.soft-demo-brand{color:#f2ede1;font-size:12px;font-weight:800;letter-spacing:.075em}
.soft-demo-brand:after{content:'';display:inline-block;width:36px;height:1px;margin-left:14px;vertical-align:middle;background:#d9ff37}
.soft-demo-copy{position:absolute;z-index:3;top:42px;left:28px;width:calc(100% - 56px);pointer-events:none}
.soft-demo-copy>span,.soft-demo-inside-copy>button{color:#d9ff37;font:9px/1.4 var(--mono);letter-spacing:.12em}
.soft-demo-copy h3{font:900 clamp(60px,7.15vw,104px)/.88 Impact,'Arial Narrow',Arial,sans-serif;letter-spacing:.002em;margin:13px 0 12px;width:178%;max-width:none;white-space:nowrap;text-transform:uppercase;text-shadow:0 4px 24px #000;transform:scaleX(.56);transform-origin:left center}
.soft-demo-copy p{max-width:900px;color:#d2d0c5;font:12px/1.55 var(--mono);margin:0;letter-spacing:.015em}
.soft-demo-inside-copy{top:70px;width:310px}.soft-demo-inside-copy>button{display:flex;align-items:center;gap:22px;min-height:44px;margin:0 0 22px;padding:11px 14px;border:1px solid #a5ad70;background:#10130deb;text-align:left;pointer-events:auto;font-size:11px;box-shadow:0 5px 20px #0005}.soft-demo-inside-copy>button:hover{background:#d9ff37;color:#0a0b08;border-color:#d9ff37}.soft-demo-inside-copy>button kbd{border:1px solid currentColor;padding:3px 4px;font:8px/1 var(--mono);opacity:.7}.soft-demo-inside-copy>span{display:block}.soft-demo-inside-copy h3{font-size:clamp(35px,4.2vw,62px);width:178%}
.soft-demo-inspector{position:absolute;z-index:4;top:198px;left:38%;right:auto;width:285px;padding:14px;border:1px solid #a5a28e;background:#080a07d9;backdrop-filter:blur(9px);font:10px/1.4 var(--mono);letter-spacing:.05em;box-shadow:0 12px 35px #0008;transition:opacity .25s,transform .25s}
.soft-demo-stage:not(.is-inside) .soft-demo-inspector:after{content:'';position:absolute;left:31%;top:100%;width:1px;height:var(--leader-length,88px);background:#b7b5a8;transform:rotate(var(--leader-angle,18deg));transform-origin:top}
.soft-demo-inspector>span{display:block;margin-bottom:12px;color:#f0eade;letter-spacing:.11em}
.soft-demo-inspector>div{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-top:8px}
.soft-demo-inspector i{display:block;width:var(--score,55%);height:3px;background:var(--demo-signal);box-shadow:0 0 11px #d9ff3773;transition:width .45s ease}
.soft-demo-inspector div:nth-child(3) i{background:#eee9db;box-shadow:none;opacity:.62}
.soft-demo-inspector b{font-weight:400;color:#d9d8ce;white-space:nowrap}
.soft-demo-enter{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.soft-demo-enter:hover{background:var(--demo-signal)!important;border-color:var(--demo-signal)!important;color:#0a0b08}
.soft-demo-enter span{font-size:15px}
.soft-demo-nodes{position:absolute;z-index:4;inset:0;display:block;pointer-events:none}
.soft-demo-nodes button{position:absolute;top:36%;width:112px;min-width:0;height:49px;padding:7px 7px 7px 12px!important;border-top:1px solid #77796c!important;border-left:1px solid #77796c!important;color:#d6d4c9;font:10px/1.35 var(--mono)!important;letter-spacing:.08em!important;text-align:left;pointer-events:auto;transition:color .2s,border-color .2s,background .2s}
.soft-demo-nodes button:nth-child(1){left:8%}.soft-demo-nodes button:nth-child(2){left:23%}.soft-demo-nodes button:nth-child(3){left:39%}.soft-demo-nodes button:nth-child(4){left:56%}.soft-demo-nodes button:nth-child(5){left:72%}.soft-demo-nodes button:nth-child(6){left:87%;top:30%}
.soft-demo-nodes button span{display:block;margin-bottom:3px;color:#96988d}
.soft-demo-nodes button:hover,.soft-demo-nodes button[aria-pressed=true]{border-color:var(--demo-signal)!important;color:#f0eade;background:#d9ff370b}.soft-demo-nodes button[aria-pressed=true] span{color:var(--demo-signal)}
.soft-demo-examples{position:absolute;z-index:5;left:26px;bottom:25px;display:flex;align-items:center;gap:7px;font:8px/1.3 var(--mono);letter-spacing:.08em}
.soft-demo-examples>span{margin-right:5px;color:#77796f}
.soft-demo-examples button{padding:9px 10px!important;border:1px solid #616359!important;background:#0a0c09b8!important;font:8px/1 var(--mono)!important;letter-spacing:.05em!important}
.soft-demo-examples button:hover,.soft-demo-examples button[aria-pressed=true]{border-color:var(--demo-signal)!important;color:#0a0b08;background:var(--demo-signal)!important}
.soft-demo-inside-tools{position:absolute;z-index:5;left:28px;bottom:77px;right:27px;display:flex;align-items:center;justify-content:space-between;color:#9fa096;font:8px/1.3 var(--mono);letter-spacing:.1em}
.soft-demo-inside-tools button{padding:9px 11px!important;border:1px solid #65675c!important;background:#0a0c09b8!important;font:8px/1 var(--mono)!important;letter-spacing:.07em!important}
.soft-demo-inside-tools button[aria-pressed=true]{color:#0a0b08;background:var(--demo-signal)!important;border-color:var(--demo-signal)!important}
.soft-demo-status{position:absolute;z-index:4;left:28px;bottom:84px;width:230px;margin:0;color:#92948a;font:8px/1.5 var(--mono);letter-spacing:.04em}
.soft-demo-stage.is-inside .soft-demo-vignette{background:linear-gradient(90deg,#090a08b8 0,transparent 31%),linear-gradient(0deg,#090a08d9 0,transparent 24%),radial-gradient(circle at 64% 44%,transparent 0 42%,#05060573 100%)}
.soft-demo-stage.is-inside .soft-demo-nodes,.soft-demo-stage.is-inside .soft-demo-enter,.soft-demo-stage.is-inside .soft-demo-status{display:none}
.soft-demo-stage.is-inside .soft-demo-inspector{top:132px;left:auto;right:27px}
.soft-demo-stage.is-transitioning:after{content:'';position:absolute;z-index:8;inset:0;pointer-events:none;background:#d9ff37;opacity:0;animation:soft-demo-flash .85s ease both}
@keyframes soft-demo-flash{0%,100%{opacity:0}48%{opacity:.08}55%{opacity:.02}}
.soft-demo-fallback{position:absolute;z-index:8;inset:70px 24px 120px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;text-align:center;background:radial-gradient(circle,#222619,#090a08 64%);border:1px solid #414338;color:#c9c8bd;font:12px/1.6 var(--mono)}
.soft-demo-fallback strong{color:#f0eade;font-size:24px}.soft-demo-fallback span{max-width:580px}
.soft-execution-demo figcaption{margin-top:14px;color:#aeb2a2;font:11px/1.65 var(--mono)}
.soft-execution-demo figcaption strong{color:#dce2c8}
@media(max-width:850px){.soft-demo-stage{min-height:620px;aspect-ratio:auto}.soft-demo-stage:not(.is-inside) .soft-demo-copy{width:calc(100% - 36px)}.soft-demo-copy h3{font-size:48px;white-space:normal;transform:none;width:auto}.soft-demo-nodes{left:6%;right:6%}.soft-demo-inspector{top:260px}.soft-demo-enter{top:384px}.soft-demo-status{display:none}}
@media(max-width:620px){.soft-execution-demo{width:100vw}.soft-demo-stage{min-height:680px;border-inline:0}.soft-demo-header{inset-inline:17px;font-size:7px}.soft-demo-brand:after{display:none}.soft-demo-copy,.soft-demo-inside-copy{left:18px;top:72px;width:73%}.soft-demo-stage:not(.is-inside) .soft-demo-copy{width:calc(100% - 36px)}.soft-demo-copy h3{font-size:42px;line-height:.88;white-space:normal}.soft-demo-copy p{font-size:10px}.soft-demo-inspector{top:268px;left:auto;right:17px;width:190px}.soft-demo-nodes{top:auto;left:10px;right:10px;bottom:157px;height:50px;display:grid;grid-template-columns:repeat(6,1fr);gap:2px}.soft-demo-nodes button,.soft-demo-nodes button:nth-child(n){position:static;width:auto;font-size:6px!important;letter-spacing:0!important}.soft-demo-examples{left:12px;right:12px;bottom:15px;flex-wrap:wrap}.soft-demo-examples>span{width:100%}.soft-demo-inside-tools{left:18px;right:18px;bottom:130px;align-items:flex-end}.soft-demo-inside-tools>span{max-width:120px}.soft-demo-stage.is-inside .soft-demo-inspector{top:266px;left:auto;right:17px}.soft-demo-stage.is-inside .soft-demo-examples{display:none}}
@media(prefers-reduced-motion:reduce){.soft-demo-stage.is-transitioning:after{animation:none}.soft-demo-inspector i{transition:none}}
@media print{.soft-execution-demo{width:100%;margin:35px 0;transform:none}.soft-demo-stage{min-height:360px;aspect-ratio:16/9}.soft-demo-stage canvas,.soft-demo-stage button,.soft-demo-nodes{display:none}.soft-demo-fallback{display:flex!important}}

/* The approved optical artwork supplies physical material detail; the light,
   controls, readout and navigable state remain live. */
.soft-demo-optical-plate{position:absolute;inset:0;z-index:0;pointer-events:none}
.soft-demo-copy h3,.soft-demo-brand,.soft-demo-inspector>span,.soft-demo-projected-words,.soft-demo-examples button{font-family:OpticalDisplay,Impact,'Arial Narrow',sans-serif!important;font-weight:400!important}
.soft-demo-optical-plate>img,.soft-demo-live-beams{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.soft-demo-bench-scale{position:absolute;top:74.3%;left:9.5%;right:9.5%;height:18px;border-top:1px solid #d4ccae6b;color:#d5cdb6;font:9px/1 var(--mono)}
.soft-demo-bench-scale span{position:absolute;top:7px;transform:translateX(-50%)}.soft-demo-bench-scale span:before{content:'';position:absolute;bottom:12px;left:50%;height:9px;border-left:1px solid #d4ccae6b}
.soft-demo-bench-scale span:nth-child(1){left:5.8%}.soft-demo-bench-scale span:nth-child(2){left:19.6%}.soft-demo-bench-scale span:nth-child(3){left:40%}.soft-demo-bench-scale span:nth-child(4){left:59.8%}.soft-demo-bench-scale span:nth-child(5){left:78.6%}.soft-demo-bench-scale span:nth-child(6){left:97.5%}
.soft-demo-stage:not(.is-inside) [data-demo-canvas]{opacity:0;pointer-events:none}
.soft-demo-stage.is-inside .soft-demo-optical-plate{display:none}
.soft-demo-stage:not(.is-inside) .soft-demo-vignette{background:linear-gradient(0deg,#08090624,transparent 30%)}
.soft-demo-live-beams{overflow:visible;mix-blend-mode:screen}
.soft-demo-live-beams path{fill:none;stroke-linecap:round}
.soft-beam-primary{stroke:#d9ff37;stroke-width:2.4;opacity:var(--beam-primary,.85);animation:optical-flicker 2.7s linear infinite}
.soft-beam-halo{stroke:#d9ff37;stroke-width:12;opacity:.62;animation:optical-flicker 2.7s linear infinite}
.soft-beam-branches{stroke:#f0eade;stroke-width:1.6;opacity:var(--beam-secondary,.28);animation:optical-flicker 3.9s linear infinite reverse}
@keyframes optical-flicker{0%,100%{filter:brightness(1)}8%{filter:brightness(.78)}12%{filter:brightness(1.1)}35%{filter:brightness(.9)}38%{filter:brightness(1.15)}62%{filter:brightness(.82)}66%{filter:brightness(1.04)}84%{filter:brightness(.88)}}
.soft-demo-projected-words{position:absolute;left:86.1%;top:42.8%;width:10%;height:20%;display:flex;flex-direction:column;justify-content:center;gap:8px;transform:skewY(-7deg);font:clamp(24px,4.3vw,65px)/1.1 Impact,'Arial Narrow',sans-serif;text-align:center;letter-spacing:-.035em}
.soft-demo-projected-words span:first-child{color:#e0ff65;text-shadow:0 0 5px #d9ff37,0 0 16px #d9ff37a6,0 0 30px #d9ff3755;animation:optical-flicker 2.7s linear infinite}
.soft-demo-projected-words span+span{color:#dfd8b5;opacity:.5;font-size:.8em;filter:blur(.5px)}
.soft-demo-optic-selection{position:absolute;left:var(--optic-x,42%);top:43.4%;width:8.4%;height:18.5%;transform:translateX(-50%);background:linear-gradient(#d9ff37,#d9ff37) left top/16px 2px no-repeat,linear-gradient(#d9ff37,#d9ff37) left top/2px 16px no-repeat,linear-gradient(#d9ff37,#d9ff37) right top/16px 2px no-repeat,linear-gradient(#d9ff37,#d9ff37) right top/2px 16px no-repeat,linear-gradient(#d9ff37,#d9ff37) left bottom/16px 2px no-repeat,linear-gradient(#d9ff37,#d9ff37) left bottom/2px 16px no-repeat,linear-gradient(#d9ff37,#d9ff37) right bottom/16px 2px no-repeat,linear-gradient(#d9ff37,#d9ff37) right bottom/2px 16px no-repeat;filter:drop-shadow(0 0 5px #d9ff373d);transition:left .3s}
.soft-demo-copy{top:6%;left:2.8%}
.soft-demo-copy h3{font-size:clamp(60px,6.25vw,90px);margin:10px 0 13px;transform:scaleX(.64)}
.soft-demo-header{inset:2% 2.8% auto;padding-bottom:8px;border:0}
.soft-demo-header:after{content:'';position:absolute;left:150px;right:265px;top:50%;height:1px;background:#aaa89a70}
.soft-demo-brand{font:22px/1 Impact,'Arial Narrow',sans-serif;letter-spacing:.04em}.soft-demo-brand:after{display:none}
.soft-demo-header>span:last-of-type{font-size:10px}
.soft-demo-inspector{top:21.4%;left:37.5%;width:22.3%;padding:0;background:#11110ee0;backdrop-filter:blur(4px)}
.soft-demo-inspector>span{font:21px/1.2 Impact,'Arial Narrow',sans-serif;letter-spacing:.035em;padding:9px 13px;margin:0 0 8px;border-bottom:1px solid #bcb7a36e}
.soft-demo-inspector>div{grid-template-columns:40px 1fr 35px;gap:10px;padding:0 12px;margin:7px 0 10px;font-size:12px;letter-spacing:0}
.soft-demo-score-track{height:7px;background:#d6d1bd48;box-shadow:inset 0 0 0 1px #ded9c329}
.soft-demo-enter{position:absolute!important;right:8px;top:6px;width:28px!important;height:28px!important;min-height:28px;clip-path:none!important;overflow:visible!important;padding:0!important;color:#e2ddcd;font:21px/28px var(--mono)!important}
.soft-demo-inspector i{height:100%}.soft-demo-inspector div:nth-child(3) i{opacity:.9}
.soft-demo-inspector>div:nth-last-child(2) i{background:#d9ff37;box-shadow:0 0 11px #d9ff3773;opacity:1}.soft-demo-inspector>div:last-child i{background:#eee9db;box-shadow:none;opacity:.9}
.soft-demo-nodes button{top:37%;height:28%;padding:0!important;border-top:0!important;border-left:0!important;width:12%;font-size:11px!important;background:none!important;display:flex;align-items:flex-start;justify-content:flex-start}
.soft-demo-nodes button:after{content:'';position:absolute;top:20px;left:0;height:60px;width:40%;border-top:1px solid #b9b5a0;border-left:1px solid #b9b5a0;pointer-events:none}
.soft-demo-nodes button span{display:inline;color:inherit;margin-right:6px}
.soft-demo-nodes button:nth-child(1){left:11.6%}.soft-demo-nodes button:nth-child(2){left:25.3%}.soft-demo-nodes button:nth-child(3){left:42.3%}.soft-demo-nodes button:nth-child(4){left:57.5%}.soft-demo-nodes button:nth-child(5){left:72%}.soft-demo-nodes button:nth-child(6){left:83%;top:28.6%}
.soft-demo-examples{left:2%;bottom:7.5%;gap:14px}.soft-demo-examples>span{display:none}
.soft-demo-examples button{padding:12px 16px!important;min-height:41px;font:18px/1 Impact,'Arial Narrow',sans-serif!important;letter-spacing:.025em!important}
.soft-demo-status{left:36px;right:36px;bottom:17%;width:auto;text-align:center;font-size:11px;letter-spacing:.05em;color:#e1ddcf;pointer-events:none}
.soft-demo-inside-copy{top:70px}.soft-demo-inside-copy h3{font-size:clamp(35px,4.2vw,62px)}
.soft-demo-stage.is-inside .soft-demo-inspector{width:285px}
.soft-demo-stage.is-inside .soft-demo-inside-tools{bottom:17%;font-size:10px}
.soft-demo-stage.is-inside .soft-demo-inside-tools button{font-size:10px!important}
@media(min-width:851px){.soft-demo-projected-words{top:41%;height:23%;font-size:clamp(24px,5.8vw,80px);transform:skewY(-7deg) scaleX(.85)}}
@media(max-width:850px){.soft-demo-header:after{display:none}.soft-demo-copy h3{font-size:48px}.soft-demo-optical-plate{inset:120px -110px 110px}.soft-demo-inspector{top:210px;left:auto;right:17px;width:220px}.soft-demo-stage:not(.is-inside) .soft-demo-inspector:after{display:none}.soft-demo-inspector>div{font-size:10px}.soft-demo-nodes button{font-size:8px!important}.soft-demo-examples{bottom:20px;gap:7px}.soft-demo-examples button{font-size:13px!important;padding:10px!important;min-height:35px}.soft-demo-status{display:none}.soft-demo-projected-words{font-size:38px}.soft-demo-stage.is-inside .soft-demo-inspector{width:210px}.soft-demo-stage.is-inside .soft-demo-inspector>span{font-size:17px}}
@media(max-width:620px){.soft-demo-brand{font-size:18px}.soft-demo-header>span:last-of-type{font-size:7px}.soft-demo-copy{left:18px;top:65px}.soft-demo-copy h3{font-size:42px}.soft-demo-optical-plate{inset:160px -150px 135px}.soft-demo-inspector{top:235px;width:185px}.soft-demo-inspector>span{font-size:16px}.soft-demo-inspector>div{grid-template-columns:32px 1fr 27px;gap:5px;padding-inline:9px}.soft-demo-nodes button,.soft-demo-nodes button:nth-child(n){height:50px;font-size:7px!important;text-align:center}.soft-demo-nodes button:after{display:none}.soft-demo-nodes button span{display:block;margin:0}.soft-demo-inside-copy{top:65px}.soft-demo-stage.is-inside .soft-demo-inspector{top:320px;width:185px}.soft-demo-stage.is-inside .soft-demo-examples{display:none}}
@media(prefers-reduced-motion:reduce){.soft-beam-primary,.soft-beam-halo,.soft-beam-branches,.soft-demo-projected-words span:first-child{animation:none}.soft-demo-optic-selection{transition:none}}
@media(max-width:850px){.soft-demo-copy h3{transform:none}}
@media(max-width:620px){
 .soft-demo-optical-plate{inset:230px 0 auto;height:250px;mask-image:linear-gradient(transparent,#000 20%,#000 85%,transparent)}
 .soft-demo-copy h3{transform:none}
 .soft-demo-projected-words{font-size:20px;gap:2px}
 .soft-demo-bench-scale{font-size:5px;top:78%;height:8px}.soft-demo-bench-scale span{top:4px}.soft-demo-bench-scale span:before{bottom:7px;height:4px}
 .soft-demo-optic-selection{background-size:8px 1px,1px 8px,8px 1px,1px 8px,8px 1px,1px 8px,8px 1px,1px 8px}
 .soft-demo-nodes{bottom:155px;height:46px}
 .soft-demo-nodes button,.soft-demo-nodes button:nth-child(n){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:8px!important}
 .soft-demo-stage.is-inside .soft-demo-inside-copy{width:calc(100% - 36px)}
 .soft-demo-inside-copy h3{font-size:30px;line-height:.94;white-space:normal;margin-block:9px}
 .soft-demo-inside-copy>button{margin-bottom:14px}
 .soft-demo-inside-copy p{max-width:300px;font-size:9px}
 .soft-demo-stage.is-inside .soft-demo-inspector{top:auto;bottom:24px;left:18px;right:18px;width:auto}
 .soft-demo-stage.is-inside .soft-demo-inspector>span{font-size:14px;padding:7px 9px;margin-bottom:3px}
 .soft-demo-stage.is-inside .soft-demo-inspector>div{grid-template-columns:37px 1fr 30px;margin-block:6px;font-size:9px}
 .soft-demo-stage.is-inside .soft-demo-inside-tools{bottom:168px;font-size:8px}
 .soft-demo-stage.is-inside .soft-demo-inside-tools button{font-size:8px!important}
}

/* Continuous zoom between the fixed photograph and the 3D state. */
.soft-demo-optical-plate{will-change:transform,opacity;backface-visibility:hidden;transform:scale(1.02)}
.soft-demo-stage.is-inside .soft-demo-optical-plate{display:block;opacity:0}
.soft-demo-stage canvas{will-change:opacity}
.soft-demo-stage.is-transitioning:after{display:none}
.soft-demo-stage.is-transitioning .soft-demo-nodes,.soft-demo-stage.is-transitioning .soft-demo-inspector,.soft-demo-stage.is-transitioning .soft-demo-step-navigation{pointer-events:none}
.soft-demo-equation{display:block;margin:22px 0 12px;padding:12px 0;border-block:1px solid #ada57b4a;color:#d9ff37;font:11px/1.6 var(--mono);white-space:normal}
.soft-demo-inside-copy>.soft-demo-detail{color:#a9aa98;font:9px/1.6 var(--mono);letter-spacing:.04em;max-width:310px}
.soft-demo-stage.is-inside .soft-demo-inspector>span{font-size:18px}
.soft-demo-inspector>div{grid-template-columns:minmax(45px,1fr) minmax(40px,1.2fr) 32px;align-items:center}
.soft-demo-inspector>div>span{overflow-wrap:anywhere;font-size:10px;line-height:1.3}
.soft-demo-step-navigation{position:absolute;z-index:6;bottom:17%;left:50%;transform:translateX(-50%);display:flex;gap:8px;align-items:center}
.soft-demo-step-navigation>div{display:flex;gap:4px}
.soft-demo-step-navigation button{padding:8px!important;min-width:30px;min-height:34px;border:1px solid #a5a28e55!important;background:#0b0d09dc!important;font:10px/1 var(--mono)!important;transition:color .25s,background .25s}
.soft-demo-step-navigation button[aria-current=step]{background:#d9ff37!important;color:#10120b;border-color:#d9ff37!important}
.soft-demo-step-navigation button:disabled{opacity:.3;cursor:default}
.soft-demo-stage.is-inside{touch-action:none}
@media(max-width:850px){.soft-demo-step-navigation{bottom:150px}.soft-demo-equation{margin-block:12px;font-size:10px}.soft-demo-inside-copy p{max-width:280px}}
@media(max-width:620px){
 .soft-demo-equation{margin:8px 0;padding-block:6px;font-size:9px;max-width:310px}
 .soft-demo-inside-copy>.soft-demo-detail{font-size:8px}
 .soft-demo-step-navigation{bottom:170px;left:18px;right:18px;transform:none;justify-content:center;gap:5px}
 .soft-demo-step-navigation button{min-width:27px;min-height:29px;padding:7px!important;font-size:9px!important}
 .soft-demo-stage.is-inside .soft-demo-inside-tools{bottom:211px;font-size:7px}
 .soft-demo-stage.is-inside .soft-demo-inspector>span{font-size:14px}
 .soft-demo-stage.is-inside .soft-demo-inspector>div{grid-template-columns:100px 1fr 28px}
 .soft-demo-inside-copy p{max-width:330px}
 .soft-demo-stage.is-inside .soft-demo-inside-copy h3{font-size:28px}
}
@media(prefers-reduced-motion:reduce){.soft-demo-optical-plate{will-change:auto}}

.soft-demo-live-beams,.soft-demo-projected-words,.soft-demo-optic-selection,.soft-demo-bench-scale{translate:none}

/* Keep the optical blur separate from flicker: animating filter on this group
   used to override the SVG Gaussian blur and draw an opaque neon stripe. */
.soft-beam-halo{filter:url(#soft-beam-glow);animation:none;stroke-width:8;opacity:.34}
.soft-beam-primary{stroke:#e7ff82;stroke-width:1.55;animation:soft-light-energy 3s linear infinite}
.soft-beam-branches{stroke-width:1;opacity:calc(var(--beam-secondary,.28)*.65);animation:soft-light-energy 3s linear infinite reverse}
@keyframes soft-light-energy{0%,100%{stroke-opacity:.92}30%{stroke-opacity:1}54%{stroke-opacity:.88}78%{stroke-opacity:.97}}
.soft-demo-projected-words span:first-child{text-shadow:0 0 3px #d9ff37b0,0 0 13px #d9ff3766,0 0 25px #d9ff3726;animation:soft-projection-energy 3s linear infinite}
@keyframes soft-projection-energy{0%,100%{filter:brightness(.96)}40%{filter:brightness(1.015)}70%{filter:brightness(.985)}}
.soft-demo-light-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:330px;margin-top:18px;font:8px/1.5 var(--mono);letter-spacing:.025em;color:#92988a}
.soft-demo-light-legend b{font-weight:400;color:#b9bc9b}
.soft-demo-light-legend span{padding-bottom:5px;border-bottom:1px solid #747d5d45;transition:color .25s,border-color .25s}
.soft-demo-stage[data-flow-phase=incoming] [data-light-phase=incoming],.soft-demo-stage[data-flow-phase=interaction] [data-light-phase=interaction],.soft-demo-stage[data-flow-phase=outgoing] [data-light-phase=outgoing]{color:#e7ff95;border-color:#d9ff37}
@media(max-width:620px){.soft-demo-light-legend{margin-top:6px;font-size:7px;gap:5px}.soft-demo-light-legend span{padding-bottom:2px}}
@media(prefers-reduced-motion:reduce){.soft-beam-primary,.soft-beam-branches,.soft-demo-projected-words span:first-child{animation:none}.soft-demo-light-legend span{transition:none}}

/* Each example is one context; all optics expose values from that same trace. */
.soft-demo-examples>span{display:inline;color:#b7b6a9;font-size:9px}
.soft-demo-nodes button{flex-direction:column;gap:0}
.soft-demo-nodes button .soft-demo-node-heading{display:block;margin:0 0 10px;font-size:11px;color:#e7e3d5;white-space:nowrap}
.soft-demo-nodes button [data-node-values]{display:block;width:120px;max-width:95%;margin:0;color:#c9cab9;font:9px/1.55 var(--mono);letter-spacing:0}
.soft-demo-nodes button [data-node-values]>span{display:flex;justify-content:space-between;gap:8px;margin:0;color:inherit}
.soft-demo-nodes button [data-node-values] i{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.soft-demo-nodes button [data-node-values] b{font-weight:400;color:#e3e6d1;white-space:nowrap;font-variant-numeric:tabular-nums}
.soft-demo-nodes button:after{top:65px;height:31px}
.soft-demo-stage:not(.is-inside) .soft-demo-inspector>[data-demo-score-row]:nth-of-type(n+3),.soft-demo-stage:not(.is-inside) .soft-demo-score-note{display:none}
.soft-demo-inspector>[data-demo-score-row]{grid-template-columns:minmax(60px,1fr) minmax(30px,1fr) 48px;gap:8px}
.soft-demo-inspector>[data-demo-score-row] b{text-align:right;font-variant-numeric:tabular-nums}
.soft-demo-inspector>[data-demo-score-row][data-score-rank] i{background:#dfdece;box-shadow:none;opacity:.76}
.soft-demo-inspector>[data-demo-score-row][data-score-rank="0"] i{background:#d9ff37;box-shadow:0 0 10px #d9ff374d;opacity:1}
.soft-demo-inspector>[data-demo-score-row][data-sign=negative] i{background:#91b2c9;box-shadow:none;opacity:.85}
.soft-demo-score-note{display:block;margin:12px 12px 10px;color:#989f8d;font:8px/1.5 var(--mono);letter-spacing:.015em}
.soft-demo-projected-words{top:41%!important;height:25%!important;gap:2px!important;justify-content:flex-start;font-size:clamp(24px,4.4vw,63px)!important}
.soft-demo-projected-words>small{font:14px/1.5 var(--mono);color:#e4ffc0;text-shadow:0 0 8px #d9ff3744;letter-spacing:0}
.soft-demo-readout-rows{display:flex;flex-direction:column;gap:3px;margin-top:8px;color:#dddcc7;font:11px/1.3 var(--mono);letter-spacing:0}
.soft-demo-readout-rows>span,.soft-demo-readout-rows>span+span{display:flex;justify-content:space-between;gap:8px;filter:none;opacity:.83;font-size:inherit;text-shadow:none;color:inherit}
.soft-demo-readout-rows i{font-style:normal}.soft-demo-readout-rows b{font-weight:400;font-variant-numeric:tabular-nums}
.soft-demo-projected-words .soft-demo-readout-rows>span{color:#dedcc7;text-shadow:none;animation:none;filter:none}
@media(max-width:850px){.soft-demo-nodes button .soft-demo-node-heading{font-size:9px}.soft-demo-nodes button [data-node-values]{font-size:8px;width:96px}.soft-demo-examples>span{display:none}}
@media(max-width:620px){
 .soft-demo-nodes{bottom:129px;height:78px}
 .soft-demo-nodes button,.soft-demo-nodes button:nth-child(n){height:78px;justify-content:flex-start;gap:0;padding-top:4px!important}
 .soft-demo-nodes button .soft-demo-node-heading{font-size:7px;margin:0 0 8px;white-space:normal}
 .soft-demo-nodes button [data-node-values]{max-width:100%;width:100%;font-size:6px;line-height:1.8}
 .soft-demo-nodes button [data-node-values]>span{gap:2px}
 .soft-demo-nodes button [data-node-values]{font-size:8px;line-height:1.4}
 .soft-demo-nodes button [data-node-values]>span{flex-direction:column;align-items:center;gap:2px}
 .soft-demo-nodes button [data-node-values]>span+span{display:none}
 .soft-demo-stage.is-inside .soft-demo-inspector{display:grid;grid-template-columns:1fr 1fr;bottom:20px}
 .soft-demo-stage.is-inside .soft-demo-inspector>span,.soft-demo-stage.is-inside .soft-demo-score-note{grid-column:1/-1}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]{grid-template-columns:1fr 44px;gap:5px;margin-block:4px;padding-inline:9px;font-size:10px}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]>.soft-demo-score-track{display:none}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]>span{font-size:9px}
 .soft-demo-score-note{margin:5px 9px 8px;font-size:7px}
 .soft-demo-step-navigation{bottom:195px}
 .soft-demo-stage.is-inside .soft-demo-inside-tools{bottom:231px}
 .soft-demo-projected-words{font-size:16px!important;gap:0!important}
 .soft-demo-projected-words>small{font-size:5px}
 .soft-demo-readout-rows{font-size:4px;line-height:1.2;gap:1px;margin-top:2px}
 .soft-demo-readout-rows>span{gap:2px}
}

/* Fixed photograph. The readout is a flat 260 × 360 design projected onto the
   photographed board's four corners, rather than a uniformly skewed overlay. */
.soft-demo-projected-words{left:0!important;top:0!important;width:260px!important;height:360px!important;box-sizing:border-box;padding:55px 32px 25px;overflow:hidden;visibility:hidden;transform-origin:0 0;gap:2px!important;font-size:72px!important;line-height:1;letter-spacing:-.02em;justify-content:flex-start}
.soft-demo-projected-words>small{font:18px/1.4 var(--mono);margin-top:4px}
.soft-demo-readout-rows{font:16px/1.3 var(--mono);gap:4px;margin-top:10px}
.soft-demo-readout-rows>span{gap:8px}
.soft-beam-travel{stroke:#f5ffd2;stroke-width:2.4;stroke-dasharray:26 974;stroke-dashoffset:1000;opacity:.72;filter:drop-shadow(0 0 3px #d9ff37);animation:soft-beam-travel 5.6s linear infinite}
@keyframes soft-beam-travel{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
.soft-demo-stage.is-inside .soft-beam-travel{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.soft-beam-travel{display:none;animation:none}}

.soft-demo-input-hologram{position:absolute;z-index:2;left:.2%;top:33.7%;width:11.8%;height:21%;pointer-events:none;filter:drop-shadow(0 0 7px #c2ff5a26)}
.soft-demo-input-hologram>span{position:absolute;top:0;left:0;right:0;text-align:center;font:8px/1.4 var(--mono);letter-spacing:.12em;color:#d7efb3}
.soft-demo-input-hologram>canvas{position:absolute;inset:12px 0 0;width:100%;height:calc(100% - 12px);display:block;z-index:0}
.soft-demo-input-hologram:after{content:'';position:absolute;inset:12px 0 0;background:repeating-linear-gradient(transparent 0 3px,#c9ff6c09 4px);mask-image:radial-gradient(ellipse,#0009,transparent 70%)}
.soft-demo-optic-selection{top:var(--optic-top,43.4%);width:var(--optic-width,8.4%);height:var(--optic-height,18.5%);transition:left .35s ease,top .35s ease,width .35s ease,height .35s ease}
.soft-demo-stage:not(.is-inside) .soft-demo-inspector:after{display:none}
@media(max-width:620px){.soft-demo-input-hologram>span{font-size:4px;letter-spacing:.03em}.soft-demo-input-hologram>canvas{inset:5px 0 0;height:calc(100% - 5px)}.soft-demo-input-hologram:after{inset:5px 0 0}}
@media(prefers-reduced-motion:reduce){.soft-demo-optic-selection{transition:none}}

.soft-demo-nodes button{height:70px;width:10%}
.soft-demo-optic-hotspots{position:absolute;inset:0;z-index:4;pointer-events:none}
.soft-demo-optic-hotspots>span{position:absolute;display:block;pointer-events:auto;cursor:pointer}
.soft-demo-stage.is-inside .soft-demo-optic-hotspots,.soft-demo-stage.is-transitioning .soft-demo-optic-hotspots{display:none}
.soft-demo-stage[data-hover-node] .soft-demo-inspector{opacity:0;pointer-events:none}
.soft-demo-hover-prediction{position:absolute;z-index:7;width:236px;padding:12px 14px;border:1px solid #c1d18f;background:#0c100bef;box-shadow:0 12px 35px #0008;backdrop-filter:blur(8px);pointer-events:none;color:#eae9da;transition:left .14s ease,top .14s ease;font:11px/1.4 var(--mono)}
.soft-demo-hover-prediction>strong{display:block;font:17px/1.3 OpticalDisplay,Impact,sans-serif;font-weight:400;letter-spacing:.035em;color:#edffd0}
.soft-demo-hover-prediction>small{display:block;margin:5px 0 10px;color:#a2af8e;font:8px/1.5 var(--mono);letter-spacing:.06em}
.soft-demo-hover-prediction [data-preview-rows]>div{position:relative;display:flex;justify-content:space-between;gap:12px;padding:4px 0 6px;margin-top:3px;font-variant-numeric:tabular-nums}
.soft-demo-hover-prediction [data-preview-rows]>div:after{content:'';position:absolute;left:0;bottom:2px;width:var(--probability);height:2px;background:#d9ff3766}
.soft-demo-hover-prediction [data-preview-rows]>div:first-child{color:#d9ff82}
.soft-demo-hover-prediction b{font-weight:400}
.soft-demo-hover-prediction>p{margin:10px 0 0;padding-top:8px;border-top:1px solid #d9ff3729;color:#98a48c;font:8px/1.5 var(--mono)}
@media(max-width:620px){.soft-demo-hover-prediction{width:218px}.soft-demo-nodes button,.soft-demo-nodes button:nth-child(n){height:78px}}
.soft-demo-stage:not(.is-inside) .soft-demo-status{display:block}
@media(max-width:620px){.soft-demo-status{left:24px;right:24px;bottom:88px;font-size:9px}}

/* Every photographed optic has its own numbered operation and entry point. */
.soft-demo-nodes button:nth-child(n){left:var(--node-x);top:37%;width:6.5%;transform:translateX(-50%)}
.soft-demo-nodes button:last-child{top:28.6%}
.soft-demo-nodes button .soft-demo-node-heading{font-size:9px;letter-spacing:.02em}
.soft-demo-nodes button [data-node-values]{width:100%;font-size:8px}
.soft-demo-nodes button [data-node-values]>span{gap:3px}
.soft-demo-nodes button:after{left:50%;width:25%;height:25px}
@media(min-width:621px){.soft-demo-nodes{inset:0}}
@media(max-width:850px) and (min-width:621px){.soft-demo-nodes button .soft-demo-node-heading{font-size:7px}.soft-demo-nodes button [data-node-values]{font-size:6px}}
@media(max-width:620px){
 .soft-demo-nodes{grid-template-columns:repeat(9,minmax(0,1fr))}
 .soft-demo-nodes button:nth-child(n){position:static;width:auto;transform:none}
 .soft-demo-nodes button .soft-demo-node-heading{font-size:6px;letter-spacing:0;min-height:17px}
 .soft-demo-nodes button [data-node-values]{font-size:7px}
 .soft-demo-step-navigation{left:8px;right:8px;gap:4px}
 .soft-demo-step-navigation>div{gap:2px}
 .soft-demo-step-navigation button{min-width:24px;padding:6px!important;font-size:8px!important}
}
@media(prefers-reduced-motion:reduce){.soft-demo-hover-prediction{transition:none}}

/* Phone views flow down the page; only the optical scene is a canvas. */
@media(max-width:620px),(max-width:850px) and (pointer:coarse){
 .soft-execution-demo{width:100vw;scroll-margin-top:16px}
 .soft-demo-stage,.soft-demo-stage.is-inside{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:'header' 'copy' 'scene' 'status' 'examples';gap:24px;min-height:0;aspect-ratio:auto;padding:18px 16px 24px;touch-action:pan-y pinch-zoom}
 .soft-demo-stage button,.soft-demo-optic-hotspots>span{-webkit-tap-highlight-color:transparent;user-select:none}
 .soft-demo-stage.is-inside{grid-template-areas:'header' 'copy' 'scene' 'tools' 'navigation' 'inspector' 'examples'}
 .soft-demo-stage .soft-demo-header{position:relative;inset:auto;grid-area:header;gap:12px;padding:0;min-width:0}
 .soft-demo-header>span:last-of-type{font-size:8px;letter-spacing:.06em;text-align:right}
 .soft-demo-stage .soft-demo-copy,.soft-demo-stage:not(.is-inside) .soft-demo-copy,.soft-demo-stage.is-inside .soft-demo-inside-copy{position:relative;inset:auto;grid-area:copy;width:100%;min-width:0}
 .soft-demo-copy h3{width:auto;max-width:100%;transform:none;font-size:clamp(36px,10.5vw,56px);line-height:1.02;white-space:normal;margin:0 0 16px}
 .soft-demo-stage.is-inside .soft-demo-inside-copy h3{width:auto;transform:none;font-size:36px;line-height:1.03;margin:12px 0 18px}
 .soft-demo-stage .soft-demo-copy p,.soft-demo-stage.is-inside .soft-demo-inside-copy p{max-width:none;font-size:12px;line-height:1.75}
 .soft-demo-inside-copy>button{min-height:46px;margin-bottom:24px;font-size:11px}
 .soft-demo-stage .soft-demo-equation{max-width:none;margin:20px 0 14px;padding:12px 0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
 .soft-demo-stage .soft-demo-inside-copy>.soft-demo-detail{max-width:none;font-size:10px;line-height:1.7}
 .soft-demo-light-legend{margin-top:18px;font-size:8px;gap:8px;flex-wrap:wrap}
 .soft-demo-stage .soft-demo-scene{position:relative;inset:auto;grid-area:scene;width:calc(100% + 32px);margin-inline:-16px;aspect-ratio:1568/1003;height:auto;min-height:210px;overflow:hidden;touch-action:pan-y pinch-zoom}
 .soft-demo-stage.is-inside .soft-demo-scene{aspect-ratio:auto;height:clamp(340px,90vw,440px);min-height:0}
 .soft-demo-stage .soft-demo-optical-plate{inset:0;height:auto;mask-image:none}
 .soft-demo-stage [data-demo-canvas]{touch-action:pan-y pinch-zoom}
 .soft-demo-stage:not(.is-inside) .soft-demo-inspector{display:none}
 .soft-demo-stage .soft-demo-nodes{position:absolute;inset:0;grid-area:auto;display:block;height:auto;min-width:0;pointer-events:none}
 .soft-demo-stage .soft-demo-nodes button:nth-child(n){position:absolute;inset:auto;left:var(--node-x);top:31%;width:7%;height:30px;min-height:0;transform:translateX(-50%);align-items:center;justify-content:center;padding:0!important;border:0!important;background:none!important;text-align:center;gap:0}
 .soft-demo-stage .soft-demo-nodes button:last-child{top:20%}
 .soft-demo-stage .soft-demo-nodes button .soft-demo-node-heading{min-height:0;margin:0;font-size:0;letter-spacing:0;white-space:nowrap;color:#dedfce}
 .soft-demo-stage .soft-demo-nodes button .soft-demo-node-heading:before{content:attr(data-marker);font:9px/1 var(--mono);text-shadow:0 1px 4px #000}
 .soft-demo-stage .soft-demo-nodes button[aria-pressed=true] .soft-demo-node-heading{color:#d9ff37}
 .soft-demo-stage .soft-demo-nodes button [data-node-values]{display:none}
 .soft-demo-stage .soft-demo-nodes button:after{display:block;left:50%;top:27px;width:0;height:10px;border:0;border-left:1px solid #b9b5a077}
 .soft-demo-stage .soft-demo-hover-prediction{display:none!important}
 .soft-demo-stage .soft-demo-status{position:relative;inset:auto;grid-area:status;margin:0;width:auto;font-size:11px;line-height:1.7}
 .soft-demo-stage .soft-demo-examples,.soft-demo-stage.is-inside .soft-demo-examples{position:relative;inset:auto;grid-area:examples;display:flex;flex-wrap:wrap;gap:10px}
 .soft-demo-stage .soft-demo-examples button{flex:1;min-height:46px;padding:12px!important;font-size:17px!important}
 .soft-demo-stage.is-inside .soft-demo-inside-tools{position:relative;inset:auto;grid-area:tools;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:10px}
 .soft-demo-stage .soft-demo-inside-tools>span{width:100%;max-width:none;font-size:10px;line-height:1.7}
 .soft-demo-stage .soft-demo-inside-tools>button{min-height:44px;font-size:10px!important;padding:12px!important}
 .soft-demo-stage .soft-demo-block-controls{display:flex;align-items:center;gap:6px;font:10px/1.4 var(--mono);color:#dddccb}
 .soft-demo-stage .soft-demo-block-controls>button{width:40px;min-height:44px;font-size:18px!important;padding:8px!important}
 .soft-demo-block-controls>button:disabled{opacity:.3;cursor:default}
 .soft-demo-stage .soft-demo-step-navigation{position:relative;inset:auto;grid-area:navigation;display:block;transform:none}
 .soft-demo-step-navigation>div{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:2px}
 .soft-demo-stage .soft-demo-step-navigation>button{display:none}
 .soft-demo-stage .soft-demo-step-navigation button{min-width:0;min-height:44px;padding:8px 0!important;border:0!important;background:transparent!important;font-size:10px!important}
 .soft-demo-stage .soft-demo-step-navigation button[aria-current=step]{background:#d9ff3714!important;color:#d9ff37;box-shadow:inset 0 -1px #d9ff37}
 .soft-demo-stage.is-inside .soft-demo-inspector{position:relative;inset:auto;grid-area:inspector;display:block;width:auto;padding:0}
 .soft-demo-stage.is-inside .soft-demo-inspector>span{font-size:20px;padding:12px 14px;margin:0 0 16px}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]{grid-template-columns:minmax(0,1fr) minmax(48px,1fr) 54px;gap:12px;margin:14px 0;padding:0 14px;font-size:12px}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]>span{font-size:11px;line-height:1.5}
 .soft-demo-stage.is-inside .soft-demo-inspector>[data-demo-score-row]>.soft-demo-score-track{display:block;height:5px}
 .soft-demo-stage .soft-demo-score-note{margin:18px 14px 14px;font-size:10px;line-height:1.6}
 .soft-beam-travel{animation-duration:10s}
 .soft-beam-primary,.soft-beam-branches,.soft-demo-projected-words span:first-child{animation-duration:5.4s}
 .soft-demo-optic-selection{transition-duration:.6s}
}
