/* FIELD's shared visual language. Page styles own layout; this file owns theme. */
:root {
  color-scheme: dark;
  --bg: #080a09; --paper: #080a09; --panel: #0d100e; --surface: #101511;
  --ink: #edf1eb; --white: #edf1eb; --bright: #edf1eb;
  --muted: #a0aaa3; --line: #303832; --light: #18201a;
  --accent: #c3dec0; --green: #c3dec0; --gold: #d6b879;
  --orange: #d6b879; --blue: #a2c3dc; --purple: #c0afdb;
  --header-height:64px;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-display: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
body {background:var(--bg);color:var(--ink);font-family:var(--font-display);font-size:14px;line-height:1.6}
h1,h2,h3,.object-title,.inspector h2 {font-family:var(--font-display);font-weight:450;letter-spacing:-.035em;color:var(--bright)}
h1 {line-height:1.08} h2 {line-height:1.2}
a {color:inherit} a:hover {color:var(--bright)}
p,small {overflow-wrap:anywhere}
button,input,select,textarea {font-family:var(--font-display);color:var(--ink);background:var(--surface);border-color:var(--line);border-radius:0}
button:hover,.button:hover {background:var(--light);border-color:#7f9384}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {outline:2px solid var(--accent);outline-offset:4px}
::selection {background:var(--accent);color:var(--bg)}
.eyebrow,.overline {font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;color:var(--muted)}
body .field-header {height:var(--header-height);padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:var(--bg);position:relative;z-index:30;box-sizing:border-box}
body .field-brand {display:flex;align-items:center;gap:22px;font:700 22px/1 var(--font-mono);letter-spacing:3px;color:var(--bright);text-decoration:none;flex-shrink:0}
body .field-brand span {font:9px/1.7 var(--font-mono);letter-spacing:1.4px;color:var(--muted)}
body .field-nav {display:flex;align-items:center;gap:28px;overflow:visible;white-space:nowrap}
body .field-nav a {display:block;padding:10px 0;font:13px/1.5 var(--font-display);letter-spacing:0;text-transform:none;text-decoration:none;color:var(--muted);border-bottom:1px solid transparent}
body .field-nav a[aria-current=page] {color:var(--bright);border-bottom-color:var(--accent)}
body .field-nav a:hover {color:var(--bright)}
body .field-more {position:relative;color:var(--muted);font:18px/1.5 var(--font-display);letter-spacing:0;text-transform:none}
body .field-more summary {cursor:pointer;list-style:none;padding:8px;min-width:32px;text-align:center}
body .field-more summary::-webkit-details-marker {display:none}
body .field-more[open] summary {color:var(--bright)}
body .field-more>div {position:absolute;right:0;top:100%;min-width:150px;padding:8px 16px;background:var(--panel);border:1px solid var(--line);box-shadow:0 10px 30px #0008;z-index:50}
body .field-more>div a {padding:10px 0}
/* Source records, packets, evidence and export cards. */
[data-surface=record] .sidebar {min-height:calc(100vh - var(--header-height))}
.initial,.raw pre,.coverage,.commitment,.feature,.overlay-card {background:var(--panel)}
.initial,.commitment blockquote,.claim-link,.rail-object,.open-question p,.round .amount {font-family:var(--font-display)}
.initial {color:var(--bright);border:1px solid var(--line)}
.note,.inferred,.coverage details,.card-rule {border-color:var(--line)}
.pill {background:var(--light);color:var(--accent)}
.warning {background:#2b2417;color:var(--gold)}
.primary {background:var(--accent);color:var(--bg)}
.form-error {color:#f3aaa1}
.time-control form,dialog,details form {background:var(--panel);box-shadow:none;border:1px solid var(--line)}
dialog::backdrop {background:#000b}
[data-surface=card] {padding:0}
.card-toolbar,.card-caption {margin:24px auto;padding:0 24px}
.overlay-card {width:calc(100% - 48px);max-width:1200px;border-color:var(--line)}
.card-mast b {font:700 28px var(--font-mono);letter-spacing:4px}
.card-mast,.card-bottom,.footer,.tabs,.feature {border-color:var(--line)}
/* Charts use the same evidence colors as the constellation. */
[data-surface=charts] .panel {background:var(--panel)}
[data-surface=charts] .bar-track {background:var(--light)}
[data-surface=charts] .bar-fill {background:var(--accent)}
[data-surface=charts] .leader.active {background:var(--light)}
[data-surface=charts] .day i {background:#a1b9a3}
[data-surface=charts] #graph {background:var(--bg)}
[data-surface=charts] .node text {fill:var(--ink);stroke:var(--bg);font-family:var(--font-mono)}
[data-surface=charts] .node circle {stroke:var(--bg)}
[data-surface=charts] .edge {stroke:#596b5e}
/* The optional mind-map keeps its own layout, not its former light theme. */
[data-surface=mindmap] .app {height:calc(100dvh - var(--header-height))}
[data-surface=mindmap] main>.searchbox {margin:16px 24px;max-width:650px;flex:none}
[data-surface=mindmap] .searchbox {border-radius:0}
[data-surface=mindmap] .rail,[data-surface=mindmap] .trailbar,[data-surface=mindmap] .object-heading,[data-surface=mindmap] .viewbar,[data-surface=mindmap] .context,[data-surface=mindmap] #record-view {background:var(--bg)}
[data-surface=mindmap] #map-viewport {background:var(--bg)}
[data-surface=mindmap] #connections path {stroke:#62756a}
[data-surface=mindmap] #connections path.highlight {stroke:var(--accent)}
[data-surface=mindmap] .map-help {background:var(--panel);color:var(--muted)}
@media(max-width:800px) {
 body .field-header {padding:0 16px;gap:16px}
 body .field-brand {font-size:19px;letter-spacing:2px}
 body .field-nav {gap:18px;justify-content:flex-end;min-width:0}
 body .field-nav a {font-size:12px;padding:10px 0;flex:none}
 body .field-more summary {padding-inline:0;min-width:24px}
 [data-surface=mindmap] .app {height:calc(100dvh - var(--header-height))}
 [data-surface=mindmap] main>.searchbox {margin:12px 14px}
 .overlay-card {width:calc(100% - 32px)}
 .card-toolbar,.card-caption {padding:0 16px}
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto} *,*::before,*::after {transition:none!important}}
[data-surface=mindmap] .map-controls form button {color:var(--bg)}
body.card-preview {background:var(--bg)}
#object-stats strong {font-family:var(--font-mono);font-variant-numeric:tabular-nums}
h1,h2,h3 {overflow-wrap:anywhere}
@media(max-width:700px) {
 .home-intro h1 {font-size:clamp(36px,12vw,48px)}
 .hero-actions {flex-wrap:wrap}
}
.source-preview {margin:20px 0;padding:16px 0;border:0;border-top:1px solid var(--line);background:transparent;min-width:0;overflow-wrap:anywhere}
.source-preview h3 {font:10px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px}
.source-preview-link {display:flex;flex-direction:column;gap:9px;text-decoration:none}
.source-preview-link strong {font:450 17px/1.35 var(--font-display)}
.source-domain,.source-preview-link>span:last-child,.source-preview small {font-size:10px;color:var(--muted)}
.source-preview-link>span:last-child {color:var(--accent)}
.source-preview img {display:block;width:100%;max-height:200px;object-fit:cover;border:1px solid var(--line)}
.source-description {font-size:14px;line-height:1.6;margin:12px 0}
.source-preview small {display:block;line-height:1.6}
.source-embed {margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.source-embed summary {font-size:11px;cursor:pointer}
.source-embed iframe {display:block;width:100%;height:510px;margin-top:12px;border:0;background:var(--panel)}
.source-embed .embed-video {height:auto;aspect-ratio:16/9;min-height:180px}
.embed-note {font-size:10px;color:var(--muted);margin-top:12px}
[data-surface=record] [data-source-object] {max-width:680px}
.source-direct {display:block;margin-bottom:14px;color:var(--accent);font-size:11px}

.sidebar-directory a,.archive-directory a{color:var(--accent);text-decoration:none;font:10px var(--font-mono);letter-spacing:.03em}
.sidebar-directory{margin:6px 0 18px}.archive-directory{margin:16px 0 30px}
