/* Shared text and map-control readability. Keep the existing layout and palette. */
:root{--muted:#56677d}
.section-label,.panel-kicker,.eyebrow,.unit,.cross-section-details dt,
.field-reading-grid span,.field-reading-grid small,.field-context-panel dt,
.water-context dt,.wave-context dt,.baseline-readings dt,.baseline-active dt,
.baseline-readings small,.twin-info-list dt,.twin-comparison-stats dt,
.twin-series-summary span{color:#53657b}
.nav{color:#53657b}
.unit em,.mobile-summary-grid small,.piv-roi-table-wrap td small,
.roi-state,.transform-state,.tenant-site-scope-head span,
.tenant-site-scope-foot,.cross-section-task small{color:#58697d}
.range-btn{color:#52647a}
.status-pill,.online{color:#146b49}
.field-live-meta .muted{color:#53697e}
.history-date-range-caption{color:#52677b}
.field-map-head>span{color:#d7e7f4}
.nav-system-child{color:#53657b!important}
.cross-section-view-switch button,.device-kind-tabs button,.field-view-switch button,
.field-segmented button,.field-density-label,.field-preview-controls,
.field-overlay-controls label,.twin-layer-tools summary::after{color:#52647a}
.cross-section-3d-empty{color:#4e6479}
.cesium-overlay .eyebrow,.twin-map-overlay .eyebrow,
.cesium-overlay .panel-kicker,.twin-map-overlay .panel-kicker{color:#c5dbed}

.section-label,.panel-kicker,.eyebrow,.brand small,.sidebar-foot,
.unit,.muted,.field-legend,.cesium-note,.lspiv-hud,.lspiv-corner,
.lspiv-legend,.field-live-panel .lspiv-legend,th,
.cross-section-task small,.cross-section-task-progress,.task-status,
.manual-credential span,.cross-section-3d-hint,.wave-tooltip,.wave-state,
.baseline-gates span,.wechat-site-options small,.history-rows small,
.source-tag+small,.floating-evidence-pane tbody td::before,
.twin-timeline-meta{font-size:12px}
.sidebar-foot small{font-size:12px}
.cross-section-note,.field-context-panel p,.water-context p,.wave-context p,
.twin-note,.baseline-active p{font-size:12px}
.section-label,.panel-kicker,.eyebrow,th{letter-spacing:.04em}
th{color:#53657b}

.cesium-overlay,.calibration-formula,.cross-section-note,
.field-context-panel p,.water-formula,.water-context p,
.wave-context p,.baseline-status,.baseline-workspace .page-actions .baseline-status,
.twin-series-status,.twin-warning,.twin-map-overlay,.twin-note{border-left:0}
/* These are data legend strokes, expressed as fills rather than card borders. */
.cross-section-bed{height:3px;border-top:0;background:#2363eb}
.cross-section-surface{height:3px;border-top:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='3'%3E%3Cpath d='M0 1.5H26' stroke='%2319a38d' stroke-width='3' stroke-dasharray='6 4'/%3E%3C/svg%3E") no-repeat}

.cross-section-map-tools{background:#fff;color:#263e55;box-shadow:0 4px 14px rgba(0,0,0,.16)}
.cross-section-map-tools span,
.cross-section-map-tools .cross-section-draw-exaggeration{color:#4e6276;font-size:12px;line-height:1.55}
.cross-section-map-tools strong,.cross-section-map-tools button,
.cross-section-layer-tools,.cross-section-layer-tools strong,
.cross-section-layer-tools select,.cross-section-layer-tools span,
.cross-section-cesium-caption,.cross-section-soundg-summary,
.cross-section-soundg-summary span{font-size:12px;line-height:1.5}
.cross-section-map-tools button{min-height:32px}
.cross-section-map-tools button:disabled{color:#607286}
.cross-section-layer-tools span{color:#b7d4e7}
.cross-section-layer-tools .cross-section-elevation-status{color:#8ff0bc}
.cross-section-layer-tools{box-shadow:0 4px 14px rgba(0,0,0,.3)}
.cross-section-layer-tools select{min-height:32px}
.cross-section-cesium-caption{max-width:calc(100% - 24px);white-space:normal}
.cross-section-transect-manager{width:100%;border-top-color:#d3dee8;font-size:12px}
.cross-section-transect-manager label{color:#354d63}
.cross-section-transect-manager input{height:34px;background:#fff;border-color:#acbece;color:#263e55;font-size:12px}
.cross-section-transect-manager input::placeholder{color:#5c7083;opacity:1}
.cross-section-transect-actions button,.cross-section-transect-row button{min-height:32px;background:#f4f8fc;border-color:#bbcbd9;color:#245b91;font-size:12px}
.cross-section-map-tools .cross-section-transect-row span{color:#263e55;font-size:12px}
.cross-section-transect-row{border-bottom-color:#dce5ed}
.cross-section-transect-row small{color:#52677b;font-size:12px;white-space:normal;line-height:1.5}
.cross-section-transect-row button:last-child{color:#a12b25}
.cross-section-map-tools :is(button,input):focus-visible,
.cross-section-layer-tools :is(button,input,select):focus-visible{outline:2px solid #2363eb;outline-offset:2px}
@media(max-width:680px){
  .cross-section-layer-tools{width:calc((100% - 24px)/2)}
  .cross-section-map-tools{width:calc((100% - 24px)/2);max-width:none;top:8px;bottom:42px;align-content:flex-start}
  .cross-section-transect-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cross-section-map-tools .cross-section-transect-row span{grid-column:1/-1;white-space:normal;overflow-wrap:anywhere}
  .cross-section-transect-actions{flex-wrap:wrap}
}
