:root {
  --bg: #060b14;
  --surface: #0e1620;
  --text: #ddd8cc;
  --text-muted: #9fa1a4;
  --text-dim: #737d84;
  --accent: #c4845a;
  --verified: #72a860;
  --firsthand: #6ea7c9;
  --secondhand: #8aa0b3;
  --media: #d36d2a;
  --unknown: #9b7bb6;
  --hypothesis: #7d858b;
  --teal: #4a8a7c;
  --rule: rgba(255, 255, 255, .07);
  --mono: 'IBM Plex Mono', monospace;
  --sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 76px; }
body { max-width: 920px; margin: 0 auto; padding: 38px 24px 90px; background: var(--bg); color: var(--text); font-family: var(--sans); font-size: 14px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: #72a99d; text-decoration-thickness: 1px; text-underline-offset: 3px; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.skip-link { position: fixed; z-index: 100; top: 8px; left: 8px; padding: 10px 13px; border-radius: 4px; background: #fff; color: #060b14; font: 600 11px var(--mono); transform: translateY(-150%); transition: transform 160ms cubic-bezier(.2,0,0,1); }
.skip-link:focus { transform: translateY(0); }
.page-header { padding-bottom: 30px; border-bottom: 1px solid var(--rule); margin-bottom: 28px; }
.page-nav { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-bottom: 38px; }
.page-nav a { min-height: 40px; display: inline-flex; align-items: center; color: var(--text-muted); font: 600 10px var(--mono); letter-spacing: .05em; text-transform: uppercase; text-decoration: none; }
.page-nav a:hover { color: var(--accent); }
.eyebrow, .key-label { margin: 0 0 8px; color: var(--accent); font: 600 10px var(--mono); letter-spacing: .12em; text-transform: uppercase; }
h1 { margin: 0 0 8px; font-size: clamp(2rem, 6vw, 3.4rem); line-height: 1.05; text-wrap: balance; }
.page-meta { margin: 0 0 18px; color: var(--text-muted); font: 400 11px var(--mono); font-variant-numeric: tabular-nums; }
.page-intro { max-width: 740px; margin: 0; color: #b8b7b1; font-size: 14px; text-wrap: pretty; }
.key-info { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-bottom: 30px; overflow: hidden; border-radius: 4px; background: var(--rule); box-shadow: 0 8px 22px rgba(0,0,0,.12); }
.key-info>div { padding: 15px 16px; background: var(--surface); }
.key-info p { margin: 0; font-size: 12px; }
.key-info .key-label { margin-bottom: 4px; color: var(--text-dim); font-size: 9px; }
.log-controls { position: sticky; z-index: 20; top: 0; display: grid; grid-template-columns: 1fr 240px; gap: 18px; margin: 0 -12px; padding: 10px 12px; border-bottom: 1px solid var(--rule); background: rgba(6,11,20,.94); backdrop-filter: blur(14px); }
.filter-group { display: flex; align-items: center; gap: 4px; overflow-x: auto; scrollbar-width: thin; }
.filter { min-height: 40px; padding: 8px 10px; border: 0; border-radius: 4px; background: transparent; color: #92999d; cursor: pointer; font: 600 9px var(--mono); letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; transition-property: color, background-color, transform; transition-duration: 160ms; }
.filter:hover { color: #fff; background: rgba(255,255,255,.05); }
.filter.active { background: var(--surface); color: #fff; }
.filter:active, #clear-search:active, .source-chip:active { transform: scale(.96); }
.filter i { display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; vertical-align: 1px; }
.filter i.verified { background: var(--verified); }.filter i.firsthand { background: var(--firsthand); }.filter i.secondhand { background: var(--secondhand); }.filter i.media { background: var(--media); }.filter i.unknown { background: var(--unknown); }.filter i.hypothesis { background: var(--hypothesis); }
.search-field>label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.search-field>div { position: relative; }
.search-field svg { position: absolute; top: 12px; left: 11px; width: 16px; height: 16px; fill: none; stroke: #788188; stroke-width: 1.7; pointer-events: none; }
.search-field input { width: 100%; min-height: 40px; padding: 8px 38px 8px 35px; border: 1px solid rgba(255,255,255,.12); border-radius: 4px; outline: none; background: var(--surface); color: #fff; font-size: 12px; transition-property: border-color, box-shadow; transition-duration: 160ms; }
.search-field input:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(74,138,124,.15); }
.search-field input::placeholder { color: #707980; }
#clear-search { position: absolute; top: 3px; right: 3px; display: grid; width: 34px; height: 34px; padding: 0 0 2px; place-items: center; border: 0; border-radius: 3px; background: transparent; color: #a5aaad; cursor: pointer; font-size: 20px; transition-property: color, background-color, transform; transition-duration: 160ms; }
#clear-search:hover { color: #fff; background: rgba(255,255,255,.07); }
.results-row { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 20px; color: var(--text-dim); font: 600 9px var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.results-row p { margin: 0; }.results-row span { font-variant-numeric: tabular-nums; }
.date-section { margin-bottom: 52px; }
.date-header { position: sticky; z-index: 10; top: 61px; padding: 12px 0 8px; border-bottom: 2px solid var(--accent); margin-bottom: 5px; background: var(--bg); }
.date-header h2 { margin: 0; color: var(--accent); font: 600 12px var(--mono); letter-spacing: .13em; text-transform: uppercase; }
.event { display: grid; grid-template-columns: 118px minmax(0,1fr); gap: 0 18px; padding: 17px 0 18px; border-bottom: 1px solid var(--rule); }
.event.critical { margin: 16px 0; padding: 18px; border: 1px solid rgba(192,78,1,.38); border-radius: 4px; background: rgba(192,78,1,.07); }
.event-time { padding-top: 2px; color: var(--tone); font: 600 13px var(--mono); font-variant-numeric: tabular-nums; line-height: 1.5; text-align: right; transition-property: color; transition-duration: 160ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.event:hover .event-time,
.event:focus-within .event-time { color: #fff; }
.event-body h3 { margin: 0 0 7px; color: #eee9dd; font-size: 15px; line-height: 1.35; text-wrap: balance; }
.event-summary { margin: 0; color: #c6c3bb; font-size: 13px; line-height: 1.7; text-wrap: pretty; }
.event-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0; }
.type-chip, .confidence-chip { padding: 3px 6px; border: 1px solid color-mix(in srgb,var(--tone) 46%,transparent); border-radius: 3px; background: color-mix(in srgb,var(--tone) 12%,transparent); color: color-mix(in srgb,var(--tone) 80%,white); font: 600 8px var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.confidence-chip { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.03); color: #838b91; }
.precision { margin: 0 0 10px; color: #858d92; font: 400 10px var(--mono); line-height: 1.5; }
.claims { margin: 10px 0 0; padding-left: 18px; color: #aeb2b3; font-size: 12px; }.claims li+li { margin-top: 5px; }
.source-row { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 13px; }
.source-chip { display: inline-flex; min-height: 40px; padding: 8px 9px; align-items: center; border-radius: 3px; background: rgba(255,255,255,.035); box-shadow: inset 0 0 0 1px rgba(255,255,255,.09); color: #72a99d; font: 600 9px var(--mono); text-decoration: none; transition-property: color, background-color, transform, box-shadow; transition-duration: 160ms; }
.source-chip:hover { color: #fff; background: rgba(255,255,255,.07); box-shadow: inset 0 0 0 1px rgba(74,138,124,.5); }
.media-link { color: #d29973; }

.log-evidence { margin-top: 14px; border-radius: 5px; background: rgba(14,22,32,.72); box-shadow: 0 0 0 1px rgba(255,255,255,.09); }
.log-evidence>summary { display:flex; min-height:48px; padding:10px 12px; align-items:center; gap:12px; color:#d4d6d7; cursor:pointer; font:600 9px var(--mono); letter-spacing:.055em; list-style:none; text-transform:uppercase; transition-property:color,background-color,box-shadow; transition-duration:160ms; }
.log-evidence>summary::-webkit-details-marker { display:none; }
.log-evidence>summary::before { color:var(--tone); content:'›'; font-size:19px; transform:rotate(0); transition-property:transform; transition-duration:180ms; transition-timing-function:cubic-bezier(.2,0,0,1); }
.log-evidence[open]>summary::before { transform:rotate(90deg); }
.log-evidence[open]>summary { box-shadow:0 1px 0 rgba(255,255,255,.08); }
.log-evidence>summary:hover { background:rgba(255,255,255,.035); color:#fff; }
.log-evidence>summary small { margin-left:auto; color:#747d84; font-size:8px; white-space:nowrap; }
.toggle-copy-hide { display:none; }
.log-evidence[open] .toggle-copy-show { display:none; }
.log-evidence[open] .toggle-copy-hide { display:inline; }
.log-evidence-body { padding:12px; }
.log-depth-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-top:7px; }
.log-block { padding:12px; border-radius:3px; background:rgba(255,255,255,.03); box-shadow:0 0 0 1px rgba(255,255,255,.055); }
.log-block.confidence { border-left:3px solid var(--tone); }
.log-block p { margin:0; color:#aab0b3; font-size:11px; line-height:1.6; text-wrap:pretty; }
.block-label { margin-bottom:7px!important; color:color-mix(in srgb,var(--tone) 75%,white)!important; font:600 8px var(--mono)!important; letter-spacing:.08em; text-transform:uppercase; }
.log-block ul { display:grid; gap:6px; margin:0; padding-left:15px; color:#a7adb0; font-size:10px; line-height:1.55; }
.unknown-block li::marker { color:var(--unknown); }.needed-block li::marker { color:var(--media); }
.log-comparison { display:grid; }
.log-comparison>div { display:grid; grid-template-columns:minmax(100px,.26fr) 1fr; gap:12px; padding:8px 0; box-shadow:0 1px 0 rgba(255,255,255,.05); }
.log-comparison>div:last-child { box-shadow:none; }
.log-comparison strong { color:#d6d9da; font:600 9px var(--mono); }
.log-comparison span { color:#9fa6aa; font-size:10px; line-height:1.5; text-wrap:pretty; }
.log-coordinate { display:grid; min-height:54px; margin-top:7px; padding:10px 12px; gap:3px; border-radius:4px; background:rgba(74,138,124,.08); box-shadow:0 0 0 1px rgba(74,138,124,.25); color:#d8dbdc; text-decoration:none; transition-property:background-color,box-shadow,transform; transition-duration:160ms; }
.log-coordinate:hover { background:rgba(74,138,124,.14); box-shadow:0 0 0 1px rgba(74,138,124,.48); }
.log-coordinate:active { transform:scale(.96); }
.log-coordinate strong { font:600 10px var(--mono); font-variant-numeric:tabular-nums; }.log-coordinate span { color:#7e9f98; font:400 8px var(--mono); }
.log-gap { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:7px; overflow:hidden; border-radius:4px; background:rgba(255,255,255,.07); }
.log-gap>div { min-height:66px; padding:10px; background:#0b121b; }.log-gap time { display:block; margin-bottom:4px; color:var(--unknown); font:600 10px var(--mono); font-variant-numeric:tabular-nums; }.log-gap .known time { color:var(--verified); }.log-gap span { color:#8f979c; font-size:9px; line-height:1.4; }
.log-evidence .source-row { margin-top:8px; }
.empty { padding: 70px 0; color: var(--text-muted); font-size: 1.1rem; }
footer { display: grid; gap: 8px; padding-top: 32px; border-top: 1px solid var(--rule); color: var(--text-dim); font-size: 11px; }footer p { margin: 0; }
:focus-visible { outline: 3px solid #7ab89c; outline-offset: 3px; }
@media(max-width:760px){body{padding:26px 15px 70px}.key-info{grid-template-columns:1fr}.log-controls{grid-template-columns:1fr;gap:5px;margin:0 -3px;padding:8px 3px}.filter-group{padding-bottom:2px}.date-header{top:104px}.event{grid-template-columns:1fr;gap:5px}.event-time{text-align:left}.event.critical{margin:12px -4px}.results-row{align-items:start;padding:14px 0}.results-row p:last-child{text-align:right}.page-nav{margin-bottom:28px}.log-depth-grid{grid-template-columns:1fr}.log-comparison>div{grid-template-columns:1fr;gap:3px}.log-gap{grid-template-columns:1fr}.log-gap>div{min-height:54px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
