.aircalc { --ac-accent:#166a88; color:#23323a; max-width:1100px; margin:auto; font-family:system-ui,sans-serif; }
.aircalc * { box-sizing:border-box; }
.aircalc h2 { margin:0 0 .3rem; }
.aircalc-header { display:flex; align-items:start; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.aircalc .aircalc-language { display:flex; align-items:center; gap:.5rem; white-space:nowrap; }
.aircalc .aircalc-language select { width:auto; margin:0; }
.aircalc h3 { margin:0 0 1rem; font-size:1.2rem; }
.aircalc-intro { margin:0 0 1.4rem; color:#596a72; }
.aircalc-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:1rem; }
.aircalc form { display:flex; flex-direction:column; gap:.75rem; padding:1.3rem; border:1px solid #d8e2e6; border-radius:12px; background:#fff; box-shadow:0 2px 12px #20333b0a; }
.aircalc label { font-size:.88rem; font-weight:600; }
.aircalc input,.aircalc select { width:100%; margin-top:.3rem; padding:.65rem; border:1px solid #b6c6ce; border-radius:7px; background:white; color:inherit; font:inherit; }
.aircalc button { border:0; border-radius:7px; background:var(--ac-accent); color:white; padding:.7rem; font:inherit; font-weight:700; cursor:pointer; }
.aircalc button:disabled { opacity:.6; cursor:wait; }
.aircalc output { display:block; min-height:2.2rem; overflow-wrap:anywhere; color:var(--ac-accent); font-weight:700; font-size:1.1rem; }
.aircalc .aircalc-result-lines { white-space:pre-line; line-height:1.65; }
.aircalc-grid form { min-width:0; }
.aircalc-grid .aircalc-inline { display:flex; align-items:center; gap:.5rem; }
.aircalc-grid .aircalc-inline input { flex:1 1 auto; min-width:0; }
.aircalc-grid .aircalc-inline select { flex:0 0 auto; width:5.5rem; }
.aircalc-grid .aircalc-unit-suffix { white-space:nowrap; flex:0 0 4.5rem; text-align:right; }
.aircalc small { color:#596a72; line-height:1.4; }
.aircalc [hidden] { display:none!important; }
.aircalc .aircalc-thermal { max-width:760px; margin-top:1.4rem; gap:.9rem; }
.aircalc-thermal-rows { display:grid; gap:.5rem; }
.aircalc-thermal-row { display:grid; grid-template-columns:minmax(75px,100px) minmax(0,1fr) minmax(82px,115px); gap:.55rem; }
.aircalc .aircalc-thermal-row input,.aircalc .aircalc-thermal-row select { margin:0; }
.aircalc .aircalc-thermal-row select { font-size:1rem; }
.aircalc .aircalc-fixed-type,.aircalc .aircalc-fixed-unit { display:flex; align-items:center; min-width:0; padding:.65rem; border:1px solid #d8e2e6; border-radius:7px; background:#f5f8f9; }
.aircalc .aircalc-fixed-unit { justify-content:center; }
.aircalc .aircalc-thermal-guidance { display:block; padding:.55rem .7rem; border-left:3px solid var(--ac-accent); background:#f2f7f9; }
.aircalc .aircalc-thermal-medium { display:flex; gap:1.7rem; border:0; margin:0; padding:0; }
.aircalc-thermal-medium legend { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.aircalc .aircalc-thermal-medium label { display:inline-flex; align-items:center; gap:.4rem; font-size:1rem; }
.aircalc .aircalc-thermal-medium input { width:auto; margin:0; accent-color:var(--ac-accent); }
.aircalc .aircalc-thermal-time,.aircalc .aircalc-thermal-direction { max-width:270px; }
.aircalc .aircalc-thermal-time input { max-width:100px; }
.aircalc-thermal-result { display:grid; grid-template-columns:auto 28px minmax(85px,125px) minmax(125px,1fr) minmax(82px,115px); gap:.5rem; align-items:center; margin-top:.5rem; }
.aircalc .aircalc-thermal-result select { margin:0; }
.aircalc .aircalc-thermal-result output { min-height:0; padding:.62rem .4rem; border:1px solid #b6c6ce; border-radius:7px; text-align:right; font-size:1rem; }
.aircalc-thermal-arrow { font-size:1.6rem; text-align:center; }
.aircalc .aircalc-thermal-detail:empty { display:none; }
.aircalc .aircalc-thermal-reset { align-self:flex-start; padding:.35rem .6rem; background:transparent; color:var(--ac-accent); font-size:.85rem; }
.aircalc .aircalc-condensate { max-width:760px; margin-top:1.4rem; }
.aircalc-condensate-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.aircalc-condensate-fields label { min-width:0; }
.aircalc-condensate-fields label small { display:block; margin-top:.3rem; font-weight:400; }
.aircalc-operating-hours { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,2fr) minmax(120px,1fr); gap:.8rem; }
.aircalc-operating-hours label { min-width:0; }
.aircalc .aircalc-inline { display:flex; align-items:end; gap:.5rem; }
.aircalc .aircalc-inline input { min-width:0; flex:1; }
.aircalc .aircalc-inline select { width:auto; max-width:48%; }
.aircalc .aircalc-condensate [readonly] { background:#edf3f5; }
.aircalc-condensate-results { display:grid; gap:.45rem; margin-top:.5rem; }
.aircalc-condensate-results > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(80px,140px) 65px; gap:.5rem; align-items:baseline; border-bottom:1px solid #d8e2e6; padding:.3rem 0; }
.aircalc-condensate-results output { text-align:right; min-height:0; }
.aircalc .aircalc-condensate-detail:empty { display:none; }
@media (max-width:560px) {
  .aircalc-condensate-fields { grid-template-columns:1fr; }
  .aircalc-operating-hours { grid-template-columns:1fr; }
  .aircalc-thermal-result { grid-template-columns:auto 28px minmax(80px,1fr); }
  .aircalc-thermal-result select[name="target_type"] { grid-column:1/3; }
  .aircalc-thermal-result select[name="target_unit"] { grid-column:3; }
  .aircalc .aircalc-thermal-row select { font-size:.88rem; }
  .aircalc-thermal-row { grid-template-columns:minmax(75px,95px) minmax(0,1fr) minmax(66px,90px); }
}
