  /* ---------- night mode: deep coffee (facelift redesign) ----------
     Designed as its own theme, not an inversion: espresso surfaces with warm
     depth, cream ink, embered accents, gold that reads like lamplight.
     Rule (see landmines): variables are (re)defined on body.dark ONLY —
     component rules below may not introduce new hardcoded hexes. */
  body.dark{
    --bg:#171006; --card:#241a10; --surface-2:#2c2014;
    --ink:#f2e8d4; --muted:#b0a184; --faint:#a89a7f; /* muted+faint tuned for WCAG AA on bg/card/surface-2/accent-soft; muted lighter than faint keeps the secondary>tertiary hierarchy in dark */
    --accent:#cd7f47; --accent-dark:#e2a06c; --accent-soft:#3b2a1a;
    --deep1:#0f0a04; --deep2:#33220f; --gold:#e0a531;
    /* Toast keeps the light theme's espresso, which reads as LIFTED against the darker night
       --bg. A hairline edge replaces the shadow, which does no work on a dark page. */
    --toast-edge:rgba(246,236,220,.14);
    --light:#8fb573; --medium:#d9a648; --serious:#c97676;
    --line:#3a2d1e; --line-strong:#4d3d29;
    --e1:0 1px 4px rgba(0,0,0,.4);
    --e2:0 3px 12px rgba(0,0,0,.45);
    --e3:0 12px 32px rgba(0,0,0,.6);
    background-image:radial-gradient(rgba(240,230,212,.02) 1px, transparent 1px);
  }
  body.dark .dbsearch{background:var(--surface-2); border-color:var(--line-strong);}
  body.dark .dbsearch input{background:var(--card); border-color:var(--line-strong); color:var(--ink);}
  body.dark .db-res{background:var(--card); border-color:var(--line-strong);}
  body.dark .db-res:active{background:var(--surface-2);}
  body.dark .pbar{background:var(--line);}
  body.dark .star-input span{color:var(--line-strong);}
  body.dark .shimmer{background:linear-gradient(90deg,var(--surface-2) 25%,var(--accent-soft) 37%,var(--surface-2) 63%); background-size:400% 100%;}
  body.dark .skel .sc,body.dark .skel .sl{opacity:.9;}
  body.dark .chip.g-light{background:#2c3a24; color:#9cc47f;}
  body.dark .chip.g-medium{background:#3e2f15; color:#d9a648;}
  body.dark .chip.g-serious{background:#3d2222; color:#d98c8c;}
  body.dark .chip.fmt{background:#2e2740; color:#b3a3d9;}
  body.dark .chip.untag{background:var(--surface-2); color:var(--muted);}
  body.dark .notes-line{color:var(--muted);}
  body.dark .mini{background:var(--accent-soft); color:var(--accent-dark);}
  body.dark .mini.fin{background:#26331f; color:#9cc47f;}
  body.dark .cov{background:linear-gradient(160deg,#4a3a28,#2e2317);}
  body.dark .grabber{background:var(--line-strong);}
  body.dark .btn.danger{border-color:#5c3a3a;}
  body.dark header{box-shadow:0 2px 18px rgba(0,0,0,.5);}
  body.dark nav{box-shadow:0 -4px 18px rgba(0,0,0,.4);}
