/* Shared semantics: component roles remain stable while selection uses an outline. */
:root{--vs-system:#236098;--vs-ai:#7551a8;--vs-human:#9c6214;--vs-proof:#087875;--vs-stop:#ad3441;--vs-sim:#536b78}
.vs-system{background:#edf4fc;border-color:var(--vs-system)}.vs-ai{background:#f3edfa;border-color:var(--vs-ai)}.vs-human{background:#fff4df;border-color:var(--vs-human)}.vs-evidence{background:#eaf6ef;border-color:var(--vs-proof)}.vs-virtual{background:#f1f4f6;border:2px dashed var(--vs-sim)}.vs-failure{background:#fff0f1;border-color:var(--vs-stop);color:#8e2631}
[class^=vs-] [hidden],[data-vs-controls][hidden]{display:none!important}
.vs-caption,[class^=vs-] figcaption{font-size:.85em;line-height:1.5;color:#526b77;margin:.8rem 0}.vs-controls{display:flex;flex-wrap:wrap;align-items:end;gap:.8rem;margin:1rem 0}.vs-controls label{display:grid;gap:.3rem;font-weight:600;flex:1;min-width:180px}.vs-controls select,.vs-controls button,.vs-chip-list button{font:inherit;border:1px solid #94adb6;background:#fff;color:#173643;border-radius:5px;padding:.6rem .8rem;min-height:44px;max-width:100%}.vs-controls button,.vs-chip-list button{cursor:pointer}.vs-controls button:disabled{opacity:.55;cursor:default}.vs-controls :focus-visible,.vs-chip-list button:focus-visible,.vs-artifact-track a:focus-visible{outline:3px solid #a76715;outline-offset:3px}
.vs-matrix-scroll{overflow:auto}.vs-matrix{width:100%;border-collapse:collapse;table-layout:fixed}.vs-matrix caption{text-align:left;font-size:1.25em;font-weight:700;margin:.5rem 0}.vs-matrix th,.vs-matrix td{padding:.7rem .6rem;border:1px solid #c8d8df;text-align:left;vertical-align:middle;font-size:.88em;overflow-wrap:break-word}.vs-matrix th:first-child{width:32%}.vs-matrix thead th{background:#f1f5f7}.vs-matrix td{color:#526b77}.vs-matrix .vs-required{color:#175b58;background:#f1f7f4}.vs-matrix .vs-selected{background:#e4f2ee;box-shadow:inset 3px 0 #087875}.vs-matrix .vs-required span{color:#087875;margin-right:.25rem}.vs-map-result{margin-top:1.2rem;border-left:4px solid #087875;padding:1rem 1.3rem;background:#f5f8f7}.vs-map-result h3{margin-top:0}.vs-chip-list{display:flex;flex-wrap:wrap;gap:.45rem}.vs-chip-list button{font-size:.85em;min-height:40px;padding:.4rem .65rem}.vs-chip-list button[aria-pressed=true]{background:#173643;color:#fff}.vs-dependency-proof{border-top:1px solid #c8d8df;margin-top:1rem}.vs-dependency-proof p{margin:.65rem 0}
.vs-architecture{margin:1.2rem 0}.vs-architecture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem 2.3rem;padding:.3rem 0}.vs-architecture-grid>article{position:relative;border:1.5px solid var(--vs-system);border-radius:7px;padding:.8rem 1rem;min-width:0}.vs-architecture-grid>.vs-ai{border-color:var(--vs-ai)}.vs-architecture-grid>.vs-human{border-color:var(--vs-human)}.vs-architecture-grid>.vs-evidence{border-color:var(--vs-proof)}.vs-architecture-grid>article:nth-child(4){grid-column:3;grid-row:2}.vs-architecture-grid>article:nth-child(5){grid-column:2;grid-row:2}.vs-architecture-grid>article:nth-child(6){grid-column:1;grid-row:2}.vs-node-meta{font-size:.75em!important;text-transform:uppercase;letter-spacing:.045em;font-weight:650;margin:0 0 .4rem!important}.vs-architecture h3{font-size:1.1em!important;margin:.3rem 0!important}.vs-architecture p{margin:.5rem 0;line-height:1.4}.vs-owner,.vs-wire{font-size:.8em!important}.vs-wire{border-top:1px solid #a7bac5;padding-top:.45rem;font-weight:600}.vs-connector{position:absolute;right:-1.85rem;top:40%;font-size:1.6rem;color:#2b736d}.vs-architecture-grid>article:nth-child(3) .vs-connector{right:50%;top:auto;bottom:-2.1rem;transform:rotate(90deg)}.vs-architecture-grid>article:nth-child(4) .vs-connector,.vs-architecture-grid>article:nth-child(5) .vs-connector{right:auto;left:-1.85rem;transform:rotate(180deg)}.vs-boundary{border:1px dashed #94adb6;padding:.9rem;font-size:.9em;line-height:1.45;margin-top:1rem}
.vs-operating-head{display:grid;gap:.3rem;padding:.8rem 1rem;background:#173643;color:#fff}.vs-operating-head span{font-size:.8em;text-transform:uppercase;letter-spacing:.06em}.vs-operating-lanes{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.vs-operating-lanes h3{font-size:1.1em!important;margin:1rem 0 .6rem!important}.vs-operating-lanes ol,.vs-lifecycle ol,.vs-artifact-track{list-style:none!important;padding:0!important}.vs-operating-lanes li:before,.vs-lifecycle li:before,.vs-artifact-track li:before{content:none!important}.vs-operating-lanes li{position:relative;border-left:3px solid #9aaeb7;background:#f1f5f7;padding:.7rem 1rem;margin-bottom:1.2rem}.vs-operating-lanes li+li:after{content:'↓';position:absolute;top:-1.3rem;left:1rem;color:#3f6575}.vs-operating-lanes strong,.vs-operating-lanes span{display:block}.vs-operating-lanes span{margin-top:.2rem;line-height:1.4}.vs-assisted li{border-color:#7551a8;background:#f3eff8}
.vs-handoff-grid{display:grid;grid-template-columns:1.05fr repeat(3,1fr);gap:2px;background:#c7d8df;border:1px solid #c7d8df}.vs-handoff-grid>div,.vs-handoff-grid>strong{padding:1rem .8rem;background:#fbfcfc;line-height:1.45}.vs-handoff-grid .vs-handoff-head{background:#173643;color:white;font-size:.85em;font-weight:600}.vs-handoff-grid .vs-ai{background:#f3edfa}.vs-handoff-grid .vs-human{background:#fff4df}.vs-handoff-grid .vs-evidence{background:#eaf6ef}.vs-handoff-grid .vs-wait{background:repeating-linear-gradient(-45deg,#f5f6f7,#f5f6f7 8px,#edf0f1 8px,#edf0f1 9px);color:#4b626d}.vs-handoff-grid small{display:block;font-size:.85em;margin-top:.5rem}
.vs-artifacts{margin:1.5rem 0}.vs-artifact-track{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.vs-artifact-track li{border:1px solid #adc3cc;border-radius:4px;margin:0;padding:.6rem}.vs-artifact-track .vs-current{border:2px solid #7551a8;background:#f3edfa}.vs-artifact-panel{scroll-margin-top:2rem;border-top:3px solid #7551a8;padding:1rem 0}.vs-artifact-panel h4{font-size:1.2em}.vs-work-contrast{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vs-work-contrast>div{padding:.8rem;border-left:3px solid #a7bac5}.vs-work-contrast>.vs-ai{border-color:#7551a8}.vs-work-contrast p{margin:.4rem 0}.vs-sample{margin:1rem 0;border:1px solid #a8b9c8;border-radius:6px;overflow:hidden;background:#f6f9fc}.vs-sample>.vs-node-meta{background:#e6eef5;padding:.7rem 1rem;margin:0!important}.vs-sample pre{margin:0!important;padding:1rem!important;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:.86em!important;background:transparent!important;box-shadow:none!important}.vs-review{border-left:4px solid #a76715;background:#fff6e7;padding:.85rem}.vs-example-review{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.vs-example-review>div{border-top:4px solid;padding:1rem;background:#f2f5f7}.vs-example-review>div:first-child{border-color:#7551a8}.vs-example-review>div:nth-child(2){border-color:#ad3441;background:#fff0f1}.vs-example-review>div:nth-child(3){border-color:#087875;background:#eaf6ef}.vs-example-review h3{margin:.3rem 0!important}.vs-example-review code{white-space:normal;overflow-wrap:anywhere;font-size:.85em}
.vs-lifecycle ol{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.vs-lifecycle li{display:flex;gap:.7rem;border:1px solid #a7bac5;padding:1rem;border-radius:6px;position:relative;margin:0;transition:outline-color .2s}.vs-lifecycle li b{flex:none;display:grid;place-items:center;background:#173643;color:white;border-radius:50%;width:1.8rem;height:1.8rem}.vs-lifecycle li strong,.vs-lifecycle li span{display:block}.vs-lifecycle li span{margin-top:.35rem;line-height:1.45}.vs-lifecycle .vs-current{outline:3px solid #087875;outline-offset:2px;background:#edf7f4}.vs-lifecycle .vs-skipped{border-style:dashed}.vs-lifecycle .vs-skipped:after{content:'SKIPPED';position:absolute;right:.4rem;bottom:.25rem;font-size:.7em;font-weight:700}.vs-life-status{padding:.8rem 1rem;background:#edf5f8;border-left:4px solid #236098}.vs-life-status.vs-failure{background:#fff0f1;border-color:#ad3441;color:#8e2631}.vs-case-story{list-style:none!important;margin:.8rem 0;padding:0!important;border-left:3px solid #236098}.vs-case-story li{position:relative;padding:.55rem .85rem;margin:0;border-bottom:1px solid #d7e1e5}.vs-case-story li:before{content:none!important}.vs-case-story small{display:block;color:#526b77;font-weight:600}.vs-case-story li+li small:before{content:'↓ ';color:#087875}
.vs-legend{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0;font-size:.78em}.vs-legend>span{padding:.4rem .55rem;border-width:1px;border-style:solid}.vs-legend .vs-virtual{border-style:dashed}.vs-legend b{font-size:.8em;margin-right:.3rem}.mod-environment .mod-sim rect{fill:#f1f4f6;stroke:#536b78;stroke-dasharray:8 5}.mod-environment .mod-ai rect{fill:#f2eafb;stroke:#7551a8}.mod-environment .mod-failure rect{fill:#fff0f1;stroke:#ad3441}
.vs-route-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vs-route-cards article{padding:1.2rem;border:1px solid #a8bec7;border-top:4px solid #087875;background:#f5f9f7}.vs-route-cards h3{margin:.4rem 0}.vs-route-cards ol{padding-left:1.2rem}.vs-route-cards li{margin:.4rem 0}.vs-route-progress{color:#087875;font-weight:700}
.slide .vs-architecture,.slide .vs-operating-model,.slide .vs-handoff,.slide .vs-lifecycle{margin:.3cqw 0}.slide .vs-architecture-grid{gap:2.5cqw 2.8cqw}.slide .vs-architecture-grid>article{padding:.7cqw 1cqw}.slide .vs-architecture p{font-size:.88em;margin:.4cqw 0}.slide .vs-architecture h3{font-size:1em!important}.slide .vs-node-meta{font-size:.65em!important}.slide .vs-connector{font-size:2cqw;right:-2.2cqw}.slide .vs-architecture-grid>article:nth-child(3) .vs-connector{right:50%;bottom:-2.5cqw}.slide .vs-architecture-grid>article:nth-child(4) .vs-connector,.slide .vs-architecture-grid>article:nth-child(5) .vs-connector{left:-2.2cqw}.slide .vs-boundary{font-size:.8em;padding:.7cqw;margin:.8cqw 0}.slide .vs-architecture figcaption,.slide .vs-operating-model figcaption,.slide .vs-handoff figcaption,.slide .vs-lifecycle figcaption{font-size:.67em;line-height:1.4;margin:.7cqw 0}.slide .vs-operating-head{padding:.7cqw 1cqw}.slide .vs-operating-lanes{gap:2cqw}.slide .vs-operating-lanes h3{margin:.8cqw 0!important}.slide .vs-operating-lanes li{padding:.65cqw 1cqw;margin-bottom:1.3cqw;font-size:.88em}.slide .vs-operating-lanes li+li:after{top:-1.6cqw}.slide .vs-handoff-grid>div,.slide .vs-handoff-grid>strong{padding:1cqw;font-size:.86em}.slide .vs-handoff-grid small{margin-top:.5cqw}.slide .vs-lifecycle ol{gap:1cqw;margin:.5cqw 0}.slide .vs-lifecycle li{padding:1cqw;font-size:.82em;gap:.7cqw}.slide .vs-lifecycle li b{width:2cqw;height:2cqw;font-size:.8em}.slide .vs-lifecycle .vs-controls{display:none!important}.slide .vs-life-status{font-size:.8em;margin:.5cqw 0;padding:.7cqw}.slide .vs-lifecycle>.vs-caption{font-size:.75em;margin:.4cqw 0}.slide .vs-example-review{gap:1.2cqw}.slide .vs-example-review>div{padding:1cqw;font-size:.9em}.slide .vs-example-review p{line-height:1.4}
@media(max-width:900px){.main-content .vs-matrix{min-width:680px}.main-content .vs-lifecycle ol{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.vs-architecture-grid,.vs-operating-lanes,.vs-work-contrast,.vs-route-cards,.vs-example-review,.vs-lifecycle ol,.main-content .vs-lifecycle ol{grid-template-columns:1fr}.vs-architecture-grid>article:nth-child(n){grid-column:auto;grid-row:auto}.vs-architecture-grid>article .vs-connector,.vs-architecture-grid>article:nth-child(n) .vs-connector{right:50%;left:auto;top:auto;bottom:-2.1rem;transform:rotate(90deg)}.vs-handoff-grid{grid-template-columns:1fr 1fr}.vs-handoff-grid>.vs-handoff-head{display:none}.vs-handoff-grid>strong{grid-column:1/-1;background:#173643;color:#fff}.vs-handoff-grid>div:nth-child(4n+8){grid-column:1/-1}.vs-artifact-track{grid-template-columns:1fr 1fr}.vs-controls{align-items:stretch}.vs-controls label{min-width:100%;max-width:100%}.slide .vs-architecture-grid{gap:2.5rem}.slide .vs-architecture-grid>article{padding:1rem}.slide .vs-architecture p,.slide .vs-boundary,.slide .vs-operating-lanes li,.slide .vs-handoff-grid>div,.slide .vs-handoff-grid>strong,.slide .vs-lifecycle li,.slide .vs-lifecycle>.vs-caption,.slide .vs-life-status{font-size:1em}.slide .vs-architecture h3{font-size:1.1em!important}.slide .vs-node-meta{font-size:.75em!important}.slide .vs-connector{font-size:1.6rem}.slide .vs-operating-lanes li{padding:1rem;margin-bottom:1.5rem}.slide .vs-operating-lanes li+li:after{top:-1.6rem}.slide .vs-lifecycle li b{width:1.8rem;height:1.8rem}.slide .vs-lifecycle li{padding:1rem;gap:.7rem}.slide .vs-lifecycle figcaption,.slide .vs-handoff figcaption,.slide .vs-operating-model figcaption,.slide .vs-architecture figcaption{font-size:.85em}.slide .vs-example-review>div{padding:1rem}.slide .vs-handoff-grid>div,.slide .vs-handoff-grid>strong{padding:1rem}.vs-sample pre{font-size:.8em!important}.vs-matrix-scroll{max-width:100%}}
@media(prefers-reduced-motion:reduce){.vs-lifecycle li{transition:none}}
@media print{.vs-controls,[data-guided-route]{display:none!important}.vs-artifact-panel[hidden]{display:block!important}.slide .vs-architecture-grid{grid-template-columns:repeat(3,1fr)}.slide .vs-operating-lanes{grid-template-columns:1fr 1fr}.slide .vs-lifecycle ol,.slide .vs-example-review{grid-template-columns:repeat(3,1fr)}.vs-lifecycle .vs-current{outline:none}.vs-lifecycle .vs-skipped:after{content:none}}

/* Captions remain in source notes and Read all; the presenter sees one takeaway. */
.deck-page:not(.reading-view) .slide :is(.vs-architecture,.vs-operating-model,.vs-handoff,.vs-lifecycle,.vs-scope-map)>figcaption{display:none}
.virtualization-route>div:last-child{border-color:#536b78;background:#f1f4f6;border-style:dashed;border-width:2px}
.vs-scope-map{margin:.5rem 0}.vs-scope-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.vs-scope-columns article{margin-top:1rem;border:1px solid #a8bec7;padding:1rem;min-width:0;background:#f3f8f7}.vs-scope-columns h3{margin:.6rem 0!important;font-size:1.15em!important}.vs-scope-columns a{display:block;margin-top:.8rem;font-size:.85em}.vs-scope-arrow{text-align:center;color:#087875;font-size:1.6em;margin:.5rem}.vs-scope-columns strong{display:block;line-height:1.4}.slide .vs-scope-columns{gap:1.2cqw}.slide .vs-scope-columns article{padding:1.1cqw;margin-top:1cqw}.slide .vs-scope-columns p,.slide .vs-scope-columns strong{font-size:.9em}.slide .vs-scope-map figcaption{font-size:.75em}
@media(max-width:700px){.vs-scope-columns{grid-template-columns:1fr}.slide .vs-scope-columns article{padding:1rem}.deck-tools{flex-wrap:wrap}.slide .vs-scope-columns p,.slide .vs-scope-columns strong{font-size:1em}}
@media print{.slide .vs-scope-columns{grid-template-columns:repeat(3,1fr)}}

@media(max-width:700px){.vs-handoff-grid [data-window]::before{content:attr(data-window);display:block;font-size:.75em;font-weight:700;color:#526b77;margin-bottom:.5rem}}
.mod-distinctions article:nth-child(2){border-top:3px dashed #536b78}
.mod-distinctions article:nth-child(3){border-color:#236098}
.virtualization-validation{background:#edf4fc;border-color:#236098}
@media(max-width:700px){.vs-sample pre,.vs-sample pre code{font-size:14px!important;line-height:1.6}}
