
.stat-grid{display:flex;flex-wrap:wrap;gap:var(--sp-2,.5rem)}
.stat{flex:1 1 8rem;min-width:8rem;border:1px solid var(--border);background:var(--panel2);padding:.5rem .6rem}
.stat .s-lbl{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.02em}
.stat .s-val{color:var(--text-hi);font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums;margin:.1rem 0}
.stat .s-hint{color:var(--muted);font-size:.72rem}
.stat .s-val.pnl-pos{color:#3fb950}
.stat .s-val.pnl-neg{color:#f85149}
.stat .s-val.pnl-warn{color:#d29922}

.lk-index,.lk-detail{margin:0 0 1.5rem}
.lk-summary,.lk-position{margin:0 0 1rem}
.lk-actions{display:flex;gap:var(--sp-2,.5rem);flex-wrap:wrap;margin:0 0 1rem}
.lk-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:var(--sp-4,1rem)}
.lk-card{border:1px solid var(--border);background:var(--panel);padding:.8rem .9rem;display:grid;gap:var(--sp-2,.5rem)}
.lk-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2,.5rem)}
.lk-card-title{margin:0;font-size:1.05rem}
.lk-glyph{font-style:normal}
.lk-headline{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-hi);white-space:nowrap}
.lk-rows{margin:0;display:grid;gap:.2rem}
/* Three columns, so every figure in a card lines up on the same right edge whether or
   not its row carries an Aside — the alignment the <table> this replaced got for free. */
.lk-row{display:grid;grid-template-columns:1fr auto auto;column-gap:var(--sp-2,.5rem);align-items:baseline;font-size:.86rem}
.lk-row dt{color:var(--muted);margin:0}
.lk-row dd{margin:0;font-variant-numeric:tabular-nums;text-align:right}
.lk-row dd.lk-aside{color:var(--muted)}
.lk-row dd.lk-val{font-weight:600}
.lk-row dd.lk-val.pnl-pos,.lk-row dd.lk-val.pnl-neg{font-weight:600}
.lk-note{margin:0;color:var(--muted);font-size:.78rem}
.lk-back{margin:0 0 .4rem}
.lk-panel{margin:0 0 1rem}
.lk-ledger-h{margin:1.25rem 0 .5rem}
/* The provenance chip. It is deliberately quiet: on a healthy ledger every row carries
   one, so a loud badge on every line would be noise rather than signal. The tones only
   speak up for the two states a reader must not miss — evidenced, and not-yet-known. */
.lk-chip{display:inline-block;border:1px solid var(--border);background:var(--panel2);color:var(--muted);padding:.05rem .4rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.lk-chip.lk-pos{border-color:var(--green-soft,#2ea043);color:var(--text-hi)}
.lk-chip.lk-warn{border-color:var(--amber-soft,#d29922);color:var(--text-hi)}
.lk-chip.lk-neg{border-color:var(--red-soft,#f85149);color:var(--text-hi)}
.lk-undone{color:var(--muted);text-decoration-thickness:1px}
