/* Prospektor (/prospector) und Survey (/science/survey) — Kopfleiste, Listen und Meter aus mining.css; hier Empfänger, Spektrum, Karte.
   Die Science-Signalsuche hat ein eigenes Layout (science-signals.css). */
.pro-console { display: grid; gap: var(--space-md, 12px); }
.pro-msg { margin: 0; min-height: 1.2em; color: var(--accent-cyan, #22d3ee); font-size: 0.85rem; }
.pro-job-meter > span { background: var(--accent-cyan, #22d3ee); transition: width 0.45s linear; }

.pro-main { display: grid; gap: var(--space-md, 12px); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1100px) { .pro-main { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); align-items: start; } }

/* Empfänger */
.pro-receiver__body { display: grid; gap: 8px; }
.pro-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.pro-label { color: var(--text-muted, #8b93a1); font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; }
.pro-seg { display: inline-flex; flex-wrap: wrap; gap: 4px; margin-right: 10px; }
.pro-spectrum { width: 100%; height: 170px; display: block; background: rgba(0, 0, 0, 0.35); border-radius: 4px; cursor: crosshair; }
.pro-spectrum .grid { stroke: rgba(255, 255, 255, 0.08); stroke-width: 0.25; }
.pro-spectrum .tick { fill: rgba(255, 255, 255, 0.4); font-size: 2.6px; font-family: var(--font-mono, monospace); }
.pro-spectrum .lockline { stroke: rgba(250, 204, 21, 0.55); stroke-width: 0.25; stroke-dasharray: 1.5 1; }
.pro-spectrum .known { stroke: rgba(74, 222, 128, 0.45); stroke-width: 0.4; stroke-dasharray: 1 1; }
.pro-spectrum .fill { fill: rgba(34, 211, 238, 0.14); }
.pro-spectrum .trace { fill: none; stroke: var(--accent-cyan, #22d3ee); stroke-width: 0.35; vector-effect: non-scaling-stroke; }
.pro-spectrum .center { stroke: #ffb347; stroke-width: 0.5; }
.pro-waterfall { width: 100%; height: 90px; display: block; border-radius: 4px; image-rendering: pixelated; background: #05070c; }
.pro-freq { display: grid; grid-template-columns: minmax(0, 1fr) 7.5rem; gap: 8px; align-items: center; }
.pro-freq input[type="range"] { width: 100%; accent-color: #ffb347; }
.pro-freq output { font-family: var(--font-mono, monospace); font-variant-numeric: tabular-nums; text-align: right; color: #ffb347; }
.pro-fine button { min-width: 3rem; }
.pro-lockrow { justify-content: space-between; }
.pro-under { color: var(--text-muted, #8b93a1); font-size: 0.85rem; }
.pro-under[data-on="1"] { color: var(--accent-yellow, #facc15); font-weight: 600; }

/* Signale */
.pro-map { width: 100%; max-width: 320px; aspect-ratio: 1; display: block; margin: 0 auto 10px; border-radius: 6px; }
.pro-map .bg { fill: rgba(0, 0, 0, 0.35); }
.pro-map .scale { stroke: rgba(255, 255, 255, 0.5); stroke-width: 1; }
.pro-map .label { fill: rgba(255, 255, 255, 0.6); font-size: 7px; font-family: var(--font-mono, monospace); }
.pro-map .cone { fill: rgba(250, 204, 21, 0.10); }
.pro-map .ray { stroke: rgba(250, 204, 21, 0.75); stroke-width: 0.8; }
.pro-map .origin { fill: var(--accent-yellow, #facc15); }
.pro-map .unc { fill: rgba(34, 211, 238, 0.10); stroke: var(--accent-cyan, #22d3ee); stroke-width: 0.8; stroke-dasharray: 3 2; }
.pro-map .field { fill: rgba(74, 222, 128, 0.12); stroke: var(--accent-green, #4ade80); stroke-width: 0.8; }
.pro-map .est { fill: var(--accent-cyan, #22d3ee); }
.pro-map .ship { fill: #ffb347; }
.pro-signals .mining-list { max-height: 24rem; overflow-y: auto; }
.pro-signal { cursor: pointer; border: 1px solid transparent; }
.pro-signal--sel { border-color: rgba(34, 211, 238, 0.45); }
.pro-signal__head { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.pro-pill { font-size: 0.68rem; padding: 1px 7px; border-radius: 999px; border: 1px solid currentColor; }
.pro-pill--detected { color: var(--accent-yellow, #facc15); }
.pro-pill--located { color: var(--accent-cyan, #22d3ee); }
.pro-pill--surveyed { color: var(--accent-green, #4ade80); }
.pro-actions { display: flex; flex-direction: column; gap: 4px; }
@media (max-width: 600px) { .pro-actions { flex-direction: row; flex-wrap: wrap; } .pro-signal { flex-wrap: wrap; } }

/* Brocken */
.pro-rocks .sos-panel__header { gap: 10px; flex-wrap: wrap; }
.pro-rocks .mining-list { max-height: 26rem; overflow-y: auto; padding-right: 4px; }
.pro-pill--cat { color: var(--text-secondary, #cfd6e4); }
.pro-pill--guarded { color: var(--accent-red, #f87171); }
.pro-spectrum .hint { fill: rgba(255, 210, 122, 0.12); stroke: rgba(255, 210, 122, 0.5); stroke-width: 0.2; }
.pro-probe__body { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.pro-probe__body .mining-hint { flex-basis: 100%; margin: 0; }
