#js-tool-container-cement-concrete-screed-calculator .cmc-app { display: flex; flex-direction: column; gap: 22px; color: var(--text-primary); --cmc-sand: #c79a5b; --cmc-gravel: #8a93a6; --cmc-water: #3d8bd9; }
html[data-theme="dark"] #js-tool-container-cement-concrete-screed-calculator .cmc-app { --cmc-sand: #d9a86b; --cmc-gravel: #9aa4b8; --cmc-water: #5fa3e6; }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-grid > .tbcalc-field,
#js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-2 > .tbcalc-field,
#js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-3 > .tbcalc-field { margin-bottom: 0; }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-field label { display: block; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.01em; color: var(--text-secondary); margin-bottom: 8px; }

#js-tool-container-cement-concrete-screed-calculator .cmc-outcome { display: flex; flex-direction: column; gap: 16px; }
#js-tool-container-cement-concrete-screed-calculator .tb-hero { display: flex; flex-direction: column; gap: 8px; padding: 22px 24px; border: 1px solid var(--border-color); border-left: 4px solid var(--accent-primary); border-radius: var(--radius-md, 10px); background: var(--accent-light); }
#js-tool-container-cement-concrete-screed-calculator .tb-hero-label { font-size: 0.85rem; font-weight: 600; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .tb-hero-row { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#js-tool-container-cement-concrete-screed-calculator .tb-hero-value { font-size: clamp(2rem, 6vw, 3rem); font-weight: 800; letter-spacing: -0.02em; line-height: 1; color: var(--text-primary); }
#js-tool-container-cement-concrete-screed-calculator .tb-hero-unit { font-size: 1rem; font-weight: 700; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .tb-hero-note { margin: 0; font-size: 0.86rem; line-height: 1.45; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .tb-status { border: 1px solid var(--border-color); border-left: 4px solid var(--accent-primary); border-radius: var(--radius-sm, 8px); padding: 10px 14px; font-size: 0.88rem; line-height: 1.45; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .tb-status.warn { border-left-color: var(--warning); background: var(--warning-light); color: var(--text-primary); }
#js-tool-container-cement-concrete-screed-calculator .tb-status.danger { border-left-color: var(--danger); background: var(--danger-light); color: var(--text-primary); }

#js-tool-container-cement-concrete-screed-calculator .tb-band { display: flex; flex-direction: column; gap: 6px; }
#js-tool-container-cement-concrete-screed-calculator .tb-band-track { display: flex; height: 26px; border-radius: 999px; overflow: hidden; border: 1px solid var(--border-color); background: var(--bg-tertiary); }
#js-tool-container-cement-concrete-screed-calculator .cmc-band-seg { display: block; flex: 0 0 auto; height: 100%; min-width: 4px; transition: width 200ms cubic-bezier(0.2, 0.7, 0.3, 1); }
#js-tool-container-cement-concrete-screed-calculator .cmc-band-cement { background: var(--accent-primary); width: 10.4%; }
#js-tool-container-cement-concrete-screed-calculator .cmc-band-sand { background: var(--cmc-sand); width: 34.8%; }
#js-tool-container-cement-concrete-screed-calculator .cmc-band-gravel { background: var(--cmc-gravel); width: 47%; }
#js-tool-container-cement-concrete-screed-calculator .cmc-band-water { background: var(--cmc-water); width: 7.8%; }
#js-tool-container-cement-concrete-screed-calculator .tb-band-axis { display: flex; justify-content: space-between; margin-top: 4px; }
#js-tool-container-cement-concrete-screed-calculator .tb-axis-label { font-size: 0.72rem; font-weight: 600; color: var(--text-muted); font-variant-numeric: tabular-nums; }
#js-tool-container-cement-concrete-screed-calculator .tb-band-legend { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 8px; }
#js-tool-container-cement-concrete-screed-calculator .cmc-legend-item { display: flex; align-items: center; gap: 7px; font-size: 0.82rem; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .cmc-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; flex: 0 0 auto; }
#js-tool-container-cement-concrete-screed-calculator .cmc-dot-cement { background: var(--accent-primary); }
#js-tool-container-cement-concrete-screed-calculator .cmc-dot-sand { background: var(--cmc-sand); }
#js-tool-container-cement-concrete-screed-calculator .cmc-dot-gravel { background: var(--cmc-gravel); }
#js-tool-container-cement-concrete-screed-calculator .cmc-dot-water { background: var(--cmc-water); }

#js-tool-container-cement-concrete-screed-calculator .tb-recipe { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; padding: 14px 18px; border: 1px solid var(--border-color); border-radius: var(--radius-md, 10px); background: var(--bg-tertiary); }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-main { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-caption { font-size: 0.74rem; font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; color: var(--text-muted); }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-ratio { font-size: 1.35rem; font-weight: 800; letter-spacing: -0.01em; color: var(--text-primary); font-variant-numeric: tabular-nums; }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-meta { display: flex; gap: 10px; flex-wrap: wrap; }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-meta-item { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 8px 12px; border: 1px solid var(--border-color); border-radius: var(--radius-sm, 8px); min-width: 92px; }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-meta-label { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-muted); }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-meta-item output { font-size: 1rem; font-weight: 750; color: var(--text-primary); font-variant-numeric: tabular-nums; }
#js-tool-container-cement-concrete-screed-calculator .tb-recipe-meta-unit { font-size: 0.78rem; font-weight: 600; color: var(--text-secondary); }

#js-tool-container-cement-concrete-screed-calculator .tb-meter { display: flex; flex-direction: column; gap: 4px; }
#js-tool-container-cement-concrete-screed-calculator .tb-meter-track { position: relative; height: 8px; border-radius: 999px; background: var(--bg-tertiary); border: 1px solid var(--border-color); }
#js-tool-container-cement-concrete-screed-calculator .cmc-meter-fill { position: absolute; left: 0; top: 0; bottom: 0; width: 90.8%; border-radius: 999px; background: linear-gradient(90deg, var(--accent-primary), var(--cmc-gravel)); opacity: 0.85; transition: width 200ms cubic-bezier(0.2, 0.7, 0.3, 1); }
#js-tool-container-cement-concrete-screed-calculator .tb-meter-labels { display: flex; justify-content: space-between; margin-top: 4px; }

#js-tool-container-cement-concrete-screed-calculator .tb-caption { margin: 0; font-size: 0.82rem; color: var(--text-muted); line-height: 1.45; }
#js-tool-container-cement-concrete-screed-calculator .tb-ledger { display: flex; flex-direction: column; gap: 10px; }
#js-tool-container-cement-concrete-screed-calculator .tb-ledger-row { display: flex; justify-content: space-between; gap: 12px; padding: 10px 14px; border: 1px solid var(--border-color); border-radius: var(--radius-sm, 8px); }
#js-tool-container-cement-concrete-screed-calculator .tb-ledger-row span:first-child { color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .cmc-details { display: flex; flex-direction: column; gap: 12px; }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table-wrap { overflow-x: auto; border: 1px solid var(--border-color); border-radius: var(--radius-md, 10px); }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table { width: 100%; border-collapse: collapse; font-size: 0.88rem; }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table caption { caption-side: top; text-align: left; padding: 10px 14px; font-size: 0.84rem; color: var(--text-secondary); }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table th, #js-tool-container-cement-concrete-screed-calculator .tbcalc-table td { padding: 8px 14px; text-align: right; border-top: 1px solid var(--border-color); }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table thead th { color: var(--text-secondary); font-weight: 600; border-top: 0; }
#js-tool-container-cement-concrete-screed-calculator .tbcalc-table th[scope="row"], #js-tool-container-cement-concrete-screed-calculator .tbcalc-table thead th:first-child { text-align: left; }
#js-tool-container-cement-concrete-screed-calculator .cmc-table-note { margin: 0; font-size: 0.84rem; line-height: 1.45; color: var(--text-muted); }
@media (max-width: 640px) {
  #js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-2, #js-tool-container-cement-concrete-screed-calculator .tbcalc-grid-3 { grid-template-columns: 1fr; }
  #js-tool-container-cement-concrete-screed-calculator .tb-recipe { flex-direction: column; align-items: stretch; }
  #js-tool-container-cement-concrete-screed-calculator .tb-hero { padding: 18px 18px; }
}
#js-tool-container-cement-concrete-screed-calculator .cmc-outcome .tbcalc-section-title, #js-tool-container-cement-concrete-screed-calculator .cmc-outcome .tbcalc-section-note, #js-tool-container-cement-concrete-screed-calculator .cmc-details .tbcalc-section-title, #js-tool-container-cement-concrete-screed-calculator .cmc-details .tbcalc-section-note { margin-bottom: 0; }