/* Stable workbench slots, seated in the existing matte console. */
.network-availability-shell { position:absolute; z-index:510; inset:var(--network-top,160px) 24px 72px var(--network-left,292px); display:grid; place-items:center; pointer-events:none; }
.network-availability-shell[hidden] { display:none; }
.network-availability,.network-availability-notice { box-sizing:border-box; width:min(440px,100%); max-height:100%; overflow:auto; padding:26px; border:1px solid #11191e; border-radius:14px; color:#b5cbd8; background:linear-gradient(145deg,#303a40,#222d34); box-shadow:inset 0 1px #dae7ec16,0 8px 24px #0006; pointer-events:auto; }
.network-availability>small { font:9px/1.5 var(--sans); color:#819eaf; letter-spacing:.09em; }
.network-availability h2,.network-availability-notice h3 { font:550 21px/1.4 var(--sans); color:#d6e7f1; margin:12px 0; }
.network-availability p,.network-availability-notice p { font:12px/1.8 var(--sans); color:#9fb8c7; margin:0 0 20px; }
.network-availability-actions,.network-availability-notice>div { display:flex; flex-wrap:wrap; gap:9px; }
@media(max-width:800px){.network-availability-shell { left:16px; right:16px; }.network-availability { padding:20px; }.network-availability h2 { font-size:18px; }}
#view-map.pra-network-workspace { --network-top:calc(var(--studio-command-h,88px) + 64px); --network-left:292px; --network-right:calc(var(--studio-detail-width) + 32px); --studio-deck:0px; }
#view-map.pra-network-workspace.studio-hide-explorer { --network-left:24px; }
#view-map.pra-network-workspace.studio-hide-insights { --network-right:24px; }
#view-map.pra-network-workspace .studio-tree { inset:var(--network-top) auto 24px 16px!important; height:auto!important; max-height:none!important; width:260px; }
#view-map.pra-network-workspace .studio-tree>.studio-browser-content { display:flex!important; flex-direction:column; min-height:80px; overflow:hidden!important; }
#view-map.pra-network-workspace .network-browser-tools { flex:none; }
#view-map.pra-network-workspace .studio-tree>.studio-browser-content>.studio-tree-body { flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; padding-top:var(--pra-lift-gutter); padding-inline:var(--pra-lift-gutter); overscroll-behavior:contain; scrollbar-width:thin; }
#view-map.pra-network-workspace .studio-tree .studio-portfolio-extra[open] { flex:none; height:auto; min-height:0; overflow:visible; }
#view-map.pra-network-workspace .studio-tree .studio-portfolio-extra>.studio-summary-view { z-index:1200; margin:0; padding:16px; border:1px solid #101719; border-radius:13px; background:linear-gradient(145deg,#323a3f,#242b2f); box-shadow:inset 0 1px #d4e4eb1c,0 8px 16px #0008,0 24px 48px #0007; overflow:auto; }
.network-portfolio-glance { flex:none; padding:12px 3px 11px; border-top:1px solid #c0d2da15; }
.network-portfolio-glance small { display:block; font:10px var(--sans); color:#90a2ad; }
.network-portfolio-glance>strong { display:block; margin-top:5px; color:#dae6ed; font:500 25px/1.2 var(--sans); letter-spacing:-.5px; font-variant-numeric:tabular-nums; }
.network-portfolio-glance>span { font:10px/1.5 var(--sans); color:#92a6b3; }
.network-portfolio-counts { margin-top:8px; color:#aebfc9; font:10px/1.6 var(--sans); }
#view-map.pra-network-workspace .pf-mapbox { bottom:0!important; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .pf-mapbox>.studio-scene-title { display:block; position:absolute; inset:var(--network-top) var(--network-right) auto var(--network-left); width:auto; height:auto; pointer-events:none; z-index:510; text-align:left; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-scene-title small { color:#8296a5; font:500 9px var(--sans); letter-spacing:.16em; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-scene-title strong { margin-top:8px; color:#dce5ec; font:480 26px/1.2 var(--sans); letter-spacing:-.03em; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-help { position:fixed; inset:calc(var(--studio-command-h,88px) + 14px) 16px auto auto; margin:0; z-index:720; }
/* Keep the common tool slots anchored while One-Line adds its layout tool.
   The same mounted controls serve both views; legacy mode rules must not
   move their casing, change its material, or re-center the shared buttons. */
#view-map.pra-network-workspace:is([data-mode=map],[data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools {
  --network-camera-core:318px;
  left:calc((100% + var(--network-left) - var(--network-right))/2);
  right:auto; bottom:38px; width:max-content; height:48px; min-height:48px;
  box-sizing:border-box; display:flex; align-items:center; flex-wrap:nowrap;
  padding:5px; gap:3px; border:1px solid #0a0f12; border-radius:17px;
  background:linear-gradient(160deg,#373e42,#252c30);
  box-shadow:var(--instrument-rim),var(--instrument-shadow);
  transform:translateX(calc(var(--network-camera-core)/-2)); transition:none;
}
#view-map.pra-network-workspace .studio-camera-tools.network-camera-morphing { overflow:hidden; will-change:width,transform; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>button {
  display:inline-flex; align-items:center; justify-content:center; flex:none;
  box-sizing:border-box; width:32px!important; min-width:32px; max-width:32px;
  height:36px; min-height:36px; max-height:36px; margin:0; padding:0;
  gap:5px; border-radius:10px; font-size:10px; line-height:1; color:#aabecb;
}
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-orbit-button { width:68px!important; min-width:68px; max-width:68px; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-pan-button { width:60px!important; min-width:60px; max-width:60px; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-fit-button { border-left:1px solid #0009!important; margin-left:0; }
#view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-edit-layout { width:110px!important; min-width:110px; max-width:110px; margin:0; padding:0 9px; border-left:1px solid #0009!important; }
#view-map.pra-network-workspace[data-mode="3d"] .studio-camera-tools>.studio-edit-layout { display:none; }
#view-map.pra-network-workspace .pf-side { display:flex!important; position:absolute!important; inset:var(--network-top) 16px 24px auto!important; width:var(--studio-detail-width)!important; height:auto!important; max-height:none!important; min-height:0; padding:0!important; flex-direction:column; overflow:visible; z-index:600; border:1px solid #101719; border-radius:14px; background:linear-gradient(150deg,#30373b,#242b2f); box-shadow:inset 0 1px #dbe4e91a,0 3px 6px #0008,0 16px 30px #0006; visibility:visible; pointer-events:auto; }
.network-dock-heading { flex:none; display:flex; align-items:center; gap:10px; min-height:56px; padding:10px 14px; border-bottom:1px solid #101719aa; box-shadow:0 1px #d4e4eb0a; }
.network-dock-heading>div { flex:1; min-width:0; }
.network-dock-heading strong { display:block; color:#dbe7ef; font:550 15px/20px var(--sans); }
.network-dock-heading small { display:block; margin-top:2px; color:#8da2af; font:10px/14px var(--sans); }
#view-map.pra-network-workspace .network-dock-heading>.studio-details-toggle { position:static; display:inline-flex; align-self:center; align-items:center; justify-content:center; grid-column:auto; grid-row:auto; width:auto; height:28px; min-height:28px; max-height:28px; min-width:28px; flex:none; margin:0; padding:0 5px; gap:5px; border-radius:8px; line-height:1; }
#view-map.pra-network-workspace .network-dock-heading>.studio-details-toggle>.studio-icon { transform:rotate(180deg); }
#view-map.pra-network-workspace.studio-hide-insights .network-dock-heading>.studio-details-toggle>.studio-icon { transform:none; }
.network-station-context { flex:none; min-height:0; padding:12px; }
.network-station-context[hidden] { display:none; }
.network-station-measures { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; padding:10px 0 0; }
.network-measure { padding:4px 7px; border-left:1px solid #a5b6c322; min-width:0; }
.network-measure:first-child { border:0; }
.network-measure strong { display:block; color:#d5e3eb; font:500 16px/23px var(--sans); font-variant-numeric:tabular-nums; letter-spacing:-.3px; overflow-wrap:anywhere; }
.network-measure span { display:block; margin-top:4px; color:#8eabbc; font:9px/1.5 var(--sans); }
.network-station-coverage { margin:9px 8px 0; color:#8fa2ae; font:10px/1.6 var(--sans); padding-right:24px; }
.network-measure-basis { position:absolute; right:0; bottom:-32px; margin:0; border:0; padding:0; background:none; }
.network-measure-basis>summary { display:grid; place-items:center; padding:0; min-height:25px; width:25px; color:#8da5b3; border-radius:7px; background:linear-gradient(#263035,#303a40); box-shadow:inset 0 2px 3px #0008,0 1px #e0e8ed10; cursor:pointer; }
.network-measure-basis>summary::before,.network-measure-basis>summary::after { display:none; }
.network-measure-basis>summary>.studio-icon { width:14px; height:14px; }
.network-measure-basis>div { position:fixed; z-index:1500; max-height:190px; overflow:auto; white-space:pre-line; padding:14px; border:1px solid #0e1418; border-radius:10px; color:#c5d6df; background:#2d383f; box-shadow:inset 0 1px #e0edf21a,0 8px 24px #0009; font:11px/1.6 var(--sans); }
#view-map.pra-network-workspace .studio-site-preview { border:1px solid #11181c; border-radius:9px; margin:0; background:#1d2529; box-shadow:inset 0 2px 5px #0009,0 1px #d5e2e90d; }
#view-map.pra-network-workspace .studio-preview-head { display:none; }
#view-map.pra-network-workspace .studio-preview-viewport { height:clamp(110px,16vh,165px); border-radius:8px 8px 0 0; overflow:hidden; }
#view-map.pra-network-workspace .studio-preview-viewport :is(.studio-scene,canvas) { border-radius:0; }
/* A shadow cast into the viewport seats the scene below the panel face.
   It cannot intercept orbit, zoom or the existing launch controls. */
#view-map.pra-network-workspace .studio-preview-viewport::after { content:''; position:absolute; inset:0; z-index:450; pointer-events:none; box-shadow:inset 0 4px 9px #0008,inset 2px 0 5px #0004; }
#view-map.pra-network-workspace .studio-preview-foot { height:30px; padding:0 9px; border-top:1px solid #10171b; background:#20292e; box-shadow:inset 0 1px #b8c9d009; }
#view-map.pra-network-workspace .studio-site-preview .studio-preview-launch { bottom:37px; right:8px; height:28px; min-height:28px; padding:0 9px; gap:6px; border:1px solid #84939c26; border-radius:7px; background:linear-gradient(#20292ef2,#2a343af2); color:#c3d2db; box-shadow:inset 0 2px 3px #0006,0 1px #d2dfe90c; font:500 10px/1 var(--sans); cursor:pointer; transition:background .15s,color .15s,box-shadow .15s; }
#view-map.pra-network-workspace .studio-preview-launch>.studio-control-label { padding:0; margin:0; border:0; border-radius:0; background:none; box-shadow:none; font:inherit; }
#view-map.pra-network-workspace .studio-preview-launch>.studio-icon { width:13px; height:13px; }
#view-map.pra-network-workspace .studio-site-preview .studio-preview-launch:hover:not(:disabled) { background:linear-gradient(#2c373df5,#35424af5); color:#e1edf4; box-shadow:inset 0 1px 3px #0005,0 1px #d2dfe914; }
#view-map.pra-network-workspace .studio-site-preview .studio-preview-launch:focus-visible:not(:disabled) { outline:none; box-shadow:inset 0 0 0 1px #71d4ff88,inset 0 0 6px #15b9ff26; }
#view-map.pra-network-workspace .studio-site-preview .studio-preview-launch:active:not(:disabled) { background:#1b252b; box-shadow:inset 0 3px 5px #0009; }
#view-map.pra-network-workspace[data-mode=map] .network-station-context { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:0 10px; }
#view-map.pra-network-workspace[data-mode=map] .network-station-context[hidden] { display:none; }
#view-map.pra-network-workspace[data-mode=map] .network-station-measures { display:flex; flex-direction:column; padding:0; gap:6px; }
#view-map.pra-network-workspace[data-mode=map] .network-measure { border:0; padding:0 3px; }
#view-map.pra-network-workspace[data-mode=map] .network-measure span { margin-top:0; }
#view-map.pra-network-workspace[data-mode=map] .studio-preview-viewport { height:122px; }
#view-map.pra-network-workspace[data-mode=map] .network-station-coverage { grid-column:1/-1; }
#view-map.pra-network-workspace .pf-side>.studio-inspector-tabs { order:0; flex:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:auto; min-width:0; max-width:none; box-sizing:border-box; align-self:stretch; gap:3px; margin:0 12px 8px; padding:4px; visibility:visible; }
#view-map.pra-network-workspace .pf-side>.studio-inspector-tabs>button { width:100%; box-sizing:border-box; min-width:0; min-height:30px; padding:0 3px; height:30px; font-size:10px; }
#view-map.pra-network-workspace .pf-side>.studio-inspector-tabs>button[hidden] { display:none; }
#view-map.pra-network-workspace .pf-side>.studio-inspector-tabs:has(.network-key-tab:not([hidden])) { grid-template-columns:repeat(5,minmax(0,1fr)); }
#view-map.pra-network-workspace .network-dock-body { flex:1; display:flex; flex-direction:column; min-height:80px; padding:0; overflow:hidden; }
#view-map.pra-network-workspace .network-dock-body>.studio-inspector-heading { flex:none; min-height:0; height:auto; padding:5px 16px 10px; border:0; box-shadow:none; background:none; }
#view-map.pra-network-workspace:not(.studio-has-selection) .network-dock-body>.studio-inspector-heading { display:none; }
#view-map.pra-network-workspace .network-dock-body .studio-selection-meta strong { font:550 14px/20px var(--sans); }
#view-map.pra-network-workspace .network-duplicate-study { display:none; }
#view-map.pra-network-workspace.studio-has-selection .studio-command-actions .studio-study-button { display:flex; align-items:center; }
#view-map.pra-network-workspace.studio-has-linear-study .studio-command-actions .studio-study-button { display:flex; align-items:center; }
#view-map.pra-network-workspace .studio-inspector-scroll { display:block; flex:1; min-height:0; overflow:auto; padding:0 14px 14px; overscroll-behavior:contain; }
#view-map.pra-network-workspace .network-assets-slot { display:none; height:100%; min-height:0; }
#view-map.pra-network-workspace .pf-side[data-studio-panel=assets] .network-assets-slot { display:flex; }
#view-map.pra-network-workspace .pf-side[data-studio-panel=assets] :is(.studio-native-inspector,.studio-dock,.studio-inspector-heading) { display:none!important; }
#view-map.pra-network-workspace .pf-side[data-studio-panel=assets] .studio-inspector-scroll { padding:0; overflow:hidden; }
#view-map.pra-network-workspace .studio-map-rail { display:block; flex:none; position:static; width:auto; max-height:250px; min-height:0; margin:0; padding:0 12px 10px; overflow:auto; }
#view-map.pra-network-workspace .studio-map-rail[hidden] { display:none; }
#view-map.pra-network-workspace .pf-side[data-studio-panel=legend] .network-dock-body { display:none; }
#view-map.pra-network-workspace .pf-side[data-studio-panel=legend] .studio-map-rail { display:block; flex:1; max-height:none; }
#view-map.pra-network-workspace #pf-legend { margin:0; width:100%; max-width:none; padding:10px 12px; border-radius:9px; box-shadow:inset 0 2px 5px #0007,0 1px #dbe6ec0c; background:#1b2429; }
#view-map.pra-network-workspace #pf-legend .pf-legend-toggle { height:27px; min-height:27px; padding:0; }
#view-map.pra-network-workspace #pf-legend .pf-legend-body { padding-top:5px; gap:6px; }
#view-map.pra-network-workspace #pf-legend h4 { margin:0 0 4px; font-size:9px; line-height:13px; }
#view-map.pra-network-workspace #pf-legend .pf-legend-scale-group { margin:0; padding:0; }
#view-map.pra-network-workspace #pf-legend .pf-legend-scale { margin:0; }
#view-map.pra-network-workspace #pf-legend .pf-legend-scale li>i { height:5px; }
#view-map.pra-network-workspace #pf-legend .pf-legend-scale li>span { line-height:13px; }
#view-map.pra-network-workspace #pf-legend .pf-legend-symbols { margin-top:0; padding-top:7px; }
#view-map.pra-network-workspace #pf-legend .pf-legend-symbol-grid { gap:5px 8px; }
#view-map.pra-network-workspace.studio-hide-insights .pf-side { height:57px!important; bottom:auto!important; }
#view-map.pra-network-workspace.studio-hide-insights .pf-side>:not(.network-dock-heading) { display:none!important; }
/* The full seam remains draggable; only its small, grooved grip responds.
   Neutral edge lighting belongs to the casing, rather than a blue selection. */
#view-map.pra-network-workspace .network-dock-resize { position:absolute; inset:7px auto 7px -7px; box-sizing:border-box; width:12px; min-width:0; margin:0; padding:0; border:0; cursor:ew-resize; z-index:30; border-radius:6px; touch-action:none; background:none; box-shadow:none; }
#view-map.pra-network-workspace .network-dock-resize::before { content:''; position:absolute; left:3px; top:50%; width:6px; height:46px; box-sizing:border-box; transform:translateY(-50%); border:1px solid #11181b; border-radius:4px; background:linear-gradient(90deg,#141b1f,#303a40 65%,#222b30); box-shadow:inset 1px 0 #b8c7ce16,1px 0 2px #0006; transition:background .16s,box-shadow .16s; }
#view-map.pra-network-workspace .network-dock-resize::after { content:''; position:absolute; left:5px; top:50%; width:2px; height:17px; transform:translateY(-50%); background:repeating-linear-gradient(to bottom,#94a3aa 0 1px,transparent 1px 4px); opacity:.45; transition:opacity .16s; }
#view-map.pra-network-workspace .network-dock-resize:is(:hover,:focus-visible),#view-map.pra-network-workspace.network-resizing .network-dock-resize { background:none; outline:none; box-shadow:none; }
#view-map.pra-network-workspace .network-dock-resize:is(:hover,:focus-visible)::before,#view-map.pra-network-workspace.network-resizing .network-dock-resize::before { background:linear-gradient(90deg,#1c252a,#414d54 65%,#2b353b); box-shadow:inset 1px 0 #dbe5ea30,1px 0 2px #0008; }
#view-map.pra-network-workspace .network-dock-resize:is(:hover,:focus-visible)::after,#view-map.pra-network-workspace.network-resizing .network-dock-resize::after { opacity:.85; }
#view-map.pra-network-workspace .network-dock-resize:focus-visible::before { border-color:#9caeb8; }
/* Compact register keeps the original filters, sort controls and row handlers. */
#view-map.pra-network-workspace .network-register { display:flex!important; position:relative!important; inset:auto!important; width:100%!important; height:100%!important; min-height:0!important; max-height:none!important; margin:0; padding:0!important; border:0; border-radius:0; box-shadow:none; background:none; transform:none!important; transition:none!important; animation:none!important; }
#view-map.pra-network-workspace .network-register>.studio-register-content { display:flex; width:100%; height:100%; overflow:hidden; }
#view-map.pra-network-workspace .network-register .studio-sheet-grip,#view-map.pra-network-workspace .network-register .pra-register-collapse { display:none!important; }
#view-map.pra-network-workspace .network-register .pra-register-toolbar { flex:none; display:grid; grid-template-columns:1fr auto; gap:8px; padding:0 12px 9px; }
#view-map.pra-network-workspace .network-register .studio-table-heading { padding:0; min-height:0; }
#view-map.pra-network-workspace .network-register .pra-register-title { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
#view-map.pra-network-workspace .network-register .pra-register-title>strong { font:500 12px var(--sans); }
#view-map.pra-network-workspace .network-register .pra-register-total { padding:3px 5px; font-size:10px; }
#view-map.pra-network-workspace .network-register .pra-register-scope { display:none; }
#view-map.pra-network-workspace .network-register .pra-register-whole { min-height:24px; padding:2px 6px; font-size:9px; }
#view-map.pra-network-workspace .network-maximize { position:static; display:flex; align-items:center; justify-content:center; gap:5px; width:auto; min-width:0; min-height:26px; height:26px; padding:3px 7px; border:1px solid #9eb7c322; border-radius:7px; color:#b6cbd8; background:linear-gradient(#38434a,#2b353c); box-shadow:inset 0 1px #e2ebef0f,0 2px 3px #0005; font:10px var(--sans); }
#view-map.pra-network-workspace .network-register .pf-at-head { display:block; grid-column:1/-1; grid-row:2; padding:0; }
#view-map.pra-network-workspace .network-register .pf-at-tools { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
#view-map.pra-network-workspace .network-register .pra-register-search { grid-column:1/-1; height:30px; min-height:30px; padding-left:9px; }
#view-map.pra-network-workspace .network-register #pf-at-q { min-width:0; height:28px; min-height:0; font-size:11px; }
#view-map.pra-network-workspace .network-register .pra-register-type-trigger { width:100%; min-width:0; height:29px; min-height:29px; padding:0 8px; font-size:10px; }
#view-map.pra-network-workspace .network-register label.pf-at-lines { display:flex; align-items:center; width:auto; height:29px; padding:0; font:9px var(--sans); gap:5px; }
#view-map.pra-network-workspace .network-register #pf-at-lines:focus-visible { outline:none; box-shadow:var(--focus-treatment); }
#view-map.pra-network-workspace .network-register :is(.pra-register-search:focus-within,.pra-register-type-trigger[aria-expanded=true],.pra-register-type-trigger:focus-visible),#view-map.pra-network-workspace .studio-inspector-tabs>button:focus-visible { outline:none; box-shadow:var(--focus-treatment); }
#view-map.pra-network-workspace .network-register .pf-at-wrap { padding:0 8px 6px; }
#view-map.pra-network-workspace .network-register table.pf-at { table-layout:fixed; width:100%; min-width:0; }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) table.pf-at :is(th,td):not(:first-child):not(:last-child) { display:none; }
#view-map.pra-network-workspace .network-register table.pf-at th { height:30px; font-size:9px; }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) table.pf-at :is(th,td):first-child { width:66%; }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) table.pf-at :is(th,td):last-child { width:34%; }
#view-map.pra-network-workspace .network-register table.pf-at tr.pra-lift-row>td { height:50px; padding:3px 0; }
#view-map.pra-network-workspace .network-register .pra-row-face { height:44px; padding:8px 10px; font-size:11px; }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) tbody :is(th,td):first-child .pra-row-face { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:3px; padding:6px 10px; overflow:hidden; white-space:nowrap; }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) tbody :is(th,td):first-child .pra-row-face::after { content:attr(data-context); display:block; width:100%; overflow:hidden; text-overflow:ellipsis; color:#8ba3b3; font:9px/13px var(--sans); }
#view-map.pra-network-workspace .network-register:not(.studio-register-open) .pf-asset-select { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-align:left; }
#view-map.pra-network-workspace .network-register .pra-register-more { display:flex; justify-content:center; padding:4px; }
#view-map.pra-network-workspace .network-register #pf-at-more { min-height:27px; margin:3px; padding:4px 10px; font-size:10px; }
#view-map.pra-network-workspace .network-register .pra-register-basis { position:absolute; right:0; top:1px; }
/* Sticky positioning also anchors the info control; relative would unpin only
   this last heading while the other column headings remain fixed on scroll. */
#view-map.pra-network-workspace .network-register thead th:last-child { position:sticky; top:0; padding-right:24px; }
#view-map.pra-network-workspace .network-register .pra-register-basis>summary { height:22px; width:22px; min-height:22px; padding:3px; }
#view-map.pra-network-workspace .network-register.studio-register-open { position:absolute!important; inset:calc(var(--studio-command-h,88px) + 12px) 16px 16px!important; width:auto!important; height:auto!important; max-height:none!important; padding:14px 0 0!important; z-index:1100; border:1px solid #11191e; border-radius:14px; background:linear-gradient(145deg,#313a40,#232c32); box-shadow:inset 0 1px #e1edf41a,0 12px 40px #0009; }
#view-map.pra-network-workspace .network-register.studio-register-open .pra-register-toolbar { grid-template-columns:auto 1fr auto; align-items:center; }
#view-map.pra-network-workspace .network-register.studio-register-open .pf-at-head { grid-column:2; grid-row:1; }
#view-map.pra-network-workspace .network-register.studio-register-open .pf-at-tools { grid-template-columns:1fr 180px auto; }
#view-map.pra-network-workspace .network-register.studio-register-open .pra-register-search { grid-column:auto; }
#view-map.pra-network-workspace .network-register.studio-register-open table.pf-at { min-width:1100px; }
#view-map.pra-network-workspace .network-register.studio-register-open .pra-register-scope { display:inline; font-size:10px; }
.network-map-camera { display:none; }
#view-map.pra-network-workspace[data-mode=map] .studio-camera-tools { display:flex!important; left:calc((100% + var(--network-left) - var(--network-right))/2); bottom:38px; transform:translateX(-50%); }
#view-map.pra-network-workspace[data-mode=map] .studio-camera-tools>button { display:none; }
#view-map.pra-network-workspace[data-mode=map] .network-map-camera { display:block; }
#view-map.pra-network-workspace .network-map-camera .leaflet-control-zoom { display:flex; flex-direction:row-reverse; border:0; box-shadow:none; margin:0; float:none; background:none; }
#view-map.pra-network-workspace .network-map-camera { flex:none; }
#view-map.pra-network-workspace .network-map-camera .leaflet-control-zoom a { display:grid; place-items:center; width:32px; height:36px; border:0; border-radius:10px; background:none; color:#b9ccd8; }
#view-map.pra-network-workspace .network-map-camera .leaflet-control-zoom a:hover { background:#a5cde313; }
@media(max-width:1100px) {
  #view-map.pra-network-workspace .studio-tree { width:240px; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-edit-layout { width:32px!important; min-width:32px; max-width:32px; padding:0; }
}
@media(max-width:800px) {
  #view-map.pra-network-workspace { --network-top:calc(var(--studio-command-h,136px) + 58px); }
  #view-map.pra-network-workspace .pf-side { width:calc(100% - 24px)!important; right:12px!important; bottom:14px!important; z-index:650; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .pf-mapbox>.studio-scene-title { display:none; }
  #view-map.pra-network-workspace .studio-tree { width:min(300px,calc(100% - 24px)); left:12px!important; bottom:14px!important; z-index:660; }
  #view-map.pra-network-workspace .network-dock-resize { display:none; }
  #view-map.pra-network-workspace .studio-hide-explorer .studio-tree { pointer-events:none; }
  #view-map.pra-network-workspace .network-register.studio-register-open { inset:calc(var(--studio-command-h,136px) + 8px) 8px 8px!important; }
  #view-map.pra-network-workspace .network-register.studio-register-open .pra-register-toolbar { grid-template-columns:1fr auto; }
  #view-map.pra-network-workspace .network-register.studio-register-open .pf-at-head { grid-column:1/-1; grid-row:2; }
  #view-map.pra-network-workspace .network-register.studio-register-open .pf-at-tools { grid-template-columns:1fr 1fr; }
  #view-map.pra-network-workspace .network-register.studio-register-open .pra-register-search { grid-column:1/-1; }
  #view-map.pra-network-workspace .studio-preview-viewport { height:100px; }
  #view-map.pra-network-workspace .studio-preview-foot>span { position:absolute; top:7px; left:8px; font-size:8px; white-space:nowrap; }
  #view-map.pra-network-workspace .pf-side:not([data-studio-panel=legend]) .studio-map-rail { display:none; }
  #view-map.pra-network-workspace .studio-camera-tools { left:50%!important; bottom:20px!important; }
  #view-map.pra-network-workspace[data-mode=map] .studio-camera-tools { height:46px; min-height:46px; padding:4px; }
  #view-map.pra-network-workspace .network-map-camera .leaflet-control-zoom a { height:36px; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools { --network-camera-core:270px; padding:4px; gap:2px; height:46px; min-height:46px; transform:translateX(-151px); }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>button { width:28px!important; min-width:28px; max-width:28px; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-orbit-button { width:60px!important; min-width:60px; max-width:60px; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-pan-button { width:48px!important; min-width:48px; max-width:48px; }
  #view-map.pra-network-workspace:is([data-mode="3d"],[data-mode="diagram"]) .studio-camera-tools>.studio-edit-layout { width:30px!important; min-width:30px; max-width:30px; }
}
@media(max-height:740px) {
  .network-portfolio-glance { padding:8px 3px; }
  .network-portfolio-glance>strong { font-size:20px; }
  #view-map.pra-network-workspace .studio-preview-viewport { height:94px; }
  #view-map.pra-network-workspace .studio-map-rail { max-height:145px; }
  .network-station-context { padding-block:8px; }
}
@media(max-height:840px) {
  #view-map.pra-network-workspace .pf-side:not([data-studio-panel=legend]) .studio-map-rail { display:none; }
}
/* A very short landscape viewport scrolls the panel instead of clipping its
   controls. The normal desktop still scrolls only the browser's records. */
@media(max-height:580px) {
  #view-map.pra-network-workspace:not(.studio-hide-insights) .pf-side { display:block!important; overflow:auto; }
  #view-map.pra-network-workspace .network-dock-heading { position:sticky; top:0; z-index:15; background:#2b3439; }
  #view-map.pra-network-workspace .network-dock-body { height:370px; min-height:0; }
  #view-map.pra-network-workspace .network-dock-body .studio-inspector-scroll { height:100%; }
  #view-map.pra-network-workspace .studio-tree { overflow:auto; }
  #view-map.pra-network-workspace .studio-tree>.studio-browser-content { min-height:260px; flex:none; }
}
/* An unavailable scope has one recovery surface, not empty analysis panes.
   Keep this after the dock/mobile overrides. */
#view-map.pra-network-workspace.network-unavailable { --network-left:24px; --network-right:24px; }
#view-map.pra-network-workspace.network-unavailable :is(.pf-side,.network-rail-grip,.studio-tree,.studio-browser-toggle,.network-portfolio-glance,.studio-portfolio-extra,.studio-map-rail,.studio-scene-title,.studio-canvas-caption,.studio-camera-tools,.studio-map-controls) { display:none!important; }
