/* 2026-10-31 (ADR-032 slimming): The ROI calculator (/pricing#roi and /roi) — moved out of the shared site.css / site-pages.css (every page downloads those) in their original order. */
.defaults { margin-top:48px; padding-top:34px; border-top:1px solid var(--border); }
.defaults h3 { font-size:15px; margin-bottom:18px; }
.defaults { border-top: 0; padding: 28px; margin-top: 40px; border-radius: var(--radius-lg);
  background: var(--surface); border: 1px solid var(--border); }
.roi-calc { min-height:560px; margin-top:26px; }
.roi-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:22px; align-items:start; }
.roi-inputs { display:grid; gap:14px; }
.roi-group { margin:0; padding:14px 16px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.roi-group legend { padding:0 6px; font-weight:800; font-size:14px; color:var(--text); }
.roi-hint { margin:2px 0 8px; font-size:12.5px; line-height:1.45; color:var(--muted); }
.roi-field { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:6px 0; font-size:14px; }
.roi-label { color:var(--text); }
.roi-input { display:inline-flex; align-items:center; gap:6px; }
.roi-input input, .roi-field select { width:120px; min-height:40px; padding:6px 10px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); color:var(--text); font:inherit; font-size:16px; font-variant-numeric:tabular-nums; }
.roi-field select { width:150px; }
.roi-pre, .roi-post { color:var(--muted); font-size:13px; }
.roi-input input:disabled { opacity:.5; }
.roi-check { display:flex; gap:8px; align-items:center; min-height:44px; font-size:14px; cursor:pointer; }
.roi-out { position:sticky; top:88px; padding:18px; border-radius:16px; background:var(--surface); border:1px solid color-mix(in srgb, var(--brand) 35%, var(--border)); box-shadow:var(--shadow); }
.roi-out-h { margin:0 0 10px; font-size:18px; }
.roi-rows { margin:0; display:grid; gap:10px; }
.roi-row { display:grid; grid-template-columns:1fr auto; gap:2px 12px; }
.roi-row dt { color:var(--text); font-size:14px; }
.roi-row dd { margin:0; font-weight:800; font-variant-numeric:tabular-nums; }
.roi-work { grid-column:1 / -1; font-size:12px; color:var(--muted); }
.roi-total { padding-top:10px; border-top:1px solid var(--border); }
.roi-total dd { color:var(--ok); }
.roi-result { margin-top:14px; padding:12px 14px; border-radius:12px; background:color-mix(in srgb, var(--ok) var(--tint), transparent); }
.roi-result.neg { background:color-mix(in srgb, var(--warn) var(--tint), transparent); }
.roi-net { font-size:20px; font-weight:800; }
.roi-kpi { margin-top:2px; font-size:14px; color:var(--text); }
.roi-note { margin:10px 0 0; font-size:12px; color:var(--muted); }
.roi-cta { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.roi-quote { margin-top:12px; font-size:14px; }
.roi-quote summary { cursor:pointer; min-height:44px; display:flex; align-items:center; font-weight:700; color:var(--brand-text); }
.roi-form { display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.roi-form input { flex:1 1 160px; min-height:44px; padding:8px 12px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); color:var(--text); font:inherit; font-size:16px; }
.roi-form .roi-hp { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
.roi-form-msg { width:100%; margin:0; font-size:13px; color:var(--muted); }
@media (max-width: 860px) { .roi-grid { grid-template-columns:1fr; } .roi-out { position:static; } .roi-calc { min-height:0; } }
@media print {
  .roi-grid { grid-template-columns:1fr; }
  .roi-out { box-shadow:none; border:0; }
}
.roi-input input, .roi-field select { min-height: 44px; }
