/* GALOK Radar · section sheet on the unified foundation (assets/galok/foundation.css).
   Every colour is a --g-* token, so light and dark are both complete; one family (Galok Sans) with mono for labels.
   States read by shape and word first, colour second: Signal (signal mark), Brief (frame), Lead (view), Archive (muted). */

.radar-main{padding-bottom:20px}

/* ---------- head ---------- */
.radar-head{padding-top:clamp(48px,9vw,128px);padding-bottom:clamp(36px,6vw,72px)}
.radar-head .g-eyebrow{margin-bottom:22px}
.radar-head__title{margin:0;font:560 clamp(2.8rem,7.6vw,6.6rem)/.96 var(--g-sans);letter-spacing:-.058em;max-width:11.5em}
.radar-head__dek{margin:28px 0 0;max-width:34em;color:var(--g-muted);font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.5}

/* ---------- controls: a quiet sticky bar under the masthead ---------- */
.radar-controls{position:sticky;top:64px;z-index:20;background:var(--g-bg);border-block:1px solid var(--g-rule)}
.radar-controls__in{display:flex;justify-content:space-between;align-items:center;gap:16px 28px;min-height:64px;padding-block:10px}
.radar-controls__state{display:grid;gap:4px}
.radar-controls__state span{color:var(--g-muted);font-size:13px}
.radar-filters{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--g-rule-strong);border-radius:999px}
.radar-filters button{min-height:36px;min-width:44px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--g-muted);font:500 13px/1 var(--g-sans);cursor:pointer;transition:background .25s var(--g-ease),color .2s}
.radar-filters button:hover{color:var(--g-ink)}
.radar-filters button[aria-pressed="true"]{background:var(--g-inv-bg);color:var(--g-inv-ink)}
@media (pointer:coarse){.radar-filters button{min-height:44px}}

/* ---------- ledger ---------- */
.radar-ledger{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);gap:clamp(24px,4vw,64px);padding-top:clamp(28px,4vw,48px)}
.radar-time-rail{position:sticky;top:156px;align-self:start}
.radar-time-rail ol{list-style:none;margin:18px 0 0;padding:0;border-left:1px solid var(--g-rule-strong)}
.radar-time-rail li{position:relative;padding:0 0 22px 18px;font:500 11px/1.35 var(--g-mono);letter-spacing:.02em;color:var(--g-muted);transition:color .2s}
.radar-time-rail li::before{content:"";position:absolute;left:-4px;top:3px;width:7px;height:7px;border-radius:50%;background:var(--g-bg);border:1px solid currentColor}
.radar-time-rail li.is-current{color:var(--g-ink)}
.radar-time-rail li.is-current::before{background:var(--g-signal);border-color:var(--g-signal)}

.radar-stream{border-top:1px solid var(--g-ink)}
.radar-row{display:grid;grid-template-columns:minmax(0,8.5rem) minmax(0,1fr) minmax(0,11rem);gap:clamp(16px,3vw,40px);padding:clamp(24px,3vw,36px) 0;border-bottom:1px solid var(--g-rule);transition:opacity .2s var(--g-ease),transform .2s var(--g-ease)}
.radar-row.is-filtering{opacity:0;transform:translateY(6px)}
.radar-row[hidden]{display:none}
.radar-row__meta{display:grid;align-content:start;gap:8px;font:500 11px/1.4 var(--g-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--g-muted)}
.radar-row__state{display:inline-flex;align-items:center;gap:8px;color:var(--g-ink)}
.radar-row__state::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:var(--g-muted)}
.radar-row[data-state="Signal"] .radar-row__state::before{background:var(--g-signal);box-shadow:0 0 0 1px var(--g-rule-strong)}
.radar-row[data-state="Brief"] .radar-row__state::before{background:var(--g-frame)}
.radar-row[data-state="Lead"] .radar-row__state::before{background:var(--g-view)}
.radar-row[data-state="Archive"] .radar-row__state::before{background:transparent;border:1px solid var(--g-muted)}
.radar-row__where > span{display:block}
.radar-row__provenance{color:var(--g-muted)}
.radar-row[data-provenance="live"] .radar-row__provenance{color:var(--g-signal-text)}
.radar-row h2{margin:0 0 12px;max-width:22em;font:560 clamp(1.45rem,2.6vw,2.2rem)/1.08 var(--g-sans);letter-spacing:-.035em;text-wrap:balance}
.radar-row__summary{margin:0;max-width:38em;color:var(--g-ink-2);font-size:clamp(1rem,1.3vw,1.1rem);line-height:1.55}
.radar-row__side{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:16px;color:var(--g-muted);font:400 12px/1.45 var(--g-mono)}
.radar-row__evidence{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:1px solid var(--g-rule-strong);border-radius:999px;background:transparent;color:var(--g-ink);font:500 13px/1 var(--g-sans);cursor:pointer;transition:background .2s,border-color .2s}
.radar-row__evidence::after{content:"↗";color:var(--g-muted)}
.radar-row__evidence:hover{background:var(--g-surface);border-color:var(--g-ink)}

/* ---------- method ---------- */
.radar-method{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1.4fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);padding-top:clamp(72px,10vw,140px)}
.radar-method h2{margin:0 0 20px;font:560 clamp(1.8rem,3.4vw,3rem)/1.04 var(--g-sans);letter-spacing:-.045em;text-wrap:balance}
.radar-method__copy p{margin:0;max-width:36em;color:var(--g-ink-2);line-height:1.6}
.radar-method dl{margin:0;align-self:start}
.radar-method dl div{display:grid;grid-template-columns:7.5rem 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--g-rule);font-size:14px}
.radar-method dl div:last-child{border-bottom:1px solid var(--g-rule)}
.radar-method dt{font:500 11px/1.6 var(--g-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--g-muted)}
.radar-method dd{margin:0}

/* ---------- evidence dialog ---------- */
.radar-dialog{width:min(720px,calc(100vw - 32px));max-height:85vh;padding:28px clamp(22px,5vw,48px) 40px;border:1px solid var(--g-rule-strong);border-radius:22px;background:var(--g-bg);color:var(--g-ink);font-family:var(--g-sans);opacity:0;transform:translateY(10px);transition:opacity .25s var(--g-ease),transform .3s var(--g-ease)}
.radar-dialog[open]{opacity:1;transform:none}
.radar-dialog::backdrop{background:rgba(10,10,8,.5)}
.radar-dialog__close{float:right;min-height:44px;padding:0 16px;border:1px solid var(--g-rule-strong);border-radius:999px;background:transparent;color:var(--g-ink);font:500 13px/1 var(--g-sans);cursor:pointer}
.radar-dialog__close:hover{background:var(--g-surface)}
.radar-dialog > p:first-of-type{margin:12px 0 0;font:500 12px/1.3 var(--g-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--g-muted)}
.radar-dialog h2{clear:both;max-width:20em;margin:22px 0 14px;font:560 clamp(1.6rem,4vw,2.4rem)/1.06 var(--g-sans);letter-spacing:-.04em}
.radar-dialog > p{color:var(--g-ink-2);line-height:1.6}
.radar-dialog ol{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--g-ink)}
.radar-dialog li{display:grid;grid-template-columns:7.5rem 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--g-rule);font-size:14px;line-height:1.45}
.radar-dialog a{color:var(--g-ink);text-underline-offset:.2em;text-decoration-color:var(--g-rule-strong)}
.radar-dialog a:hover{text-decoration-color:var(--g-ink)}

/* ---------- smaller screens ---------- */
@media (max-width:980px){
  .radar-row{grid-template-columns:minmax(0,8rem) minmax(0,1fr)}
  .radar-row__side{grid-column:2;flex-direction:row;align-items:center;flex-wrap:wrap}
  .radar-method{grid-template-columns:1fr}
}
@media (max-width:720px){
  .radar-controls{top:64px}
  .radar-controls__in{flex-direction:column;align-items:flex-start;gap:10px}
  .radar-filters{flex-wrap:nowrap;max-width:100%;overflow-x:auto;scrollbar-width:none}
  .radar-filters button{flex:none;padding:0 12px}
  .radar-ledger{grid-template-columns:1fr}
  .radar-time-rail{display:none}
  .radar-row{grid-template-columns:1fr;gap:12px}
  .radar-row__meta{display:flex;flex-wrap:wrap;gap:4px 14px}
  .radar-row__where > span{display:inline}
  .radar-row__where > span + span::before{content:"· ";color:var(--g-rule-strong)}
  .radar-row__side{grid-column:1}
  .radar-dialog li{grid-template-columns:1fr;gap:2px}
}
@media (prefers-reduced-motion:reduce){.radar-row,.radar-time-rail li,.radar-dialog,.radar-filters button{transition:none}}
.radar-dialog h2:focus{outline:none}
