/* ===== 咖啡因摄入计算 /tool/caffeine-intake ===== */

/* 饮品行 */
.cf-row {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 9px 0; border-bottom: 1px dashed var(--arc-line);
}
.cf-row:last-child { border-bottom: none; }
.cf-row-name b { font-size: 13.5px; color: var(--arc-ink); display: block; }
.cf-row-name small { font-size: 11.5px; color: var(--arc-ink-3); }
.cf-row-ctl { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.cf-qty { width: 64px !important; text-align: center; padding: 6px 4px !important; }
.cf-step {
    width: 30px; height: 30px; border-radius: var(--arc-radius);
    border: 1px solid var(--arc-line-strong); background: var(--arc-paper);
    color: var(--arc-ink); font-size: 15px; cursor: pointer; line-height: 1;
}
.cf-step:hover { color: var(--arc-brand); border-color: var(--arc-brand); }

/* 进度条 */
.cf-bar { position: relative; height: 18px; border-radius: 9px; background: var(--arc-paper-2); border: 1px solid var(--arc-line); overflow: hidden; margin-top: 14px; }
.cf-bar-fill { height: 100%; border-radius: 9px 0 0 9px; transition: width .3s ease; min-width: 2px; }
.cf-bar-fill.ok { background: var(--arc-ok); }
.cf-bar-fill.warn { background: var(--arc-warn); }
.cf-bar-fill.danger { background: var(--arc-danger); }
.cf-bar-mark { font-size: 12px; color: var(--arc-ink-3); margin-top: 6px; text-align: right; font-variant-numeric: tabular-nums; }

/* 明细表 */
.cf-num { font-family: var(--arc-mono); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; color: var(--arc-ink); font-weight: 700; }
.cf-note { color: var(--arc-ink-3); font-size: 12px; }
.cf-share { height: 10px; border-radius: 5px; background: var(--arc-paper-2); border: 1px solid var(--arc-line); overflow: hidden; min-width: 80px; }
.cf-share-fill { height: 100%; background: var(--arc-accent); border-radius: 5px; min-width: 2px; }
