/* The knowledge atlas: grouped questions and interactive technical scenes. */
.atlas-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.atlas-category-grid>a{display:flex;align-items:center;gap:15px;padding:20px;background:#fff;border:1px solid #d5e5ec;border-radius:11px;transition:border-color .2s,box-shadow .2s}
.atlas-category-grid>a:hover{border-color:#7fb9cb;box-shadow:0 7px 18px #123f4f0b}
.atlas-category-grid h3{font-size:17px;line-height:1.3;letter-spacing:-.02em;margin:0 0 5px}
.atlas-category-grid>a>div>span{font-size:10px;color:#62808f}
.atlas-category-grid>a>.icon{margin-left:auto;width:16px;flex:0 0 16px;color:#5d899b}
.atlas-category-icon{display:flex;align-items:center;justify-content:center;width:45px;height:45px;flex:0 0 45px;border:1px solid #d2e6ed;border-radius:10px;background:#eff8fa;color:#008fae}
.atlas-category-icon>.icon{width:24px;height:24px}
.atlas-hero{padding:44px 0 47px;background:linear-gradient(125deg,#f1f7fa,#e5f0f5);border-bottom:1px solid #d4e5ec}
.atlas-hero .breadcrumb{margin-bottom:28px}
.atlas-hero h1{max-width:940px;font-size:clamp(34px,4vw,54px);line-height:1.12;letter-spacing:-.045em;margin:15px 0 20px}
.atlas-hero h1+p{max-width:800px;font-size:17px;line-height:1.85;color:#486878;margin:0}
.atlas-directory{padding-top:40px}
.atlas-directory>.wrap>.atlas-category-grid{margin-bottom:36px}
.atlas-search-panel{margin:0 0 29px}
.atlas-filter-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.atlas-filter-list button,.atlas-search-status button{font:inherit;font-size:10px;padding:8px 11px;border:1px solid #d0e2ea;border-radius:6px;background:#fff;color:#426879;cursor:pointer}
.atlas-filter-list button[aria-pressed=true]{background:#0b3549;border-color:#0b3549;color:#fff}
.atlas-search-status{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:19px;font-size:11px;color:#577c8d}
.atlas-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.atlas-card{min-width:0;background:#fff;border:1px solid #d6e5ec;border-radius:11px;overflow:hidden}
.atlas-card>a{display:flex;flex-direction:column;height:100%;padding:25px;transition:background .2s}
.atlas-card>a:hover{background:#f5fafc}
.atlas-card-top{display:flex;align-items:center;gap:10px;color:#137f9c;font-size:9px;letter-spacing:.03em;margin-bottom:22px}
.atlas-card-top>.icon{width:23px;height:23px;flex:0 0 23px}
.atlas-card h2{font-size:23px;line-height:1.23;letter-spacing:-.035em;margin:0 0 15px}
.atlas-card p{color:#587585;font-size:13px;line-height:1.8;margin:0 0 24px}
.atlas-card .text-link{margin-top:auto;font-size:10px}
.atlas-empty{padding:30px;background:#f2f8fa;border-radius:10px}
#atlas-more{display:flex;margin:32px auto 0}
.atlas-category-intro{display:flex;align-items:center;gap:22px;padding:0 0 35px;max-width:900px}
.atlas-category-intro p{margin:0;font-size:14px;line-height:1.9;color:#567484}
.atlas-back{margin-top:35px}
.atlas-reading{padding-block:42px 60px}
.atlas-reading-grid{display:grid;grid-template-columns:minmax(0,790px) minmax(220px,280px);gap:68px;justify-content:space-between}
.atlas-prose{min-width:0}
.atlas-meta{display:flex;flex-wrap:wrap;gap:10px 20px;padding-bottom:24px;border-bottom:1px solid #d8e5eb;color:#658391;font-size:10px;margin-bottom:32px}
.atlas-prose>section{margin-block:30px}
.atlas-prose h2{font-size:31px;line-height:1.23;letter-spacing:-.035em;margin:12px 0 18px}
.atlas-prose p{font-size:17px;line-height:1.95;color:#436675}
.atlas-example{padding:26px 29px;background:#eff7fa;border:1px solid #d2e7ef;border-left:3px solid #29aac4;border-radius:9px}
.atlas-example h2{font-size:25px}
.atlas-example p{margin-bottom:0}
.atlas-service-link{display:flex;align-items:center;gap:18px;margin-top:34px;padding:22px;border:1px solid #cde2eb;border-radius:9px;background:#f7fbfc}
.atlas-service-link>.icon{width:29px;height:29px;color:#1597b6;flex:0 0 29px}
.atlas-service-link b{display:block;font-size:13px;margin-bottom:7px}
.atlas-service-link a{font-size:12px;color:#147d99}
.atlas-service-link a>.icon{width:12px;height:12px;vertical-align:middle;margin-left:8px}
.atlas-reading-end{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:29px;padding-top:24px;border-top:1px solid #d6e5eb;font-size:10px;color:#6f8895;line-height:1.7}
.atlas-reading-end a{display:flex;align-items:center;gap:9px;color:#177c98}
.atlas-reading-end .icon{width:14px;height:14px}
.atlas-toc{align-self:start;position:sticky;top:25px}
.atlas-toc>nav{border-left:2px solid #d4e6ed;padding:0 0 8px 20px}
.atlas-toc nav>a{display:block;font-size:12px;padding:10px 0;color:#557b8d}
.atlas-toc>div{background:#f0f7fa;border-radius:9px;padding:23px;margin-top:25px}
.atlas-toc h2{font-size:22px;line-height:1.3;letter-spacing:-.025em;margin:15px 0}
.atlas-toc p{font-size:12px;line-height:1.9;color:#577787}
.atlas-toc .text-link{font-size:10px}
.atlas-scene{margin:36px 0;border-radius:14px;border:1px solid #284e62;overflow:hidden;background:#082739;color:#a8d4e3;box-shadow:0 12px 30px #153a4c0d}
.atlas-scene-top{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:17px 20px 0;font-size:10px;letter-spacing:.04em;color:#c6e1eb}
.atlas-scene-toggle{font:inherit;font-size:10px;min-height:36px;padding:7px 10px;background:#143d51;color:#d6eaf1;border:1px solid #527d9066;border-radius:6px;cursor:pointer}
.atlas-scene-art{display:block;width:100%;height:auto;background-image:linear-gradient(#80b8cb0a 1px,transparent 1px),linear-gradient(90deg,#80b8cb0a 1px,transparent 1px);background-size:26px 26px;margin-top:9px}
.scene-device,.scene-body{fill:#123d52;stroke:#8eb9cb}
.scene-base{stroke:#3c657b;stroke-width:1}
.scene-copper{stroke:#eec076}
.scene-coil{stroke:#eec076;stroke-width:9;stroke-dasharray:4 6}
.scene-hub{fill:#6cc4d5;stroke:#c2e9f1}
.scene-shaft{fill:#2c5e76;stroke:#a9d1df}
.scene-led{fill:#73d6a3;stroke:#b6f2d0;filter:drop-shadow(0 0 4px #60dfa8)}
.scene-rec{fill:#ffc586;stroke:#ffd8a8}
.scene-field{fill:#69d9b529;stroke:#69d9b58c;stroke-dasharray:3 4}
.scene-thermal{fill:#d5a36d;stroke:#f3d7aa}
.scene-zone{opacity:.58;transition:opacity .25s}
[data-step="0"] [data-zone="0"],[data-step="1"] [data-zone="1"],[data-step="2"] [data-zone="2"]{opacity:1}
.scene-flow{stroke:#72d5e9;stroke-width:3;stroke-dasharray:8 10;animation:atlas-flow 3s linear infinite;animation-play-state:paused}
.scene-rotor{transform-origin:320px 139px;animation:atlas-rotate 7s linear infinite;animation-play-state:paused}
.scene-signal{stroke:#efc67e;animation:atlas-signal 3s ease-in-out infinite;animation-play-state:paused}
.scene-smoke{stroke:#99cfda;animation:atlas-smoke 3.8s ease-in-out infinite;animation-play-state:paused}
.scene-trace{stroke:#7bd2e2;stroke-dasharray:300;animation:atlas-trace 5s ease-in-out infinite;animation-play-state:paused}
[data-running="true"] .scene-flow,[data-running="true"] .scene-rotor,[data-running="true"] .scene-signal,[data-running="true"] .scene-smoke,[data-running="true"] .scene-trace{animation-play-state:running}
@keyframes atlas-flow{to{stroke-dashoffset:-108}}
@keyframes atlas-rotate{to{transform:rotate(360deg)}}
@keyframes atlas-signal{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes atlas-smoke{0%,100%{opacity:.3;transform:translateY(3px)}50%{opacity:1;transform:translateY(-5px)}}
@keyframes atlas-trace{0%,10%{stroke-dashoffset:300}65%,100%{stroke-dashoffset:0}}
.atlas-scene-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #4b74895c}
.atlas-scene-steps button{display:flex;align-items:center;justify-content:center;gap:9px;font:inherit;font-size:12px;padding:17px 8px;border:0;border-right:1px solid #4b74895c;background:#0b2e41;color:#bad6e2;cursor:pointer}
.atlas-scene-steps button:last-child{border-right:0}
.atlas-scene-steps button b{font-size:9px;font-weight:400;color:#6d9daf}
.atlas-scene-steps button[aria-pressed=true]{background:#1a4a60;color:#fff;box-shadow:inset 0 -2px #77d1e4}
.atlas-scene-notes{padding:18px 23px;background:#12364a;min-height:95px}
.atlas-prose .atlas-scene-notes p{font-size:13px;line-height:1.9;color:#c1dbe6;margin:0}
.atlas-scene figcaption{padding:13px 21px;font-size:9px;line-height:1.8;color:#92b3c2;border-top:1px solid #54778a38}
.atlas-filter-list button:focus-visible,.atlas-scene button:focus-visible{outline:2px solid #39aeca;outline-offset:3px}
.atlas-card[hidden],#atlas-more[hidden],.atlas-empty[hidden],.atlas-search-status button[hidden],.atlas-scene-toggle[hidden],.atlas-scene-notes p[hidden]{display:none}
@media(max-width:1000px){.atlas-reading-grid{grid-template-columns:minmax(0,1fr) 220px;gap:35px}.atlas-category-grid h3{font-size:15px}.atlas-category-grid>a{padding:17px;gap:10px}.atlas-article-grid{gap:14px}.atlas-card>a{padding:22px}.atlas-card h2{font-size:21px}}
@media(max-width:800px){.atlas-category-grid{grid-template-columns:1fr 1fr}.atlas-article-grid{grid-template-columns:1fr 1fr}.atlas-reading-grid{grid-template-columns:1fr;gap:30px}.atlas-toc{position:static;grid-row:1}.atlas-toc>div{display:none}.atlas-toc>nav{display:flex;flex-wrap:wrap;gap:6px 15px;border:0;border-bottom:1px solid #d4e6ed;padding:0 0 18px}.atlas-toc .eyebrow{width:100%;margin-bottom:6px}.atlas-toc nav>a{padding:5px 0;font-size:11px}.atlas-hero{padding:30px 0 35px}.atlas-hero h1+p{font-size:15px}.atlas-prose h2{font-size:28px}.atlas-prose p{font-size:16px}}
@media(max-width:540px){.atlas-category-grid,.atlas-article-grid{grid-template-columns:1fr}.atlas-category-grid{gap:10px}.atlas-category-grid>a{padding:16px}.atlas-category-grid h3{font-size:17px}.atlas-category-grid>a>div>span{font-size:10px}.atlas-hero .breadcrumb{font-size:9px;gap:7px;margin-bottom:24px;line-height:1.8}.atlas-hero h1{font-size:35px}.atlas-hero h1+p{font-size:14px;line-height:1.95}.atlas-directory{padding-top:28px}.atlas-filter-list{gap:6px}.atlas-filter-list button{font-size:10px;padding:8px 9px}.atlas-card>a{padding:24px}.atlas-card h2{font-size:24px}.atlas-card p{font-size:14px}.atlas-card-top{font-size:9px;margin-bottom:18px}.atlas-meta{font-size:9px;gap:9px 13px}.atlas-reading{padding-top:27px}.atlas-example{padding:21px}.atlas-example h2{font-size:24px}.atlas-scene-top{padding:14px 13px 0;font-size:9px;gap:7px}.atlas-scene-toggle{min-height:40px;font-size:9px;padding:8px}.atlas-scene-steps button{font-size:10px;gap:6px;padding:15px 5px;min-height:48px}.atlas-scene-steps button b{font-size:8px}.atlas-scene-notes{padding:17px;min-height:110px}.atlas-prose .atlas-scene-notes p{font-size:12px}.atlas-scene figcaption{padding:12px 16px;font-size:8px}.atlas-service-link{padding:18px}.atlas-category-intro{gap:15px;padding-bottom:26px}.atlas-category-intro p{font-size:12px}.atlas-category-icon{width:39px;height:39px;flex-basis:39px}}
@media(prefers-reduced-motion:reduce){.scene-zone,.atlas-category-grid>a,.atlas-card>a{transition:none}.atlas-scene[data-running="false"] .scene-trace{stroke-dashoffset:0}}

.atlas-category-picker{margin-bottom:23px;border:1px solid #d3e4eb;border-radius:10px;background:#f7fbfc;padding:0 18px}
.atlas-category-picker>summary{padding:18px 0;cursor:pointer;font-size:13px;color:#21586d;font-weight:600;min-height:48px}
.atlas-category-picker>.atlas-category-grid{padding-bottom:18px}
.atlas-category-picker>summary:focus-visible{outline:2px solid #1498b5;outline-offset:3px}

/* Topic artwork uses local SVG shapes, with no image or video requests. */
.scene-text{fill:#c6e3ed;stroke:none;font:14px system-ui,sans-serif;font-weight:500;letter-spacing:.01em}
.scene-text.scene-small{font-size:10px;letter-spacing:0}
.scene-text.scene-label-small{font-size:12px;letter-spacing:0}
.scene-axis,.scene-grid{stroke:#548396;stroke-width:1;stroke-dasharray:3 5;opacity:.65}
.scene-screen{fill:#0c293b;stroke:#6ba4b9}
.scene-bar{fill:#5bb5c7;stroke:#9bdbe8}
.scene-gold{stroke:#f1c477}
.scene-bus{stroke:#d2ad72;stroke-width:6}
.scene-water{fill:#48a8c02b;stroke:#71bfcf}
.scene-water-stroke{stroke:#71bfcf}
.scene-earth{fill:#916d3928;stroke:#b6a17d}
.scene-hot{fill:#e99c7d;stroke:#ffccb3}
.scene-warm{fill:#c99a60;stroke:#e9bf82}
.scene-cool{fill:#3c8194;stroke:#8dc3d2}
.scene-rust{fill:#ae7852;stroke:#c18a62}
.scene-phase-0,.scene-curve-0{stroke:#77d5e7}
.scene-phase-1,.scene-curve-1{stroke:#eac279}
.scene-phase-2,.scene-curve-2{stroke:#b7a4e1}
.scene-phase-1 .scene-trace{stroke:#eac279;animation-delay:-.5s}
.scene-phase-2 .scene-trace{stroke:#b7a4e1;animation-delay:-1s}
.scene-phase{stroke:#eac279}
.scene-zone{opacity:.79}
.scene-spin{transform-box:fill-box;transform-origin:center;animation:atlas-rotate 8s linear infinite paused}
.scene-pulse{animation:scene-pulse 3.8s ease-in-out infinite paused}
.scene-blink{animation:scene-blink 3.2s ease-in-out infinite paused}
.scene-dot{animation:scene-dot 2.4s ease-in-out infinite paused}
.scene-energy-flow{stroke-dasharray:12 7;animation:atlas-flow 4.5s linear infinite paused}
.scene-wave{animation:scene-wave 4s ease-in-out infinite paused}
.scene-shake{animation:scene-shake 2.3s ease-in-out infinite paused}
.scene-needle{animation:scene-needle 6s ease-in-out infinite paused;transform-origin:0 18px}
.scene-door-slide{animation:scene-door-slide 6s ease-in-out infinite paused}
.atlas-scene [class~="scene-animated"]{animation-play-state:paused}
.atlas-scene[data-running="true"] [class~="scene-animated"]{animation-play-state:running}
.scene-topic-number{color:#95bdcc;font-size:9px;letter-spacing:0;text-align:right}
.atlas-prose .atlas-scene-hint{font-size:10px;line-height:1.6;text-align:center;color:#8fb5c6;margin:1px 14px 16px}
.atlas-scene-notes strong{color:#e1f2f7;font-weight:600}
.atlas-scene-art{margin-top:17px}
@keyframes scene-pulse{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes scene-blink{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes scene-dot{0%,100%{opacity:.35;transform:translateX(-4px)}50%{opacity:1;transform:translateX(4px)}}
@keyframes scene-wave{0%,100%{transform:translateY(-3px)}50%{transform:translateY(3px)}}
@keyframes scene-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-2px)}40%,80%{transform:translateX(2px)}}
@keyframes scene-needle{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}
@keyframes scene-door-slide{0%,15%,85%,100%{transform:translateX(0)}40%,60%{transform:translateX(-38px)}}
@media(max-width:540px){.atlas-scene-top{align-items:flex-start}.scene-topic-number{max-width:40%;font-size:8px;line-height:1.6}.atlas-scene-steps button{overflow-wrap:anywhere;line-height:1.6;padding:12px 6px;min-height:58px}.atlas-scene-steps button b{display:none}.atlas-scene-art{margin-top:13px}.atlas-prose .atlas-scene-hint{font-size:9px}}
@media(prefers-reduced-motion:reduce){.atlas-scene .scene-animated{animation:none!important}.scene-trace{stroke-dashoffset:0}}
.atlas-observation-notes{padding:27px 30px;border:1px solid #d9e6e9;border-radius:16px;background:#f4f8f9}
.atlas-observation-notes ul{margin:18px 0 0;padding-left:22px;display:grid;gap:12px;line-height:1.85;color:#435b67}
.atlas-observation-notes li::marker{color:#168ba5}
.atlas-faq details{border:1px solid #d9e6e9;border-radius:14px;background:#fff}
.atlas-faq summary{padding:22px 25px;cursor:pointer;font-weight:600;line-height:1.7;color:#123a4c;overflow-wrap:anywhere}
.atlas-faq summary:focus-visible{outline:3px solid #168ba5;outline-offset:3px;border-radius:10px}
.atlas-faq details p{padding:0 25px 24px;margin:0}
.atlas-reading section[id]{scroll-margin-top:25px}
@media(max-width:540px){.atlas-observation-notes{padding:23px 20px}.atlas-faq summary{padding:20px}.atlas-faq details p{padding:0 20px 20px}}
