#structure-story{color-scheme:dark;--ground:#18102b;--surface:#211839;--raised:#241a3e;--line:#3a2f5c;--main:#f5f3ff;--secondary:#dcd6f5;--faint:#b9b0d6;--lime:#f0e100;--amber:#a98bff;font-family:Geist,Arial,sans-serif;background:var(--ground);color:var(--main)}
#structure-story *{box-sizing:border-box}#structure-story{margin:0}#structure-story a{color:inherit}#structure-story button{font:inherit}#structure-story button, #structure-story a{-webkit-tap-highlight-color:transparent}#structure-story button:focus-visible, #structure-story a:focus-visible, #structure-story .layer:focus-visible{outline:2px solid var(--lime);outline-offset:5px}#structure-story ::selection{background:var(--lime);color:#18102b}
#structure-story .site-header{height:80px;position:fixed;top:0;left:0;right:0;display:flex;align-items:center;gap:32px;padding:0 5%;border-bottom:1px solid #2e2450;background:var(--ground);z-index:20}#structure-story .wordmark{text-decoration:none;font-size:20px;font-weight:600;letter-spacing:-.8px;white-space:nowrap}#structure-story .wordmark span{color:var(--lime);padding:0 4px}#structure-story .header-note{font-size:12px;color:var(--faint);margin-left:auto}#structure-story .skip{font-size:12px;text-decoration:none;color:var(--secondary)}#structure-story .skip span{padding-left:10px}#structure-story .skip:hover{color:var(--lime)}
#structure-story .story{height:640svh;min-height:3500px}#structure-story .stage{position:sticky;top:0;height:100svh;min-height:640px;overflow:hidden;max-width:1800px;margin:auto}#structure-story .intro{position:absolute;top:24%;left:5%;width:28%;z-index:3;pointer-events:none}#structure-story .eyebrow{font:500 10px/1.6 'JetBrains Mono',monospace;letter-spacing:.13em;color:var(--faint)}#structure-story .intro .eyebrow{display:flex;align-items:center;gap:9px;font-size:10px}#structure-story .status-dot{width:5px;height:5px;border-radius:50%;background:var(--lime);flex:none}#structure-story h1{font-size:clamp(30px,3.2vw,53px);line-height:1.08;font-weight:500;letter-spacing:-1.9px;margin:22px 0 20px}#structure-story .intro p{max-width:330px;font-size:15px;color:var(--faint);line-height:1.7;margin:0}#structure-story .visual{position:absolute;left:31%;right:2%;top:13%;bottom:17%}#structure-story #system{height:100%;width:100%;overflow:visible}#structure-story .layer{cursor:pointer;outline:none}#structure-story .layer .paper-face{fill:#241a3e;stroke:#7d72a6;stroke-width:1.15;vector-effect:non-scaling-stroke;transition:fill 130ms,stroke 130ms}#structure-story .layer .paper-side{fill:#1d1534;stroke:#5a4c85;stroke-width:1;vector-effect:non-scaling-stroke}#structure-story .layer .paper-line{stroke:#7d72a6;stroke-width:1;fill:none}#structure-story .layer .file-name{fill:#b9b0d6;font:500 17px 'JetBrains Mono',monospace}#structure-story .layer .file-meta{fill:#b9b0d6;font:12px 'JetBrains Mono',monospace}#structure-story .layer .file-number{fill:#7d72a6;font:14px 'JetBrains Mono',monospace}#structure-story .layer:hover .paper-face, #structure-story .layer.selected .paper-face, #structure-story .layer:focus-visible .paper-face{fill:#2e2450;stroke:var(--main);stroke-width:1.8}#structure-story .layer.active .paper-face{fill:#2b2610;stroke:var(--lime);stroke-width:1.8}#structure-story .layer.active .paper-side{fill:#211d0c;stroke:#8a8100}#structure-story .layer.active .file-name{fill:var(--lime)}#structure-story .layer.waiting .paper-face{fill:#2a1c55;stroke:var(--amber);stroke-width:1.8}#structure-story .layer.waiting .file-name{fill:var(--amber)}
#structure-story .cover-top{fill:#2e2450;stroke:#b9b0d6;stroke-width:1.3}#structure-story .cover-side{fill:#211839;stroke:#6a5c96;stroke-width:1}#structure-story .cover-title{font:500 26px Geist,sans-serif;fill:#f5f3ff}#structure-story .cover-small{font:11px 'JetBrains Mono',monospace;fill:#b9b0d6;letter-spacing:1px}#structure-story #cover{pointer-events:none}#structure-story .leader{fill:none;stroke:#5a4c85;stroke-width:1}#structure-story .layer-label{font:500 14px Geist,sans-serif;fill:#dcd6f5}#structure-story .label-number{font:10px 'JetBrains Mono',monospace;fill:#7d72a6}#structure-story .label-sub{font:11px Geist,sans-serif;fill:#b9b0d6}#structure-story .trace{fill:none;stroke:#6a5c96;stroke-width:1.2}#structure-story .trace.work{stroke:var(--lime);stroke-width:1.5}#structure-story #input rect, #structure-story #output rect{fill:#211839;stroke:#5a4c85}#structure-story #input text{font:13px Geist,sans-serif;fill:#dcd6f5}#structure-story #input text.small-label, #structure-story .small-label{font:9px 'JetBrains Mono',monospace;fill:#b9b0d6;letter-spacing:1px}#structure-story .output-title{font:500 19px Geist,sans-serif;fill:#f5f3ff}#structure-story .output-note{font:11px 'JetBrains Mono',monospace;fill:#b9b0d6}#structure-story #review-badge rect{fill:#2a1c55;stroke:#6b30e8}#structure-story #review-badge circle{fill:var(--amber)}#structure-story #review-badge text{font:11px 'JetBrains Mono',monospace;fill:var(--amber)}#structure-story #saved-badge rect{fill:#211839;stroke:#5a4c85}#structure-story #saved-badge text{font:11px 'JetBrains Mono',monospace;fill:#dcd6f5}
#structure-story .hint{position:absolute;bottom:0;left:0;right:0;text-align:center;color:var(--faint);font-size:11px}#structure-story .detail{position:absolute;right:3%;top:24%;width:256px;padding:23px;background:#241a3e;border:1px solid #5a4c85;border-radius:10px;z-index:9;box-shadow:0 10px 40px #0009}#structure-story .detail h2{font-size:21px;font-weight:500;letter-spacing:-.5px;margin:12px 20px 9px 0}#structure-story .detail p{font-size:13px;color:#dcd6f5;line-height:1.65;margin:0}#structure-story .detail-rule{height:1px;background:#4a3d73;margin:18px 0}#structure-story .detail blockquote{font-size:13px;line-height:1.65;color:#dcd6f5;margin:10px 0 18px}#structure-story .detail-file{font:10px/1.6 'JetBrains Mono',monospace;color:#b9b0d6;overflow-wrap:anywhere}#structure-story .close-detail{position:absolute;right:10px;top:8px;background:transparent;border:0;color:#dcd6f5;font-size:23px;cursor:pointer;width:30px;height:30px}#structure-story .close-detail:hover{color:#fff;background:#2e2450;border-radius:5px}
#structure-story .caption{position:absolute;left:5%;bottom:18%;width:25%;z-index:3}#structure-story .chapter-number{font:11px 'JetBrains Mono',monospace;color:#b9b0d6}#structure-story .caption p{font-size:13px;line-height:1.7;color:#dcd6f5;margin:10px 0 0;max-width:300px}#structure-story .stage-bottom{position:absolute;bottom:7%;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:40px}#structure-story .chapters{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;width:min(670px,76%)}#structure-story .chapters button{padding:10px 0;background:none;border:0;cursor:pointer;color:#7d72a6;text-align:left;font:10px 'JetBrains Mono',monospace;min-height:44px}#structure-story .chapters b{font-family:Geist,sans-serif;font-size:11px;font-weight:400;margin-left:4px}#structure-story .chapter-track{display:block;height:2px;background:#3a2f5c;margin-bottom:13px;overflow:hidden}#structure-story .chapter-track i{display:block;width:0;height:100%;background:#7d72a6}#structure-story .chapters button[aria-current]{color:var(--main)}#structure-story .chapters button[aria-current] .chapter-track i{background:var(--lime)}#structure-story .chapters button:hover{color:#fff}#structure-story .scroll-prompt{font-size:12px;color:#b9b0d6;white-space:nowrap}#structure-story .scroll-prompt span{color:var(--lime);padding-left:15px}#structure-story .example-label{position:absolute;bottom:2.5%;left:5%;font:9px 'JetBrains Mono',monospace;letter-spacing:.08em;color:#7d72a6}
#structure-story .walkthrough{max-width:1200px;margin:auto;padding:120px 5% 40px;scroll-margin-top:80px}#structure-story .walkthrough h2{font-size:clamp(30px,4vw,49px);letter-spacing:-1.5px;font-weight:500;line-height:1.15;margin:24px 0 60px}#structure-story .reading-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}#structure-story .reading-grid article{border-top:1px solid #4a3d73;padding-top:22px}#structure-story .reading-grid span{font:11px 'JetBrains Mono',monospace;color:#b9b0d6}#structure-story .reading-grid h3{font-size:17px;font-weight:500;line-height:1.4}#structure-story .reading-grid p, #structure-story .review-note{font-size:14px;line-height:1.7;color:#b9b0d6}#structure-story .review-note{max-width:670px;font-size:12px;margin-top:60px}#structure-story .closing{border-top:1px solid #3a2f5c;padding-top:35px;margin-top:75px;display:flex;justify-content:space-between;align-items:center;gap:20px}#structure-story .closing span{font-size:24px;letter-spacing:-.6px}#structure-story .closing a{font-size:12px;color:#dcd6f5;text-decoration:none}
@media(min-width:1450px){#structure-story .visual{left:32%;right:4%;top:17%;bottom:19%}}
@media(max-width:1000px){#structure-story .site-header{height:66px}#structure-story .intro{top:16%;width:33%}#structure-story h1{font-size:34px;letter-spacing:-1.2px}#structure-story .intro p{font-size:13px}#structure-story .visual{left:30%;right:0%;top:22%;bottom:16%}#structure-story .caption{width:27%;bottom:22%}#structure-story .caption p{font-size:12px}#structure-story .chapters{width:85%}#structure-story .scroll-prompt{display:none}#structure-story .detail{right:5%;top:15%;width:230px}#structure-story .reading-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){#structure-story .site-header{height:62px;padding:0 6%}#structure-story .wordmark{font-size:18px}#structure-story .header-note{display:none}#structure-story .skip{margin-left:auto;font-size:11px}#structure-story .story{height:620svh;min-height:3100px}#structure-story .stage{min-height:680px}#structure-story .intro{top:96px;left:6%;width:88%;pointer-events:none}#structure-story .intro .eyebrow{font-size:9px}#structure-story h1{font-size:32px;line-height:1.1;max-width:420px;margin:14px 0 12px;letter-spacing:-1.2px}#structure-story .intro p{font-size:13px;line-height:1.6;max-width:420px}#structure-story .visual{left:0;right:0;top:33%;bottom:22%}#structure-story .caption{left:6%;bottom:13%;width:87%;display:flex;gap:15px;align-items:flex-start}#structure-story .chapter-number{font-size:10px;white-space:nowrap;padding-top:2px}#structure-story .caption p{font-size:11px;line-height:1.6;margin:0;max-width:450px}#structure-story .stage-bottom{left:6%;right:6%;bottom:5.3%;gap:0}#structure-story .chapters{width:100%;gap:5px}#structure-story .chapters button{font-size:9px}#structure-story .chapters b{font-size:9px;margin:3px 0 0;display:block}#structure-story .chapter-track{margin-bottom:7px}#structure-story .example-label{left:6%;bottom:2%;font-size:8px}#structure-story .hint{font-size:10px;bottom:0}#structure-story .detail{position:absolute;left:7%;right:7%;top:2%;width:auto;max-width:360px;margin:auto;padding:20px}#structure-story .detail h2{font-size:20px;margin-top:9px}#structure-story .detail p, #structure-story .detail blockquote{font-size:12px}#structure-story .detail-rule{margin:12px 0}#structure-story .detail blockquote{margin:8px 0 12px}#structure-story .walkthrough{padding:90px 6% 30px}#structure-story .reading-grid{gap:25px}#structure-story .reading-grid h3{font-size:16px}#structure-story .reading-grid p{font-size:13px}#structure-story .closing span{font-size:20px}}
@media(max-width:380px){#structure-story h1{font-size:28px}#structure-story .stage{min-height:700px}#structure-story .intro{top:88px}#structure-story .visual{top:34%;bottom:23%}#structure-story .reading-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#structure-story .story{height:auto;min-height:0}#structure-story .stage{position:relative;height:850px}#structure-story .chapters{display:none}#structure-story .stage-bottom{justify-content:flex-start}#structure-story .scroll-prompt{display:block}#structure-story .layer .paper-face{transition:none}#structure-story .walkthrough{padding-top:50px}}
@media(max-height:640px) and (prefers-reduced-motion:no-preference){
 #structure-story .site-header{height:48px;padding:0 4%;gap:16px}#structure-story .wordmark{font-size:17px}#structure-story .header-note{display:none}#structure-story .skip{margin-left:auto;font-size:10px}
 #structure-story .stage{min-height:0;height:100svh}#structure-story .story{min-height:2700px}
 #structure-story .intro{top:24%;left:4%;width:31%}#structure-story .intro .eyebrow{font-size:8px;letter-spacing:.04em}#structure-story h1{font-size:clamp(20px,3.1vw,36px);line-height:1.1;letter-spacing:-.8px;margin:13px 0 11px}#structure-story .intro p{font-size:11px;line-height:1.55}
 #structure-story .visual{left:33%;right:0;top:17%;bottom:20%}#structure-story .hint{font-size:9px;bottom:-10px}
 #structure-story .caption{display:none}#structure-story .stage-bottom{bottom:6%;left:4%;right:4%}#structure-story .chapters{width:100%;max-width:690px}#structure-story .chapters button{min-height:36px;font-size:9px;padding:5px 0}#structure-story .chapters b{font-size:10px;display:inline;margin-left:3px}#structure-story .chapter-track{margin-bottom:7px}
 #structure-story .scroll-prompt{display:none}#structure-story .example-label{left:4%;bottom:2%;font-size:8px}#structure-story .detail{top:0;left:auto;right:5%;width:240px;max-height:100%;overflow:auto;padding:15px}#structure-story .detail h2{font-size:18px;margin:8px 0}#structure-story .detail p, #structure-story .detail blockquote{font-size:11px;line-height:1.5}#structure-story .detail-rule{margin:10px 0}#structure-story .detail blockquote{margin:7px 0 10px}#structure-story .detail-file{font-size:9px}
}
#structure-story /* Reference composition: inputs left, #structure-story invariant system axis at 50%, #structure-story labels and outcomes right. */
.visual{left:0;right:0;top:12%;bottom:15%}#structure-story .intro{top:17%;width:27%;left:5%}#structure-story .intro h1{font-size:clamp(28px,3vw,46px)}#structure-story .intro p{font-size:14px;line-height:1.65}#structure-story .caption{bottom:18%;width:27%}#structure-story .hint{bottom:-8px;font-size:11px}#structure-story .detail{right:7%;top:28%}
#structure-story .layer .paper-face{fill:#2e2450;stroke:#b9b0d6}#structure-story .layer .paper-side{fill:#211839;stroke:#7d72a6}#structure-story .layer .file-name{fill:#dcd6f5}#structure-story .layer .file-meta{fill:#b9b0d6}#structure-story .cover-top{fill:#2e2450;stroke:#b9b0d6}#structure-story .cover-side{fill:#241a3e;stroke:#b9b0d6}
#structure-story .connection{fill:none;stroke:#6a5c96;stroke-width:1;vector-effect:non-scaling-stroke}#structure-story .connection.current{stroke:#f0e100;stroke-width:1.5}#structure-story .connection-dot{fill:#b9b0d6}#structure-story .rail-heading{fill:#b9b0d6;font:9px 'JetBrains Mono',monospace;letter-spacing:1.25px}#structure-story #source-items rect, #structure-story #outcome-items rect{fill:#211839;stroke:#4a3d73}#structure-story .rail-icon{fill:none;stroke:#b9b0d6;stroke-width:1}#structure-story .rail-name{font:12px Geist,sans-serif;fill:#dcd6f5}#structure-story .layer-label{font-size:16px;fill:#ebe7fb}#structure-story .label-sub{font-size:12px;fill:#b9b0d6}#structure-story .label-number{font-size:10px;fill:#b9b0d6}#structure-story .leader{stroke:#7d72a6}#structure-story #input text{font:10px 'JetBrains Mono',monospace;fill:#dcd6f5}
@media(max-width:1000px){#structure-story .intro{top:16%;width:27%}#structure-story .intro h1{font-size:30px}#structure-story .intro p{font-size:12px}#structure-story .visual{left:0;right:0;top:14%;bottom:15%}#structure-story .detail{right:5%;top:24%}}
@media(max-width:700px) and (min-height:641px){#structure-story .intro{top:95px;left:6%;width:88%}#structure-story .intro h1{font-size:31px;max-width:370px}#structure-story .intro p{font-size:13px;max-width:390px}#structure-story .visual{top:34%;bottom:22%;left:0;right:0}#structure-story .caption{width:88%;bottom:13%}#structure-story .detail{top:0;left:6%;right:6%;width:auto}#structure-story .hint{font-size:10px;bottom:0}}
@media(max-height:640px) and (prefers-reduced-motion:no-preference){#structure-story .intro{top:22%;left:4%;width:26%}#structure-story .intro h1{font-size:clamp(20px,3vw,33px)}#structure-story .intro p{font-size:10px}#structure-story .visual{top:16%;bottom:20%;left:0;right:0}#structure-story .hint{font-size:9px;bottom:-13px}#structure-story .detail{top:0;left:auto;right:4%;width:240px}#structure-story .caption{display:none}}
#structure-story /* Geometry audit: native-pixel labels, #structure-story undistorted isometric cards, #structure-story subtle flow. */
.layer .paper-face{fill:#2e2450;stroke:#b9b0d6;stroke-width:.85}
#structure-story .layer .paper-side{fill:#1d1534;stroke:#7d72a6;stroke-width:.8}
#structure-story .paper-inset{fill:none;stroke:#6a5c96;stroke-width:.7;pointer-events:none}
#structure-story .layer-glyph{fill:none;stroke:#dcd6f5;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#structure-story .glyph-ring{stroke:#7d72a6;stroke-width:1}
#structure-story .layer.active .layer-glyph{stroke:var(--lime)}#structure-story .layer.waiting .layer-glyph{stroke:var(--amber)}
#structure-story .cover-folder{fill:none;stroke:#b9b0d6;stroke-width:1.8;stroke-linejoin:round}
#structure-story .cover-title{font:500 31px Geist,sans-serif;fill:#dcd6f5}
#structure-story .cover-top{fill:#2e2450;stroke:#b9b0d6;stroke-width:1}#structure-story .cover-side{fill:#241a3e;stroke:#7d72a6}
#structure-story .layer-label{font:500 12px Geist,sans-serif;fill:#dcd6f5}
#structure-story .label-number{font:8px 'JetBrains Mono',monospace;fill:#7d72a6}
#structure-story .label-sub{font:11px Geist,sans-serif;fill:#b9b0d6}
#structure-story .leader{stroke:#6a5c96;stroke-width:.7}
#structure-story .rail-name{font:12px Geist,sans-serif;fill:#dcd6f5}
#structure-story .rail-heading{font:8px 'JetBrains Mono',monospace;letter-spacing:1.2px}
#structure-story #source-items rect, #structure-story #outcome-items rect{height:25px;fill:#211839;stroke:#4a3d73;stroke-width:.7;rx:4px}
#structure-story .connection{stroke:#6a5c96;stroke-width:.7}#structure-story .connection.current{stroke:#b8ad00;stroke-width:1}
#structure-story .connection-dot{r:1.5px;fill:#b9b0d6}#structure-story .moving-node{fill:#b9b0d6;pointer-events:none}#structure-story .moving-node.current{fill:var(--lime)}
#structure-story .hint{font-size:10px}
@media(max-width:800px){#structure-story .rail-name{font-size:10.5px}#structure-story .layer-label{font-size:10.5px}#structure-story .label-sub{display:none}#structure-story .rail-heading{font-size:6px;letter-spacing:.7px}#structure-story .label-number{font-size:7px}}
@media(max-height:640px) and (prefers-reduced-motion:no-preference){#structure-story .intro{top:18%;width:27%}#structure-story .intro h1{font-size:clamp(20px,3vw,30px);margin:10px 0}#structure-story .intro p{font-size:10px;line-height:1.5}#structure-story .intro .eyebrow{font-size:7px}#structure-story .visual{top:16%;bottom:20%}}
@media(prefers-reduced-motion:reduce){#structure-story .moving-node{display:none}}
@media(max-width:440px){
 #structure-story .site-header{height:44px}#structure-story .intro{top:60px;left:5%;width:90%}#structure-story .intro .eyebrow{display:none}#structure-story .intro h1{font-size:22px;max-width:310px;margin:0}#structure-story .intro p{display:none}
 #structure-story .visual{top:32%;bottom:21%}#structure-story .rail-name{font-size:8px}#structure-story .rail-heading{font-size:5px;letter-spacing:.4px}#structure-story .layer-label{font-size:8px}#structure-story .label-number{font-size:5px}
 #structure-story #source-items rect, #structure-story #outcome-items rect{height:21px}#structure-story .chapters b{font-size:8px;display:block;margin-left:0}#structure-story .chapters button{font-size:8px}#structure-story .hint{font-size:8px}
 #structure-story .detail{top:-20%;right:5%;left:5%;width:90%;max-height:130%}
}
@media(max-width:800px) and (max-height:640px){#structure-story .intro p{display:none}}
#structure-story .layer-status{fill:#f0e100;font:500 11px Geist,sans-serif}
#structure-story .leader.decision{stroke:#f0e100}
#structure-story #review-badge.decided rect{fill:#211d0c;stroke:#b8ad00}
#structure-story #review-badge.decided text, #structure-story #review-badge.decided circle{fill:#f0e100}
@media(max-width:800px){#structure-story .layer-status{font-size:8px}}
@media(max-width:440px){#structure-story .layer-status{font-size:6px}}
#structure-story /* Descriptions remain visible while the inline status changes. */
@media(max-width:800px){.label-sub{display:block;font-size:8px}#structure-story }
@media(max-width:440px){.label-sub{font-size:6px}}
