header,footer{max-width:1240px}main{max-width:1200px}.accent{color:var(--accent)}.intro h1{font-size:clamp(40px,6vw,72px)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metrics article{padding:24px;background:linear-gradient(145deg,#223249,#162236);border:1px solid #304058;border-radius:16px}.metrics span{display:block;color:var(--muted);font-size:13px}.metrics strong{display:block;font-size:clamp(22px,3vw,34px);margin-top:12px;letter-spacing:-1px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-head p{max-width:280px}.map-card{overflow:hidden;background:radial-gradient(ellipse at center,#22354c,#152135 70%)}#map{display:block;width:100%;height:auto;min-height:280px}.edge{stroke:#647e9a;stroke-opacity:.33;stroke-width:1.4}.edge.dim{stroke-opacity:.1}.graph-node{cursor:pointer;outline:none}.graph-node circle{fill:#fb703e;stroke:#ffb28f;stroke-width:2;transition:r .2s,fill .2s}.graph-node:hover circle,.graph-node:focus circle{fill:#ffd4ba;stroke:white;stroke-width:4}.graph-node text{fill:#dbe5f2;font:12px system-ui;paint-order:stroke;stroke:#152135;stroke-width:4px;stroke-linejoin:round}.controls{display:flex;gap:16px;align-items:end}.controls label:first-child{flex:1}label{display:block;color:var(--muted);font-size:13px}input,select{display:block;width:100%;margin-top:8px;padding:14px;background:#19263b;color:var(--text);border:1px solid #41536e;border-radius:9px;font:inherit;font-size:16px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #ffab85;outline-offset:3px}.table-wrap{overflow:auto;border:1px solid #304058;border-radius:14px;background:#162337}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:17px 20px;border-bottom:1px solid #304058}th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:1px}td{font-size:14px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#203149}td small{display:block;color:var(--muted);font:11px monospace;margin-top:5px}button{cursor:pointer;background:#293b54;color:#fff;border:1px solid #51647e;border-radius:8px;padding:8px 12px}td a{font-weight:650}.channel-title{margin-top:42px}.badge{font-size:12px;color:#9ee0bb;white-space:nowrap}.badge.muted{color:var(--muted)}.detail-key{word-break:break-all;font-size:13px}.detail-metrics{display:flex;gap:35px;margin:22px 0}.detail-metrics strong{font-size:22px;display:block}.address-row{display:flex;gap:12px;align-items:center;margin:12px 0}.address-row code{flex:1;font-size:12px}.notes{margin-top:48px}.warning{color:#ffbd75!important}.card,.metrics article{animation:arrive .45s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:700px){.metrics{grid-template-columns:repeat(2,1fr)}.metrics article{padding:16px}.section-head,.controls{align-items:stretch;flex-direction:column}.controls label{width:100%}.map-card{padding:15px}th,td{padding:13px}.graph-node text{font-size:14px}.detail-metrics{gap:20px;flex-wrap:wrap}header nav{gap:12px;font-size:13px}.address-row{align-items:start;flex-direction:column}}

.map-tools{display:flex;gap:8px;align-items:center;margin:16px 0}.map-tools button{min-width:42px;min-height:40px}.map-tools span{color:var(--muted);font-size:13px;margin-left:auto}#map{touch-action:none;cursor:grab}#map:active{cursor:grabbing}.orbit{fill:none;stroke:#7d91ae;stroke-opacity:.08;stroke-dasharray:3 8;pointer-events:none}.edge{transition:stroke-opacity .2s,stroke .2s;pointer-events:none}.edge.highlight{stroke:#ffa06e;stroke-opacity:.85;stroke-width:2.5}.edge.subdued{stroke-opacity:.035}.graph-node{transition:opacity .2s;cursor:grab}.graph-node.subdued{opacity:.2}.graph-node.selected circle{fill:#ffe0c8;stroke:#fff;stroke-width:4}.graph-node:active{cursor:grabbing}#map-info{min-height:74px;padding:16px 20px;background:#101b2c;border:1px solid #334762;border-radius:12px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}#map-info span{color:var(--muted);font-size:14px}#map-info a{margin-left:auto;font-size:14px}@media(max-width:700px){#map-info{gap:8px;align-items:start;flex-direction:column}#map-info a{margin-left:0}#map{min-height:320px}}
