{
  "compare": {
    "title": "Compare selected satellites",
    "range_blue": "Blue",
    "range_green": "Green",
    "range_red": "Red",
    "range_nir": "Near-infrared",
    "range_swir1": "Short-wave IR 1",
    "range_swir2": "Short-wave IR 2",
    "stage_1": "1. Possibility space",
    "stage_2": "2. Factor analysis",
    "stage_3": "3. Shared overlap",
    "stage_4": "4. Read at target",
    "reason_no_band_id": "no band record id",
    "reason_no_row": "no tile_band_ci row for band {band}",
    "reason_not_processed": "{satellite} is not processed over this area",
    "reason_shared": "band id {band} is shared with {satellites}",
    "chart_aria": "{range}, {count} selected satellite curves",
    "chart_axis": "Share of sunlight reflected",
    "chart_marker_low": "marker low",
    "chart_marker_high": "marker high",
    "width_prepared": "width: prepared example",
    "width_prepared_reason": "width: prepared example, {reason}",
    "width_live": "width: band {band}",
    "width_live_pooled": "width: band {band}, one record shared by {satellites}",
    "stage1_copy": "A deliberately broad physical possibility space. This width is not a vendor claim and not a measured uncertainty bound.",
    "stage2_all_live": "Each width is the recorded tile_band_ci width of that satellite's own band over this area, not a validated bound. Satellites of one family share one record, because it is kept per band, not per satellite. Curve centres remain a prepared example.",
    "stage2_some_live": "Widths marked LIVE are the recorded tile_band_ci width of that satellite's own band over this area, not a validated bound. The others are prepared examples: no record can be attributed to their own band here. Curve centres remain a prepared example.",
    "stage2_prepared": "Prepared example centres and widths. No tile_band_ci record can be attributed to these satellites' own bands over this area.",
    "stage3_single": "One selected source has no cross-source overlap to calculate.",
    "stage3_empty": "These selected satellites have no shared stated interval. RefCal carries the empty overlap as the answer.",
    "stage3_shared": "Violet is the range supported by every selected satellite. Individual curves remain visible and are never ranked.",
    "stage4_copy": "Marker readings are prepared examples. The target verdict is a separate result and is not inferred from any one number.",
    "stages_aria": "Comparison stage",
    "ranges_aria": "Wavelength range",
    "readings_title": "Per-marker readings",
    "reading_marker": "{range} marker",
    "reading_range": "{lo} to {hi}",
    "reading_ci": "prepared example CI",
    "verdict_label": "Target verdict",
    "verdict_title": "Verdict is not available yet",
    "verdict_note": "Marker readings are inputs. No stage-4 number is presented as the verdict.",
    "area_fallback": "Selected area",
    "width_record_label": "{satellite} width",
    "width_record_live": "tile_band_ci, band {band}, {rows} tile-band rows across {tiles} tiles.",
    "width_record_live_pooled": "tile_band_ci, band {band}, {rows} tile-band rows across {tiles} tiles; one record shared by {satellites}.",
    "width_record_prepared": "Prepared example width: {reason}.",
    "width_record_no_record": "no attributable record",
    "evidence_eyebrow": "Evidence behind the narrowing",
    "evidence_title": "{range}: apparatus and full evidence record",
    "evidence_lead": "Prepared evidence record behind the site findings. Any live width record is labelled separately inside it. Evidence is provenance, not a control.",
    "footer_area": "Area",
    "footer_range": "Range",
    "footer_sources": "Sources",
    "footer_width_source": "Width source",
    "footer_width_partial": "{path}, where attributable",
    "footer_prepared": "prepared example",
    "why_eyebrow": "Why the curves narrowed",
    "why_title": "What the reference-site evidence says",
    "why_lead_all_live": "Prepared site findings. Every satellite width is live from tile_band_ci; curve centres remain illustrative.",
    "why_lead_some_live": "Prepared site findings. {live} of {total} satellite widths are live from tile_band_ci; curve centres remain illustrative.",
    "why_lead_prepared": "Prepared site findings. No tile_band_ci width can be attributed to these satellites here.",
    "factors_title": "Factors in this comparison",
    "factor_haze": "Haze and water vapour",
    "factor_haze_body": "Uses each sensor's own response over many known sites.",
    "factor_sun": "Sun geometry",
    "factor_sun_body": "Accounts for lighting, atmospheric path and their interaction.",
    "factor_drift": "Sensor drift",
    "factor_drift_body": "Tracks each wavelength against repeated reference measurements.",
    "footer_selected_sources": "Selected sources",
    "footer_status": "Status",
    "status_all_live": "live widths; prepared centres",
    "status_some_live": "some live widths; prepared centres",
    "why_level2": "Open the apparatus and full evidence record",
    "empty_pending": "Choose an area and let the satellite availability check finish. Compare will draw the satellites available there.",
    "empty_none": "No selected satellite carries a target range that can be compared. Change the target or source selection.",
    "change_button": "Change area, target or sources",
    "state_empty": "EMPTY OVERLAP",
    "state_disagreement": "DISAGREEMENT REMAINS",
    "lead": "{area}. One curve per selected satellite, on one shared reflectance axis. The target limits the wavelength ranges shown; no satellite is ranked.",
    "selection_one": "satellite selected",
    "selection_many": "satellites selected",
    "why_button": "Why it narrowed",
    "empty_limit": "No common value is invented. Empty overlap is a valid result."
  },
  "compare_chain": {
    "eyebrow": "Prepared chain example",
    "lead": "Before, correction, after, and how sure are kept together. This example shows the correction stage, not a validated applied correction.",
    "before_label": "Before",
    "after_label": "After",
    "correction_label": "Correction",
    "sure_label": "How sure",
    "value": "{mean} +/-{sigma}",
    "value_reference": "{mean} +/-{sigma}, ground panel {reference}",
    "dials_title": "Two dials, not one",
    "dial_accuracy": "Is it centred right (accuracy)",
    "dial_precision": "How tight (precision)",
    "baotou_title": "Baotou target: identified cause",
    "baotou_before": "What the satellite recorded over the panel",
    "baotou_correction": "Account for the desert around the panel that the pixel also sees",
    "baotou_after": "The panel value with its surroundings removed",
    "baotou_sure": "Checked on places and dates not used to fit it",
    "baotou_note": "The cause is identified and explicitly modelled. The first validated correction, with its two dials, is the next roadmap item. Until then the correction stage is shown, not applied.",
    "baotou_dial_note": "Haze reading at Railroad Valley against the AERONET sun photometer, same overpass. Tight but slightly high: a value to note, not a failure. Reading the two dials separately stops one bad number hiding a good one. Product read-out COMING."
  },
  "compare_causes": {
    "status_identified": "identified",
    "status_narrowed": "narrowed down",
    "status_testing": "being tested",
    "status_notseparable": "not yet separable",
    "status_unknown": "status not recorded",
    "dt_site": "Site",
    "dt_test": "Test",
    "dt_ruled_out": "Ruled out",
    "dt_residuals": "Residuals",
    "dt_register": "Register",
    "residual_fallback": "recorded in the register entry",
    "btcn_link": "The patch of ground a pixel really sees",
    "btcn_title": "Baotou target: the pixel sees mostly desert around a small panel",
    "btcn_story": "The satellite measurement cannot be treated as a direct reading of the reference panel. A patch-size cause, not a sensor fault.",
    "btcn_test": "Footprint model of the pixel over the panel and its surroundings, checked against matchup residuals",
    "btcn_ruled_out": "Sensor fault, atmosphere as the main driver",
    "btcn_residual": "panel-vs-surroundings mix explains the offset within the stated uncertainty",
    "lcfr_link": "Sun and viewing angles",
    "lcfr_title": "La Crau: the difference changes with the orbit",
    "lcfr_story": "A fixed sensor offset has been ruled out for this site. The effect of sun and viewing angles remains under investigation.",
    "lcfr_test": "Detector-footprint discriminator across orbits with different viewing angles",
    "lcfr_ruled_out": "A fixed detector offset",
    "lcfr_residual": "residual varies with viewing angle across orbits, no fixed offset survives",
    "bscn_link": "The atmosphere",
    "bscn_title": "Baotou sand: an atmospheric explanation is the live question",
    "bscn_story": "The remaining difference does not show the orbit pattern seen at other sites, so the atmosphere is being tested as the cause. It is a question, not yet a correction.",
    "bscn_test": "Bias-origin discriminator: orbit pattern vs atmospheric loading",
    "bscn_ruled_out": "Nothing yet, viewing-angle pattern absent",
    "bscn_residual": "residual present, no orbit pattern, magnitude consistent with atmospheric loading",
    "rvus_link": "The sensor, or the angles",
    "rvus_title": "Railroad Valley: two satellites differ on matched ground",
    "rvus_story": "RefCal has preserved the evidence but has not yet separated sensor from viewing angle well enough to apply a correction. The values stay as recorded.",
    "rvus_test": "Exact-support comparison, Sentinel-2A aggregated to the Landsat 8 pixel, six bands",
    "rvus_ruled_out": "Reproducibility and the matching step itself",
    "rvus_residual": "bias 0.050 to 0.077 reflectance across six bands, RMSE close to bias"
  },
  "compare_apparatus": {
    "not_recorded": "not recorded",
    "total_sites": "reference sites",
    "total_matchups": "matched satellite passes",
    "total_site_days": "independent site-days",
    "record_delta": "max per-band delta {delta} reflectance",
    "title": "Six sites, two reference networks, one matchup rule",
    "rule_title": "The matchup rule",
    "rule_body": "A satellite pass counts only when a ground instrument read the same station at the same overpass, and the AERONET standard deviation is within 0.040. Four passes at Railroad Valley met it.",
    "lock_title": "Window-equivalence lock, tolerance 0.002",
    "lock_body": "A small chip window must produce the same surface reflectance as a wide reference window, or the comparison is not valid. The 20 km window is the production lock.",
    "aeronet_title": "AERONET ground-truth agreement",
    "provenance_title": "Provenance recorded in validation-summary.json",
    "record_heading": "What we have measured about RefCal",
    "record_body": "These are completed validation runs on real Sentinel-2 data. Each result is a number from an instrument, not a claim.",
    "record_rvus_note": "Five-window cloud sweep, 60 to 10 km. The 20 km window is the production lock.",
    "record_cabauw_note": "Only the 40 km window was measured at this vegetated site, and it converged within 0.002. The 20 km production lock was not independently measured at Cabauw."
  }
}
