#calcul-buses { color: #102f44; }
#calcul-buses > p { max-width: 72ch; line-height: 1.55; }
#calcul-buses form { padding: clamp(1rem, 3vw, 2rem); border: 1px solid #bad1db; background: #edf5f8; border-radius: .7rem; }
#calcul-buses form[hidden] { display: none; }
.nozzle-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: 1rem; align-items: end; }
.nozzle-fields label { display: grid; gap: .4rem; color: #16374c; font: 650 1rem/1.4 system-ui, sans-serif; }
.nozzle-fields input, .nozzle-fields select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: .6rem; background: white; color: #102f44; border: 1px solid #668397; border-radius: .35rem; font: 400 1rem/1.4 system-ui, sans-serif; }
.nozzle-fields select:disabled { opacity: .7; }
#calcul-buses button { margin-top: 1rem; cursor: pointer; padding: .7rem 1.1rem; min-height: 44px; border: 0; border-radius: .35rem; color: #fff; background: #0b4d72; font: 680 1rem/1.4 system-ui, sans-serif; }
#calcul-buses :focus-visible { outline: 3px solid #00759a; outline-offset: 3px; }
.nozzle-results:not(:empty) { margin-top: 1.25rem; border-top: 1px solid #bad1db; padding-top: 1rem; }
#calcul-buses .nozzle-results dl { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin: 0; }
.nozzle-results dt { color: #39576a; font-size: .95rem; }
.nozzle-results dd { margin: .25rem 0 0; font: 700 1.32rem/1.2 system-ui, sans-serif; font-variant-numeric: tabular-nums; }
#calcul-buses .nozzle-formula { font-size: .94rem; }
@media print { #calcul-buses button { display: none; } }
