.dm-calc { border: 1px solid #e5e5e5; border-radius: 8px; padding: 24px; margin: 24px 0;
  font-family: 'Nunito Sans', 'Lato', -apple-system, sans-serif; background: #f8f8f8; }
.dm-row { margin-bottom: 16px; }
.dm-title { font-size: 22px; font-weight: 800; color: #141414; margin-bottom: 4px; }
.dm-info { font-size: 14px; color: #404040; line-height: 1.5; }
.dm-label { display: block; font-size: 14px; font-weight: 700; color: #141414; margin-bottom: 6px; }
.dm-unit { font-weight: 400; color: #777; }
.dm-input { width: 100%; max-width: 220px; padding: 8px 10px; font-size: 15px;
  border: 1px solid #ccc; border-radius: 4px; background: #fff; }
.dm-sliderwrap { display: flex; align-items: center; gap: 12px; }
.dm-sliderwrap input[type=range] { flex: 1; max-width: 320px; accent-color: #e00a16; }
.dm-sliderval { min-width: 3em; font-weight: 700; color: #e00a16; }
.dm-options { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.dm-option { font-size: 14px; color: #141414; display: flex; align-items: center; gap: 6px; }
.dm-option input { accent-color: #e00a16; }
.dm-result { display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
  background: #fff; border: 1px solid #e5e5e5; border-left: 4px solid #e00a16;
  border-radius: 4px; padding: 10px 14px; }
.dm-result .dm-label { margin: 0; }
.dm-result .dm-value { font-size: 18px; font-weight: 800; color: #e00a16; white-space: nowrap; }
