:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#e5edf4;background:#080f17;font-synthesis:none;--blue:#7ecae3;--gold:#d8bb7e;--line:#2d3b49;--muted:#9aabbc;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,a,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:3px}button:hover{color:#b4e9fc}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.tech-icon{display:block;overflow:visible;flex-shrink:0}
.topbar{height:66px;background:#0a121c;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:20px}.brand{display:flex;align-items:center;gap:20px}.brand img{width:143px;height:auto;filter:brightness(0) invert(1)}.brand span{border-left:1px solid #3b4758;padding-left:20px;font-size:13px;letter-spacing:2px}.topbar nav{display:flex;align-items:center;gap:28px;font-size:12px;height:100%}.topbar nav a.active{color:#d9c18e;height:100%;display:flex;align-items:center;border-bottom:2px solid #d9c18e}.topbar .member-button{padding:9px 15px;background:#cfb57c;border:1px solid #cfb57c;border-radius:3px;color:#17202a;font-weight:600}.member-button span{margin-left:18px}.member-button:hover{background:#ebd4a4}
.workspace{padding:20px 24px 12px}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:17px}.eyebrow{font-size:9px;letter-spacing:2.4px;color:#91acbf;font-weight:500}.intro .eyebrow{color:#bdab88;font-size:8px;letter-spacing:2.8px}h1{font-size:27px;font-weight:600;letter-spacing:2px;margin:7px 0 0;line-height:1.3}h1 span{font-size:12px;font-weight:400;color:#9aabbc;letter-spacing:1px;display:inline-block;margin-left:24px}.atlas-stats{display:flex;gap:27px}.atlas-stats div{display:flex;align-items:center;gap:9px}.atlas-stats b{font:400 26px/1.2 "Segoe UI",sans-serif;color:#d8c399}.atlas-stats span{font-size:10px;color:#899eaf;white-space:nowrap}
.map-shell{height:calc(100dvh - 185px);min-height:590px;position:relative;border:1px solid #34424d;border-radius:7px;background:radial-gradient(ellipse at 50% 40%,#132633,#08131e 75%);overflow:hidden;box-shadow:0 14px 60px #0004}.map-shell::before,.map-shell::after{content:"";position:absolute;z-index:2;pointer-events:none;left:0;right:0;height:78px}.map-shell::before{top:0;background:linear-gradient(#091521f0,#09152100)}.map-shell::after{bottom:0;background:linear-gradient(#09152100,#091521f0)}.map-top{position:absolute;z-index:6;top:16px;left:17px;right:17px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}.map-top button,.map-top select{pointer-events:auto}.map-location{display:flex;align-items:center;gap:15px;font-size:11px}.map-location>button{padding:9px 12px;border:1px solid #405568;background:#0b1b2ae8;border-radius:4px;font-size:11px}.map-location>button span{font-size:16px;margin-right:6px}.breadcrumb{color:#88a1b5}.breadcrumb>span{margin-right:15px;color:#5e778d}.breadcrumb b{font-weight:500}.sector-picker{display:none}.sector-picker select{max-width:150px;border:1px solid #3f586c;border-radius:4px;padding:7px 20px 7px 9px;background:#132737;color:#d9e6ef;font-size:12px}.view-switch{display:flex;gap:3px;padding:3px;background:#081722ed;border:1px solid #3d5061;border-radius:5px;pointer-events:auto}.view-switch button{font-size:11px;padding:8px 15px;border-radius:3px;color:#97aec2}.view-switch button[aria-pressed="true"]{background:#d3bd8e;color:#17212d;font-weight:600}
#map-canvas{position:absolute;inset:0;cursor:grab;touch-action:none;outline:none}#map-canvas:focus-visible{box-shadow:inset 0 0 0 2px #89d5ef}#map-canvas:active{cursor:grabbing}#map{display:block;width:100%;height:100%;overflow:visible}.map-node{cursor:pointer;outline:none}.map-node .hotspot-panel,.map-node .top{transition:fill .18s,stroke .18s}.map-node:hover .hotspot-panel,.map-node:focus .hotspot-panel,.map-node:hover .top,.map-node:focus .top{fill:#274d60;stroke:#e3f6ff;stroke-width:2}.map-node text{pointer-events:none;user-select:none;font-family:inherit}.map-node:hover .tech-icon{filter:drop-shadow(0 0 8px #72d6ff66)}.scene-caption{position:absolute;top:79px;left:25px;display:flex;align-items:flex-start;gap:10px;pointer-events:none;z-index:2}.caption-line{width:2px;height:32px;background:#bba276}.scene-caption .eyebrow{font-size:8px;letter-spacing:1.6px;color:#cbb790}.scene-caption p{font-size:11px;letter-spacing:1px;color:#b6c7d3;margin:5px 0 0}
.map-bottom{position:absolute;bottom:16px;left:22px;right:17px;display:flex;align-items:center;justify-content:space-between;gap:15px;pointer-events:none;z-index:3}.interaction-hint{display:flex;align-items:center;gap:8px;font-size:10px;color:#9ab0c1;line-height:1.6}.live-dot{width:5px;height:5px;border-radius:50%;background:#78aaad;box-shadow:0 0 8px #78aaad70;flex-shrink:0}.map-controls{display:flex;align-items:center;background:#0c1d2ded;border:1px solid #3a5366;border-radius:5px;padding:4px;pointer-events:auto}.map-controls button{height:30px;min-width:30px;font-size:19px}.map-controls button[aria-pressed="true"]{color:var(--gold)}.map-controls output{font:10px monospace;min-width:39px;text-align:center;color:#c6d8ea}.map-controls>span{height:16px;border-left:1px solid #3b4e65;margin:0 5px}
#minimap-panel{position:absolute;bottom:73px;left:22px;width:150px;background:#091926dc;border:1px solid #385163;border-radius:5px;padding:8px;z-index:3;box-shadow:0 8px 25px #0005}#minimap-panel>span{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#a9bdcb;margin-bottom:5px}#minimap{width:100%;display:block;cursor:crosshair;border-radius:2px}#minimap-window{fill:#b9e5ff15;stroke:#d5c294;stroke-width:12;pointer-events:none}.immersive{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:0!important;z-index:100!important;border-radius:0!important}.in-immersive{overflow:hidden}
#directory{display:none;position:absolute;top:66px;left:12px;bottom:12px;width:280px;padding:18px 13px;background:#0a1826f7;border:1px solid #3c5365;border-radius:6px;backdrop-filter:blur(18px);box-shadow:15px 10px 50px #0008;flex-direction:column;gap:17px;z-index:10;overflow:auto;scrollbar-color:#3c576d #0a1826}#directory.open{display:flex}.side-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;letter-spacing:1px;padding:0 7px}.side-heading button{font-size:24px;font-weight:400}.search{display:flex;align-items:center;gap:7px;background:#142436;border:1px solid #344a5c;border-radius:4px;padding:11px 8px;color:var(--muted)}.search:focus-within{border-color:var(--blue)}.search input{border:0;outline:none;background:none;min-width:0;width:100%;font-size:11px;color:#e1ebf9}.search input::placeholder{color:#93a5b8}.search kbd{font-size:10px;border:1px solid #4b5d6f;padding:1px 4px}#tree{display:flex;flex-direction:column;gap:3px}.tree-row{display:flex;align-items:center;min-height:43px;border-radius:4px;gap:2px;border:1px solid transparent}.tree-row.selected{background:#233a4d;border-color:#466274;color:#aee5f8}.tree-row:hover{background:#192e40}.tree-select{flex:1;min-width:0;text-align:left;font-size:12px;padding:6px 0;display:flex;align-items:center;gap:8px}.tree-select .tech-icon{width:30px;height:30px}.tree-toggle{width:20px;height:36px;font-size:18px;color:#a3b8c8;padding:0;flex-shrink:0}.tree-count{font:10px monospace;color:#8ba0b3;padding-right:6px}.tree-row.level-1{padding-left:12px}.tree-row.level-2{padding-left:25px}.tree-row.level-1 .tree-select,.tree-row.level-2 .tree-select{font-size:11px}.tree-row.level-2 .tech-icon{width:23px}.directory-note{font-size:10px;color:#9cadbc;line-height:1.8;margin-top:auto;padding:10px}#search-results button{display:block;width:100%;padding:12px 6px;text-align:left;font-size:12px;border-bottom:1px solid var(--line)}#search-results small{display:block;color:#9aadc0;margin-top:6px}
#detail{position:absolute;top:65px;right:12px;bottom:65px;width:330px;background:#0d1b29f7;backdrop-filter:blur(18px);z-index:5;border:1px solid #40586a;border-radius:6px;box-shadow:0 15px 50px #0007;padding:24px 22px;overflow:auto;scrollbar-color:#3d576d #101c2d}.detail-close,.dialog-close{position:absolute;top:8px;right:12px;font-size:26px;color:#b5c5d4;z-index:1}#detail-art{height:100px;display:grid;place-items:center;margin:-8px -8px 16px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--sector) 14%,transparent),transparent 70%);border-bottom:1px solid #2c3e50}#detail-art .tech-icon{width:115px;height:95px}#detail .eyebrow{font-size:8px;letter-spacing:1px;color:var(--sector)}#detail h2{font-size:24px;margin:10px 0 15px;outline:none}#detail p{font-size:12px;line-height:1.9;color:#b3c3d1}.detail-section,.sources{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}#detail h3{font-size:12px;font-weight:600;margin:0 0 10px}#detail-children{display:flex;gap:7px;flex-wrap:wrap}#detail-children button{padding:8px 10px;background:#20384b;border:1px solid #405d72;color:#a6d6ed;font-size:11px;border-radius:4px}.inspect-button{display:flex;justify-content:space-between;width:100%;padding:11px 12px;margin-top:15px;border:1px solid #716748;background:#2d2f28;color:#dfcc9e;border-radius:4px;font-size:11px}.sources a{font-size:11px;color:#8ad2f1;display:block;line-height:1.8}.sources small{display:block;color:#95aabc;font-size:9px;margin-top:6px}#detail-reports p{background:#182d40;padding:12px;border-radius:4px;font-size:11px}.report-preview small{font-size:10px;color:#acbfce}.report-link{display:block;padding:10px 0;color:var(--blue);font-size:12px}
footer{display:flex;gap:20px;justify-content:space-between;color:#889cac;font-size:9px;padding-top:12px}dialog{border:1px solid #465c6e;border-radius:8px;width:min(700px,calc(100% - 32px));padding:42px;color:#e1ecf4;background:#101f2d;box-shadow:0 25px 100px #0008}dialog::backdrop{background:#020712bb;backdrop-filter:blur(5px)}dialog h2{font-size:26px;margin:13px 0}dialog p{font-size:13px;line-height:1.9;color:#adbfce}.membership-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.membership-grid article{border:1px solid #3a5265;border-radius:6px;padding:22px}.membership-grid article:last-child{background:#1a3144;border-color:#41627c}.membership-grid article>span{color:var(--blue);font-size:11px}.membership-grid h3{font-size:17px}.membership-grid ul{list-style:none;padding:0;color:#b1c2d2;font-size:12px;line-height:2.8}.membership-grid li::before{content:'✓';margin-right:8px;color:#7eb8d4}.membership-grid b{font-size:11px;font-weight:500;color:var(--gold)}.muted{font-size:11px!important}.framework-list{list-style:none;padding:0;margin-top:25px}.framework-list li{border-top:1px solid var(--line);padding:18px 0 8px}.framework-list b{font-size:15px}#load-error{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#3e2030;color:#ffe0e0;padding:20px;z-index:120}
@media(min-width:1700px){.workspace{padding:24px 36px 12px}.intro{margin-bottom:20px}h1{font-size:31px}.map-shell{height:calc(100dvh - 200px)}.map-location,.view-switch button{font-size:13px}.view-switch button{padding:10px 18px}#detail{width:350px}.scene-caption p{font-size:12px}}
@media(max-width:1050px){h1 span{font-size:10px;margin-left:15px}.atlas-stats{gap:15px}.atlas-stats b{font-size:24px}.atlas-stats span{font-size:9px}.brand span{font-size:11px}.map-shell{min-height:580px}.scene-caption{left:20px;top:78px}.scene-caption p{font-size:10px}#minimap-panel{width:125px}.interaction-hint{font-size:9px}footer{font-size:8px}}
@media(max-width:760px){.topbar{height:60px;padding:0 15px}.brand img{width:112px}.brand span{display:none}.topbar nav{gap:15px;font-size:11px}.topbar nav>button:not(.member-button){display:none}.topbar .member-button{padding:7px 10px}.member-button span{display:none}.workspace{padding:19px 10px 10px}.intro{gap:10px;align-items:flex-end;margin:0 5px 16px}.intro .eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:25px;margin-top:8px;letter-spacing:1px}h1 span{display:block;font-size:10px;letter-spacing:.5px;margin:7px 0 0}.atlas-stats{gap:11px;padding-bottom:2px}.atlas-stats div{flex-direction:column;gap:3px}.atlas-stats div:last-child{display:none}.atlas-stats b{font-size:25px}.atlas-stats span{font-size:8px}.map-shell{height:calc(100dvh - 190px);min-height:560px;border-radius:5px}.map-top{top:12px;left:10px;right:10px;gap:7px;align-items:flex-start}.map-location{gap:6px}.map-location>button{padding:8px 7px;font-size:10px}.map-location>button span{margin-right:3px;font-size:13px}.breadcrumb{display:none}.view-switch{gap:2px;padding:2px}.view-switch button{padding:9px 8px;font-size:10px}.sector-picker{position:absolute;top:44px;left:0}.sector-picker select{font-size:11px;padding:6px 18px 6px 8px}.scene-caption{top:68px;left:16px}.scene-caption .eyebrow{font-size:7px}.scene-caption p{font-size:10px;line-height:1.6}.caption-line{height:30px}#minimap-panel{width:100px;bottom:89px;left:12px;padding:5px}#minimap-panel>span{font-size:8px}.map-bottom{bottom:12px;left:12px;right:12px;align-items:flex-end;gap:8px;flex-wrap:wrap}.interaction-hint{font-size:8px;max-width:120px;line-height:1.8;gap:5px}.map-controls{padding:3px}.map-controls button{min-width:26px;font-size:18px;height:28px}.map-controls output{font-size:9px;min-width:32px}.map-controls>span{margin:0 3px}#directory{left:8px;top:58px;bottom:8px;width:min(285px,calc(100% - 16px));padding:14px 10px}.tree-select{font-size:12px}#detail{top:auto;bottom:60px;left:8px;right:8px;width:auto;max-height:42%;padding:18px 18px 22px}#detail-art{display:none}#detail .eyebrow{padding-right:20px}#detail h2{font-size:22px;margin:9px 0 12px}#detail p{font-size:11px}#detail .detail-close{top:6px}.detail-section,.sources{margin-top:16px;padding-top:14px}.map-shell:has(#detail:not([hidden])) .map-shell:has(#detail:not([hidden])) .scene-caption{display:none}footer{flex-wrap:wrap;gap:6px 12px;line-height:1.6;font-size:8px}footer>span:last-child{display:none}dialog{padding:30px 22px}dialog h2{font-size:22px}.membership-grid{grid-template-columns:1fr;gap:12px}.membership-grid article{padding:15px}.membership-grid h3{margin:10px 0}.membership-grid ul{line-height:2.2;margin:10px 0}.membership-grid b{font-size:10px}}
@media(max-width:360px){.atlas-stats{display:none}.map-controls button{min-width:24px}.map-controls output{min-width:30px}.interaction-hint{max-width:86px}}
@media(prefers-reduced-motion:reduce){.map-node .hotspot-panel,.map-node .top{transition:none}}

.sector-region .sector-color{transition:opacity .18s}.sector-boundary{cursor:pointer;outline:none}.sector-picker{display:block}.breadcrumb{max-width:310px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-open .breadcrumb{display:none}.panel-open .scene-caption{display:none}.panel-open #map-canvas{right:70%;top:65px;bottom:55px}.panel-open #minimap-panel{bottom:90px;width:110px}.panel-open .map-bottom{right:calc(70% + 12px);left:12px;flex-wrap:wrap}.panel-open .interaction-hint{font-size:9px}.panel-open .map-controls{margin-left:auto}.panel-open::before,.panel-open::after{right:70%}
#system-panel{position:absolute;top:65px;right:12px;bottom:12px;left:30%;z-index:4;display:flex;flex-direction:column;background:#0b1722;border:1px solid #425262;border-radius:6px;box-shadow:-12px 0 40px #0005;overflow:hidden} .system-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px 17px;border-bottom:1px solid #2b3b49;background:linear-gradient(110deg,#182a36,#101c28)}.system-heading .eyebrow{font-size:8px;color:#c5b183}.system-heading h2{font-size:25px;font-weight:500;letter-spacing:2px;margin:9px 0;outline:none}.system-heading p{font-size:11px;color:#a4b6c4;line-height:1.8;margin:0;max-width:680px}#close-system{font-size:27px;margin-left:15px;padding:0 3px;line-height:1}.system-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr);flex:1;min-height:0}.system-visual{min-width:0;overflow:auto;padding:18px 18px 20px;scrollbar-color:#365063 #0a1722;background:radial-gradient(ellipse at 50% 20%,#142634,#091521 70%)}.diagram-topline{display:flex;justify-content:space-between;gap:10px;font:8px monospace;letter-spacing:1px;color:#94a9b9;margin-bottom:8px}.diagram-topline>span:last-child{font-family:inherit;letter-spacing:0;color:#bba77e}#system-diagram{width:100%;min-height:210px;aspect-ratio:3/2;display:grid;place-content:center;position:relative}#system-diagram>svg{display:block;width:100%;height:auto}.diagram-status{font-size:12px;color:#9bafbd;padding:30px;text-align:center;line-height:1.9}.diagram-retry{border:1px solid #60778a;padding:10px 15px;border-radius:4px;font-size:12px;margin:auto}.system-base{opacity:.8;transition:opacity .16s}.has-selection .system-base{opacity:.36}.component-color{opacity:0;transition:opacity .16s}.component-outline{fill:transparent;stroke:#e1c68d;stroke-width:1;stroke-opacity:0;cursor:pointer}.component-region{outline:none;cursor:pointer}.component-region:hover .component-color,.component-region:focus .component-color,.component-region.is-selected .component-color{opacity:1}.component-region:hover .component-outline,.component-region:focus .component-outline,.component-region.is-selected .component-outline{stroke-opacity:1;fill:#d7c3910b}.component-badge circle{fill:#122a38;stroke:#bdab83;stroke-width:2}.component-badge text{fill:#e7d8b3;font:23px monospace;pointer-events:none}.component-region.is-selected .component-badge circle{fill:#9b8051}.component-region.is-selected .component-badge text{fill:white}#component-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}#component-buttons button{display:grid;grid-template-columns:24px 1fr;gap:4px 6px;text-align:left;padding:11px 9px;border:1px solid #304556;border-radius:4px;background:#132330}#component-buttons button>span{font:11px monospace;color:#c6b082;grid-row:span 2;align-self:center}#component-buttons strong{font-size:11px;font-weight:500}#component-buttons small{font-size:9px;color:#839bad}#component-buttons button[aria-pressed="true"]{background:#29342e;border-color:#c1aa7d}#component-buttons button[aria-pressed="true"] strong{color:#f1dfb6}.system-legend{display:flex;flex-wrap:wrap;gap:8px 14px;color:#879dac;font-size:8px;margin:15px 0;line-height:1.8}.system-legend span:last-child{width:100%;color:#a5977b}.system-inspector{overflow:auto;min-width:0;border-left:1px solid #293c4c;padding:23px 20px;scrollbar-color:#3d576d #101c2d}.system-inspector .eyebrow{font-size:8px;letter-spacing:1px;color:#9bc0d1}.system-inspector h3{font-size:21px;font-weight:500;margin:10px 0 14px}.system-inspector p{font-size:11px;line-height:1.9;color:#a8bdcb;margin:8px 0}.system-inspector h4{font-size:11px;color:#c9d6df;font-weight:500;margin:20px 0 10px}.company-group>h4{font-size:10px;color:#b5a787;letter-spacing:1px}.company-card{display:block;width:100%;text-align:left;padding:13px 12px;margin:8px 0;border:1px solid #334b5c;background:#142635;border-radius:4px}.company-card strong{font-size:13px;font-weight:500;display:block;line-height:1.6}.company-card small{display:block;font-size:9px;color:#ac9d7e;margin:5px 0}.company-card>span{font-size:10px;color:#9fb5c6;line-height:1.7;display:block}.company-card[aria-expanded="true"]{border-color:#c1aa7d;background:#24332f}#company-detail{padding:2px 13px 15px;border-left:2px solid #c0a574;background:#142632;margin-top:14px;overflow-wrap:anywhere}#company-detail h4{font-size:14px;line-height:1.7;margin:12px 0}#company-detail h5{font-size:10px;color:#d5c091;font-weight:500;margin:16px 0 7px}#company-detail small{font-size:9px;color:#92a8b8;display:block;line-height:1.8}#company-detail a,.atlas-source-list a{display:block;font-size:10px;color:#8fcae1;line-height:1.8;margin-top:8px}.atlas-source-list{margin-top:20px;padding-top:15px;border-top:1px solid #2c4151;font-size:10px;color:#aec4d2}.atlas-source-list small{display:block;font-size:9px;color:#8098aa}.association-note{font-size:9px!important;color:#8f9d9d!important;border-top:1px solid #2d4050;padding-top:14px;margin-top:18px!important}#component-related button{font-size:10px;color:#9cd4e9;border:1px solid #36576c;padding:7px 9px;margin:0 6px 6px 0;border-radius:3px}#system-reports{border-top:1px solid #2d4050;margin-top:16px;padding-top:8px}#system-reports p{font-size:10px}.panel-open #detail{z-index:7;max-width:calc(100% - 24px)}
@media(min-width:1700px){.system-heading h2{font-size:30px}.system-inspector p{font-size:13px}.company-card strong{font-size:15px}#component-buttons strong{font-size:13px}.system-body{grid-template-columns:minmax(0,1.35fr) minmax(310px,1fr)}}
@media(max-width:1100px) and (min-width:761px){#system-panel{left:25%}.panel-open #map-canvas{right:75%}.panel-open .map-bottom{right:calc(75% + 8px)}.panel-open .interaction-hint{display:none}.panel-open .map-controls{flex-wrap:wrap}.system-body{grid-template-columns:minmax(0,1fr) minmax(235px,1fr)}.system-inspector{padding:18px 14px}.system-visual{padding:16px 10px}.breadcrumb{display:none}}
@media(max-width:760px){.sector-picker{display:block;top:44px}.scene-caption{top:109px}.panel-open{height:auto;min-height:0;overflow:visible;padding-top:285px;background:#091521}.panel-open #map-canvas{inset:90px 0 auto;height:175px}.panel-open .map-top{z-index:6}.panel-open .map-bottom{top:235px;bottom:auto;left:10px;right:10px;justify-content:flex-end}.panel-open .interaction-hint,.panel-open #minimap-panel{display:none}.panel-open::before,.panel-open::after{display:none}#system-panel{position:relative;inset:auto;margin:0 6px 7px;max-width:100%;box-shadow:none;overflow:hidden}.system-heading{padding:18px 15px}.system-heading h2{font-size:24px}.system-heading p{font-size:11px}.system-body{display:block}.system-visual{padding:18px 12px}.system-inspector{border-left:0;border-top:1px solid #324858;padding:22px 18px;overflow:visible}.system-inspector p{font-size:12px}.company-card strong{font-size:14px}.company-card>span{font-size:11px}#component-buttons strong{font-size:12px}#component-buttons small{font-size:10px}#system-diagram{min-height:190px}.system-legend{font-size:9px}.panel-open.immersive{overflow-y:auto!important}.panel-open #detail{position:fixed;top:18vh;bottom:12vh;max-height:none;z-index:110;left:16px;right:16px}.system-heading .eyebrow{letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.sector-region .sector-color,.system-base,.component-color{transition:none}}
#system-diagram{display:block}#system-diagram[data-status="loading"],#system-diagram[data-status="failed"]{display:flex;flex-direction:column;justify-content:center}
#system-breadcrumb{flex-shrink:0;padding:10px 24px;background:#132431;border-bottom:1px solid #2b3b49;color:#d8c399;font-size:11px;line-height:1.7;overflow-wrap:anywhere}
@media(max-width:760px){#system-panel{overflow:visible}#system-breadcrumb{position:sticky;top:0;z-index:5;padding:10px 15px}}

/* Research portal: light reading surfaces around the retained immersive atlas. */
:root{color:#1d2937;background:#f7f8fa;color-scheme:light;--blue:#067ef9;--muted:#677587;--line:#e1e6ec;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
.topbar{height:78px;padding:0 max(28px,calc((100vw - 1400px)/2));background:#fff;border-color:#e6e9ef;gap:24px}.brand{gap:16px;flex-shrink:0}.brand img{filter:none;width:136px}.brand span{border-color:#d8dfe7;padding-left:16px;font-size:12px;letter-spacing:1px;color:#647285}.topbar nav{gap:27px;font-size:13px}.topbar nav a{display:flex;align-items:center;height:100%;white-space:nowrap;color:#647285;border-bottom:2px solid transparent}.topbar nav a.active{color:#153b66;border-color:#067ef9}.header-actions{display:flex;align-items:center;gap:14px}.header-actions>button{min-height:44px}.topbar .member-button{background:#18314e;border-color:#18314e;color:white;padding:10px 17px;border-radius:24px;font-weight:400;white-space:nowrap}.topbar .member-button:hover{background:#235587;color:white}#public-search-open{font-size:27px;min-width:44px;color:#4a617c}
.workspace,.research-content{max-width:1440px;margin:auto;padding:24px 32px 38px}.market-strip{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 0 20px;margin-bottom:28px;border-bottom:1px solid #e3e8ee}.market-index{display:flex;align-items:center;gap:12px;font-size:12px;color:#536478}.market-index strong{font:500 18px ui-monospace,Consolas,monospace;color:#293b50}.market-index small,.market-note{font-size:11px;color:#8491a0}.intro{margin-bottom:24px;gap:24px}.intro .eyebrow,.overline{font-size:10px;font-weight:500;letter-spacing:2px;color:#78899e}.intro h1{font-size:35px;letter-spacing:-1px;color:#1c2939;margin:9px 0 0}.intro-description{font-size:14px;color:#6e7d8f;margin:12px 0 0}.atlas-stats b{font-size:26px;color:#3b526c}.atlas-stats span{color:#7b8999;font-size:11px}.atlas-stats{gap:24px}.map-shell{height:640px;min-height:590px;border:1px solid #d9e1e9;border-radius:18px;box-shadow:0 8px 26px #18304a08;color:#e5edf4;color-scheme:dark}.map-shell button:hover{color:#b4e9fc}.map-shell #map-canvas{right:270px}.map-shell::before,.map-shell::after{right:270px}.map-shell .map-top{right:288px}.map-shell .map-bottom{right:286px}.map-shell .scene-caption{top:78px}.map-shell .scene-caption .eyebrow{color:#9db4c7}.map-shell .map-controls button{min-width:36px;min-height:36px}#atlas-overview{position:absolute;right:0;top:0;bottom:0;width:270px;padding:29px 23px;background:#fff;color:#24384f;border-left:1px solid #dce4ed;display:flex;flex-direction:column;z-index:3}#atlas-overview h2{font-size:18px;font-weight:500;line-height:1.6;margin:10px 0 24px}#sector-shortcuts{display:grid;gap:5px}#sector-shortcuts button{display:flex;align-items:center;gap:12px;text-align:left;color:#536b83;padding:12px 9px;border-radius:8px;min-height:49px;font-size:13px}#sector-shortcuts button:hover{background:#eff5fd;color:#175d9e}#sector-shortcuts .tech-icon{width:27px;height:27px}#sector-shortcuts small{margin-left:auto} .overview-note{margin-top:auto;border-top:1px solid #e4eaf0;padding-top:24px}.overview-note>span{font-size:13px}.overview-note p{font-size:12px;line-height:1.9;color:#7b899a}.text-link,.text-button{color:#066dcf;font-size:13px}.panel-open #atlas-overview{display:none}.panel-open .map-top{right:17px}.panel-open #map-canvas{right:70%}.panel-open .map-bottom{right:calc(70% + 12px)}.panel-open::before,.panel-open::after{right:70%}.map-shell.immersive #atlas-overview{display:none}.map-shell.immersive:not(.panel-open) #map-canvas{right:0}.map-shell.immersive:not(.panel-open) .map-top,.map-shell.immersive:not(.panel-open) .map-bottom{right:17px}.research-entry{margin:16px 0 4px;padding:11px 16px!important;min-height:44px;border-radius:5px!important;background:#1472c7!important;color:#fff!important;font-size:12px!important}#company-detail .research-entry{display:block;width:100%}
.home-research{padding:38px 2px;display:flex;align-items:center;justify-content:space-between;gap:24px}.home-research h2{font-size:26px;font-weight:500;margin:10px 0}.home-research p:not(.overline){font-size:14px;color:#718093}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:25px;background:#0675df;color:white;padding:12px 24px;font-size:14px;white-space:nowrap}footer{color:#8793a1;border-color:#e0e6ee;font-size:11px}.research-content{padding-top:38px;padding-bottom:80px}.research-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.research-heading h1{font-size:36px;line-height:1.4;letter-spacing:-.8px;margin:12px 0;color:#1c2b3d;outline:none}.research-subtitle{font-size:15px;line-height:1.9;color:#718096;margin:0}.back-link{display:inline-flex;align-items:center;min-height:44px;color:#657f9d;font-size:13px;margin-bottom:12px}.follow-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cad7e5;border-radius:24px;padding:10px 20px;font-size:13px;white-space:nowrap;color:#3c5f83}.follow-link.unavailable{color:#7d8b9b;background:#eff2f6;font-size:12px}.security-identity{font:13px ui-monospace,Consolas,monospace;color:#536f8c;letter-spacing:.6px;margin-bottom:30px}.identity-parent{font-size:13px;color:#6c7b8e;line-height:1.9}.identity-parent a{color:#166ab7}.research-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:23px;background:#fff;border:1px solid #e1e7ef;border-radius:13px;margin:22px 0}.research-filters label{display:flex;flex-direction:column;gap:8px;flex:1;min-width:140px}.research-filters label:first-child{flex:2;min-width:220px}.research-filters label>span{font-size:12px;color:#7c8999}.research-filters input,.research-filters select{min-height:44px;width:100%;background:#f8fafd;border:1px solid #d7e0eb;border-radius:7px;padding:10px;color:#29425c;font-size:13px}.text-button{min-height:44px;padding:8px 12px}.result-count{font-size:13px;color:#7a899b;margin:25px 0 18px}.company-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.company-result{padding:24px 20px;display:flex;align-items:flex-start;gap:16px;background:white;border:1px solid #e3e8ee;border-radius:13px;transition:box-shadow .18s,border-color .18s}.company-result:hover{border-color:#8cb9e3;box-shadow:0 10px 24px #1b4f7c08}.company-result>div{min-width:0}.company-result h2{font-size:17px;line-height:1.65;font-weight:500;margin:0 0 7px;overflow-wrap:anywhere}.company-result p{font-size:12px;color:#7d8998;margin:0 0 10px;line-height:1.8}.company-result small{font:11px/1.8 ui-monospace,Consolas,monospace;color:#597494;overflow-wrap:anywhere}.company-monogram{flex-shrink:0;width:42px;height:42px;display:grid;place-items:center;background:#edf4fc;border:1px solid #e0eaf6;border-radius:11px;color:#3f6f9e;font-size:19px}.card-arrow{margin-left:auto;color:#89a1b9;font-size:15px}.company-research-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}.research-main{min-width:0}.quote-panel{border:1px solid #e0e7f0;background:#fff;border-radius:15px;padding:28px}.quote-price{font:500 42px/1.2 ui-monospace,Consolas,monospace;color:#304d6b;margin:20px 0 12px}.quote-status{font-size:13px;color:#6d8199}.quote-panel .muted{font-size:13px;line-height:1.9}.muted{color:#78889b}.research-section{padding:29px 0;border-bottom:1px solid #e1e7ef}.research-section h2,.source-box h2{font-size:23px;font-weight:500;letter-spacing:-.4px;margin:0 0 23px}.research-section h3{font-size:16px;font-weight:500;margin:25px 0 10px}.research-section p,.research-section li{font-size:15px;line-height:2;color:#66778c}.product-list{color:#3c678f!important;font-size:13px!important}.meta{font-size:12px!important;line-height:1.9!important;color:#8a97a8!important}.industry-position{background:#edf3f9;border:1px solid #dfe8f2;border-radius:15px;padding:26px}.industry-position h2{font-size:17px;font-weight:500;margin:18px 0}.position-chain{display:flex;flex-direction:column;gap:12px;margin:25px 0}.position-chain>a:first-child,.position-chain strong{background:#fff;border:1px solid #d8e3ef;border-radius:7px;font-size:14px;padding:12px 15px;font-weight:400}.position-chain>span{color:#8ca2ba;padding-left:16px}.position-chain strong{border-color:#9bbfe0;color:#1e609c}.position-chain .text-link{min-height:44px;display:flex;align-items:center}.source-box{padding-top:26px;margin-top:29px;border-top:1px solid #d4dfeb}.source-box h2{font-size:16px}.source-box a{font-size:13px;color:#4175a6;line-height:1.9;display:block;overflow-wrap:anywhere}.source-box small{font-size:11px;color:#8b99aa;display:block;margin:7px 0 20px}.report-card{padding:24px;border:1px solid #dde6ef;background:#fff;border-radius:12px;margin:16px 0}.card-title{font-size:20px;font-weight:500;line-height:1.6;color:#254663}.report-card p{margin:12px 0}.research-empty{grid-column:1/-1;padding:60px 28px;text-align:center;background:#eef2f7;border:1px solid #e0e6ef;border-radius:15px;margin:18px 0}.research-empty h2{font-size:23px;font-weight:500;margin:0 0 15px}.research-empty p{font-size:14px;color:#7e8b9c;line-height:1.9}.track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.track-card{border:1px solid #e0e8f0;background:#fff;border-radius:15px;padding:25px;display:flex;flex-direction:column;align-items:flex-start}.track-card>.tech-icon{width:76px;height:67px;margin:0 0 14px}.track-card small{font-size:11px;color:#8093a8}.track-card h2{font-size:22px;font-weight:500;margin:14px 0}.track-card p{font-size:14px;line-height:1.9;color:#718298;margin:0 0 24px}.track-card .text-link{margin-top:auto;min-height:44px;display:flex;align-items:center}.related-links{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.related-links a{display:inline-flex;align-items:center;padding:10px 18px;min-height:44px;border:1px solid #d5e1ee;border-radius:7px;color:#39678f;font-size:14px;background:#fff}.system-research-card{display:block;max-width:720px;background:#fff;border:1px solid #dce5ef;border-radius:13px;padding:22px;margin:25px 0}.system-research-card img{width:100%;display:block;border-radius:8px;background:#0c1826}.report-summary{font-size:18px;line-height:2;color:#50677f;max-width:900px;margin:36px 0}.public-search-dialog{color:#1e334b;background:#fff;border:1px solid #cbd9e7;border-radius:18px;width:600px;max-width:calc(100vw - 30px);padding:34px}.public-search-dialog input{width:100%;min-height:48px;border:1px solid #d5dfeb;border-radius:8px;padding:12px;color:#244667;background:#f8fafd;font:inherit}#public-search-results{max-height:55vh;overflow:auto;margin-top:20px}#public-search-results a{display:block;padding:14px 8px;border-bottom:1px solid #e8edf3;font-size:14px;color:#3b668e;min-height:44px}.public-search-dialog h2{font-size:23px}.public-search-dialog .dialog-close{color:#4b6381}dialog:not(.public-search-dialog){color:#e5edf4;color-scheme:dark}.research-content a:hover{color:#067ef9}.primary-link:hover{color:white!important;background:#1268bd}
@media(max-width:1150px){.topbar{padding:0 22px;gap:18px}.brand span{display:none}.topbar nav{gap:18px}.company-results{grid-template-columns:repeat(2,minmax(0,1fr))}.company-research-grid{grid-template-columns:minmax(0,1fr) 280px;gap:22px}.track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-note{display:none}.atlas-stats{gap:14px}}
@media(max-width:760px){.topbar{height:auto;min-height:112px;display:flex;flex-wrap:wrap;padding:16px 18px 0;gap:8px 15px}.brand img{width:125px}.header-actions{margin-left:auto}.topbar .member-button{font-size:11px;min-height:40px;padding:8px 14px}.topbar nav{order:3;width:100%;height:48px;justify-content:space-between;gap:7px;font-size:12px;overflow:auto}.topbar nav a,.topbar nav a.active{height:48px;min-height:44px;display:flex;border-width:2px}.workspace,.research-content{padding:20px 16px 40px}.market-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;padding-bottom:20px;margin-bottom:24px}.market-index{font-size:11px;gap:9px}.market-index small{font-size:10px}.market-index strong{margin-left:auto}.intro h1{font-size:29px;letter-spacing:-.7px}.intro{display:block;margin-bottom:21px}.intro .eyebrow{font-size:9px;letter-spacing:1.6px}.intro-description{font-size:12px}.atlas-stats{display:none}.map-shell{height:620px;min-height:620px;border-radius:12px}.map-shell #map-canvas{right:0}.map-shell::before,.map-shell::after{right:0}.map-shell .map-top{right:10px}.map-shell .map-bottom{right:10px}.map-shell .scene-caption{top:112px}.map-shell .map-controls button{min-width:32px;min-height:44px}.map-shell #atlas-overview{display:none}.map-shell .map-top button{min-height:44px}.map-shell .sector-picker select{min-height:38px}.map-shell.panel-open{height:auto;min-height:0;padding-top:300px}.panel-open #map-canvas{right:0;height:175px}.panel-open .map-bottom{right:10px;top:240px}.system-inspector p{font-size:14px}.company-card>span{font-size:12px}#component-buttons button{min-height:56px}.company-card{min-height:60px}#close-system{min-width:44px;min-height:44px}#company-detail a{font-size:12px}.home-research{padding:32px 0;display:block}.home-research h2{font-size:24px}.home-research .primary-link{margin-top:15px}.home-research p:not(.overline){font-size:13px}footer{font-size:10px}.research-heading{align-items:flex-start;flex-direction:column;gap:8px}.research-heading h1{font-size:29px;overflow-wrap:anywhere}.research-subtitle{font-size:13px}.research-filters{padding:17px;gap:15px}.research-filters label,.research-filters label:first-child{min-width:100%;flex:1}.company-results,.track-grid{grid-template-columns:1fr}.company-result{padding:22px 18px}.company-research-grid{display:flex;flex-direction:column;gap:30px}.research-main,.research-aside{width:100%}.quote-panel{padding:23px}.research-section h2{font-size:22px}.research-section p{font-size:14px}.source-box a{font-size:13px}.research-heading .follow-link{margin-top:7px}.research-empty{padding:40px 20px}.research-empty h2{font-size:21px}.security-identity{font-size:12px;line-height:2;overflow-wrap:anywhere}.system-research-card{padding:15px}.track-card{padding:23px}.research-content{padding-top:26px}.report-summary{font-size:16px}.public-search-dialog{padding:25px 20px}.overview-note{display:none}}
@media(max-width:360px){.topbar{padding-left:12px;padding-right:12px}.topbar nav{font-size:11px;gap:5px}.workspace,.research-content{padding-left:12px;padding-right:12px}.brand img{width:110px}.header-actions{gap:4px}.market-index{gap:6px}.map-shell .map-controls button{min-width:30px}.map-shell .map-controls output{min-width:28px}.view-switch button{padding:8px 7px}.intro h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){.company-result{transition:none}}
.topbar #public-search-open,.topbar .member-button,.research-filters .text-button,.map-shell .map-controls button{min-width:44px;min-height:44px}
@media(max-width:760px){.market-strip{display:flex}.index-quotes{width:100%}}
.index-quotes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;flex:1;min-width:0}.quote-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0}.quote-name{width:100%;font-size:12px;color:#626771}.quote-price{font-variant-numeric:tabular-nums;color:#1d1d1f}.quote-item .quote-status,.quote-source{font-size:11px;color:#626771}.quote-source{display:block;width:100%;line-height:1.6;overflow-wrap:anywhere}.quote-up{color:#c43137}.quote-down{color:#147e56}.quote-flat{color:#626771}.quote-panel .quote-price{font-size:38px;letter-spacing:-1px}.quote-volume{width:100%;font-size:13px;color:#626771}.quote-trend{margin-top:24px;border-top:1px solid #e5e5e7;padding-top:12px}.quote-trend svg{display:block;width:100%;color:#246bd5}.index-quotes .quote-price{font-size:18px}.index-quotes .quote-source{font-size:10px}.market-strip .market-note{white-space:normal;max-width:120px}@media(max-width:700px){.index-quotes{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.market-strip{align-items:flex-start}.market-strip .market-note{display:none}}
:is(#map-canvas,#host)[data-mode="3d"]{overflow:hidden;background:#081521}
#atlas-3d-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;outline-offset:-4px}
.atlas-labels{position:absolute;inset:0;pointer-events:none;z-index:2}
.atlas-sector-label{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 13px;border:1px solid #58718766;border-radius:6px;background:#0a1b29ed;color:#e7f2fa;white-space:nowrap;box-shadow:0 8px 22px #0003;transition:border-color .18s,background .18s}
.atlas-sector-label small{font:600 10px ui-monospace,monospace;color:var(--sector)}
.atlas-sector-label strong{font-size:12px;font-weight:600;letter-spacing:.04em}
.atlas-sector-label::after{content:"";position:absolute;top:100%;left:50%;height:15px;border-left:1px solid #85a5b877}
.atlas-sector-label.is-active,.atlas-sector-label:focus-visible{border-color:var(--sector);background:#173244;box-shadow:0 0 24px color-mix(in srgb,var(--sector) 20%,transparent)}
.atlas-relation-label{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;pointer-events:auto;border:0!important;border-radius:50%;background:transparent!important;color:#85afc5;font-size:19px;opacity:.7}
.atlas-relation-label.is-active,.atlas-relation-label:focus-visible{color:#c4f0ff;opacity:1;text-shadow:0 0 12px #89ddff}
.atlas-labels [hidden]{display:none!important}
.atlas-compact .atlas-sector-label::after{display:none}
#map[hidden],#minimap[hidden],#atlas-3d-canvas[hidden],#atlas-labels[hidden],#island-navigator[hidden]{display:none!important}
.atlas-fallback{position:absolute;z-index:5;top:43%;left:50%;width:min(320px,90%);transform:translateX(-50%);padding:20px;background:#102636;border:1px solid #506e81;border-radius:10px;text-align:center;color:#d6e5ed}
.atlas-fallback[hidden]{display:none}.atlas-fallback p{font-size:13px;line-height:1.8}.atlas-fallback button{min-height:44px;padding:8px 20px;background:#e2c99c;border-radius:5px;color:#122534}
.atlas-loading{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;color:#b7cad9;font-size:14px;letter-spacing:.06em}.atlas-loading[hidden],#minimap-panel[hidden]{display:none!important}
#island-navigator{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
#island-navigator button{min-width:44px;min-height:44px;padding:3px 0;font-size:9px;color:#c5d7e3;border-top:2px solid var(--sector);background:#1b324388}
#relation-panel{position:absolute;right:0;top:0;bottom:0;width:270px;z-index:4;background:#fff;color:#26384b;padding:28px 22px;overflow:auto;border-left:1px solid #dce4ed}
#relation-panel[hidden]{display:none}.relation-open #atlas-overview{display:none}
#relation-panel>small{display:block;font-size:9px;letter-spacing:1px;color:#7b8a99;padding-right:16px}
#relation-panel h2{font-size:22px;line-height:1.55;font-weight:500;margin:17px 0 12px}
#relation-panel p{font-size:12px;line-height:1.9;color:#617284}
#relation-panel>span{font-size:10px;background:#edf4fa;color:#2b6c9c;border-radius:20px;padding:6px 10px}
#relation-panel h3{font-size:12px;margin:24px 0 12px}#relation-panel button{min-height:44px}
#relation-panel .relation-close{position:absolute;top:8px;right:6px;min-width:44px;color:#667e93;font-size:24px}
.relation-source{border-top:1px solid #e2e9ef;padding:13px 0}.relation-source a{font-size:12px;color:#146cb4;overflow-wrap:anywhere;line-height:1.7}.relation-source small{display:block;font-size:10px;color:#8795a4;line-height:1.7;margin-top:6px;overflow-wrap:anywhere}
.relation-actions{display:grid;gap:8px;margin-top:22px}.relation-actions button,.relation-component{text-align:left;padding:10px;border-radius:5px;background:#edf4fa;color:#1d5f97;font-size:12px}
.relation-component{display:block;width:100%;margin-bottom:6px}
.map-shell:has([data-mode="3d"]) #minimap-panel{width:156px}
.map-shell:has([data-mode="3d"]) .interaction-hint{max-width:310px}
@media(max-width:760px){
 .map-shell:has([data-mode="3d"]) #minimap-panel{display:none}
 .map-shell:has([data-mode="3d"]) .interaction-hint{display:none}
 .map-shell:has([data-mode="3d"]) .map-bottom{justify-content:center}
 .map-shell:has([data-mode="3d"]) .atlas-sector-label{transform:translate(-50%,-100%);margin-top:-65px;padding:8px 6px;gap:4px}
 .map-shell:has([data-mode="3d"]) .atlas-relation-label{margin-top:-65px;border:1px solid #426076!important;background:#0d2433!important;font:11px ui-monospace,monospace}
 .map-shell.relation-open{height:auto;min-height:620px;padding-top:620px;overflow:visible}
 .map-shell.relation-open #map-canvas{bottom:auto;height:620px}
 .map-shell.relation-open .map-bottom{top:558px;bottom:auto}
 #relation-panel{position:relative;inset:auto;width:100%;max-height:none;padding:27px 22px;border-left:0;border-top:1px solid #dce4ed;border-radius:0 0 12px 12px}
 .panel-open #atlas-labels{display:none}
 .map-shell .sector-picker select{min-height:44px}
}
@media(max-width:600px){.atlas-sector-label{padding:8px;gap:5px}.atlas-sector-label strong{font-size:11px}.atlas-sector-label small{font-size:9px}}
.atlas-node-label{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:7px 10px;pointer-events:auto;border:1px solid #52728688;border-radius:5px;background:#102433ed;color:#dcebf5;white-space:nowrap;box-shadow:0 5px 15px #0002}
.atlas-node-label small{font-size:12px;color:var(--sector)}.atlas-node-label strong{font-size:11px;font-weight:500}.atlas-node-label[data-depth="2"]{border-style:dashed;background:#142c3bed}
.atlas-node-label.is-active,.atlas-node-label:focus-visible{border-color:var(--sector);background:#214154;color:#fff}
.atlas-layer-controls{position:absolute;right:18px;top:76px;z-index:3;display:flex;align-items:center;gap:12px;color:#91adbd;pointer-events:none}
.atlas-layer-controls>span{font-size:11px;letter-spacing:.04em}.atlas-layer-controls>small{font-size:10px;color:#7691a3}
.atlas-layer-controls button{pointer-events:auto;min-height:44px;padding:8px 12px;border:1px solid #416276;border-radius:5px;color:#d2e5ee;background:#102a3ae8;font-size:11px}
.atlas-layer-controls button[aria-pressed="true"]{color:#fff;border-color:#86bed9;background:#204257}.atlas-layer-controls[hidden]{display:none}
@media(max-width:760px){.atlas-layer-controls{left:16px;right:16px;top:160px;gap:6px 10px;flex-wrap:wrap}.atlas-layer-controls>small{flex-basis:100%;font-size:9px}.atlas-layer-controls>span{font-size:10px}.atlas-node-label{padding:7px;gap:4px}.atlas-node-label strong{font-size:10px}}

/* A-share reference indices */
#market-strip{display:block;padding-bottom:24px}
#atlas[data-loading]{visibility:hidden}.research-loading{position:fixed;top:35vh;left:16px;right:16px;text-align:center;color:#64748b;font-size:14px;pointer-events:none}.research-loading[hidden]{display:none}
.market-heading{display:flex;align-items:baseline;gap:18px;margin:0 0 16px}
.market-heading h2{font-size:18px;font-weight:600;margin:0;color:#263c54}
.market-heading>span{font-size:12px;color:#7b8999}
#market-strip .index-quotes{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;width:100%}
#market-strip .quote-item{grid-column:span 3;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:5px 8px;min-width:0;padding:16px;background:#fff;border:1px solid #e0e7f0;border-radius:12px}
#market-strip .quote-item:nth-child(-n+3){grid-column:span 4;background:#f0f6fd;border-color:#d6e4f4;padding:18px}
#market-strip .quote-name{grid-column:1/-1;font-size:14px;font-weight:500;color:#304b68}
#market-strip .quote-price{font-size:25px;margin:3px 0 0;line-height:1.2}
#market-strip .quote-item:nth-child(-n+3) .quote-price{font-size:32px}
#market-strip .quote-status{grid-column:2;grid-row:4;font-size:10px;text-align:right}
#market-strip .quote-description{order:-1;grid-column:1/-1;font-size:10px;letter-spacing:.3px;color:#7a8a9c}
#market-strip .quote-change{grid-column:1;grid-row:4;font-size:12px;color:#64788e}
#market-strip .quote-source{grid-column:1/-1;font-size:10px;line-height:1.7;overflow-wrap:anywhere;color:#8290a0}
#market-strip .market-note{display:block;max-width:none;width:auto;text-align:left;line-height:1.9;margin-top:14px}
#market-strip .market-note a{color:#3575ae}
@media(max-width:1100px){#market-strip .index-quotes{grid-template-columns:repeat(2,minmax(0,1fr))}#market-strip .quote-item,#market-strip .quote-item:nth-child(-n+3){grid-column:auto;padding:12px}#market-strip .quote-item:first-child{grid-column:1/-1}#market-strip .quote-item:nth-child(-n+3) .quote-price{font-size:26px}.market-heading{flex-wrap:wrap;gap:8px}}

@media(max-width:600px){#market-strip .quote-price{grid-column:1/-1;grid-row:3}#market-strip .quote-up,#market-strip .quote-down,#market-strip .quote-flat{grid-column:1;grid-row:4}#market-strip .quote-status{grid-column:2;grid-row:4}#market-strip .quote-change{grid-column:1/-1;grid-row:5}#market-strip .quote-source{grid-row:6}}

/* A-share convention: rising red, falling green, unchanged neutral. */
#market-strip .quote-item:has(.quote-up) :is(.quote-price,.quote-change,.quote-up){color:#d93025}
#market-strip .quote-item:has(.quote-down) :is(.quote-price,.quote-change,.quote-down){color:#16803c}
#market-strip .quote-item:has(.quote-flat) :is(.quote-price,.quote-change,.quote-flat){color:#64748b}

.topbar .brand img{height:36px;width:auto;max-width:none;display:block;flex-shrink:0;transition:transform .4s ease,opacity .4s ease}
.topbar .brand:hover img{transform:scale(1.05);opacity:.85}
@media(max-width:600px){.topbar .brand{width:100%}.topbar .header-actions{margin-left:0}}
@media(min-width:761px) and (max-width:1200px){.topbar{height:auto;flex-wrap:wrap;padding-top:16px;gap:12px}.topbar nav{order:3;width:100%;height:48px;justify-content:space-between}.topbar .header-actions{margin-left:auto}}

/* Match homepage navigation font rendering without changing sizes. */
.topbar nav{font-synthesis:weight style small-caps;-webkit-font-smoothing:antialiased}
