/* Workspace views extend the existing REACH surface tokens. */
.hub-workspace-map-status { margin: 0; padding: 10px 14px; background: var(--hub-panel); color: var(--hub-text); border-block: 1px solid var(--hub-line); font-size: 13px; }
.hub-workspace-native .hub-workspace-command-header { padding-block: 12px; }
.hub-workspace-native .hub-workspace-command-identity h1 { font-size: clamp(20px,2vw,28px); }
.hub-workspace-explorer-layout { grid-template-columns: minmax(0,1fr) minmax(260px,320px); }
.hub-workspace-native-map { height: clamp(440px,65vh,780px); }
.hub-workspace-data-card h3 { overflow: visible; white-space: normal; overflow-wrap: anywhere; line-height: 1.4; }
.hub-workspace-product-inspector h3,.hub-workspace-product-inspector code,.hub-selected-inputs code { overflow-wrap: anywhere; white-space: normal; }
.hub-workspace-data-primary { display: flex; gap: 8px; justify-content: space-between; flex-wrap: wrap; }
.hub-product-select { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; font-size: 12px; color: var(--hub-text); }
.hub-product-select input { width: 18px; height: 18px; accent-color: var(--hub-cyan); }
.hub-product-select:focus-within { outline: 2px solid var(--hub-cyan); outline-offset: 3px; border-radius: 4px; }
.hub-product-selection-bar { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; padding: 10px 0; }
.hub-product-selection-bar > span { margin-right: auto; color: var(--hub-muted); font-size: 13px; }
.hub-product-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel); }
.hub-product-table-scroll[hidden],#workspace-product-grid[hidden],.hub-workspace-map-status[hidden] { display: none; }
.hub-product-table-scroll table { width: 100%; border-collapse: collapse; text-align: left; font-size: 13px; }
.hub-product-table-scroll caption { padding: 12px; text-align: left; color: var(--hub-muted); }
.hub-product-table-scroll th,.hub-product-table-scroll td { padding: 12px; border-bottom: 1px solid var(--hub-line); vertical-align: top; min-width: 95px; }
.hub-product-table-scroll th[scope="row"] { min-width: 210px; max-width: 320px; overflow-wrap: anywhere; }
.hub-product-table-scroll thead { background: var(--hub-panel-soft); color: var(--hub-text); }
.hub-product-table-scroll details { margin-top: 5px; color: var(--hub-muted); font-weight: 400; }
.hub-product-table-scroll summary { cursor: pointer; }
.hub-product-table-scroll code { font-size: 11px; white-space: normal; overflow-wrap: anywhere; }
.hub-selected-inputs ul { padding: 0; list-style: none; display: grid; gap: 10px; }
.hub-selected-inputs li { display: grid; gap: 7px; padding: 12px; background: var(--hub-panel); border: 1px solid var(--hub-line); border-radius: 8px; }
.hub-selected-inputs li button { justify-self: start; }
.hub-workspace-product-browser-toolbar { grid-template-columns: minmax(180px,1fr) repeat(4,minmax(100px,150px)); }
.hub-workspace-product-browser-toolbar > span,.hub-workspace-product-browser-toolbar > div { grid-column: auto; }
.hub-workspace-native .ol-attribution { max-width: 100%; font-size: 10px; }
.hub-workspace-native .ol-attribution ul { color: #132639; background: #fff; }
@media (max-width:1100px) {
  .hub-workspace-explorer-layout { grid-template-columns: 1fr; }
  .hub-workspace-native-map { height: 55vh; min-height: 360px; }
  .hub-workspace-product-browser-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hub-workspace-product-browser-toolbar > .hub-search-field { grid-column: 1 / -1; }
}
@media (max-width:600px) {
  .hub-workspace-native-map { height: 52vh; min-height: 300px; }
  .hub-workspace-data-card { grid-template-columns: 1fr; }
  .hub-workspace-data-preview img { height: 180px; }
  .hub-workspace-product-browser-toolbar { gap: 8px; }
  .hub-workspace-product-browser-toolbar select { min-width: 0; width: 100%; }
  .hub-product-table-scroll { width: 100%; }
}
.hub-workspace-tile-grid[hidden],#workspace-tile-table[hidden] { display: none; }
.hub-workspace-tile-symbol img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
.hub-workspace-browser-toolbar { flex-wrap: wrap; }
.hub-processing-confirmation { background: var(--hub-panel); color: var(--hub-text); border: 1px solid var(--hub-cyan); }
@media (max-width:600px) {
  .hub-workspace-map-tools { grid-template-columns: repeat(3,minmax(0,1fr)); overflow: visible; }
  .hub-workspace-map-tools button { min-height: 40px; font-size: 10px; padding: 5px; }
  .hub-workspace-map-stage > header { gap: 10px; padding: 12px; }
  .hub-workspace-map-stage > header > div:first-child p { display: none; }
  .hub-workspace-map-stage > header .hub-inline-actions { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .hub-workspace-map-stage > header .hub-button { align-self: end; min-height: 34px; }
}
[data-workspace-preview][hidden] { display: none; }
[data-preview-unavailable] { display: block; padding: 15px; color: var(--hub-muted); font-size: 13px; }
.hub-workspace-product-browser-toolbar > div { grid-column: 2 / -1; min-width: 0; flex-wrap: wrap; }
@media (max-width:600px) {
  .hub-workspace-product-browser-toolbar > span,.hub-workspace-product-browser-toolbar > div { grid-column: 1 / -1; }
  .hub-workspace-product-browser-toolbar > div .hub-button { min-width: 0; white-space: normal; }
}

.hub-workspace-product-threads { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel); min-width: 0; }
.hub-workspace-product-threads h4,.hub-workspace-product-threads p { margin: 0; }
.hub-workspace-product-threads ul { display: grid; gap: 10px; list-style: none; margin: 0; padding: 0; }
.hub-workspace-product-threads li { display: grid; gap: 4px; overflow-wrap: anywhere; }
.hub-workspace-product-threads li span,.hub-workspace-product-threads > small { color: var(--hub-muted); font-size: 12px; line-height: 1.5; }
.hub-workspace-product-threads > button { justify-self: start; }

.hub-workspace-mini-map.geometry { background: var(--hub-panel); }
.hub-workspace-mini-map.geometry > svg { inset: 0; width: 100%; height: 100%; filter: none; }
.hub-workspace-mini-map.geometry > small { position: absolute; z-index: 3; bottom: 5px; left: 8px; right: 8px; color: var(--hub-muted); background: var(--hub-panel); padding: 3px 5px; border-radius: 4px; font-size: 11px; }

.hub-workspace-source-access-note { padding: 10px 12px; border: 1px solid var(--hub-line); border-radius: 8px; background: var(--hub-panel); color: var(--hub-muted); font-size: 13px; line-height: 1.5; }
.hub-processing-evidence-preview-only { display: block; min-width: 0; }
.hub-processing-evidence-preview-only img { display: block; width: 100%; height: 190px; object-fit: cover; }
.hub-processing-evidence-card > div .hub-button { justify-self: start; margin-top: 8px; }

.hub-processing-evidence-card > .hub-processing-evidence-preview-only { position: relative; display: grid; height: clamp(220px,24vw,300px); place-items: center; padding: 0; overflow: hidden; border-block: 1px solid var(--hub-line); background: var(--hub-bg-deep); }
.hub-processing-evidence-card > .hub-processing-evidence-preview-only img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.hub-processing-evidence.compact .hub-processing-evidence-card > .hub-processing-evidence-preview-only { height: clamp(190px,21vw,240px); }

.hub-workspace-product-inspector > header > div { display: grid; justify-items: start; gap: 4px; min-width: 0; }
.hub-workspace-product-inspector > header .hub-workspace-sensor-badge.prominent { margin-bottom: 0; }
