/* ---- Glossary: one line until opened, so the first lottery stays above the fold on a phone ---- */
.ah-help { margin-top:14px; }
.ah-help summary { cursor:pointer; font-weight:600; color:var(--primary-ink); font-size:.9rem; min-height:44px; display:flex; align-items:center; }
.ah-gloss { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:10px; margin-top:6px; }
.ah-g { display:flex; gap:10px; align-items:flex-start; padding:12px 13px; border-radius:var(--r-sm);
  background:var(--surface-2); border:1px solid var(--line); }
.ah-g .ico { width:34px; height:34px; border-radius:var(--r-xs); display:grid; place-items:center; flex:none;
  background:var(--surface); border:1px solid var(--line-2); font-size:1.05rem; }
.ah-g b { display:block; color:var(--ink); font-size:.9rem; margin-bottom:2px; }
.ah-g span { font-size:.82rem; color:var(--muted); line-height:1.5; }

/* ---- Lottery cards ---- */
.ah-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:14px; margin-top:4px; }
.ah-card { display:block; color:inherit; padding:18px 18px 16px; margin:0; position:relative; overflow:hidden; }
.ah-card::before { content:""; position:absolute; inset:0 0 auto 0; height:3px;
  background:var(--grad-brand); opacity:0; transition:opacity .18s; }
.ah-card:hover::before { opacity:1; }
.ah-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.ah-name { font-family:var(--font-display); font-weight:800; font-size:1.1rem; color:var(--ink); letter-spacing:-.01em; }
.ah-day { font-size:.8rem; color:var(--muted); margin-top:2px; }

/* Three answers at a glance: hot digit, cold digit, any-prize odds. */
.ah-tiles { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px; margin-top:14px; }
.ah-tile { display:flex; flex-direction:column; align-items:flex-start; gap:2px; padding:10px 12px; min-width:0;
  border-radius:var(--r-sm); background:var(--surface-2); border:1px solid var(--line); }
.ah-tile .k { font-size:.62rem; text-transform:uppercase; letter-spacing:.07em; color:var(--muted); font-weight:700; }
.ah-tile b { font-family:var(--font-mono); font-size:1.5rem; font-weight:700; line-height:1.1; color:var(--ink); white-space:nowrap; }
.ah-tile.hot b { color:var(--good); }
.ah-tile.cold b { color:var(--accent-ink); }
.ah-tile.odds b { color:var(--primary-ink); font-size:1.15rem; }
.ah-tile .p { font-size:.78rem; color:var(--ink-2); font-weight:600; }
@media (max-width:380px) { .ah-tile b { font-size:1.3rem; } .ah-tile.odds b { font-size:1rem; } }

/* Mini 0–9 strip: each digit's share minus the fair 10%, drawn up or down
   from the zero line, hottest and coldest coloured. */
.ds-mini { display:block; width:100%; height:auto; margin:12px 0 0; }
.ds-mini rect { fill:var(--line-2); }
.ds-mini rect.hot { fill:var(--good); }
.ds-mini rect.cold { fill:var(--accent-fill); }
.ds-mini .z { stroke:var(--ink-2); stroke-width:.7; }
.ds-mini text { font-family:var(--font-mono); font-size:7.5px; fill:var(--muted); }
.ds-mini text.b { fill:var(--ink); font-weight:700; }

.ah-verdict { display:flex; align-items:center; flex-wrap:wrap; gap:6px 8px; margin:6px 0 10px; font-size:.84rem; color:var(--ink-2); line-height:1.4; }
.ah-verdict .pill { flex:none; }
.ah-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; font-size:.82rem; color:var(--muted); }
.ah-end { font-family:"IBM Plex Mono", "IBM Plex Mono Fallback", ui-monospace, Menlo, monospace; font-weight:700; color:var(--ink); background:var(--surface-3);
  border-radius:7px; padding:3px 7px; font-size:.78rem; }
.ah-foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px;
  padding-top:12px; border-top:1px solid var(--line); font-size:.84rem; color:var(--muted); }
.ah-foot .go { color:var(--primary-ink); font-weight:700; white-space:nowrap; }
.ah-note { font-size:.9rem; color:var(--ink-2); line-height:1.65; }
