.BuildingAirflow-module__cXq0oG__airflow{min-width:0;color:var(--soma-ink);font-family:var(--font-sans);font-size:var(--soma-type-body);line-height:var(--soma-leading-body)}.BuildingAirflow-module__cXq0oG__demo{border:1px solid var(--soma-border);background:var(--soma-white);grid-template-columns:minmax(0,1fr) 310px;display:grid}.BuildingAirflow-module__cXq0oG__figure{align-self:center;min-width:0;margin:0}.BuildingAirflow-module__cXq0oG__scene{background:#dededc;position:relative;overflow:hidden}.BuildingAirflow-module__cXq0oG__scene>img{width:100%;height:auto;display:block}.BuildingAirflow-module__cXq0oG__scene>svg{width:100%;height:100%;position:absolute;inset:0}.BuildingAirflow-module__cXq0oG__halo{fill:none;stroke:#fff;stroke-width:9px;opacity:.9;stroke-linecap:round;stroke-linejoin:round}.BuildingAirflow-module__cXq0oG__airPath{fill:none;stroke:var(--soma-action);stroke-width:5px;stroke-linejoin:round;stroke-linecap:round}.BuildingAirflow-module__cXq0oG__inferred{stroke-dasharray:9 10;stroke-width:4px}.BuildingAirflow-module__cXq0oG__arrow{fill:var(--soma-action)}.BuildingAirflow-module__cXq0oG__zoneBranch{opacity:.25}.BuildingAirflow-module__cXq0oG__zoneBranch[data-selected=true]{opacity:1}.BuildingAirflow-module__cXq0oG__damperDisc{fill:var(--soma-paper);stroke:var(--soma-ink);stroke-width:2px}.BuildingAirflow-module__cXq0oG__blade{stroke:var(--soma-ink);stroke-width:6px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%;transition:transform .45s ease-in-out}.BuildingAirflow-module__cXq0oG__zoneLabelDisc{fill:var(--soma-ink);stroke:var(--soma-paper);stroke-width:2px}.BuildingAirflow-module__cXq0oG__zoneLabel{fill:#fff;font-family:var(--font-archivo), sans-serif;font-size:25px;font-weight:600}.BuildingAirflow-module__cXq0oG__flowDot{fill:#fff;stroke:var(--soma-action);stroke-width:3px;visibility:hidden}.BuildingAirflow-module__cXq0oG__scene[data-running=true] .BuildingAirflow-module__cXq0oG__flowDot{visibility:visible}.BuildingAirflow-module__cXq0oG__caption{border-top:1px solid var(--soma-border);color:var(--soma-muted);flex-wrap:wrap;gap:12px 18px;padding:18px 24px;font-size:.9375rem;line-height:1.5;display:flex}.BuildingAirflow-module__cXq0oG__key{align-items:center;gap:8px;display:inline-flex}.BuildingAirflow-module__cXq0oG__key i{background:var(--soma-action);flex:none;width:25px;height:4px}.BuildingAirflow-module__cXq0oG__key .BuildingAirflow-module__cXq0oG__dash{border-top:3px dashed var(--soma-action);background:0 0}.BuildingAirflow-module__cXq0oG__key .BuildingAirflow-module__cXq0oG__damperKey{background:var(--soma-ink)}.BuildingAirflow-module__cXq0oG__controls{--focus-ring:var(--soma-accent-dark);min-width:0;color:var(--soma-on-dark);background:var(--soma-night);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;align-content:start;gap:24px;padding:28px 24px;display:grid}.BuildingAirflow-module__cXq0oG__controlTitle h3{font-family:var(--font-archivo), sans-serif;font-size:var(--soma-type-heading);margin:0}.BuildingAirflow-module__cXq0oG__controls p{color:var(--soma-muted-dark);margin:8px 0 0;font-size:1rem;line-height:1.5}.BuildingAirflow-module__cXq0oG__controls label{margin:0 0 8px;font-size:1rem;font-weight:600;display:block}.BuildingAirflow-module__cXq0oG__controls select{width:100%;min-height:var(--soma-control-height);border:1px solid var(--soma-border-dark);background:var(--soma-panel);color:var(--soma-on-dark);font:inherit;border-radius:6px;padding:10px 12px}.BuildingAirflow-module__cXq0oG__controls button{width:100%;min-height:var(--soma-control-height);border:1px solid var(--soma-action);border-radius:var(--soma-control-radius);background:var(--soma-action);color:var(--soma-white);font:600 1rem/1.4 var(--font-sans);cursor:pointer;text-wrap:balance;padding:.875rem 1rem}.BuildingAirflow-module__cXq0oG__controls button:hover:enabled{background:var(--soma-action-hover);border-color:var(--soma-action-hover)}.BuildingAirflow-module__cXq0oG__controls button:disabled{background:var(--soma-panel);border-color:var(--soma-border-dark);color:var(--soma-muted-dark);cursor:default}.BuildingAirflow-module__cXq0oG__controls :is(button,select,input):focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}.BuildingAirflow-module__cXq0oG__controls input[type=range]{width:100%;height:44px;accent-color:var(--soma-accent-dark);cursor:pointer;margin:6px 0;display:block}.BuildingAirflow-module__cXq0oG__controls input:disabled{cursor:default}.BuildingAirflow-module__cXq0oG__controls .BuildingAirflow-module__cXq0oG__motionStatus{margin-top:14px}.BuildingAirflow-module__cXq0oG__playbackAction{min-height:56px}.BuildingAirflow-module__cXq0oG__readout{justify-content:space-between;align-items:center;gap:12px;display:flex}.BuildingAirflow-module__cXq0oG__readout output{font:2.25rem/1.2 var(--font-mono);margin:12px 0;display:block}.BuildingAirflow-module__cXq0oG__readout svg{flex:none}.BuildingAirflow-module__cXq0oG__scale{color:var(--soma-muted-dark);justify-content:space-between;font-size:.9375rem;display:flex}.BuildingAirflow-module__cXq0oG__notes{border-left:3px solid var(--soma-action);max-width:85ch;color:var(--soma-muted);margin:24px 0 0;padding-left:20px;font-size:1rem}@media (max-width:1100px){.BuildingAirflow-module__cXq0oG__demo{grid-template-columns:1fr}.BuildingAirflow-module__cXq0oG__controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 32px}.BuildingAirflow-module__cXq0oG__controlTitle,.BuildingAirflow-module__cXq0oG__playback{grid-column:1/-1}}@media (max-width:700px){.BuildingAirflow-module__cXq0oG__controls{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 20px}.BuildingAirflow-module__cXq0oG__caption{gap:10px 18px;padding:14px 16px}}@media (max-height:700px){.BuildingAirflow-module__cXq0oG__airflow[data-playing=true] .BuildingAirflow-module__cXq0oG__playbackAction button{z-index:60;width:auto;max-width:calc(100vw - 32px);position:fixed;bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.BuildingAirflow-module__cXq0oG__blade{transition:none}.BuildingAirflow-module__cXq0oG__flowDot{display:none}}@media (prefers-contrast:more){.BuildingAirflow-module__cXq0oG__halo,.BuildingAirflow-module__cXq0oG__zoneBranch{opacity:1}.BuildingAirflow-module__cXq0oG__airPath{stroke:#7f1720;stroke-width:7px}.BuildingAirflow-module__cXq0oG__caption,.BuildingAirflow-module__cXq0oG__notes{color:var(--soma-ink)}.BuildingAirflow-module__cXq0oG__controls p,.BuildingAirflow-module__cXq0oG__scale{color:#fff}}@media (prefers-reduced-transparency:reduce){.BuildingAirflow-module__cXq0oG__zoneBranch,.BuildingAirflow-module__cXq0oG__halo{opacity:1}}@media (forced-colors:active){.BuildingAirflow-module__cXq0oG__airflow,.BuildingAirflow-module__cXq0oG__demo,.BuildingAirflow-module__cXq0oG__controls{color:canvastext;background:canvas}.BuildingAirflow-module__cXq0oG__controls{--focus-ring:Highlight;border:1px solid canvastext}.BuildingAirflow-module__cXq0oG__controlTitle h3,.BuildingAirflow-module__cXq0oG__controls label,.BuildingAirflow-module__cXq0oG__controls p,.BuildingAirflow-module__cXq0oG__controls output,.BuildingAirflow-module__cXq0oG__scale,.BuildingAirflow-module__cXq0oG__caption,.BuildingAirflow-module__cXq0oG__notes{color:canvastext}.BuildingAirflow-module__cXq0oG__controls select{color:fieldtext;background:field;border-color:fieldtext}.BuildingAirflow-module__cXq0oG__controls button,.BuildingAirflow-module__cXq0oG__controls button:disabled{color:buttontext;background:buttonface;border-color:buttontext}.BuildingAirflow-module__cXq0oG__halo{stroke:canvas;opacity:1}.BuildingAirflow-module__cXq0oG__airPath,.BuildingAirflow-module__cXq0oG__blade,.BuildingAirflow-module__cXq0oG__damperDisc{stroke:canvastext}.BuildingAirflow-module__cXq0oG__damperDisc{fill:canvas}.BuildingAirflow-module__cXq0oG__zoneBranch{opacity:1}.BuildingAirflow-module__cXq0oG__flowDot{display:none}.BuildingAirflow-module__cXq0oG__arrow,.BuildingAirflow-module__cXq0oG__zoneLabelDisc{fill:canvastext}.BuildingAirflow-module__cXq0oG__zoneLabel{fill:canvas}.BuildingAirflow-module__cXq0oG__key i,.BuildingAirflow-module__cXq0oG__key .BuildingAirflow-module__cXq0oG__damperKey{background:canvastext}.BuildingAirflow-module__cXq0oG__key .BuildingAirflow-module__cXq0oG__dash{background:0 0;border-color:canvastext}}@media print{.BuildingAirflow-module__cXq0oG__demo{display:block}.BuildingAirflow-module__cXq0oG__scene{break-inside:avoid}.BuildingAirflow-module__cXq0oG__controls{color:#000;background:#fff}.BuildingAirflow-module__cXq0oG__controls p,.BuildingAirflow-module__cXq0oG__scale{color:#000}.BuildingAirflow-module__cXq0oG__playback,.BuildingAirflow-module__cXq0oG__flowDot{display:none}}
