/* CAIRN-CONTINUITY-KERNEL-2026-07-23 — portable work/session/receipt panel. */
.cwp {
  --cwp-brand: var(--gl-brand, #1ba8d8);
  --cwp-brand-deep: var(--gl-brand-strong, #0d2a4a);
  --cwp-soft: var(--gl-brand-soft, #d6f0f9);
  --cwp-ink: var(--gl-text, #18181b);
  --cwp-muted: var(--gl-text-3, #71717a);
  --cwp-line: var(--gl-border, #e4e4e7);
  color: var(--cwp-ink);
  font-family: var(--gl-font, -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", system-ui, sans-serif);
}
.cwp-head { display:flex; align-items:flex-start; gap:12px; margin:18px 0 9px; }
.cwp-head-copy { flex:1; min-width:0; }
.cwp-title { font-size:14px; font-weight:750; color:var(--cwp-brand-deep); }
.cwp-sub { margin-top:3px; font-size:11.5px; line-height:1.4; color:var(--cwp-muted); }
.cwp-refresh { border:1px solid var(--cwp-line); background:#fff; color:var(--cwp-muted); border-radius:8px; padding:5px 9px; font:600 11px/1 inherit; cursor:pointer; }
.cwp-refresh:hover { border-color:var(--cwp-brand); color:var(--cwp-brand-deep); }
.cwp-counts { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:10px; }
.cwp-count { border-radius:999px; padding:3px 8px; font-size:10.5px; font-weight:700; background:#fff; border:1px solid var(--cwp-line); color:var(--cwp-muted); }
.cwp-count[data-kind="attention"] { color:var(--gl-gated, #a16207); background:var(--gl-gated-bg, #fef3c7); border-color:transparent; }
.cwp-count[data-kind="active"] { color:var(--cwp-brand-deep); background:var(--cwp-soft); border-color:transparent; }
.cwp-card { background:#fff; border:1px solid var(--cwp-line); border-radius:12px; overflow:hidden; margin-bottom:10px; }
.cwp-group-title { display:flex; align-items:center; gap:7px; padding:9px 12px; border-bottom:1px solid var(--cwp-line); font-size:10.5px; font-weight:750; letter-spacing:.045em; text-transform:uppercase; color:var(--cwp-muted); }
.cwp-group-title b { color:var(--cwp-ink); }
.cwp-dot { width:8px; height:8px; border-radius:50%; background:var(--cwp-brand); flex:none; }
.cwp-dot.attention { background:var(--gl-gated, #a16207); }
.cwp-dot.done { background:var(--gl-done, #15803d); }
.cwp-row { padding:10px 12px; border-bottom:1px solid var(--cwp-line); }
.cwp-row:last-child { border-bottom:0; }
.cwp-row-top { display:flex; align-items:flex-start; gap:9px; }
.cwp-row-copy { flex:1; min-width:0; }
.cwp-row-title { font-size:12.5px; font-weight:700; line-height:1.35; color:var(--cwp-ink); overflow-wrap:anywhere; }
.cwp-meta { display:flex; flex-wrap:wrap; gap:5px 8px; margin-top:3px; color:var(--cwp-muted); font-size:10.5px; line-height:1.35; }
.cwp-status { flex:none; border-radius:999px; padding:3px 7px; font-size:9.5px; font-weight:800; text-transform:uppercase; letter-spacing:.035em; color:var(--cwp-brand-deep); background:var(--cwp-soft); }
.cwp-status.attention { color:var(--gl-gated, #a16207); background:var(--gl-gated-bg, #fef3c7); }
.cwp-status.done { color:var(--gl-done, #15803d); background:var(--gl-done-bg, #dcfce7); }
.cwp-summary { margin-top:6px; font-size:11.5px; line-height:1.45; color:var(--gl-text-2, #52525b); }
.cwp-actions { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.cwp-action { border:1px solid var(--cwp-line); background:#fff; color:var(--cwp-muted); border-radius:7px; padding:4px 8px; font:650 10.5px/1 inherit; cursor:pointer; }
.cwp-action:hover { border-color:var(--cwp-brand); color:var(--cwp-brand-deep); }
.cwp-action[data-action="finished"] { color:var(--gl-done, #15803d); }
.cwp-action[data-action="blocked"] { color:var(--gl-gated, #a16207); }
.cwp-action[data-action="abandoned"] { color:var(--gl-stuck, #b91c1c); }
.cwp-commit { margin-top:8px; display:grid; grid-template-columns:1fr auto auto; gap:6px; }
.cwp-commit[hidden] { display:none; }
.cwp-commit input { min-width:0; border:1px solid var(--cwp-line); border-radius:8px; padding:7px 9px; color:var(--cwp-ink); font:12px/1.3 inherit; }
.cwp-commit input:focus { outline:0; border-color:var(--cwp-brand); box-shadow:0 0 0 3px color-mix(in srgb, var(--cwp-brand) 18%, transparent); }
.cwp-commit button { border:0; border-radius:8px; padding:6px 10px; font:700 11px/1 inherit; cursor:pointer; }
.cwp-commit-go { background:var(--cwp-brand); color:var(--cwp-brand-deep); }
.cwp-commit-cancel { background:var(--gl-surface-2, #f4f4f5); color:var(--cwp-muted); }
.cwp-timeline { margin-top:7px; }
.cwp-timeline summary { color:var(--cwp-muted); font-size:10.5px; cursor:pointer; }
.cwp-events { margin:7px 0 0; padding-left:15px; color:var(--cwp-muted); }
.cwp-events li { margin:4px 0; font-size:10.5px; line-height:1.35; }
.cwp-link { color:var(--cwp-brand-deep); font-size:10.5px; text-decoration:none; }
.cwp-link:hover { text-decoration:underline; }
.cwp-empty, .cwp-error { padding:13px 12px; color:var(--cwp-muted); font-size:12px; line-height:1.45; }
.cwp-error { color:var(--gl-stuck, #b91c1c); }
.cwp-legacy { margin-top:8px; }
.cwp-legacy > summary { color:var(--cwp-muted); font-size:10.5px; cursor:pointer; }
@media (max-width:560px) {
  .cwp-commit { grid-template-columns:1fr 1fr; }
  .cwp-commit input { grid-column:1 / -1; }
}
