/* Foundation: one restrained palette and one spacing system. */
:root{color-scheme:dark;--bg:#090f1c;--paper:#0d1729;--surface:#132139;--line:#2a3b56;--ink:#f0f5ff;--muted:#a9b9d0;--accent:#78aaff;--blue:#387dff;--green:#82d7bd;--pad:clamp(28px,4.3vw,88px);--gap:clamp(22px,3vw,58px);font-family:"Segoe UI","Microsoft YaHei",sans-serif;font-size:clamp(14px,1.12vw,21px)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.6}h1,h2,h3,p,figure,dl,dd{margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--accent)}button{font:inherit;cursor:pointer;color:var(--ink);background:#172740;border:1px solid #3a5275;border-radius:7px;padding:6px 13px}button:hover{background:#24416a}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}small{font-size:.8em}i{font-style:normal}h3{font-size:1.2rem;font-weight:600;line-height:1.45}p{color:var(--muted)}
.slide{display:none;position:relative;width:100%;min-height:100vh;min-height:100dvh;padding:clamp(26px,4.5vh,56px) var(--pad) 44px;background:var(--paper);isolation:isolate}
.slide.active{display:flex;flex-direction:column}.slide-heading{flex:none;border-bottom:1px solid var(--line);padding-bottom:clamp(15px,2.4vh,28px)}.eyebrow{color:var(--accent);font-size:.73rem;font-weight:600;letter-spacing:.14em}.slide h2{font-size:clamp(28px,2.6vw,48px);line-height:1.3;letter-spacing:-.025em;margin:9px 0 10px;font-weight:650}.lead{font-size:1.04rem;color:var(--muted);max-width:80em}.slide-content{flex:1;display:flex;align-items:center;padding:clamp(22px,3.5vh,42px) 0}.slide-body{width:100%;min-width:0}.folio{position:absolute;bottom:13px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;font-size:.63rem;letter-spacing:.1em;color:#8194b2}.folio span:last-child{color:var(--accent)}
.takeaway{display:flex;align-items:baseline;gap:22px;border-top:1px solid var(--line);padding-top:18px;margin-top:clamp(22px,3.5vh,38px);font-size:.94rem;color:#c8d5e9}.takeaway b{flex:none;color:var(--accent);font-weight:600}.small-note{font-size:.84rem;line-height:1.7}.feature-list{display:flex;flex-direction:column;justify-content:center;gap:clamp(12px,1.8vh,24px)}.feature-list article{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;padding-bottom:clamp(12px,1.6vh,20px);border-bottom:1px solid var(--line)}.feature-list article:last-child{padding-bottom:0;border-bottom:0}.feature-id{color:var(--accent);font-size:.74rem;padding-top:4px;line-height:1.5;letter-spacing:.025em}.feature-list h3{font-size:1.12rem;margin-bottom:5px}.feature-list p{font-size:.93rem;line-height:1.65}.visual-detail,.conveying-layout,.weighing-layout,.architecture-layout,.software-layout{display:grid;grid-template-columns:minmax(0, .9fr) minmax(0,1.15fr);gap:var(--gap);align-items:center}.diagram-panel{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.micro-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:17px;margin-top:12px}.micro-metrics span{display:flex;flex-direction:column;align-items:center;font-size:.76rem;color:var(--muted)}.micro-metrics b{font-size:1.8rem;color:var(--ink);font-weight:500}.diagram-panel>.small-note{margin-top:18px;text-align:center}
/* Cover: editorial title, system drawing and concise purpose. */
.cover{background:radial-gradient(ellipse at 95% 35%,#182e53 0,transparent 57%),#0b1425;height:100vh;height:100dvh;min-height:0;overflow:hidden}.cover .slide-heading{border:0;padding:0}.cover h1{font-size:clamp(36px,4.1vw,76px);line-height:1.18;letter-spacing:-.035em;margin:15px 0}.cover .lead{color:#96b7e8;letter-spacing:.12em;font-size:.95rem}.cover .slide-content{padding:20px 0 0}.cover-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:6vw}.cover-statement{font-size:clamp(23px,2.3vw,43px);line-height:1.45;font-weight:500}.cover-copy>p{margin:18px 0 22px;max-width:29em;font-size:1rem}.cover-tags{display:flex;gap:20px;color:var(--accent);font-size:.83rem}.cover-tags span+span{border-left:1px solid #395071;padding-left:20px}.cover-blueprint{background:#12223a88;border:1px solid #334b70;border-radius:12px;padding:20px 24px}.blueprint-label{display:flex;justify-content:space-between;color:#83a6d8;letter-spacing:.13em;font-size:.62rem;margin-bottom:8px}.blueprint-label span{letter-spacing:0}.cover-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:24px;font-size:.75rem;color:#8fa3c3}.cover .folio{display:none}
/* Overview: aligned columns read left to right, then compare by row. */
.module-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.module-column{padding:0 1.9vw;border-left:1px solid var(--line);position:relative}.module-column:first-child{padding-left:0;border-left:0}.module-column:last-child{padding-right:0}.column-number{font-size:.75rem;letter-spacing:.15em;color:var(--accent)}.module-icon{display:block;width:100%;height:clamp(75px,12vh,135px);margin:12px 0 20px;fill:none;stroke:#85b2fc;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.icon-dash{stroke-dasharray:3 5;animation:dash 2s linear infinite}.module-column h3{font-size:1.4rem;white-space:nowrap}.module-column>strong{font-size:.9rem;font-weight:500;color:var(--accent)}.module-spec{margin:17px 0 21px;font-size:.85rem;color:#d4dff2}.module-column dl{display:grid;grid-template-columns:30px 1fr;gap:16px 12px;font-size:.88rem}.module-column dt{color:#6f91bd}.module-column dd{color:#b4c4dc;min-height:2.7em}
/* Workflow: numbered process first, responsibility lanes second. */
.sequence{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px}.sequence>div{position:relative;padding-top:15px;border-top:2px solid #437bca}.sequence>div:not(:last-child):after{content:'→';position:absolute;top:-16px;right:-21px;font-size:20px;color:#7da8e8;background:var(--paper)}.step-number{font-size:2.3rem;color:#79aaff;font-weight:300;line-height:1.2}.sequence h3{margin:17px 0 10px}.sequence p{font-size:.96rem;line-height:1.8}.responsibility{margin-top:5vh;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);border-top:1px solid var(--line);padding-top:25px}.role-name{font-size:.8rem;color:var(--accent)}.responsibility h3{margin:6px 0 10px}.responsibility p{font-size:.92rem}
/* Tables: descriptive columns are broad; no narrow stacked inventory cards. */
.data-table{width:100%;min-width:0}table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.94rem;line-height:1.65}th{text-align:left;color:#8ab7ff;font-size:.8rem;font-weight:600;letter-spacing:.04em;border-bottom:1px solid #5275a7;background:#16263e;padding:12px 18px}td{padding:clamp(12px,2vh,24px) 18px;border-bottom:1px solid var(--line);vertical-align:middle;color:#b8c8df;overflow-wrap:anywhere}td:first-child{color:#f0f5ff;font-weight:500}tbody tr:nth-child(even){background:#111e32}.inventory-table th:first-child{width:15%}.inventory-table th:nth-child(2){width:35%}.inventory-table th:nth-child(3){width:27%}.inventory-table th:nth-child(4){width:23%}.inventory-table td{font-size:.88rem;padding:clamp(12px,2vh,24px) 18px}.inventory-key{display:flex;justify-content:space-between;gap:20px;padding-top:20px;font-size:.81rem;color:var(--muted)}.inventory-key b{color:var(--accent);margin-right:12px}.safety-page th:first-child{width:23%}.safety-page th:nth-child(2){width:41%}
/* Thermal: circuit explanations next to a temperature decision diagram. */
.thermal-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);align-items:center}.circuit-stack{display:grid;gap:30px}.circuit{border:1px solid var(--line);border-radius:10px;padding:26px;background:var(--surface)}.circuit>span{color:var(--accent);font-size:.77rem}.circuit h3{margin:8px 0 12px}.circuit p{font-size:.96rem}.circuit-line{display:flex;align-items:center;gap:8px;margin-top:26px}.circuit-line i{height:2px;background:#6995d1;flex:1;min-width:10px}.circuit-line b{padding:9px 10px;border:1px solid #54729c;border-radius:4px;font-size:.76rem;font-weight:500;color:#c9dcf8}.temperature-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem}.temperature-band{height:10px;border-radius:8px;background:linear-gradient(90deg,#4789ec,#a0c9fc 30%,#a0c9fc 57%,#e9b899 78%,#f07777);margin:12px 0 30px}.thermal-rule{border-left:3px solid #6fa6fa;padding-left:22px;margin:26px 0}.thermal-rule.hot{border-left-color:#df9d85}.thermal-rule>strong{display:block;margin-bottom:12px;font-size:1.24rem}.thermal-rule>div{display:grid;grid-template-columns:95px 1fr;gap:15px;margin:12px 0;align-items:baseline}.thermal-rule b{color:#8cb9fc;font-size:1.4rem;font-weight:500}.thermal-rule.hot b{color:#edb39e}.thermal-rule span{font-size:.97rem;color:var(--muted)}
.conveying-visual{background:var(--surface);border-radius:12px;padding:22px;border:1px solid var(--line)}.conveying-visual .technical-figure svg{max-height:30vh}.level-control{border-top:1px solid var(--line);padding-top:20px;margin-top:10px}.level-control>strong{font-size:.9rem}.level-track{display:flex;justify-content:space-between;gap:15px;border-top:5px solid #437dcd;padding-top:12px;margin-top:18px;font-size:.86rem;color:#a9ccff}.level-control p{font-size:.8rem;margin-top:10px}.gate-key{display:flex;gap:8px;justify-content:center;margin-top:14px}.gate-key span{padding:6px 20px;background:#24436d;border:1px solid #537dad;border-radius:4px;color:#dceaff;font-size:.8rem}
.chart-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:25px}.wagon-queue{display:flex;align-items:center;gap:10px;margin:22px 0}.wagon-queue>div{flex:1;padding:18px 12px;border:1px solid var(--line);border-radius:6px}.wagon-queue>span{color:#6b88af}.wagon-queue .current{background:#1d3961;border-color:#6294dd}.wagon-queue span,.wagon-queue b{display:block;font-size:.8rem;white-space:nowrap}.wagon-queue b{font-weight:500;color:var(--muted);margin-top:9px}.timing-equation{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.timing-equation>span{font-size:.83rem;color:var(--accent);display:block}.timing-equation>b{font-size:1.35rem;font-weight:500;display:block;margin:7px 0}.timing-equation>small{font-size:.84rem;color:var(--muted)}.weight-definitions{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px;font-size:.86rem}.weight-definitions b{display:block;font-weight:500;margin-bottom:4px}.weight-definitions span{color:var(--muted)}
.architecture-layout{grid-template-columns:1.1fr 1fr}.architecture-layer{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:26px;background:#15263f;border:1px solid #3c587e;border-radius:6px}.architecture-layer>b{font-size:1.6rem;font-weight:300;color:var(--accent)}.architecture-layer h3{margin-bottom:7px}.architecture-layer p{font-size:.91rem}.architecture-connector{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:18px 8px;font-size:.72rem;color:#89b2ed}.architecture-connector span{color:var(--muted)}.interface-list>h3{padding-bottom:22px}.interface-list .small-note{padding-top:22px}.interface-list .feature-list article{grid-template-columns:64px 1fr}
.command-ribbon,.recovery-ribbon{display:flex;align-items:center;justify-content:space-between;gap:12px}.command-ribbon{margin-bottom:32px}.command-ribbon>span{flex:1;text-align:center;border:1px solid #416693;background:#182e4e;padding:16px 10px;border-radius:5px;font-size:.94rem}.command-ribbon i,.recovery-ribbon i{color:#6f93c5}.data-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:var(--gap);align-items:stretch}.data-layout th:first-child{width:21%}.data-layout td{font-size:.85rem}.record-sheet{border:1px solid #44638c;background:#15243c;border-radius:7px;padding:24px}.record-heading{display:flex;justify-content:space-between;align-items:center;font-size:1.1rem;padding-bottom:20px;border-bottom:1px solid #3b5373}.record-heading span{font-size:.6rem;letter-spacing:.12em;color:#6b91c8}.record-sheet dl{display:grid;grid-template-columns:36px 1fr;gap:21px 16px;margin:24px 0;font-size:.85rem}.record-sheet dt{color:var(--accent)}.record-sheet dd{color:#bdcde4}.record-footer{font-size:.78rem;color:#84b2f7;border-top:1px solid var(--line);padding-top:17px}.recovery-ribbon{margin-top:30px;font-size:.96rem}.recovery-ribbon strong{padding:10px 25px;background:#3b2d29;color:#e9b59a;font-weight:500;border-radius:5px}
.software-layout{grid-template-columns:1.1fr 1fr}.hmi-preview{border:1px solid #486486;border-radius:10px;background:#101d31;overflow:hidden;box-shadow:0 20px 50px #0002}.hmi-bar{padding:15px 20px;background:#1c304c;display:flex;justify-content:space-between;font-size:.83rem}.hmi-bar b{font-size:.76rem;color:var(--green);font-weight:500}.hmi-main{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:26px}.hmi-process{text-align:center}.hmi-process>div{padding:12px;background:#1c304b;border:1px solid #3c5c86;font-size:.85rem;border-radius:4px}.hmi-process>div>b{display:block;color:#96bffc;font-size:1rem}.hmi-process>span{color:#729bd4;line-height:2}.hmi-process .hmi-weigh{text-align:left;padding:18px}.hmi-weigh strong{display:block;font-size:2.5rem;line-height:1.5;font-weight:400;white-space:nowrap}.hmi-weigh strong small{font-size:1rem}.hmi-weigh>span{font-size:.66rem;color:#9db8de;white-space:nowrap}.hmi-weigh i{display:block;height:5px;background:linear-gradient(90deg,#639df4 97%,#345073 97%);border-radius:3px;margin-top:16px}.hmi-task>small{color:#7a9ccc}.hmi-task h3{font-size:1.1rem;margin:10px 0}.hmi-task p{font-size:.8rem;margin-bottom:24px}.hmi-queue-row{display:flex;justify-content:space-between;font-size:.82rem;border-bottom:1px solid var(--line);padding:12px 0;color:#adc1df}.hmi-queue-row span{font-size:.7rem}.hmi-status{font-size:.77rem;color:#8bccb9;line-height:2.1;margin-top:20px}.hmi-actions{padding:16px 20px;border-top:1px solid var(--line);display:flex;gap:10px}.hmi-actions span{padding:7px 10px;border:1px solid #42618b;background:#1d3453;border-radius:4px;font-size:.69rem;white-space:nowrap}.hmi-actions .emergency{margin-left:auto;background:#612e3b;color:#ffbac6;border-color:#995266}
.acceptance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px var(--gap)}.acceptance-item{display:grid;grid-template-columns:34px 1fr;gap:14px;border-top:1px solid #4770a5;padding-top:24px}.acceptance-item>span{color:var(--accent);font-size:1.5rem;font-weight:300}.acceptance-item h3{margin-bottom:13px}.acceptance-item p{font-size:.94rem;min-height:5em}.acceptance-item strong{font-weight:500;display:block;color:#84ade9;font-size:.8rem;margin-top:15px}
/* Supporting vector diagrams. Geometry is never stretched. */
.technical-figure{margin:0;min-width:0}.technical-figure svg{display:block;width:100%;height:auto;max-height:42vh}.technical-figure svg text{font-family:"Segoe UI","Microsoft YaHei",sans-serif;font-size:16px;fill:#d4e4fc}.technical-figure svg text.small{font-size:13px}.technical-figure svg text.tiny{font-size:10px}.technical-figure figcaption{font-size:.74rem;text-align:center;color:#8da8cf;margin-top:12px}.housing{fill:#1a3253;stroke:#6a96cc;stroke-width:2}.pump{fill:#244777;stroke:#82b4ff;stroke-width:2}.rotor{fill:#cfdef5;stroke:#29476f;stroke-width:2}.pipe{fill:none;stroke:#49688e;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.flow,.feedback{fill:none;stroke:#78adf9;stroke-width:2.5;stroke-dasharray:7 8;animation:dash 1.5s linear infinite}.feedback{stroke:#a9b6d6}.fall{fill:none;stroke:#acbed6;stroke-width:3;stroke-dasharray:3 6;animation:dash .7s linear infinite}.belt-flow{fill:none;stroke:#8daed7;stroke-width:4;stroke-dasharray:5 12;animation:dash 1s linear infinite}.coal{fill:#34485f;stroke:#7690af;stroke-width:1}.oil{fill:#3e6c9c}.heater{fill:none;stroke:#e6b39d;stroke-width:5}.filter{fill:#233a59;stroke:#7c99bf;stroke-width:2}.fan{fill:none;stroke:#8eb2dc;stroke-width:3}.rail,.sleeper{fill:none;stroke:#7c95b6;stroke-width:3}.sleeper{stroke:#4d6380}.wheel{fill:#1a2b42;stroke:#6c86a8;stroke-width:2}.belt{fill:#20344e}.gate{fill:#88b5f9;stroke:#aecdfb}.threshold{fill:none;stroke:#c0cfe3;stroke-width:2;stroke-dasharray:7 6}.axis{fill:none;stroke:#617997;stroke-width:1.5}.weight-curve{fill:none;stroke:#72abff;stroke-width:4}.moving-dot{fill:#fff}.record-rule{fill:none;stroke:#49668e}.spin{transform-box:fill-box;transform-origin:center;animation:rotating 5s linear infinite}@keyframes dash{to{stroke-dashoffset:-30}}@keyframes rotating{to{transform:rotate(360deg)}}
/* Fullscreen attachment pages retain their original assets and behavior. */
.slide.appendix{padding:0;border:0;height:100vh;height:100dvh;min-height:0;overflow:hidden;background:#eef3f5}.appendix .slide-heading{display:none}.appendix .slide-content,.appendix .slide-body{display:block;height:100%;width:100%;padding:0}.embedded{display:block;width:100%;height:100vh;height:100dvh;min-height:0;border:0;border-radius:0;background:#eef3f5}.appendix-links{position:absolute;top:65px;right:20px;z-index:2;display:flex;gap:15px;flex-wrap:wrap;background:#10213bed;padding:6px 10px;border-radius:6px;font-size:13px;opacity:0;visibility:hidden}.chrome-visible .appendix-links,.appendix-links:focus-within{opacity:1;visibility:visible}.appendix-links a{color:#a9ccff}.print-only{display:none}
/* Navigation is transient, leaving the report canvas unobstructed. */
.toolbar,.pager{position:fixed;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:space-between;background:#0b1425f2;backdrop-filter:blur(14px);color:#a7bad6;opacity:0;visibility:hidden;transition:transform .2s,opacity .2s,visibility .2s}.toolbar{top:0;height:58px;padding:0 26px;gap:16px;transform:translateY(-105%);justify-content:flex-start;border-bottom:1px solid #304460}.tools{display:flex;gap:8px;margin-left:auto}.tools button,.toolbar #chapter{font-size:12px}.pager{bottom:0;padding:14px 26px;font-size:12px;transform:translateY(105%);border-top:1px solid #304460}.pager>div{display:flex;align-items:center;gap:18px}.pager button{font-size:16px}.chrome-visible .toolbar,.chrome-visible .pager,.toolbar:focus-within,.pager:focus-within{transform:translateY(0);opacity:1;visibility:visible}.sidebar{position:fixed;inset:0 auto 0 0;width:min(360px,88vw);padding:27px 18px;z-index:5;background:#0b1425;border-right:1px solid #304460;display:flex;flex-direction:column;transform:translateX(-105%);visibility:hidden;transition:transform .2s}.sidebar.open{visibility:visible;transform:translateX(0)}.brand{display:flex;gap:13px;color:#a9bedc;text-decoration:none;font-size:10px;letter-spacing:1px;line-height:1.7}.brand strong{font-size:16px;letter-spacing:0;color:white}.brand-symbol{display:grid;place-items:center;width:38px;height:42px;background:#254775;color:#d2e4ff;font-size:25px}.edition{font-size:11px;color:#9cb0ce;margin:22px 0 15px;padding-bottom:15px;border-bottom:1px solid #2b405c}nav{overflow:auto;flex:1}nav a{display:flex;gap:10px;padding:9px;color:#b7c9e3;text-decoration:none;font-size:13px;border-left:2px solid transparent;margin:2px 0}nav a span{color:#708bad;font-size:11px}nav a.active{background:#213c62;color:white;border-left-color:#74aaff}nav a:hover{background:#192e4b}.sidebar-bottom{font-size:11px;color:#9cb0ce;padding-top:15px}.menu-close{position:absolute;right:12px;top:12px;border:0;background:none;color:white;font-size:24px}.menu-backdrop{position:fixed;inset:0;background:#030812aa;border:0;border-radius:0;z-index:4;display:none}.menu-open .menu-backdrop{display:block}
