.chapter-section{background:#eceee9}.chapter-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.filter-buttons{display:flex;gap:6px;flex-wrap:wrap}.filter-buttons button,.route-buttons button{background:transparent;border:1px solid #bfc5be;padding:10px 17px;font-size:14px;font-weight:650}.filter-buttons button[aria-pressed=true],.route-buttons button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.search-label{display:flex;flex-direction:column;font-size:12px;gap:6px;color:var(--muted);min-width:270px}.search-label input{width:100%;background:var(--bg);border:1px solid #b8c0b7;padding:10px 13px;font-size:14px;border-radius:0}.result-line{display:flex;align-items:center;justify-content:space-between;padding:15px 0 28px;font-size:13px;color:var(--muted)}.plain-button{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;padding:5px;font-size:13px}.prologue{background:#e1e5dd;padding:30px;margin-bottom:48px}.prologue .eyebrow{display:block;margin-bottom:12px}.prologue p{max-width:960px;margin-top:13px;font-size:15px;color:#4a524b}.part-block+.part-block{margin-top:65px}.part-heading{display:flex;align-items:center;gap:28px}.part-number{font-family:Arial,sans-serif;font-weight:300;font-size:70px;line-height:1;letter-spacing:-.08em;color:#5d7061}.part-heading .eyebrow{margin-bottom:4px;color:#5d7061}.part-heading h3{font-size:27px}.part-subtitle{font-size:15px;color:var(--muted);margin-top:5px}.part-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:25px 0 30px;color:#505b52;font-size:15px;line-height:1.95}.part-intro p+p{margin:0}.chapter-list{border-top:1px solid #a8b2a5}.chapter{border-bottom:1px solid #b7c0b3;scroll-margin-top:130px}.chapter[open]{background:#f8f9f6}.chapter summary{display:flex;gap:22px;align-items:center;list-style:none;padding:25px 20px;cursor:pointer}.chapter summary::-webkit-details-marker{display:none}.chapter summary:hover{background:#f6f7f3}.chapter-num{font-size:21px;font-family:monospace;color:#677b64;min-width:32px}.chapter-name{flex:1;line-height:1.6}.chapter-name strong{display:block;font-size:18px;letter-spacing:-.02em}.chapter-name>span{display:block;font-size:14px;color:#5d655c;margin-top:3px}.chapter-page{font-size:12px;color:#626d5d;white-space:nowrap}.plus{font-size:25px;font-weight:300;width:25px;text-align:center}.chapter[open] .plus{transform:rotate(45deg)}.chapter-content{padding:5px 40px 35px 74px}.chapter-question{font-size:24px;line-height:1.5;font-weight:750;border-left:3px solid var(--red);padding-left:20px;margin:10px 0 30px;max-width:840px}.chapter-summary{font-size:16px;line-height:2;color:#414941;max-width:950px}.chapter-content h4{font-size:18px;margin:35px 0 20px;letter-spacing:-.02em}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}.topic-grid article{border-top:1px solid #c9d1c3;padding-top:17px}h5{font-size:16px;line-height:1.5;margin:0 0 10px;letter-spacing:-.025em}.topic-grid p,.case-grid p{font-size:15px;color:#505c4e;line-height:1.9}.page-ref{display:inline-block;color:#64775f;font-size:12px;margin-top:12px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.case-grid article{background:#e9ede3;padding:23px}.case-kind{display:block;font-size:11px;font-weight:650;color:#426040;line-height:1.6;margin-bottom:10px}.case-insight{border-top:1px solid #c4cebd;padding-top:12px}.takeaway{margin-top:30px;background:#1a271d;color:white;padding:25px}.takeaway b{color:#bdcfb5;font-size:12px;letter-spacing:.06em}.takeaway p{font-size:16px;margin-top:10px}.chapter-end{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#62715d;margin-top:23px}.chapter-end a{text-decoration:underline}.empty-result{padding:35px;text-align:center;background:#fff}.architecture-section{background:#18211e;color:#f4f5ef}.architecture-section .eyebrow{color:#c4d9b9}.architecture-section .section-heading>p:last-child{color:#b6c5b9}.architecture-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.tech-stack button{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;background:#1d2b24;color:white;border:1px solid #496451;padding:23px 10px;position:relative}.platform-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tech-stack button small{color:#bbcaba;font-size:12px}.tech-stack button strong{font-size:25px;font-weight:600;font-family:Arial,sans-serif}.tech-stack button span{font-size:13px;color:#a9bea7}.tech-stack button[aria-pressed=true]{background:#d6e2ce;color:#1b2b1d;border-color:#e6f2df}.tech-stack button[aria-pressed=true] small,.tech-stack button[aria-pressed=true] span{color:#40513c}.ontology-node{margin:20px 0}.tech-stack .fineprint{color:#92a78e}.tech-detail h3{font-size:29px;line-height:1.5;margin-bottom:25px}.tech-detail>p:not(.eyebrow){font-size:16px;line-height:2;color:#c5d1c5}.tech-question{border-left:2px solid #8ba182;padding:5px 0 5px 20px;margin:30px 0}.tech-question b{font-size:12px;color:#97ad8d}.tech-question p{font-size:20px;line-height:1.6;margin-top:10px}.tech-detail .text-link{color:#d2e7c7}.simulation-label{display:inline-block;font-size:12px;border:1px solid #c5cbc1;background:#ebeee7;color:#506048;margin-top:25px;padding:6px 12px}.lab-shell{display:grid;grid-template-columns:330px 1fr;border:1px solid #bdc8b7;background:white}.lab-controls{background:#e9eee5;padding:30px;border-right:1px solid #bdc8b7}.lab-topline{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:750;letter-spacing:.06em;color:#5d7355;margin-bottom:30px}.lab-controls>label{font-size:14px;font-weight:750;display:flex;justify-content:space-between}.lab-controls output{color:var(--red)}#demand{width:100%;accent-color:var(--red);margin-top:20px;min-height:25px}.range-ends{display:flex;justify-content:space-between;font-size:11px;color:#667460}.lab-controls fieldset{padding:0;border:0;margin:27px 0 0}.lab-controls legend{font-size:14px;font-weight:750;margin-bottom:12px}.choice-buttons{display:flex;gap:6px}.choice-buttons button{flex:1;font-size:12px;padding:10px 6px;background:#f7f8f5;border:1px solid #b9c5b1}.choice-buttons button[aria-pressed=true]{background:#334a2d;color:white;border-color:#334a2d}.strategy-options>label{display:flex;gap:10px;margin:0 0 10px;align-items:flex-start;padding:12px 10px;background:#f7f9f4;border:1px solid #d0dac9;font-size:14px;cursor:pointer}.strategy-options input{margin-top:6px;accent-color:var(--red)}.strategy-options small{display:block;font-size:11px;color:#68745f;line-height:1.6}.lab-controls .fineprint{font-size:11px;margin-top:22px}.lab-result{padding:35px}.object-map{display:flex;align-items:center;justify-content:space-between;gap:10px}.object-map>div{flex:1;min-width:0;border:1px solid #d2d9cc;padding:17px 10px;text-align:center;background:#f7f9f4}.object-map>div span{font-size:9px;letter-spacing:.05em;color:#658357;display:block}.object-map b{display:block;font-size:14px;margin-top:8px}.object-map small{display:block;font-size:11px;margin-top:6px;color:#65745d}.relation-label{font-size:10px;color:#79886f;max-width:30px;text-align:center;line-height:1.5}.lab-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid #c4cebc;border-bottom:1px solid #c4cebc;margin-top:33px;padding:25px 0}.lab-numbers>div>span{font-size:12px;color:#596c50;display:block}.lab-numbers strong{font-family:Arial,sans-serif;font-size:42px;font-weight:400;line-height:1.4;letter-spacing:-.045em}.lab-numbers strong small{font:12px var(--font);letter-spacing:normal;margin-left:5px}#shortage{color:var(--red)}#lab-explanation{font-size:15px;color:#48583f;min-height:82px;margin-top:25px;line-height:1.9}.approval-area{border-top:1px dashed #c8d3bd;padding-top:22px;margin-top:20px}.approval-area>label{font-size:12px;display:flex;gap:8px;align-items:center;margin-bottom:15px}.approval-area input{accent-color:var(--red)}.approval-area .button{font-size:13px;padding:10px 16px}.button:disabled{background:#d5dad0;color:#697563;border-color:#d5dad0;cursor:not-allowed;transform:none}#action-log{font-size:12px;color:#6c7a62;line-height:1.8;margin-top:14px}.lab-lessons{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px}.lab-lessons b{font-size:15px}.lab-lessons p{font-size:14px;color:var(--muted);margin-top:10px}.routes-section{background:#e5e9e0}.route-buttons{display:flex;flex-wrap:wrap;gap:10px}.route-result{margin-top:30px;background:#f9faf6;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.route-result h3{font-size:25px;line-height:1.55}.route-result p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:20px}.route-result .eyebrow{display:block}#route-steps{display:flex;flex-direction:column;gap:10px}#route-steps a{display:flex;align-items:center;gap:20px;border-bottom:1px solid #d3dbcc;padding:10px 0}#route-steps a:hover{color:var(--red)}#route-steps b{font:26px monospace;color:#65825b}#route-steps span{font-size:15px}.glossary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;align-items:start}.glossary-grid details{border:1px solid #cfd5c9;background:#fff;padding:20px}.glossary-grid summary{display:flex;justify-content:space-between;align-items:center;gap:15px;cursor:pointer;list-style:none;font-size:16px;font-weight:750}.glossary-grid summary small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}.glossary-grid p{font-size:14px;color:#53604c;margin-top:18px}.epilogue-section{background:#a52e25;color:#fff}.epilogue-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.epilogue-section .eyebrow{color:#ffc9c3}.epilogue-layout>div>p{font-size:16px;line-height:2;color:#ffe4df}.epilogue-layout .epilogue-question{margin-top:30px;font-size:20px}.epilogue-prompts{border-top:1px solid #cf6e66;margin-top:30px;padding-top:20px;font-size:14px;color:#ffe4df}.epilogue-prompts p:before{content:"Q";font-family:serif;margin-right:12px;color:#ffbfb5}.author-section{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.author-lead{font-size:20px;line-height:1.7;margin-top:25px}.author-section>div>p:not(.eyebrow):not(.author-lead):not(.fineprint){color:var(--muted);line-height:2}.faq-section{padding-top:0}.faq-list{border-top:1px solid #aab5a4}.faq-list details{border-bottom:1px solid #bcc6b6;padding:23px 0}.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:18px;font-weight:650;cursor:pointer}.faq-list summary span{font-weight:400;font-size:25px}.faq-list p{font-size:16px;color:var(--muted);margin-top:20px;max-width:950px}.glossary-grid summary::-webkit-details-marker,.faq-list summary::-webkit-details-marker{display:none}[hidden]{display:none!important}
@media(max-width:1100px){.chapter-tools{align-items:stretch;flex-direction:column}.search-label{max-width:450px}.architecture-layout{gap:35px}.lab-shell{grid-template-columns:290px 1fr}.lab-controls,.lab-result{padding:25px}.object-map{gap:5px}.object-map>div{padding:12px 6px}.object-map b{font-size:12px}.relation-label{font-size:9px}.lab-numbers strong{font-size:34px}.route-result{gap:30px;padding:30px}.glossary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){html{scroll-padding-top:150px}.chapter summary{padding:20px 4px;gap:12px;flex-wrap:wrap}.chapter-num{font-size:19px;min-width:24px}.chapter-name{min-width:0}.chapter-name strong{font-size:16px}.chapter-name>span{font-size:12px}.chapter-page{font-size:10px;order:5;margin-left:36px;margin-top:-7px}.plus{font-size:21px;width:18px}.part-heading{gap:18px}.part-number{font-size:57px}.part-heading h3{font-size:23px}.part-intro{grid-template-columns:1fr;gap:14px;font-size:14px}.part-subtitle{font-size:13px}.filter-buttons button{padding:8px 11px;font-size:12px}.prologue{padding:23px}.prologue p{font-size:14px}.chapter-content{padding:5px 18px 25px}.chapter-question{font-size:20px;padding-left:15px}.chapter-summary{font-size:15px}.topic-grid,.case-grid{grid-template-columns:1fr;gap:20px}.case-grid article{padding:20px}.chapter-end{flex-direction:column;font-size:11px}.architecture-layout{grid-template-columns:1fr;gap:35px}.tech-stack button{padding:20px 10px}.tech-stack button small{font-size:10px}.tech-detail h3{font-size:25px}.lab-shell{grid-template-columns:1fr}.lab-controls{border-right:0;border-bottom:1px solid #bdc8b7}.lab-result{padding:25px 16px}.object-map{flex-wrap:wrap}.object-map small{font-size:10px}.object-map>div span{font-size:8px}.lab-numbers{gap:8px}.lab-numbers strong{font-size:35px}.lab-numbers>div>span{font-size:11px}.lab-lessons{grid-template-columns:1fr;gap:20px}.simulation-label{font-size:11px}.route-buttons{gap:7px}.route-buttons button{font-size:12px;padding:10px 12px}.route-result{grid-template-columns:1fr;padding:25px;gap:25px}.route-result h3{font-size:23px}.glossary-grid{grid-template-columns:1fr}.epilogue-layout{grid-template-columns:1fr;gap:35px}.epilogue-section h2{font-size:31px}.author-section{grid-template-columns:1fr;gap:30px}.faq-list summary{font-size:16px}.faq-list p{font-size:15px}.book-facts dd{overflow-wrap:anywhere}}@media print{header,#progress,.hero-actions,.chapter-tools,.result-line,.video-section,.lab-shell,.route-buttons{display:none}body{background:white}.wrap{width:100%}.section{padding:25px 0}.chapter-content{padding:15px}.chapter{break-inside:avoid}.hero{min-height:0}.cover-stage{height:400px}.book-cover{width:210px}}
.video-frame video{width:100%;height:100%;display:block;object-fit:contain;background:#000}
.featured-video{width:100%;padding-bottom:8px}.featured-video-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.featured-video-heading .eyebrow{margin-bottom:10px}.featured-video-heading h3{font-size:32px;line-height:1.45}.featured-video-label{border:1px solid #57665e;padding:6px 13px;font-size:12px;color:#c6d5cb;white-space:nowrap}.featured-video #featured-player{width:100%;aspect-ratio:16/9;border:1px solid #3c4a42;overflow:hidden}.featured-video .play-circle{width:82px;height:82px;font-size:27px}.featured-chapters{gap:8px;margin-top:26px;margin-bottom:12px}.featured-chapters button{padding:9px 13px;text-align:left;line-height:1.6}.supporting-videos-heading{border-top:1px solid #3c4640;padding-top:38px;margin-top:54px;margin-bottom:28px}.supporting-videos-heading .eyebrow{margin-bottom:10px}.supporting-videos-heading h3{font-size:23px}
@media(max-width:760px){.featured-video-heading{display:block;margin-bottom:20px}.featured-video-heading h3{font-size:25px}.featured-video-label{display:inline-block;margin-top:15px;font-size:11px;padding:4px 10px}.featured-video .play-circle{width:60px;height:60px;font-size:21px;box-shadow:0 0 0 8px #ffffff20}.featured-chapters{gap:7px;margin-top:20px}.featured-chapters button{font-size:11px;padding:8px 10px;max-width:100%}.featured-video .video-badge{bottom:10px;left:10px;font-size:11px;padding:3px 9px}.supporting-videos-heading{margin-top:40px;padding-top:30px}.supporting-videos-heading h3{font-size:20px}}
@media(max-width:760px){nav{justify-content:space-between;gap:10px}.nav-book{padding:3px 6px}}
