/* Link contract pieces (docs/LINKS.md): token chips, the "[[" picker, the shared timeline panel, the Ctrl+K jump bar. Tokens only, no new colours. */
.chip.gone{opacity:.55;border-style:dashed;cursor:default;pointer-events:none}
.lk-panel{margin-top:34px}
.lk-panel .lead{margin:0 0 4px}
.lk-h{margin:0 0 14px;font:300 26px/1.15 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.lk-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.lk-filters .tag{border:0;cursor:pointer;font-family:var(--font-ui)}
.lk-out{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 12px}
.lk-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;padding:12px 0;border-top:1px solid var(--line)}
.lk-when{color:var(--muted);font-size:12.5px;padding-top:3px}
.lk-body{min-width:0}
.lk-text{margin-top:5px;color:var(--ink-2);font-size:14px;overflow-wrap:anywhere}
.lk-by{font-size:12px;margin-top:3px}
.lk-src{font-weight:550;color:var(--navy)}
@media(max-width:600px){.lk-row{grid-template-columns:1fr;gap:4px}.lk-h{font-size:21px;letter-spacing:.1em}}

.lk-pick{position:fixed;z-index:9400;background:var(--panel);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:300px;overflow:auto;padding:6px}
.lk-pick .r,#jump .r{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:10px;cursor:pointer}
.lk-pick .r.sel,#jump .r.sel,.lk-pick .r:hover,#jump .r:hover{background:var(--blue-soft)}
.lk-pick .g,#jump .g{font-size:11px;color:var(--navy);width:16px;text-align:center;flex:none}
.lk-pick .t,#jump .t{font-size:14px;font-weight:550;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lk-pick .s,#jump .s{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lk-pick .none,#jump .none{padding:14px 10px;color:var(--muted);font-size:13px}

#jump{position:fixed;inset:0;z-index:9300;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 0}
#jump .lk-back{position:absolute;inset:0;background:rgba(14,17,22,.28)}
#jump .lk-box{position:relative;width:min(620px,100%);background:var(--panel);border:1px solid var(--line-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}
#jump .lk-in{width:100%;box-sizing:border-box;height:56px;padding:0 20px;border:0;border-bottom:1px solid var(--line);font:300 20px var(--font-display);color:var(--ink);background:transparent;outline:none}
#jump .lk-list{max-height:min(52vh,420px);overflow:auto;padding:6px}
#jump .m{min-width:0;flex:1}
#jump .k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);flex:none}
#jump .lk-foot{padding:9px 16px;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted)}
#jump .lk-foot{display:flex;flex-wrap:wrap;align-items:center}
#jump .lk-verbs{margin-left:auto;color:var(--faint)}
#jump .lk-msg{flex-basis:100%;margin-top:4px;color:var(--navy);font-weight:550;font-size:12.5px}
#jump .lk-msg:empty{display:none}
@media(max-width:520px){#jump{padding-top:8vh}#jump .lk-foot{font-size:0;padding:0;border-top:0}#jump .lk-foot:has(.lk-msg:not(:empty)){padding:9px 16px;border-top:1px solid var(--line)}}
#jump kbd{display:inline-block;padding:0 6px;margin:0 2px;border:1px solid var(--line-2);border-radius:6px;font:11px var(--font-ui);background:var(--bg)}
