/* Monitoring workspace colour and type system. Satellite artwork keeps its source colours. */
.map-workspace {
 --ui-title:#14374b; --ui-text:#29495b; --ui-secondary:#566d80;
 --ui-accent:#086c82; --ui-navy:#16384b; --ui-line:#bdcdd8;
 --ink:var(--ui-title); --muted:var(--ui-secondary); --teal:var(--ui-accent);
 --border:#cbd7e0; --bg:#e7eef4; background:var(--bg);
}
.map-workspace .app-header {border-bottom-color:#c5d3de;box-shadow:0 1px 5px #183e4c0a}
.map-workspace .app-brand {border-right-color:#cbd7e0}
.map-workspace .brand-text strong,.map-workspace .header-project strong {color:var(--ui-title)}
.map-workspace .brand-text small,.map-workspace .header-project small,
.map-workspace .header-status,.map-workspace .header-range,.map-workspace .header-context,
.map-workspace .header-actions,.map-workspace .user-trigger {color:var(--ui-secondary)}
.map-workspace .brand-icon {color:var(--ui-accent)}
.map-workspace .header-actions .env-badge,.map-workspace .header-user-label {color:var(--ui-secondary)}
.map-workspace .sidebar {background:#f4f7fa;border-right-color:#c5d4df}
.map-workspace .nav-group h2 {color:#536a7b;font-weight:650;letter-spacing:.5px}
.map-workspace .nav-item {color:#36566b;font-weight:500;border-radius:7px;transition:background .15s,color .15s}
.map-workspace .nav-item:hover {color:var(--ui-accent);background:#e0eaf1}
.map-workspace .nav-item.active {background:var(--ui-accent);color:#fff;font-weight:650;box-shadow:0 3px 9px #086c8224}
.map-workspace .nav-item.active::before {background:#68d4e3}
.map-workspace .sidebar-footer,.map-workspace .sidebar-collapse {color:#526b7c;border-color:#cbd7e0}
.map-workspace .system-footer {color:#526b7c;background:#f4f7fa;border-color:#cbd7e0}
.map-workspace .map-page {border-color:#bdceda;box-shadow:0 4px 18px #16384b12}
.map-workspace .map-page-heading {border-color:#cbd7e1;background:#fff}
.map-workspace .map-heading-icon {background:var(--ui-accent);color:#fff}
.map-workspace .map-page-heading h1 {color:var(--ui-title);font-size:17px;font-weight:700;letter-spacing:0}
.map-workspace .map-page-heading .eyebrow {color:var(--ui-secondary);font-size:14px;margin-bottom:4px;letter-spacing:0}
.map-workspace .map-simulated {font-size:13px;font-weight:600;color:#805014;background:#fff3dd;border-color:#dbbd87}
.map-workspace .map-update {font-size:14px;color:var(--ui-secondary)}
.map-workspace .map-update b {color:var(--ui-text);font-weight:600}
.map-workspace .map-ledger-link {color:#36586c;font-size:14px;border-color:#c5d4df}
.map-workspace .map-ledger-link>span {color:var(--ui-secondary)}
.map-workspace .map-ledger-link i {color:#805014;background:#ffedc7;font-size:13px;font-weight:600;padding:4px 6px}
.map-workspace .map-page-status>.btn {color:#fff;background:var(--ui-accent);border-color:var(--ui-accent);border-radius:6px;font-size:14px}
.map-workspace .map-page-status>.btn:hover {background:#07586b;border-color:#07586b}

/* Float panels have solid, readable surfaces and a distinct heading. */
.map-workspace .map-navigation,.map-workspace .map-inspector {background:#fff;border:1px solid #b5c8d5;box-shadow:0 6px 24px #102e4940;backdrop-filter:none}
.map-workspace .map-nav-heading {height:54px;min-height:54px;background:var(--ui-navy);border-bottom:3px solid #168c9f;padding:0 14px;margin-bottom:12px}
.map-workspace .map-nav-heading strong {color:#fff;font-size:16px;font-weight:650}
.map-workspace .map-nav-heading>div>span {font-size:13px;color:#fff;background:#36586b;padding:4px 6px}
.map-workspace .map-nav-collapse {color:#e3f0f4;background:#ffffff0d}
.map-workspace .map-nav-collapse:hover {color:#fff;background:#ffffff25}
.map-workspace .map-search {margin-bottom:11px}
.map-workspace .map-search input {height:36px;font-size:14px;color:var(--ui-text);background:#f2f6fa;border-color:#a9becb}
.map-workspace .map-search input::placeholder {color:var(--ui-secondary);opacity:1}
.map-workspace .map-search>.icon {color:var(--ui-secondary)}
.map-workspace .map-search input:focus {background:#fff;border-color:var(--ui-accent);box-shadow:0 0 0 2px #086c821c}
.map-workspace .map-filter-heading {padding-bottom:11px}
.map-workspace .map-filter-heading>button:first-child {color:#3d5a6e;font-size:14px;padding:6px 8px;border-radius:5px}
.map-workspace .map-filter-heading>button:first-child.active {background:var(--ui-accent);color:#fff}
.map-workspace .map-filter-heading>button:first-child b {background:#e4edf2;color:#355365;font-size:13px}
.map-workspace .map-filter-heading>button:first-child.active b {background:#ffffff24;color:#fff}
.map-workspace .map-type-toggle {font-size:14px;color:#36576b;padding:6px 7px;border:1px solid #b9cbd7;border-radius:5px;background:#f1f6f9}
.map-workspace .map-type-toggle:hover,.map-workspace .map-type-toggle[aria-expanded=true] {border-color:var(--ui-accent);color:var(--ui-accent);background:#e8f3f5}
.map-workspace .map-filters {top:140px;border-color:#a9c2d0;box-shadow:0 7px 24px #16384b35}
.map-workspace .map-filters button {color:#36576b;font-size:14px;background:#eff4f7;border-color:#d2dfe7}
.map-workspace .map-filters button>span b {opacity:1;color:var(--ui-secondary);font-size:13px}
.map-workspace .map-filters button.active {background:#dceff2;border:2px solid var(--ui-accent);color:#07586b;font-weight:650;box-shadow:none}
.map-workspace .map-filters button:hover {border-color:#5f95a5;background:#e3edf3}
.map-workspace .map-list-caption {background:#e8eff5;color:#4c6477;font-size:13px;border-color:#cbd9e3;font-weight:600;padding:8px 14px}
.map-workspace .point-tree {padding:5px 6px;background:#fff;scrollbar-color:#a9bdcc #f2f6fa}
.map-workspace .tree-group-heading {height:33px;padding:3px 7px;margin:3px 0;background:#edf3f7;border-radius:5px}
.map-workspace .tree-group-heading>button:first-child {font-size:14px;color:#35556a;font-weight:650}
.map-workspace .tree-group-heading small {font-size:13px;color:var(--ui-secondary);font-weight:500}
.map-workspace .tree-group-heading .tree-fold {color:#4c6a7d}
.map-workspace .tree-point {min-height:58px;padding:8px 7px;border-radius:6px;gap:8px;border-bottom:1px solid #edf2f6}
.map-workspace .tree-point:hover {background:#edf4f8}
.map-workspace .tree-point.active {background:#dceff3;box-shadow:inset 3px 0 var(--ui-accent)}
.map-workspace .tree-device {width:30px;height:33px;border:1px solid #d6e3eb;background:#eff5f9}
.map-workspace .tree-point-copy strong {font-size:14px;color:#29495b;font-weight:600}
.map-workspace .tree-point-copy small {font-size:14px;color:var(--ui-secondary);margin-top:4px}
.map-workspace .tree-point-value {font-size:14px;color:#143b51;font-weight:700;letter-spacing:-.2px}
.map-workspace .tree-point-value small {font-size:14px;color:var(--ui-secondary);font-weight:500;letter-spacing:0}
.map-workspace .map-nav-source {font-size:13px;color:var(--ui-secondary);border-color:#c8d8e3;background:#f3f7fa;padding:10px 11px;gap:4px}
.map-workspace .map-nav-source>.icon {color:#20796c}
.map-workspace .map-nav-source>button {font-size:13px;font-weight:600;color:var(--ui-accent)}

/* Tool states are explicit; standard text never uses decorative light grey. */
.map-workspace .map-view-switch {background:#fff;border-color:#b6cbd7;box-shadow:0 3px 12px #16384b35}
.map-workspace .map-view-switch button {font-size:14px;color:#3e5b6f;font-weight:500;padding:7px 11px;min-height:32px}
.map-workspace .map-view-switch button:hover {background:#e7eff5}
.map-workspace .map-view-switch button.active {background:var(--ui-accent);color:#fff;font-weight:650;box-shadow:0 2px 4px #08465b22}
.map-workspace .terrain-navigation {background:#fff;border:1px solid #afc5d3}
.map-workspace .terrain-navigation button {color:#35576b;font-size:14px;background:#fff;border-color:#c1d2de}
.map-workspace .terrain-navigation button:hover {background:#e7f0f5;color:var(--ui-accent)}
.map-workspace .map-float-tools .btn,.map-workspace .map-stage .map-fullscreen-button,.map-workspace .terrain-zoom {color:#244b62;background:#fff;border-color:#a8c0d0;box-shadow:0 3px 10px #14354b40}
.map-workspace .terrain-zoom button {color:#244b62;background:#fff}
.map-workspace .map-float-tools .btn:hover,.map-workspace .map-stage .map-fullscreen-button:hover,.map-workspace .terrain-zoom button:hover {background:#deedf3;color:#07586b}
.map-workspace .map-scene-tools {background:#fff;border-color:#a9c2d1;box-shadow:0 4px 14px #143b4b3b}
.map-workspace .map-scene-tools .btn {font-size:14px;color:#294d63;font-weight:500;padding:7px 11px}
.map-workspace .map-scene-tools .btn:hover {background:#deedf3;color:#07586b}
.map-workspace .map-nav-open {background:#16384b;color:#fff;border-color:#335b70;font-size:14px}
.map-workspace .map-nav-open b {background:#36586b;color:#fff}
.map-workspace .layer-control {color:#29495b;background:#fff;border-color:#aec4d2}
.map-workspace .layer-control label {font-size:14px;color:#36576b}
.map-workspace .layer-control p {color:var(--ui-secondary);font-size:13px}
.map-workspace .map-coordinate-bar {color:var(--ui-secondary);font-size:13px;border-color:#bdceda}
.map-workspace .map-footer-legend {color:#4f687b;font-size:13px}
.map-workspace .terrain-credit {background:#fff;color:#36576b;font-size:12px;border:1px solid #bdceda}
.map-workspace .terrain-credit a {color:#075c74}
.map-workspace .map-current-selection {background:#16384bef;color:#dbeaf0;border:1px solid #5e8595}
.map-workspace .map-current-selection strong {font-size:14px;color:#fff}
.map-workspace .map-current-selection>span {opacity:1;font-size:13px}
.map-workspace .map-layout:has(.map-inspector:not(:empty)) .map-current-selection {display:none}

/* Keep downloaded artwork colourful, with a common base and strong focus ring. */
.map-workspace .point-symbol,.map-workspace .terrain-label.point b {background:#fff;border:1px solid #436b80;box-shadow:0 2px 7px #082e4e66}
.map-workspace .point-marker.selected .point-symbol,.map-workspace .terrain-label.point.selected b {outline:3px solid #086c82;outline-offset:2px;box-shadow:0 0 0 6px #fff,0 4px 10px #0e304d70}
.map-workspace .cluster-marker>span,.map-workspace .terrain-cluster {background:#155f83;color:#fff;border:2px solid #fff;font-size:14px;font-weight:700;box-shadow:0 2px 9px #0b2e4c66}
.map-workspace .terrain-cluster-popup {background:#fff;border-color:#a9c2d0;box-shadow:0 5px 22px #17384c4a}
.map-workspace .terrain-cluster-popup header {font-size:14px;color:#29495b;font-weight:600}
.map-workspace .terrain-cluster-popup>button {color:#36576b;font-size:14px;padding:10px 7px;border-bottom:1px solid #e4edf3}
.map-workspace .terrain-cluster-popup>button:hover {background:#deedf3;color:#07586b}
.map-workspace .point-marker.selected .point-label,.map-workspace .point-marker:hover .point-label,.map-workspace .terrain-label.point.selected small,.map-workspace .terrain-label.point:hover small {font-size:14px;background:#fff;color:#14374b;border-color:#7da4b8}
.map-workspace .facility-pin span,.map-workspace .terrain-label.facility {font-size:14px;background:#163b34ef;border-color:#a9c5b9;color:#fff}
.map-workspace .shoreline-label>span,.map-workspace .terrain-label.shore {font-size:14px;color:#fff;background:#113f50ed;border-color:#77bac9}
.map-workspace .beach-measure-label>span,.map-workspace .terrain-label.beach {font-size:14px;color:#ffe2a5;background:#42321bf2;border-color:#ddbb72;padding:7px 10px}
.map-workspace .beach-measure-label small,.map-workspace .terrain-label.beach small {font-size:13px;color:#fff0d0}

.map-workspace .inspector-title {background:#eef4f8;color:#14374b;border-bottom-color:#c1d3df}
.map-workspace .device-title {font-size:16px;color:#14374b}
.map-workspace .inspector-location {color:var(--ui-secondary);font-size:14px}
.map-workspace .inspector-value {background:#f3f8fb;border-block:1px solid #dfebf2;margin-top:12px}
.map-workspace .inspector-value small {font-size:14px;color:#466277}
.map-workspace .inspector-value strong {font-size:30px;color:#14374b;font-weight:700}
.map-workspace .inspector-value strong span {color:#466277;font-size:14px}
.map-workspace .inspector-meta .kv dt {color:#526c80;font-size:14px}
.map-workspace .inspector-meta .kv dd {color:#29495b;font-size:14px}
.map-workspace .map-inspector .standalone-note {color:var(--ui-secondary);font-size:14px}
.map-workspace .map-inspector .kv {font-size:14px}
.map-workspace .map-inspector .kv dt {color:#526c80}
.map-workspace .map-inspector .kv dd {color:#29495b}
.map-workspace .map-inspector .spatial-reading {background:#e4f1f5;border:1px solid #b1cedc}
.map-workspace .map-inspector .spatial-reading small,.map-workspace .map-inspector .spatial-reading p {color:#365b70;font-size:14px}
.map-workspace .map-inspector .spatial-reading strong {color:#14374b;font-size:28px}
.map-workspace .inspector-footer {border-top:1px solid #c9dae5;background:#eef4f8}
.map-workspace .inspector-footer .btn {font-size:14px;color:#36576b;border-color:#9fbccc}
.map-workspace .inspector-footer .btn.primary {background:var(--ui-accent);border-color:var(--ui-accent);color:#fff}
.map-workspace .map-inspector .chart-axis {fill:#566d80;font-size:14px}
.map-workspace :is(button,a,input):focus-visible {outline:2px solid #086c82;outline-offset:3px}
.map-workspace .map-nav-heading button:focus-visible {outline-color:#fff}

@media(max-width:1150px){.map-workspace .map-page-heading h1{font-size:14px}.map-workspace .map-view-switch button{font-size:14px;padding:7px 9px}}
@media(max-width:820px){.map-workspace .map-page-heading h1{font-size:16px}.map-workspace .map-page-heading .eyebrow{font-size:13px}.map-workspace .map-nav-heading{margin-bottom:9px}.map-workspace .map-search input{font-size:14px}.map-workspace .tree-point-copy strong{font-size:14px}.map-workspace .tree-point-copy small{font-size:13px}.map-workspace .tree-point-value{font-size:14px}.map-workspace .tree-point-value small{font-size:13px}.map-workspace .map-coordinate-bar{font-size:12px}.map-workspace .map-view-switch button{font-size:13px;padding:6px 7px}}
@media(max-width:560px){.map-workspace .map-page-heading h1{font-size:14px}.map-workspace .map-nav-heading{height:44px;min-height:44px}.map-workspace .map-nav-heading strong{font-size:14px}.map-workspace .map-nav-source{font-size:12px;padding-inline:8px}.map-workspace .tree-point-copy strong{font-size:14px}.map-workspace .tree-point-copy small{font-size:12px}.map-workspace .tree-point-value{font-size:16px}.map-workspace .map-filters{top:126px}.map-workspace .map-type-toggle,.map-workspace .map-filter-heading>button:first-child{font-size:13px}.map-workspace .map-view-switch button{font-size:12px}}
