/* Photographic row inspection and a compact, illustrative vision-language flow. */
#row-survey-layer { position:absolute; z-index:2; inset:0; pointer-events:none; }
.row-survey-overlay { --survey-ink:#e6ebe9; --survey-muted:#b7c5be; --survey-line:#42564e; --survey-accent:#9fc7ed; --survey-sage:#b4d2b4; position:absolute; inset:0; color:var(--survey-ink); font:400 13px/1.4 var(--f-body,sans-serif); pointer-events:none; font-variant-numeric:tabular-nums; }
.row-survey-overlay *, .row-survey-overlay *::before, .row-survey-overlay *::after { box-sizing:border-box; }
.row-survey-overlay [hidden] { display:none !important; }
.row-survey-overlay ::selection { color:#0d1214; background:#b4d2b4; }
.survey-area { position:absolute; left:47%; right:5%; top:var(--survey-top); height:var(--survey-height); }
.survey-note { margin:0; color:#b0c0b7; font-size:11px; line-height:1.35; }
.row-survey-overlay button { pointer-events:auto; min-height:44px; min-width:44px; border:0; border-radius:0; margin:0; font:500 13px/1.2 var(--f-body,sans-serif); cursor:pointer; touch-action:manipulation; }
.row-survey-overlay button:focus-visible { position:relative; outline:2px solid #a9d0f3; outline-offset:3px; z-index:4; }
.row-survey-overlay button:disabled { color:#90a299; cursor:default; }
.survey-scan { top:114px; height:auto; left:auto; }
.survey-scan-pair { display:flex; gap:24px; padding:11px 14px; background:rgba(13,18,20,.94); border-top:1px solid var(--survey-line); }
.survey-scan-side { display:flex; align-items:center; gap:8px; }
.survey-scan-side strong { font-weight:500; font-size:13px; }
.survey-scan-mark { width:7px; height:7px; background:var(--survey-accent); }
.survey-scan-side + .survey-scan-side .survey-scan-mark { background:var(--survey-sage); }
.survey-scan .survey-note { margin-top:7px; text-align:right; }

/* The image is the main artifact; the controls retain an instrument-like frame. */
.survey-map { display:flex; flex-direction:column; gap:7px; }
.survey-map-header { display:flex; justify-content:space-between; gap:12px; align-items:center; flex:0 0 46px; }
.survey-position-group { display:flex; flex-direction:column; gap:2px; }
.survey-position { margin:0; font:500 28px/1 var(--f-cond,sans-serif); letter-spacing:-.01em; white-space:nowrap; }
.survey-position-detail { font-size:10px; color:var(--survey-muted); }
.survey-side-picker { display:flex; background:#15201f; border:1px solid #53645e; }
.survey-side-button { padding:0 18px; color:#bccbc4; background:transparent; }
.survey-side-button[aria-pressed='true'] { color:#0d1814; background:#bfd2bf; }
.survey-side-button:hover:not([aria-pressed='true']) { background:#2b3f35; color:#fff; }
.survey-crop-window { position:relative; flex:1 1 auto; min-height:115px; overflow:hidden; background:#213a2d; border:1px solid #556f60; }
.survey-crop-photo { position:absolute; inset:0 auto 0 0; display:block; width:145%; height:100%; max-width:none; object-fit:cover; will-change:transform; }
.survey-crop-window[data-image-state='unavailable']::after { content:'Crop image unavailable'; position:absolute; top:40%; left:12px; padding:6px; color:#e6ebe9; background:#192820; }
.survey-view-label,.survey-panorama-mark { position:absolute; top:10px; padding:4px 7px; color:#eef4ed; background:rgba(13,24,17,.9); font-size:10px; line-height:1.2; }
.survey-view-label { left:10px; }
.survey-panorama-mark { right:10px; font-size:9px; letter-spacing:.05em; }
.survey-view-caption { position:absolute; inset:auto 0 0; display:flex; flex-direction:column; gap:3px; padding:11px 13px 10px; background:rgba(13,24,17,.94); }
.survey-view-caption strong { font:500 22px/1.1 var(--f-cond,sans-serif); }
.survey-view-caption span { color:#c0d1c3; font-size:11px; line-height:1.25; }
.survey-inspection-region { position:absolute; top:37%; width:13%; min-width:42px; height:28%; border:1px solid #e3efbf; border-radius:2px; }
.survey-inspection-region::before,.survey-inspection-region::after { content:''; position:absolute; background:#e3efbf; }
.survey-inspection-region::before { width:6px; height:1px; top:50%; left:-4px; }
.survey-inspection-region::after { width:1px; height:6px; left:50%; top:-4px; }
.survey-inspection-label { position:absolute; top:-18px; left:-1px; padding:2px 4px; background:#18291d; color:#e4efce; font-size:9px; line-height:1.15; white-space:nowrap; }
.survey-inspection-sweep { position:absolute; left:0; right:0; height:1px; background:#d1e5f5; }
.survey-paired-summary { display:grid; grid-template-columns:1fr 1fr; flex:0 0 40px; border-bottom:1px solid #35493e; }
.survey-paired-side { display:flex; align-items:center; gap:8px; padding:0 10px; min-width:0; color:#afc1b4; }
.survey-paired-side + .survey-paired-side { border-left:1px solid #35493e; }
.survey-paired-side > div { min-width:0; display:flex; gap:3px 9px; align-items:baseline; flex-wrap:wrap; }
.survey-paired-side strong { font-size:11px; font-weight:500; color:#dce8dd; white-space:nowrap; }
.survey-paired-detail { font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.survey-paired-mark { width:5px; height:5px; flex:0 0 5px; background:#728f7c; }
.survey-paired-summary[data-selected='left'] [data-side='left'] .survey-paired-mark,.survey-paired-summary[data-selected='right'] [data-side='right'] .survey-paired-mark { background:var(--survey-accent); }
.survey-row-trace { position:relative; display:grid; grid-template-columns:repeat(6,minmax(44px,1fr)); flex:0 0 52px; margin-left:15px; }
.survey-row-trace::before,.survey-row-trace::after { content:''; position:absolute; left:8.333%; right:8.333%; height:1px; background:#486b54; }
.survey-row-trace::before { top:10px; }
.survey-row-trace::after { bottom:9px; }
.survey-trace-label { position:absolute; left:-12px; font-size:9px; color:#bdd0c1; }
.survey-trace-label-left { top:4px; }.survey-trace-label-right { bottom:3px; }
.survey-station { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:space-between; gap:2px; padding:5px 0 4px; background:transparent; color:#aabdb0; }
.survey-station::before { content:''; position:absolute; inset:0 calc(50% - 17px); z-index:-1; background:transparent; border:1px solid transparent; }
.survey-station-dot { position:relative; width:10px; height:10px; border-radius:50%; border:1px solid #789680; background:#102019; }
.survey-station-number { padding:0 4px; font-size:10px; line-height:1.15; font-variant-numeric:tabular-nums; }
.survey-station[aria-pressed='true']::before { background:#23352e; border-color:#496354; }
.survey-station[aria-pressed='true'] .survey-station-dot { border-color:#c8dfbf; background:#668869; }
.row-survey-overlay[data-side='left'] .survey-station[aria-pressed='true'] .survey-station-dot-left,.row-survey-overlay[data-side='right'] .survey-station[aria-pressed='true'] .survey-station-dot-right { background:var(--survey-accent); border-color:var(--survey-accent); }
.survey-station[aria-pressed='true'] { color:#edf5f0; }
.survey-station:hover .survey-station-dot { border-color:#e3eee8; }
.survey-browse-controls { display:flex; align-items:center; justify-content:space-between; gap:10px; flex:0 0 44px; }
.survey-browse-button { padding:0 16px; border:1px solid #536e5f !important; color:#e4eee7; background:#1d3026; }
.survey-browse-button:not(:disabled):hover { background:#3c5644; color:#fff; }
.survey-browse-button:disabled { border-color:#34483b !important; background:#121e18; }
.survey-browse-hint { color:#c5d1c8; font-size:11px; }
.survey-map > .survey-note { flex:0 0 auto; }

/* One authored motion sequence: paired evidence travels into the local model,
   then becomes a position-linked note. Motion is driven by the parent clock. */
.survey-analysis { display:flex; flex-direction:column; gap:8px; }
.survey-panel-heading { display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex:0 0 30px; }
.survey-panel-heading h3 { font:500 27px/1.1 var(--f-cond,sans-serif); margin:0; }
.survey-process-state { font-size:10px; color:#c3d5c5; text-align:right; }
.survey-input-pair { display:grid; grid-template-columns:1fr 1fr; gap:8px; flex:1 1 auto; min-height:122px; }
.survey-input-view { position:relative; overflow:hidden; border:1px solid #597363; background:#213a2d; }
.survey-input-photo { display:block; position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; }
.survey-input-view[data-side='left'] .survey-input-photo { object-position:27% center; }
.survey-input-view[data-side='right'] .survey-input-photo { object-position:73% center; }
.survey-input-label { position:absolute; z-index:1; inset:0 0 auto; display:flex; gap:8px; justify-content:space-between; padding:7px 9px; background:rgba(13,24,17,.88); }
.survey-input-label strong { font-weight:500; font-size:12px; }
.survey-input-label span { font-size:9px; color:#cbdbcf; }
.agrobot-experience .survey-evidence-layer { position:absolute; width:100%; height:100%; inset:0; }
.survey-evidence-fruit { fill:none; stroke:#e3eeb9; stroke-width:1.5; vector-effect:non-scaling-stroke; }
.survey-evidence-leaf { fill:none; stroke:#c2e6c6; stroke-width:1; stroke-dasharray:4 3; vector-effect:non-scaling-stroke; }
.survey-evidence-scan { stroke:#d2e7f7; stroke-width:1; vector-effect:non-scaling-stroke; }
.survey-evidence-legend { position:absolute; inset:auto 0 0; display:flex; gap:12px; padding:5px 9px; background:rgba(13,24,17,.88); }
.survey-evidence-legend span { display:flex; align-items:center; gap:5px; font-size:9px; color:#e0eac9; }
.survey-evidence-legend span::before { content:''; width:6px; height:6px; border:1px solid #e3eeb9; }
.survey-evidence-legend span + span { color:#c2e6c6; }
.survey-evidence-legend span + span::before { border-color:#c2e6c6; }
.survey-processing { position:relative; flex:0 0 96px; margin-top:-8px; }
.agrobot-experience .survey-processing-lines { position:absolute; inset:0; width:100%; height:100%; }
.survey-data-track { fill:none; stroke:#526f60; stroke-width:1.2; vector-effect:non-scaling-stroke; }
.survey-data-pulse { fill:#bcd8ef; }
.survey-jetson-chip { position:absolute; left:50%; top:30px; transform:translateX(-50%); width:154px; height:46px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; background:#253b30; border:1px solid #9bb69b; }
.survey-jetson-chip strong { font:500 20px/1 var(--f-cond,sans-serif); color:#e6edda; }
.survey-jetson-chip > span:not(.survey-chip-pins) { color:#c8d8c7; font-size:10px; }
.survey-chip-pins { position:absolute; top:8px; height:27px; width:6px; border-top:1px solid #8da491; border-bottom:1px solid #8da491; opacity:var(--chip-signal,1); }
.survey-chip-pins::before { content:''; position:absolute; top:12px; left:0; width:6px; height:1px; background:#8da491; }
.survey-chip-pins-left { left:-7px; }.survey-chip-pins-right { right:-7px; }
.survey-process-context { position:absolute; top:45px; color:#afc5b8; font-size:10px; }
.survey-process-context-left { left:6%; }.survey-process-context-right { right:6%; }
.survey-generated-note { padding:12px 16px 10px; background:#192a22; border-top:1px solid #8aab8c; flex:0 0 127px; }
.survey-generated-note-header { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
.survey-note-anchor { color:#dfe9d7; font:500 18px/1 var(--f-cond,sans-serif); }
.survey-note-state { font-size:10px; color:#b2c9b8; }
.survey-generated-line { margin:0 0 3px; font-size:12px; line-height:1.35; color:#dce5db; }
.survey-generated-line:last-of-type { color:#b6cdb9; }
.survey-model-stages { display:flex; gap:14px; margin-top:9px; }
.survey-model-stages span { display:flex; align-items:center; gap:5px; color:#a8bdb0; font-size:9px; }
.survey-model-stages span::before { content:''; width:12px; height:2px; background:#577060; }
.survey-model-stages span[data-active='true']::before { background:#b4d2b4; }
.survey-announcement { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media (max-width:1000px) and (min-width:741px) {
  .survey-area { left:46%; right:4%; }
  .survey-scan { left:auto; }
  .survey-panel-heading h3 { font-size:24px; }
  .survey-process-state { max-width:14ch; }
  .survey-process-context-left { left:0; }.survey-process-context-right { right:0; }
  .survey-paired-side { padding:0 5px; gap:5px; }
  .survey-paired-detail { max-width:17ch; }
}
@media (max-width:740px) {
  .survey-area { left:20px; right:20px; }
  .survey-scan { top:340px; height:auto; }
  .survey-scan-pair { gap:15px; justify-content:space-between; padding:10px 11px; }
  .survey-scan-side { gap:6px; }.survey-scan-side strong { font-size:12px; }
  .survey-scan .survey-note { text-align:left; }
  .survey-note { font-size:9px; line-height:1.3; }
  .survey-map { gap:5px; }.survey-map-header { flex-basis:44px; }
  .survey-position { font-size:25px; }.survey-position-detail { font-size:9px; }
  .survey-side-button { padding:0 13px; font-size:12px; }
  .survey-crop-window { min-height:115px; }
  .survey-view-label,.survey-panorama-mark { top:6px; font-size:8px; padding:3px 5px; }
  .survey-view-label { left:6px; }.survey-panorama-mark { right:6px; }
  .survey-view-caption { padding:6px 9px; gap:2px; }.survey-view-caption strong { font-size:19px; }
  .survey-view-caption span { font-size:10px; line-height:1.2; }
  .survey-inspection-label { font-size:8px; top:-15px; }
  .survey-paired-summary { flex-basis:34px; }.survey-paired-side { padding:0 5px; gap:5px; }
  .survey-paired-side > div { gap:1px; flex-direction:column; }
  .survey-paired-side strong { font-size:9px; }.survey-paired-detail { font-size:9px; max-width:22ch; }
  .survey-row-trace { flex-basis:46px; }.survey-row-trace::before { top:9px; }.survey-row-trace::after { bottom:8px; }
  .survey-station { padding:4px 0 3px; }.survey-station-dot { width:9px; height:9px; }.survey-station-number { font-size:9px; }
  .survey-trace-label-left { top:3px; }.survey-trace-label-right { bottom:2px; }
  .survey-browse-button { padding:0 13px; font-size:12px; }.survey-browse-hint { font-size:10px; }
  .survey-analysis { top:380px; height:min(var(--survey-height),328px); gap:5px; }
  .survey-panel-heading { flex-basis:27px; gap:6px; }.survey-panel-heading h3 { font-size:24px; }
  .survey-process-state { font-size:9px; max-width:14ch; line-height:1.2; }
  .survey-input-pair { min-height:83px; gap:6px; }
  .survey-input-label { padding:5px 6px; gap:3px; }.survey-input-label strong { font-size:10px; }
  .survey-input-label span { font-size:8px; }.survey-evidence-legend { padding:3px 6px; gap:9px; }.survey-evidence-legend span { font-size:8px; }
  .survey-processing { flex-basis:73px; margin-top:-6px; }
  .survey-jetson-chip { top:23px; width:124px; height:38px; gap:2px; }.survey-jetson-chip strong { font-size:18px; }.survey-jetson-chip > span:not(.survey-chip-pins) { font-size:9px; }
  .survey-chip-pins { top:6px; height:23px; }.survey-chip-pins::before { top:10px; }
  .survey-process-context { top:39px; font-size:8px; }.survey-process-context-left { left:0; }.survey-process-context-right { right:0; }
  .survey-generated-note { padding:9px 11px 8px; flex-basis:109px; }
  .survey-generated-note-header { margin-bottom:6px; }.survey-note-anchor { font-size:17px; }.survey-note-state { font-size:9px; }
  .survey-generated-line { font-size:11px; margin-bottom:2px; line-height:1.3; }
  .survey-model-stages { margin-top:7px; gap:13px; }.survey-model-stages span { font-size:8px; }
}
@media (max-width:740px) and (max-height:740px) {
  .survey-area:not(.survey-scan) { top:315px; height:calc(100% - 443px); min-height:272px; }
  .survey-map { gap:3px; }.survey-crop-window { min-height:90px; }
  .survey-view-caption span { display:none; }.survey-paired-summary { flex-basis:28px; }
  .survey-paired-detail { font-size:8px; }.survey-row-trace { flex-basis:44px; }
  .survey-panel-heading h3 { font-size:21px; }.survey-process-state { font-size:8px; }
  .survey-input-pair { min-height:67px; }.survey-processing { flex-basis:62px; }
  .survey-jetson-chip { top:18px; height:35px; }.survey-process-context { top:30px; }
  .survey-generated-note { padding:7px 9px; flex-basis:93px; }.survey-generated-line { font-size:10px; }.survey-model-stages { margin-top:5px; }
}
@media (max-width:360px) {
  .survey-area { left:15px; right:15px; }.survey-position { font-size:23px; }
  .survey-side-button { padding:0 11px; }.survey-panel-heading h3 { font-size:22px; }
  .survey-input-label span { display:none; }.survey-process-context { font-size:7px; }
  .survey-paired-detail { max-width:19ch; }.survey-browse-hint { font-size:9px; }
}
@media (prefers-reduced-motion:reduce) { .survey-crop-photo { will-change:auto; } }
