#kmkcalc { max-width:880px; margin:0 auto; font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; }
#kmkcalc h2 { margin:0 0 12px 0; }
#kmkcalc .kmk-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#kmkcalc label { display:flex; flex-direction:column; gap:6px; }
#kmkcalc input, #kmkcalc select, #kmkcalc textarea { padding:10px; border:1px solid #d0d7de; border-radius:8px; font:inherit; }
#kmkcalc details { background:#f6f8fa; border:1px solid #e5e9ef; border-radius:8px; padding:10px; grid-column:1/-1; }
#kmkcalc .kmk-advanced-row { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:start; }
#kmkcalc .kmk-msg { margin-top:6px; color:#18385B; font-size:14px; }
#kmkcalc .kmk-cards { margin-top:16px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
#kmkcalc .kmk-card { background:#f8fafc; border:1px solid #e5e9ef; border-radius:12px; padding:12px; }
#kmkcalc .kmk-muted { font-size:13px; color:#555; }
#kmkcalc .kmk-big { font-size:22px; font-weight:700; margin-top:4px; }
#kmkcalc .kmk-note { margin-top:8px; font-size:13px; color:#555; }
#kmkcalc .kmk-footnote { margin-top:10px; font-size:13px; color:#555; line-height:1.5; }
#kmkcalc .kmk-error { margin-top:8px; color:#b00020; }
@media (max-width:640px){
  #kmkcalc .kmk-grid { grid-template-columns:1fr; }
  #kmkcalc .kmk-cards { grid-template-columns:1fr; }
}