/* Far Station: operational plate, scoped to the printed state's polar-night layer. */
.hos-places .px-chart { color:#e0eef0; background:#081c25; position:relative; border-block:1px solid #365962; }
.hos-places .px-chart-head { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:22px 26px 16px; }
.hos-places .px-chart-head h2 { font:600 clamp(25px,3vw,38px)/1.2 var(--v-serif); color:#edf5f4; margin:8px 0 0; }
.hos-places .px-chart-head h2 small { font:500 11px var(--v-mono); color:#99dbce; vertical-align:middle; letter-spacing:.16em; white-space:nowrap; }
.hos-places .px-chart-head p { font:11px/1.8 var(--v-mono); color:#b5c9ce; text-align:right; }
.hos-places .px-chart-tools { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:12px 26px; border-block:1px solid #294b55; position:relative; }
.hos-places .px-chart-tools label { display:flex; align-items:center; gap:10px; font:11px var(--v-mono); color:#a8c8ce; flex:1; }
.hos-places .px-chart-tools select { min-width:160px; max-width:260px; color:#e6f2f1; background:#11313b; border:1px solid #52747b; border-radius:2px; padding:9px 12px; font:12px var(--v-mono); }
.hos-places .px-chart button { color:#c5dee1; background:#102e39; border:1px solid #436670; padding:9px 12px; border-radius:2px; cursor:pointer; font:11px var(--v-mono); min-height:36px; }
.hos-places .px-chart button:hover { background:#1d4650; }
.hos-places .px-chart button[aria-pressed="true"] { color:#eafff9; border-color:#89c9c9; background:#204851; }
.hos-places .px-chart button:disabled { opacity:.4; cursor:default; }
.hos-places .px-chart button:focus-visible,.hos-places .px-chart select:focus-visible { outline:2px solid #cff8f0; outline-offset:3px; }
.hos-places .px-chart-layers { display:flex; gap:4px; }
.hos-places .px-chart-plate { position:relative; background:radial-gradient(ellipse at 65% 0%,#1e595b33,transparent 62%),#071b25; overflow:hidden; }
.hos-places .px-chart-svg { display:block; width:100%; height:clamp(450px,64vh,670px); }
.hos-places .px-chart-grid path { stroke:#567881; stroke-width:1; opacity:.17; }
.hos-places .px-chart-grid text { fill:#6c9098; font:11px var(--v-mono); }
.hos-places .px-chart-land { stroke:#7ab8b3; }
.hos-places .px-chart-route { stroke:#7bd2d0; stroke-width:3; opacity:.85; }
.hos-places .px-chart-route.px-route-arrears { stroke:#e99e91; stroke-dasharray:8 8; }
.hos-places .px-chart-settlement { stroke:#eef7e9; stroke-width:2; stroke-dasharray:4 14; }
.hos-places .px-chart-home path { stroke:#9bb9bc; stroke-width:2; fill:none; }
.hos-places .px-chart-home text { fill:#b4d0d4; font:15px var(--v-mono); letter-spacing:.08em; }
.hos-places .px-chart-home .px-chart-small { font-size:11px; letter-spacing:0; }
.hos-places .px-chart-node { cursor:pointer; outline:none; }
.hos-places .px-chart-hit { fill:transparent; }
.hos-places .px-chart-ring { fill:#0d3039; stroke:#8abab9; stroke-width:2; }
.hos-places .px-chart-dot { fill:#a9d9d2; }
.hos-places .px-chart-node.is-selected .px-chart-ring,.hos-places .px-chart-node:focus-visible .px-chart-ring { stroke:#e1fff5; stroke-width:4; fill:#30616a; }
.hos-places .px-chart-node:focus-visible .px-chart-name { text-decoration:underline; }
.hos-places .px-chart-name { font:600 28px var(--v-serif); fill:#edf7f5; stroke:#071b25; stroke-width:6px; paint-order:stroke; }
.hos-places .px-chart-status { font:14px var(--v-mono); letter-spacing:.09em; fill:#acced0; stroke:#071b25; stroke-width:4px; paint-order:stroke; }
.hos-places .px-chart-force { font:14px var(--v-mono); fill:#e7c4b7; stroke:#071b25; stroke-width:4px; paint-order:stroke; }
.hos-places .px-chart-north { fill:#adc8cd; font:20px var(--v-mono); }
.hos-places .px-chart-scale { position:absolute; bottom:12px; right:14px; display:flex; align-items:center; gap:6px; padding:5px; background:#081c25e8; }
.hos-places .px-chart-scale span { font:11px var(--v-mono); min-width:32px; text-align:center; }
.hos-places .px-chart-key { display:flex; flex-wrap:wrap; gap:10px 22px; padding:12px 26px; color:#abc4c9; font:10px/1.6 var(--v-mono); border-block:1px solid #2a4a55; }
.hos-places .px-chart-key span:last-child { flex-basis:100%; color:#a4bbc0; }
.hos-places .px-chart-station { display:grid; grid-template-columns:1fr 1.1fr auto; align-items:center; gap:20px; padding:20px 26px; }
.hos-places .px-chart-station h3 { margin:6px 0; font:600 24px var(--v-serif); color:#eff8f6; }
.hos-places .px-chart-station p { margin:6px 0; font:13px/1.5 var(--x-sans); color:#b6cdd1; }
.hos-places .px-chart-reports { padding:14px 26px 20px; border-top:1px solid #2a4a55; }
.hos-places .px-chart-reports summary { font:11px/1.6 var(--v-mono); color:#c2dedf; cursor:pointer; }
.hos-places .px-chart-reports article { border-left:2px solid #527780; padding:0 15px; margin-top:18px; }
.hos-places .px-chart-reports small { font:10px/1.6 var(--v-mono); color:#b1cad0; }
.hos-places .px-chart-reports p { font:14px/1.6 var(--v-serif); margin:6px 0 0; color:#dce8e8; }
.hos-places .px-standing-fold { padding:16px 26px; border-top:1px solid #2a4a55; }
.hos-places .px-standing-fold>summary { font:12px var(--v-mono); color:#b8d8dd; cursor:pointer; }
.hos-places .px-standing-fold .px-lead { padding-inline:0; }
.hos-places .px-selected-file { border-top:3px double #385d65; }
.hos-places .hx-far .px-e-figs { max-width:560px; }
.hos-places .px-map-link { display:flex; justify-content:flex-end; padding:12px 16px; }
.hos-places .hx-world .px-chart-compact .px-chart-head,.hos-places .hx-world .px-chart-compact .px-chart-tools { padding:12px 16px; }
.hos-places .px-chart-compact .px-chart-station { grid-template-columns:1fr 1fr; }
.hos-places .px-chart-compact .px-chart-station>button { grid-column:1/-1; }
@media(max-width:900px) { .hos-places .px-chart-station { grid-template-columns:1fr 1fr; } .hos-places .px-chart-station>button { grid-column:1/-1; } }
@media(max-width:600px) { .hos-places .px-chart-head { align-items:flex-start; padding:18px 16px; } .hos-places .px-chart-head p { font-size:9px; } .hos-places .px-chart-head .px-kicker { font-size:9px; } .hos-places .px-chart-tools,.hos-places .px-chart-key { padding:12px 16px; } .hos-places .px-chart-tools label { flex-basis:100%; } .hos-places .px-chart-station { grid-template-columns:1fr!important; padding:16px; gap:12px; } .hos-places .px-chart-layers { flex-wrap:wrap; } .hos-places .px-chart-svg { height:390px; } }

/* Shared trade visual language, retaining separate settlement and arrears marks. */
.hos-places .px-economic-link{cursor:pointer;outline:none;opacity:.3}
.hos-places .px-economic-link.is-selected,.hos-places .px-economic-link:hover,.hos-places .px-economic-link:focus-visible{opacity:1}
.hos-places .px-economic-link path{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.hos-places .px-economic-link .px-route-casing{stroke:#061923;stroke-width:6;pointer-events:none}
.hos-places .px-economic-link .px-chart-route{stroke:#dcb774;stroke-width:2;opacity:1;pointer-events:none}
.hos-places .px-economic-link.is-selected .px-chart-route,.hos-places .px-economic-link:focus-visible .px-chart-route{stroke:#a9eee7;stroke-width:3}
.hos-places .px-economic-link .px-chart-route.px-route-arrears{stroke:#e99e91;stroke-dasharray:7 8}
.hos-places .px-economic-link .px-chart-settlement{stroke:#f2f3d4;stroke-width:1;stroke-dasharray:2 9;pointer-events:none}
.hos-places .px-route-hit{stroke:transparent;stroke-width:16;pointer-events:stroke}
.hos-places .px-economic-record{padding:10px 0;border-bottom:1px solid #3e6269}
@media(max-width:700px){
 .hos-places .px-route-hit{stroke-width:44}
 .hos-places .px-chart button,.hos-places .px-chart select{min-height:44px;font-size:12px}
 .hos-places .px-chart-head p,.hos-places .px-chart-key,.hos-places .px-chart-scale span,.hos-places .px-chart-tools label{font-size:12px}
}
