/* Net 30 / invoice due date calculator (/net-30-calculator/). Builds on .hmbd-tool in hmbd.css. */
.hmbd-n30 .hmbd-n30-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(12.5em, 1fr)); gap: 0.75em 1em; margin: 0 0 0.9em; }
.hmbd-tool.hmbd-n30 .hmbd-n30-fields > p { display: flex; flex-direction: column; align-items: stretch; gap: 0.3em; margin: 0; }
.hmbd-n30 .hmbd-n30-fields input, .hmbd-n30 .hmbd-n30-fields select { flex: 0 0 auto; width: 100%; box-sizing: border-box; }
.hmbd-n30 .hmbd-n30-custom[hidden] { display: none; }
.hmbd-n30 .hmbd-n30-checks { margin: 0 0 0.9em; display: flex; flex-direction: column; gap: 0; }
/* The whole label is the tap target: at least 44px tall. */
.hmbd-n30 .hmbd-n30-checks label { font-weight: 400; font-size: 0.95em; display: flex; gap: 0.6em; align-items: center; min-height: 44px; padding: 0.2em 0; box-sizing: border-box; cursor: pointer; }
.hmbd-n30 .hmbd-n30-checks input { flex: 0 0 auto; width: 1.25em; height: 1.25em; margin: 0; }
.hmbd-n30 #hmbd-n30-out { min-height: 3.2em; }
.hmbd-n30 #hmbd-n30-extra { min-height: 4.7em; font-size: 0.92em; }
@media (max-width: 544px) { .hmbd-n30 #hmbd-n30-out { min-height: 4.8em; } .hmbd-n30 #hmbd-n30-extra { min-height: 9em; } }
@media (max-width: 359px) { .hmbd-n30 #hmbd-n30-extra { min-height: 9.4em; } }
.hmbd-tool.hmbd-n30 .hmbd-n30-fields > p[hidden] { display: none; }
