/* Caffeine + L-theanine Ratio — its own styles (the shared ones are core/tools.css). Scoped .chqt-ct*. */
.chqt-ct-bar { position: relative; height: 22px; border-radius: 11px; overflow: hidden; border: 1px solid var(--chqt-line); background: #fff; }
.chqt-ct-zone { position: absolute; top: 0; bottom: 0; background: #cfe3dc; }
.chqt-ct-you { position: absolute; top: -2px; bottom: -2px; width: 4px; margin-left: -2px; background: var(--chqt-ink); }
.chqt-ct-scale { position: relative; height: 18px; margin: 2px 0 0; font-size: 12.5px; color: var(--chqt-muted); font-variant-numeric: tabular-nums; }
/* each label sits at its own value on the bar */
.chqt-ct-scale span { position: absolute; top: 0; transform: translateX(-50%); white-space: nowrap; }
.chqt-ct-scale span:first-child { left: 0; transform: none; }
.chqt-ct-scale span:last-child { left: auto; right: 0; transform: none; }
.chqt-ct-near { font-weight: 600; }
.chqt-ct-wrap { background: #fff; border: 1px solid var(--chqt-line); border-radius: 12px; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 10px 0; }
.chqt-ct-table { border-collapse: collapse; width: 100%; min-width: 480px; font-size: 14.5px; line-height: 1.35; color: var(--chqt-ink); }
.chqt-ct-table caption { text-align: left; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--chqt-muted); padding: 10px 10px 4px; }
.chqt-ct-table th, .chqt-ct-table td { padding: 6px 8px; border-top: 1px solid var(--chqt-line); text-align: left; vertical-align: top; font-variant-numeric: tabular-nums; }
.chqt-ct-table thead th { font-size: 13px; color: var(--chqt-muted); border-top: 0; }
.chqt-ct-table tbody th { font-weight: 600; }
.chqt-ct-table td:nth-child(4), .chqt-ct-table td:nth-child(2), .chqt-ct-table td:nth-child(3) { white-space: nowrap; }
.chqt-ct-table tr.chqt-ct-here th, .chqt-ct-table tr.chqt-ct-here td { background: var(--chqt-cream); font-weight: 700; }
.chqt-ct-med { margin-top: 6px; }
/* a line that has nothing to say (caffeine under the FDA's line) takes no room */
.chqt[data-tool="caffeine-theanine-ratio"] .chqt-note:empty { display: none; }
@media (max-width: 460px) {
  /* the live header is ~123 px taller than the preview's (VN49): the lede, the kicker and the tip step aside on a phone */
  .chqt[data-tool="caffeine-theanine-ratio"] .chqt-lede, .chqt[data-tool="caffeine-theanine-ratio"] .chqt-kicker, .chqt[data-tool="caffeine-theanine-ratio"] .chqt-ct-tip { display: none; }
  .chqt[data-tool="caffeine-theanine-ratio"] .chqt-form { gap: 8px; }
  .chqt[data-tool="caffeine-theanine-ratio"] .chqt-grid { gap: 10px; }
  .chqt[data-tool="caffeine-theanine-ratio"] .chqt-answer { font-size: 28px; }
}
