/* Half-Caff Caffeine Calculator — its own styles (the shared ones are core/tools.css). Scoped .chqt-hf*. */
.chqt-hf-bar { position: relative; height: 14px; border-radius: 7px; overflow: hidden; border: 1px solid var(--chqt-line); background: #fff; margin: 4px 0 2px; }
.chqt-hf-fill { position: absolute; top: 0; bottom: 0; left: 0; background: #d9b48a; }
.chqt-hf-low { position: absolute; top: 0; bottom: 0; left: 0; background: #8a5a2b; }
.chqt-hf-mark { position: absolute; top: 0; bottom: 0; width: 2px; margin-left: -1px; background: #8a3b12; }
.chqt-hf-scale { display: flex; justify-content: space-between; height: 18px; margin: 0 0 6px; font-size: 12.5px; color: var(--chqt-muted); font-variant-numeric: tabular-nums; }
.chqt-hf-b { font-weight: 700; }
.chqt-hf-over:empty, .chqt-hf-brand:empty { display: none; }
.chqt-hf-over { border-left: 3px solid #8a3b12; padding-left: 10px; }
.chqt-hf-brand { border-left: 3px solid var(--chqt-line); padding-left: 10px; }
.chqt-hf-src { margin: 10px 0; padding: 8px 10px; border-left: 3px solid var(--chqt-line); background: #fff; }
.chqt-hf-h { margin: 0 0 4px; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--chqt-muted); }
.chqt-hf-src ul { margin: 0; padding-left: 1.1em; font-size: 14.5px; line-height: 1.45; font-variant-numeric: tabular-nums; }
.chqt-hf-src li + li { margin-top: 4px; }
.chqt-hf-med { margin-top: 6px; }
/* on a phone the answer must clear the 390×664 first screen under the live header (VN49): the lede and the tip (both said
   again in the copy below) step aside, and the gaps tighten */
@media (max-width: 460px) {
  .chqt[data-tool="half-caff-caffeine"] .chqt-lede, .chqt[data-tool="half-caff-caffeine"] .chqt-hf-tip { display: none; }
  .chqt[data-tool="half-caff-caffeine"] .chqt-form { gap: 8px; }
  .chqt[data-tool="half-caff-caffeine"] .chqt-grid { gap: 10px; }
}
