:root{--color-bg:#0b1523;--color-surface:#15283b;--color-surface-raised:#1c3348;--color-primary:#48b8c8;--color-accent:#f0b85a;--color-positive:#63c59a;--color-danger:#e8707a;--color-text:#eff5fb;--color-text-muted:#a6b7c7;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--radius:10px;--max-width:1200px;--font-sans:"Inter", system-ui, -apple-system, Segoe UI, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);margin:0;font-size:16px;line-height:1.5}h1,h2,h3{margin:0 0 var(--space-2) 0;font-weight:600}h1{font-size:28px}h2{font-size:22px}a{color:var(--color-primary)}.app-layout{min-height:100vh;display:flex}.app-shell{min-width:0;max-width:var(--max-width);padding:var(--space-3) var(--space-2);flex:1;margin:0 auto}.sidebar{gap:var(--space-2);width:240px;padding:var(--space-3) var(--space-2);background:var(--color-surface);border-right:1px solid #ffffff14;flex-direction:column;flex-shrink:0;display:flex}.sidebar .brand{color:var(--color-accent);letter-spacing:.04em;font-size:18px;font-weight:700;text-decoration:none}.sidebar-identity{padding-bottom:var(--space-2);border-bottom:1px solid #ffffff14}.sidebar-name{font-weight:600}.sidebar-wallet{color:var(--color-accent);font-weight:600}.sidebar-location{color:var(--color-text-muted);font-size:13px}.sidebar-links{flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-links a{color:var(--color-text-muted);border-radius:6px;padding:8px 10px;font-size:14px;text-decoration:none}.sidebar-links a.active,.sidebar-links a:hover{color:var(--color-text);background:var(--color-surface-raised)}.sidebar-switch{min-height:36px}.breadcrumb{color:var(--color-text-muted);margin-bottom:var(--space-2);font-size:14px}.breadcrumb a{color:var(--color-text-muted);text-decoration:none}.breadcrumb a:hover{color:var(--color-text)}.card{background:var(--color-surface);border-radius:var(--radius);padding:var(--space-3);margin-bottom:var(--space-2);scroll-margin-top:var(--space-3)}.card-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.location-card{background:var(--color-surface-raised);border-radius:var(--radius);padding:var(--space-2);cursor:pointer;color:var(--color-text);border:1px solid #0000;text-decoration:none;transition:border-color .15s;display:block}.location-card:hover{border-color:var(--color-primary)}.location-card .type-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:4px;font-size:11px;display:inline-block}button,.btn{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius);background:var(--color-primary);color:#04222a;cursor:pointer;border:none;font-size:15px;font-weight:600}button:disabled{background:var(--color-surface-raised);color:var(--color-text-muted);cursor:not-allowed}button.secondary{border:1px solid var(--color-text-muted);color:var(--color-text);background:0 0}.error-banner{border:1px solid var(--color-danger);color:var(--color-danger);padding:var(--space-2);border-radius:var(--radius);margin-bottom:var(--space-2);background:#e8707a26}.stat-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.stat{background:var(--color-surface-raised);border-radius:var(--radius);padding:var(--space-2);min-width:140px}.stat .label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.stat .value{font-size:22px;font-weight:700}.cargo-meter{background:var(--color-surface-raised);height:10px;margin:var(--space-1) 0;border-radius:6px;overflow:hidden}.cargo-meter .fill{background:var(--color-primary);height:100%}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:var(--space-1) var(--space-2);border-bottom:1px solid #ffffff14}th{color:var(--color-text-muted);text-transform:uppercase;font-size:12px}@media (width<=640px){.app-layout{flex-direction:column}.sidebar{border-bottom:1px solid #ffffff14;border-right:none;flex-flow:wrap;align-items:center;width:100%}.sidebar-identity{border-bottom:none;padding-bottom:0}.sidebar-links{flex-flow:wrap}}.galaxy-node{cursor:pointer;transform-box:fill-box;transform-origin:50%;outline:none;transition:transform .15s,opacity .15s}.galaxy-node:hover,.galaxy-node:focus-visible{transform:scale(1.07)}.galaxy-node:focus-visible{outline:2px solid var(--color-primary);outline-offset:6px;border-radius:50%}.map-destinations summary{cursor:pointer;color:var(--color-text-muted);margin-bottom:var(--space-1);font-size:13px}.hero-link{cursor:pointer;filter:brightness();transition:filter .15s;display:block}.hero-link:hover,.hero-link:focus-visible{filter:brightness(1.15)}
