:root{color-scheme:dark;--mint:#9ef4dc;--text:#edf8ff;--muted:#adc4d1;--line:#72b4c43f}*{box-sizing:border-box}body{margin:0;background:#06121d;color:var(--text);font:15px/1.5 'Segoe UI',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--mint);outline-offset:5px}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:16px 3vw;gap:20px;background:#081725ed;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{font-size:23px;letter-spacing:1px;line-height:1.2}.brand b{color:var(--mint)}.brand small{display:block;font-size:9px;letter-spacing:2.7px;margin-top:8px;color:var(--muted)}header nav,.actions{display:flex;gap:8px}button{background:#112c3b;border:1px solid var(--line);border-radius:9px;padding:11px 17px;min-height:44px}button:hover{border-color:var(--mint);background:#204951}button[aria-pressed=true]{background:#23504c;border-color:#82ddc3}.actions button{font-size:12px;background:transparent}#universe{height:calc(100svh - 196px);min-height:620px;position:relative;overflow:hidden;isolation:isolate}.scene-art{position:absolute;inset:0;z-index:-3;transition:transform 850ms cubic-bezier(.2,.8,.2,1),filter 850ms;transform-origin:var(--focus-x,50%) var(--focus-y,50%)}.scene-art>img{width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.85}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#061520ed 0%,#0615209c 24%,#0615200a 47%,#06152096 74%,#061520ee 100%),linear-gradient(#061520c9,transparent 30%,transparent 70%,#061520b0)}.stars{position:absolute;inset:-30%;background-image:radial-gradient(2px 2px at 10% 15%,#b3d8ff 60%,transparent),radial-gradient(1px 1px at 45% 25%,#fff 60%,transparent),radial-gradient(1px 1px at 70% 60%,#fff 60%,transparent);background-size:260px 220px,190px 160px,370px 320px;animation:stars 50s linear infinite;opacity:.4;pointer-events:none}.beam{position:absolute;inset:55% 38% -20%;background:radial-gradient(ellipse,#70f5d830,transparent 65%);filter:blur(25px);animation:engine 4s ease-in-out infinite alternate}.map-head{position:absolute;top:24px;left:3vw;max-width:600px}.eyebrow{color:var(--mint);font-size:10px;letter-spacing:2.5px;font-weight:650}h1{font-size:clamp(25px,2.8vw,43px);line-height:1.15;letter-spacing:-1px;margin:10px 0}h1 span{font-size:.52em;font-weight:400;letter-spacing:0;color:#c3d7e2}.map-head>p:last-child{color:var(--muted);font-size:12px}.nodes{position:absolute;top:185px;bottom:45px;width:27%;display:grid;grid-template-rows:repeat(6,1fr);gap:8px}.nodes.left{left:3vw}.nodes.right{right:3vw}.node{width:100%;display:flex;align-items:center;gap:13px;text-align:left;border:1px solid #7bb9c14d;background:linear-gradient(100deg,#0b2132ef,#123342dc);padding:10px 15px;border-radius:12px;box-shadow:0 8px 22px #0002;transition:transform .22s,border-color .22s,background .22s;min-height:0}.node:hover{transform:translateX(6px);background:#204b54ed}.right .node:hover{transform:translateX(-6px)}.node-num{font:12px monospace;color:var(--mint);border:1px solid var(--line);border-radius:50%;width:31px;height:31px;display:grid;place-items:center;flex-shrink:0}.node strong{display:block;font-size:17px;font-weight:600;line-height:1.2}.node small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.node .arrow{margin-left:auto;color:var(--mint)}.connections{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.connections path{fill:none;stroke:#87e8da;stroke-width:1;stroke-dasharray:6 18;opacity:.43;animation:flow 6s linear infinite}.core{position:absolute;left:50%;top:58%;width:170px;height:170px;transform:translate(-50%,-50%);display:grid;place-items:center}.core button{border-radius:50%;width:144px;height:144px;background:#071a27d9;border:1px solid #95ebd1;box-shadow:0 0 48px #5cf7d344;padding:12px;position:relative}.core strong{display:block;font-size:33px;letter-spacing:3px}.core small{font-size:8px;letter-spacing:1px}.core button span{font-size:10px;color:var(--mint)}.orbit{position:absolute;inset:-10px;border:1px dashed #9ae9da80;border-radius:50%;animation:spin 40s linear infinite;pointer-events:none}.o2{inset:-28px;border-style:solid;border-color:#9ae9da20;transform:rotateX(60deg)}.map-status{position:absolute;bottom:12px;left:3vw;font-size:10px;color:#b3cad9;display:flex;align-items:center;gap:8px}.status-light{width:6px;height:6px;background:var(--mint);border-radius:50%}.guide{min-height:108px;display:flex;align-items:center;gap:20px;padding:10px 3vw;background:linear-gradient(90deg,#14372f,#0b1d2c);border-top:1px solid #79cdb75c}.guide img{flex-shrink:0}.guide small{font-size:10px;letter-spacing:1.5px;color:var(--mint)}.guide p{margin:5px 0;font-size:14px;color:#d1e4e9}.guide button{margin-left:auto;white-space:nowrap;background:#9ef4dc;color:#092b2b;font-weight:650}.zoomed .scene-art{transform:scale(1.28);filter:blur(4px)}.zoomed .core,.zoomed .nodes,.zoomed .map-head{opacity:.3;transition:opacity .4s}dialog{color:var(--text);border:1px solid #77baa563;background:linear-gradient(145deg,#183941f5,#071621fa);border-radius:22px;padding:0;width:min(840px,calc(100% - 40px));max-height:calc(100svh - 40px);box-shadow:0 30px 150px #000b;overflow:auto}dialog::backdrop{background:#020a144d;backdrop-filter:blur(3px)}dialog[open]{animation:arrive .45s cubic-bezier(.2,.8,.2,1)}.module-shell,#documents{padding:32px 38px}.close{background:transparent;font-size:12px;margin-bottom:25px}.module-count{float:right;font:12px monospace;color:var(--mint);padding:12px}.module-shell h2,#documents h2{font-size:clamp(30px,5vw,52px);line-height:1.1;margin:12px 0 20px;letter-spacing:-1.4px}.summary{font-size:20px;line-height:1.5;color:#d2e5eb}.facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--line);margin-top:24px;padding-top:10px}.facts h3{font-size:12px;color:var(--mint);text-transform:uppercase;letter-spacing:1px}.facts p{color:var(--muted);font-size:15px}.module-links{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.module-links button{font-size:12px;padding:8px 12px;border-radius:30px}.module-stounik{display:flex;align-items:center;gap:18px;padding:14px 18px;background:#1c494138;border:1px solid #45766a;border-radius:12px}.module-stounik p{font-size:14px;color:#ceeadd}.module-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:28px}.module-footer button{font-size:12px;background:transparent}.module-footer a{color:var(--mint);font-size:13px}.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.doc-grid a{padding:18px;background:#15313e;border:1px solid var(--line);border-radius:12px}.doc-grid a:hover{border-color:var(--mint)}.doc-grid span{display:block;color:var(--mint);font-size:12px;margin-top:15px}#documents>p{color:var(--muted)}#documents h3{margin-top:28px}.reading{display:inline-block;margin-top:28px;color:var(--mint)}.paused *{animation-play-state:paused!important}.paused .scene-art{transition:none}@keyframes flow{to{stroke-dashoffset:-240}}@keyframes spin{to{rotate:360deg}}@keyframes stars{to{transform:translate(50px,-50px)}}@keyframes engine{to{opacity:.35;transform:scale(1.1)}}@keyframes arrive{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}@media(min-width:1600px){.nodes{width:24%}.node strong{font-size:20px}.node small{font-size:12px}}@media(max-width:850px){header{height:auto;flex-wrap:wrap;padding:16px 20px}.brand{font-size:19px}.actions{margin-left:auto}.actions button{padding:8px 12px}#universe{height:900px;min-height:0}.map-head{left:20px;right:20px;top:20px}.nodes{top:200px;bottom:45px;width:39%;gap:12px}.nodes.left{left:20px}.nodes.right{right:20px}.node{padding:10px;gap:8px}.node strong{font-size:15px}.node small{font-size:10px}.node-num{display:none}.core{width:100px;height:100px;top:17%;left:83%}.core button{width:85px;height:85px}.core strong{font-size:22px}.core small,.core button span{display:none}.orbit{inset:0}.o2{inset:-10px}.map-head{max-width:70%}.guide{padding:14px 20px;gap:12px;flex-wrap:wrap}.guide button{margin-left:76px}.guide>div{flex:1}.module-shell,#documents{padding:24px}.module-footer{flex-wrap:wrap}.module-footer a{order:3;width:100%;text-align:center;padding:12px}.facts{gap:15px}.map-status{font-size:9px;left:20px;right:20px}.connections{opacity:.45}}@media(max-width:480px){header nav button{padding:8px 13px}.actions{width:100%;justify-content:space-between}.nodes{width:43%;top:195px}.nodes.left{left:14px}.nodes.right{right:14px}.node small{font-size:10px}.node strong{font-size:14px}.node .arrow{display:none}.core{left:84%;top:15%}.map-head{left:16px;max-width:72%}h1{font-size:25px}.map-head>p:last-child{font-size:11px}#universe{height:810px}.facts,.doc-grid{grid-template-columns:1fr}.summary{font-size:18px}.module-stounik{padding:10px}.module-stounik img{width:40px}.module-shell h2{font-size:35px}.module-footer button{padding:8px}.guide small{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.hotspots{position:absolute;inset:0;pointer-events:none}.hotspot{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:8px;min-height:36px;padding:5px 9px 5px 5px;border-color:#adffeab0;background:#071923dc;border-radius:30px;box-shadow:0 0 25px #88ffe12b;font-size:10px;transform:translate(-50%,-50%)}.hotspot i{display:block;width:12px;height:12px;background:#a7ffe1;border:3px solid #1c7868;border-radius:50%;box-shadow:0 0 0 5px #7bffe522;animation:beacon 2.8s ease-in-out infinite}.hotspot:hover{background:#2e7763;scale:1.08}.zoomed .hotspots{opacity:0;pointer-events:none}.zoomed .hotspot{pointer-events:none}.core{left:64%;top:82%;width:120px;height:120px}.core button{width:110px;height:110px}.core strong{font-size:25px}.core small{font-size:7px}.core button span{font-size:8px}.map-head{top:18px}.map-head>p:last-child{margin-bottom:0}@keyframes beacon{50%{box-shadow:0 0 0 9px #7bffe509}}@media(max-width:850px){.hotspots{display:none}.core{left:83%;top:17%;width:100px;height:100px}.core button{width:85px;height:85px}}@media(max-width:480px){.core{left:84%;top:15%}}@media(prefers-reduced-motion:reduce){.hotspot i{animation:none}}
