/* The board (index.html): the day's numbers, one tap to anything, and the
   card itself. Two columns on a desk, one on a phone. Moved out of the page
   head on 5 Sep 2026 so the glass restyle could be previewed without a
   session; nothing else loads it. */
.dash{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}
@media (max-width:820px){.dash{grid-template-columns:1fr}}

/* every tile is a door to its own section — it lifts a little under the
   pointer, the way a glass tile does, instead of drawing a dark border */
a.stat{display:block;text-decoration:none;color:inherit;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
a.stat:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--hair),var(--sh-lift)}
a.stat:active{transform:scale(.985);transition-duration:.12s}
.stat .s{font-size:.78rem;color:var(--ink3);font-weight:400;margin-top:6px}

/* quick actions: a small glass tile with the icon drawn in the brand red,
   bare — no disc behind it, the owner asked for that to go. Written as a.qa
   so it outranks the a:hover rule in app.css, which would otherwise put a
   maroon underline under the label the moment the pointer arrives. */
.qgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
a.qa{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 10px 16px;
  background:rgba(255,255,255,.55);border:1px solid var(--edge);border-radius:20px;
  box-shadow:0 0 0 1px var(--hair);
  text-decoration:none;color:var(--ink);font-weight:700;font-size:.88rem;text-align:center;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .2s}
a.qa:hover{background:var(--white);color:var(--ink);text-decoration:none;
  transform:translateY(-2px);box-shadow:0 0 0 1px var(--hair),var(--sh-lift)}
a.qa:active{transform:scale(.97);transition-duration:.12s}
.qa svg{width:28px;height:28px;stroke:var(--red);fill:none;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round}

/* the card, exactly as design.html previews it — set on a soft bloom of its
   own colour so it reads as an object lying on the glass, not a box in a box */
.card-prev{
  position:relative;
  background:var(--c,#FA294F);border-radius:22px;overflow:hidden;
  box-shadow:0 22px 44px -18px rgba(0,0,0,.45),0 2px 4px rgba(0,0,0,.08); /* browsers without color-mix */
  box-shadow:0 22px 44px -18px color-mix(in srgb,var(--c,#FA294F) 60%,transparent),
             0 2px 4px rgba(0,0,0,.08);
  color:var(--fg,#fff);
}
/* a diagonal sheen: light catching the top edge of a plastic card */
.card-prev::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(118deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.06) 32%,transparent 60%)}
.cp-top{display:flex;align-items:center;gap:9px;padding:13px 15px;background:rgba(0,0,0,.14)}
.cp-lg{width:30px;height:30px;border-radius:9px;background:#fff;flex-shrink:0;
  display:grid;place-items:center;overflow:hidden}
.cp-lg img{width:100%;height:100%;object-fit:contain}
.cp-lg svg{width:19px;height:19px}
.cp-nm{font-weight:700;font-size:.95rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-body{padding:15px}
.cp-lab{font-size:.7rem;opacity:.65;font-weight:500}
.cp-val{font-family:'Poppins',sans-serif;font-size:1.3rem;font-weight:600;line-height:1.3}
.cp-row{display:flex;gap:22px;margin-top:11px}
.cp-strip{display:block;width:100%}
.cp-strip img{display:block;width:100%}
