@import url('../cnn-architectures/styles.css');
html{scroll-behavior:auto}.intro{padding-top:6px}.intro>.eyebrow{margin-top:28px}.intro>p{max-width:650px}.intro h1{max-width:800px}.mission{display:grid;grid-template-columns:1fr 1fr 1.5fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--white)}.mission>div{padding:25px;border-right:1px solid var(--line)}.mission>div:last-child{border:0;background:#e5ecde}.mission-stat strong{font:500 clamp(30px,3.4vw,48px) var(--display);letter-spacing:-.04em;color:var(--teal);display:block}.mission-stat span{font-size:13px;line-height:1.6;display:block;margin-top:10px}.mission-question p{font:500 22px/1.45 var(--display);letter-spacing:-.03em;margin:12px 0}.mission-route,.decision-strip{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:28px 0}.mission-route span,.decision-strip span{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--white);font-size:13px;flex:1 1 130px}.pipeline{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pipeline>.node{flex:1 1 160px}.node{padding:22px 18px;border:1px solid #cbd6c8;border-radius:12px;background:var(--white);min-width:0}.node small{display:block;font:10px/1.6 var(--mono);letter-spacing:.07em;color:var(--muted)}.node strong{font:600 22px/1.5 var(--display);display:block;margin:10px 0;overflow-wrap:anywhere}.node span{display:block;font-size:13px;line-height:1.6}.node.reusable{background:#deeadc;border-color:#afc6b1}.node.mismatch{background:#f6e8d7;border-color:#d9b694}.feature-puzzle,.augmentation-hook{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.augmentation-hook{grid-template-columns:1fr 1fr}.arrow-pair,.leaf-pair{font-size:44px;line-height:1.7;color:var(--teal)}.lab-demo{padding:26px;border:1px solid var(--line);border-radius:18px;background:var(--white)}.lab-demo .controls{display:flex;flex-wrap:wrap;gap:20px;border-radius:10px;margin:22px 0;padding:18px}.lab-demo .controls label{flex:1 1 180px;margin:0}.lab-demo output{float:right}.lab-demo .controls .switch-row{font-weight:400;align-items:center;flex:1 1 180px}.lab-demo .task{font-size:15px;line-height:1.8}.matrix-row{display:flex;align-items:flex-start;gap:26px;flex-wrap:wrap;margin:24px 0}.number-matrix{border-collapse:separate;border-spacing:3px;width:auto;margin:0;max-width:100%;font:500 18px var(--mono)}.number-matrix caption{font:600 14px/1.5 var(--sans);padding-bottom:10px;text-align:left}.number-matrix td{width:44px;min-width:44px;height:44px;text-align:center;border:1px solid #d0d8cd;border-radius:3px;padding:2px;color:#183c35;font-variant-numeric:tabular-nums}.matrix-block{max-width:100%;overflow:auto}.matrix-block small{display:block;margin-top:10px;color:var(--muted);font-size:12px}.prob-row{display:grid;grid-template-columns:90px 1fr 70px;gap:12px;align-items:center;margin:14px 0;font-size:14px}.prob-track{background:#ecede5;height:22px;border-radius:5px;overflow:hidden}.prob-fill{height:100%;background:var(--teal);transition:width .2s}.prob-row:nth-child(2) .prob-fill{background:#ad673c}.freeze-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.freeze-block{border:1px solid var(--line);border-radius:10px;padding:18px;background:#edf1e9}.freeze-block.trainable{border-color:#cf9a6c;background:#fbefdd}.freeze-block small{display:block;font-size:11px;color:var(--muted)}.freeze-block b{display:block;font-size:14px;margin:10px 0}.freeze-block strong{display:block;font:24px var(--mono);margin:14px 0}.freeze-block .state{font:11px var(--mono);color:var(--teal)}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.toolbar button{min-height:42px}.question{padding:20px 24px;margin:16px 0;border:1px solid var(--line);border-radius:12px;background:#f0f1e7}.question textarea{background:var(--white)}.question label{font-weight:400}.question label b{color:var(--orange);font:13px var(--mono);margin-right:8px}.question .answer-fold{margin-bottom:0}.context-hook{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px}.symbol{width:65px;height:65px;display:grid;place-items:center;border:2px solid var(--teal);border-radius:10px;font:30px var(--mono);background:#d8e9da}.local-window{border:2px dashed #bb5135;padding:18px;text-align:center;border-radius:10px;font:21px/1.7 var(--mono)}.local-window small{font:10px var(--mono)}.context-lab{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:start}.rf-table{border-spacing:2px;font-size:16px}.rf-table td{width:34px;min-width:34px;height:34px;border-radius:2px}.rf-table td.covered{background:#d7e7d6!important;border-color:#80a68b}.rf-table td.marked{box-shadow:inset 0 0 0 2px #bb5135;font-weight:700}.rf-table td.center{background:#12655b!important;color:white}.patch-network{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:center}.patch-network span{padding:9px;border:1px solid var(--line);border-radius:5px;background:#edf2e6;font-size:12px}.patch-network b,.patch-network strong{grid-column:1/-1;font-size:14px;color:var(--teal)}.context-lab .readout{margin-top:0}.readout.warning{background:#faebda;border-color:#dcba95}.story{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.story-top{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.story-top .eyebrow{margin-right:auto}.story-top button{font-size:12px;min-height:38px}.story-narrative{padding:18px;background:#eff3e9;border-radius:10px;margin-top:14px;min-height:100px}.story-narrative b{display:block;margin-bottom:6px;font-size:15px}.story-narrative p{font-size:14px;line-height:1.8;margin:0}.story-progress{display:flex;gap:6px;margin-top:12px}.story-progress span{height:4px;background:#d9dfd2;flex:1;border-radius:2px}.story-progress .current{background:var(--teal)}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.asset-grid>a{padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--white);text-decoration:none;font-weight:600}.asset-grid>a>span{font:12px var(--mono);color:var(--orange);margin-right:12px}.asset-grid small{display:block;margin-top:10px;font-size:12px;font-weight:400;color:var(--muted)}footer{padding:25px 0 50px;border-top:1px solid var(--line);font-size:12px;line-height:2;color:var(--muted)}.noscript{position:fixed;bottom:0;padding:14px;background:white;border:1px solid var(--line)}
@media(max-width:1100px){.mission{grid-template-columns:1fr 1fr}.mission-question{grid-column:1/-1}.context-lab{grid-template-columns:1fr}.feature-puzzle{grid-template-columns:1fr}.freeze-route{grid-template-columns:1fr}.freeze-block{display:grid;grid-template-columns:1fr 1fr;align-items:center}.freeze-block strong{grid-column:2;grid-row:1/3}.freeze-block .state{grid-column:1/-1}}
@media(max-width:640px){.intro h1{font-size:48px}.mission>div{padding:18px}.mission-stat strong{font-size:33px}.lab-demo{padding:16px}.pipeline{gap:10px}.pipeline>.node{flex-basis:100%}.pipeline>b{transform:rotate(90deg);margin:auto}.augmentation-hook{grid-template-columns:1fr}.question{padding:16px}.asset-grid{grid-template-columns:1fr}.number-matrix td{min-width:40px;width:40px;height:40px}.rf-table td{min-width:30px;width:30px;height:30px;font-size:14px}.matrix-row{gap:20px}.lab-demo .controls{padding:14px}.context-hook{padding:0;gap:8px}.symbol{width:44px;height:44px;font-size:24px}.local-window{padding:10px;font-size:18px}.story-narrative{min-height:0}.topbar{gap:8px}.lecture-label{font-size:9px}.intro-meta{gap:10px}.intro-meta span+span:before{margin-right:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.lab-demo .controls,.toolbar,.story-top button,#export-answers{display:none!important}.lab-demo{padding:14px}.lab{break-before:page}.lab-demo,.mission,.question{break-inside:avoid}.question textarea{min-height:75px}.formula-card{break-inside:avoid}.story-narrative{min-height:0}.asset-grid{display:none}.intro{break-after:avoid}.rf-table td{min-width:30px;width:30px;height:30px}.number-matrix td{print-color-adjust:exact;-webkit-print-color-adjust:exact}.answer-fold:not([open]){display:none!important}}
.final-review,.synthesis{padding:24px 28px 18px}.final-review .mcq-list li{padding:8px 0;line-height:1.75}.final-review .qin{vertical-align:middle}.synthesis ol{padding-left:24px}.synthesis li{margin:18px 0}.synthesis label{display:block;font-weight:600;margin-bottom:8px}.synthesis textarea{width:100%;min-height:84px;resize:vertical;background:var(--white)}
@media(max-width:640px){.final-review,.synthesis{padding:18px}.final-review .qin{display:block;margin:8px 0 0}}
