:root { --purple:#5b1db1; --violet:#a379d5; --lilac:#e5ddfb; --cream:#fef6ec; --black:#101010; }
* { margin:0; padding:0; box-sizing:border-box; letter-spacing:0; }
body { font-family:"Helvetica Now Display","Helvetica Neue",Helvetica,Arial,sans-serif;
       font-weight:400; color:var(--black); background:#fff; font-size:18px; line-height:1.5; }
a { color:inherit; text-decoration:none; }
.wrap { max-width:760px; margin:0 auto; padding:56px 24px 96px; }
.eyebrow { font-weight:700; font-size:16px; color:var(--purple); margin-bottom:8px; }
h1 { font-weight:400; font-size:48px; line-height:1.3; color:var(--black); margin-bottom:12px; }
h2 { font-weight:400; font-size:24px; line-height:1.5; color:var(--purple); margin:48px 0 16px; }
h3 { font-weight:700; font-size:18px; line-height:1.5; color:var(--black); }
.sub { font-size:18px; max-width:56ch; }
.back { display:inline-block; font-size:16px; font-weight:700; color:var(--purple); margin-bottom:24px; }
.chips { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.chip { display:inline-block; font-size:16px; line-height:1.5; padding:2px 12px; border-radius:6px;
        white-space:nowrap; }
.chip.pursue { background:var(--purple); color:var(--cream); font-weight:700; }
.chip.review { background:var(--lilac); color:var(--black); }
.chip.quiet { background:var(--cream); color:var(--black); }
.chip.urgent { background:var(--purple); color:var(--cream); }
.chip.signal { background:var(--lilac); color:var(--black); font-weight:700; }
/* On cream grounds (cards, hovered index rows) lilac and cream chips switch to white:
   lilac on cream is a prohibited brand pairing, and cream on cream disappears. */
.card .chip.review, .card .chip.signal, .card .chip.quiet,
.day:hover .chip.review, .day:hover .chip.signal, .day:hover .chip.quiet { background:#fff; }
/* index rows */
.day { display:block; padding:16px 16px; border-radius:6px; margin:0 -16px; }
.day:hover { background:var(--cream); }
.day .row { display:flex; justify-content:space-between; gap:16px; align-items:baseline; }
.day .headline { font-size:16px; margin-top:4px; max-width:60ch; }
/* digest page */
.counts { margin:8px 0 24px; }
.card { background:var(--cream); border-radius:6px; padding:24px; margin:16px 0; }
.card .meta { font-size:16px; margin:2px 0 12px; }
.card ul, .item ul { list-style:none; margin:12px 0 0; }
.card li, .item li { font-size:16px; padding-left:22px; position:relative; margin-bottom:6px; }
.card li::before, .item li::before { content:""; position:absolute; left:0; top:9px;
        width:8px; height:8px; border-radius:6px; background:var(--purple); }
.card li.gap::before { background:var(--violet); }
.gaps-label { font-weight:700; font-size:16px; margin-top:16px; }
.btn { display:inline-block; background:var(--purple); color:var(--cream); font-weight:700;
       font-size:16px; padding:8px 18px; border-radius:6px; margin-top:16px; }
.draft { font-size:16px; background:#fff; border-radius:6px; padding:8px 12px; margin-top:12px;
         overflow-x:auto; white-space:nowrap; }
.item { padding:20px 0; }
.item .meta { font-size:16px; margin:2px 0 8px; }
.item .check { font-size:16px; max-width:60ch; }
details { margin:16px 0; }
summary { font-weight:700; font-size:18px; color:var(--purple); cursor:pointer; padding:8px 0; }
.skip-line { font-size:16px; margin:10px 0; }
.skip-line b { font-weight:700; }
table { width:100%; border-collapse:collapse; font-size:16px; margin-top:8px; }
th { text-align:left; font-weight:700; padding:8px 12px; }
td { padding:8px 12px; }
tbody tr:nth-child(odd) { background:var(--cream); }
tbody tr td:first-child, thead tr th:first-child { border-radius:6px 0 0 6px; }
tbody tr td:last-child, thead tr th:last-child { border-radius:0 6px 6px 0; }
.footer { margin-top:64px; font-size:16px; }
.empty { background:var(--cream); border-radius:6px; padding:24px; font-size:18px; margin:16px 0; }
@media (max-width:600px) {
  h1 { font-size:34px; }
  .wrap { padding:32px 16px 64px; }
  .day .row { flex-direction:column; gap:6px; }
}
