/* Color roles: white is the field, ink is information, oxide is the signal,
   and blue identifies observation, measurement, and active controls. */
:root{--system-blue:#24465C;--editorial-blue:var(--system-blue)}

/* The identity and occasional anomaly use oxide. */
.brand span,.hero h1 .shift,.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--oxide)}
.specimen-loading{color:var(--oxide)}
.hero-image.is-anomalous img{box-shadow:-9px 22px 0 var(--oxide)}
.closing a span{color:var(--oxide)}

/* Information stays ink; blue is reserved for the instrument around it. */
.kicker,.section-index,.specimen-index,.record-key,
.identity-symbols,.product-data>div>p:first-of-type,
.interior .record h2,.interior .facts dt,.purchase-record .structure,
.breadcrumbs,.element-jumps,.presence-label,
.presence-definitions dt,.archive-facts dt{color:var(--ink)}
.hero-symbols{color:var(--ink);background:var(--paper);border-top-color:var(--ink)}
.hero-symbols>span{border-right-color:color-mix(in srgb,var(--ink) 35%,transparent)}
.site-header,.interior .page-opening,.interior .record,.interior .facts,
.material-group>h2,.related,.guide-row,.glossary-entry{border-color:var(--ink)}
.interior .page-opening .page-intro,.page-opening .page-intro{border-left-color:var(--ink)}
.interior .facts dt,.interior .facts dd{border-bottom-color:color-mix(in srgb,var(--ink) 30%,transparent)}
.product-stage figure,.product-stage figcaption,.materials-copy{border-color:var(--ink)}
.product-stage figcaption,.product-card figcaption{color:var(--ink)}
.presence-label{border-color:var(--ink)}
.product-card figure{border-color:color-mix(in srgb,var(--ink) 35%,transparent)}

/* Finder: a white work surface with blue inputs and an oxide result marker. */
.finder,.interior .finder,body:not(.interior) .finder{background:var(--paper);color:var(--ink)}
.finder .kicker,.finder>.section-index,.finder-heading>p:last-child,
body:not(.interior) .finder>.section-index,
body:not(.interior) .finder .kicker,
body:not(.interior) .finder-heading>p:last-child{color:var(--ink)}
.finder-heading,body:not(.interior) .finder-heading{border-top-color:var(--ink)}
.finder legend,body:not(.interior) .finder legend{border-bottom-color:color-mix(in srgb,var(--ink) 40%,transparent);color:var(--ink)}
.finder legend span,body:not(.interior) .finder legend span{color:var(--system-blue)}
.finder .option-grid label span,body:not(.interior) .finder .option-grid label span{background:var(--paper);border-color:color-mix(in srgb,var(--ink) 50%,transparent);color:var(--ink)}
.finder .option-grid label b,body:not(.interior) .finder .option-grid label b{color:var(--ink)}
.finder .option-grid input:checked+span,
body:not(.interior) .finder .option-grid input:checked+span{background:var(--system-blue);border-color:var(--system-blue);color:var(--paper);box-shadow:inset 0 -4px 0 var(--system-blue)}
.finder .option-grid input:checked+span b,
body:not(.interior) .finder .option-grid input:checked+span b{color:var(--paper)}
.finder .option-grid input:focus-visible+span,
body:not(.interior) .finder .option-grid input:focus-visible+span{outline-color:var(--system-blue)}
.finder .avoidance label,body:not(.interior) .finder .avoidance label{color:var(--ink)}
.finder .avoidance select,body:not(.interior) .finder .avoidance select{background:var(--paper);border-color:var(--system-blue);color:var(--ink)}
.finder .result{background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-top:4px solid var(--oxide)}
.finder .alternative{border-top-color:color-mix(in srgb,var(--ink) 35%,transparent)}

/* Observation and selected fields are blue, including their technical labels. */
.material-controls{border-top-color:var(--system-blue)}
.material-filter-label,.material-code,.select-note,.material-membership,
.specification-grid dt,.presence-definition dd a,.campaign-presence,.campaign-diagram-note{color:var(--system-blue)}
.material-filters button[aria-pressed="true"],
.material-composition-buttons button[aria-pressed="true"]{background:var(--system-blue);border-color:var(--system-blue);color:var(--paper)}
.material-composition-buttons button:hover,.material-composition-buttons button:focus-visible{border-color:var(--system-blue)}
.material-entry[aria-pressed="true"]{background:color-mix(in srgb,var(--system-blue) 12%,var(--paper));box-shadow:inset 5px 0 0 var(--system-blue)}
.material-entry[aria-pressed="true"] .select-note{color:var(--system-blue)}
.throw-scale i{background:var(--system-blue)}
.finder select:focus-visible,.material-controls input:focus-visible,
.material-composition select:focus-visible{outline:2px solid var(--system-blue);outline-offset:2px}

/* Composition index: the specimen number signals identity; symbols read as analysis. */
.compositions .product-card .product-data .number{color:var(--oxide)}
.compositions .product-card .product-data .symbols,
.compositions .product-card .product-data .identity-symbols{color:var(--system-blue)}
