.ventilation{margin:2rem 0;padding:clamp(1rem,3vw,2rem);background:#f1f4e9;border:1px solid #c6d1bc;border-radius:6px;color:#20372d;min-width:0}.ventilation header h2,.ventilation header h3{font:400 clamp(1.6rem,3vw,2.3rem)/1.15 Georgia,serif;margin:.4rem 0 .9rem}.ventilation p{font-size:1rem;line-height:1.65}.vent-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.vent-presets button{border:1px solid #8b9e80;border-radius:3px;padding:.6rem .9rem;background:#fff;color:#20372d;font:inherit;cursor:pointer}.ventilation button:focus-visible,.ventilation input:focus-visible,.ventilation select:focus-visible,.ventilation summary:focus-visible{outline:3px solid #527838;outline-offset:3px}.vent-units{max-width:16rem;margin:1rem 0}.vent-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1rem 0}.vent-inputs fieldset{border:0;border-top:1px solid #b5c4a9;padding:.7rem 0 0;min-width:0}.vent-inputs legend{font:400 1.5rem Georgia,serif;padding:0 .7rem 0 0}.vent-inputs .field{margin-bottom:.8rem}.ventilation input,.ventilation select{width:100%;box-sizing:border-box}.vent-result{border-top:1px solid #b5c4a9;margin:1.6rem 0 1rem;padding-top:1.2rem}.vent-result h4{font:400 1.5rem/1.3 Georgia,serif;margin:.5rem 0}.vent-bars{margin:1.3rem 0}.vent-bars>div{display:grid;grid-template-columns:4rem 1fr 5.8rem;align-items:center;gap:.6rem;margin:.75rem 0;font-size:.9rem}.vent-bars strong{font-weight:500;text-align:right}.vent-bar-track{height:12px;display:block;background:#d9e0ce;border-radius:3px;overflow:hidden}.vent-bar-track>span{height:100%;display:block;background:#557a68;transition:width .2s}.vent-bars>div:nth-child(2) .vent-bar-track>span{background:#a4673e}.ventilation details{font-size:.92rem;border-top:1px solid #b5c4a9;padding-top:1rem}.ventilation summary{cursor:pointer;font-weight:600}.vent-error{color:#8b2f20}.ventilation [hidden]{display:none!important}.ventilation input:disabled,.ventilation select:disabled{opacity:1;color:#4e5e51}@media(max-width:520px){.vent-inputs{grid-template-columns:1fr;gap:.4rem}.vent-bars>div{grid-template-columns:3.6rem 1fr 5.3rem}}@media(prefers-reduced-motion:reduce){.vent-bar-track>span{transition:none}}
