/* History page — context ledger. Layers on workspace.css (tokens + topbar). */

.app{display:grid;grid-template-rows:var(--top-h) 1fr;height:100vh}
.hist-body{overflow-y:auto}
.wrap{max-width:820px;margin:0 auto;padding:0 16px 96px}

/* tabs */
.hist-tabs{display:flex;gap:4px;position:sticky;top:0;z-index:30;background:var(--bg);border-bottom:1px solid var(--line);padding-top:14px}
.hist-tab{appearance:none;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ink-3);font-size:13px;font-weight:600;padding:8px 12px 10px;cursor:pointer;display:flex;align-items:center;gap:7px}
.hist-tab:hover{color:var(--ink-1)}
.hist-tab.on{color:var(--ink-0);border-bottom-color:var(--rust)}
.tab-n{font-size:10px;font-weight:700;color:var(--ink-1);background:rgba(255,106,61,.16);border:1px solid rgba(255,106,61,.3);border-radius:9px;padding:1px 6px;min-width:18px;text-align:center}

/* muted sub-bar */
.muted-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 2px;padding:8px 14px;border-radius:8px;font-size:11.5px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.25)}
.muted-notice.zero{background:transparent;border-color:transparent;color:var(--ink-4);padding:8px 2px}
.muted-notice .mn-txt{color:var(--ink-2)}
.muted-notice .mn-n{color:var(--amber);font-weight:600}
.muted-notice .mn-glyph{opacity:.85;margin-right:4px}
.mn-unmute{background:none;border:none;color:var(--cyan);font-size:11.5px;cursor:pointer}
.mn-unmute:hover{text-decoration:underline}
.mn-sub{font-size:10.5px;color:var(--ink-4);margin:0 2px 4px;padding:0 2px}

/* day groups + rows */
.ch-day{font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--ink-4);text-transform:uppercase;padding:14px 2px 6px}
.hist-row{display:flex;align-items:center;gap:12px;padding:11px 10px;border-top:1px solid var(--line);position:relative;cursor:pointer}
.hist-row:hover,.hist-row.open{background:var(--panel-2)}
.hist-row .who-badge{flex:none;width:64px;display:flex;justify-content:flex-start}
.who-badge .pill{font-size:8.5px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:10px;border:1px solid;white-space:nowrap}
.who-you{color:var(--rust);border-color:rgba(255,106,61,.4)}
.who-system{color:var(--cyan);border-color:rgba(125,211,252,.4)}
.hist-main{flex:1;min-width:0}
.hist-title{font-size:13px;color:var(--ink-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chev{display:inline-block;width:10px;color:var(--ink-4);transition:transform .12s}
.hist-row.open .chev{transform:rotate(90deg);color:var(--ink-2)}
.hist-meta{font-size:11px;color:var(--ink-4);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hist-meta .sha,.hist-meta .agent-inline{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.co-tag{display:inline-block;font-size:9.5px;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line-2);border-radius:10px;padding:1px 7px;margin-right:7px;text-transform:capitalize}
.delta-new{display:inline-block;font-size:10px;color:var(--green);background:rgba(52,211,153,.10);border-radius:9px;padding:1px 7px;margin-left:4px}
.delta-zero{color:var(--ink-4);background:transparent}
.hist-time{flex:none;font-size:10px;color:var(--ink-4);white-space:nowrap}

/* actions */
.hist-actions{flex:none;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .12s}
.hist-row:hover .hist-actions,.hist-row.open .hist-actions{opacity:1}
.aa-btn{background:transparent;border:1px solid var(--line-2);border-radius:14px;color:var(--ink-3);font-size:11px;padding:3px 9px;cursor:pointer}
.aa-btn:hover{color:var(--cyan);border-color:var(--cyan)}
.ic-btn{background:none;border:none;color:var(--ink-4);font-size:13px;cursor:pointer;padding:2px 4px;border-radius:6px}
.ic-btn.upd:hover{color:var(--cyan)}
.ic-btn.del:hover{color:var(--rust)}

/* muted row */
.hist-row.muted{border-left:2px solid var(--ink-4);background:rgba(19,22,28,.6)}
.hist-row.muted .who-badge,.hist-row.muted .hist-main,.hist-row.muted .hist-time{opacity:.5}
.hist-row.muted .hist-actions{opacity:1}
.muted-pill{font-size:8.5px;font-weight:700;text-transform:uppercase;background:var(--panel-3);color:var(--ink-3);border-radius:10px;padding:3px 8px}
.unmute-link{background:none;border:none;color:var(--cyan);font-size:11px;cursor:pointer}
.unmute-link:hover{text-decoration:underline}

/* inline delete confirm */
.del-confirm{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-2)}
.del-confirm .y{background:transparent;border:1px solid rgba(255,106,61,.5);color:var(--rust);border-radius:14px;padding:3px 10px;cursor:pointer}
.del-confirm .n{background:none;border:none;color:var(--ink-3);cursor:pointer}

/* detail panel */
.hist-detail{display:none;margin:0 0 8px 10px}
.hist-detail.open{display:block}
.det-card{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.det-sec{padding:12px 14px;border-top:1px solid var(--line)}
.det-sec:first-child{border-top:none}
.det-h{font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-4);margin:0 0 8px;display:flex;align-items:center;gap:8px}
.ch-mode{font-size:8px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:10px;border:1px solid}
.ch-mode.web{color:var(--amber);border-color:rgba(251,191,36,.4)}
.ch-mode.profile{color:var(--cyan);border-color:rgba(125,211,252,.4)}
.qa-q{font-size:12.5px;color:var(--ink-1);margin:0 0 8px;font-weight:600}
.qa-a{font-size:12.5px;line-height:1.55;color:var(--ink-1);white-space:pre-wrap}
.det-why{font-size:12.5px;color:var(--ink-1);line-height:1.5}
.det-diff{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;line-height:1.5;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;max-height:240px;overflow:auto;white-space:pre-wrap;color:var(--ink-2)}
.det-diff .add{color:var(--green)}
.det-diff .del{color:var(--rust)}
.det-quiet{color:var(--ink-4);font-size:12px}

/* source block (admin System-architecture vocabulary) */
.src-block{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px}
.arch-node{background:var(--bg);border:1px solid var(--line-2);border-radius:8px;padding:6px 10px;line-height:1.3}
.arch-node .nl{font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4);display:block}
.arch-node .nv{font-size:12px;color:var(--ink-0);font-weight:600}
.arch-node.mono .nv{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:500;font-size:11.5px}
.arch-arrow{color:var(--ink-4)}
.prov{font-size:8.5px;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:10px;border:1px solid}
.prov.claude{color:var(--cyan);border-color:rgba(125,211,252,.45)}
.prov.gemini{color:var(--amber);border-color:rgba(251,191,36,.45)}
.prov.openai{color:var(--green);border-color:rgba(52,211,153,.45)}
.arch-link{display:inline-block;margin-top:10px;font-size:11px;color:var(--cyan);text-decoration:none}
.arch-link:hover{text-decoration:underline}
.manual-src{font-size:12px;color:var(--ink-2)}
.manual-src b{color:var(--rust)}

/* used-on */
.used-on{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.use-chip{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-1);background:var(--bg);border:1px solid var(--line-2);border-radius:14px;padding:4px 10px}
.use-chip .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}
.use-chip.is-muted{color:var(--ink-4)}
.use-chip.is-muted .dot{background:var(--ink-4)}
.use-chip .um-tag{font-size:8px;font-weight:700;text-transform:uppercase;color:var(--amber);background:rgba(251,191,36,.10);border-radius:8px;padding:1px 5px}
.used-note{font-size:10.5px;color:var(--ink-4);margin-top:8px}

/* empty / loading */
.ch-empty{text-align:center;padding:64px 20px;color:var(--ink-4)}
.ch-empty h3{color:var(--ink-2);font-weight:600;margin:0 0 6px;font-size:15px}
.ch-empty p{margin:0;font-size:12.5px}
.hist-skel{display:flex;gap:12px;padding:13px 10px;border-top:1px solid var(--line)}
.hist-skel .sk{background:var(--panel-2);border-radius:6px;height:12px;animation:skp 1.2s ease-in-out infinite}
.hist-skel .sk.b{width:54px}.hist-skel .sk.t{flex:1;max-width:60%}.hist-skel .sk.m{width:30px}
@keyframes skp{0%,100%{opacity:.5}50%{opacity:.9}}

/* toast */
.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--panel-3);border:1px solid var(--line-2);color:var(--ink-1);font-size:12px;padding:9px 14px;border-radius:10px;z-index:70;display:flex;gap:12px;align-items:center;opacity:0;pointer-events:none;transition:opacity .15s}
.toast.show{opacity:1;pointer-events:auto}
.toast .undo{color:var(--cyan);cursor:pointer}
