:root{--acmv-navy:#0b2545;--acmv-cyan:#62b6df;--acmv-silver:#c7d7e6;--acmv-ink:#15334e;--acmv-muted:#50677a;--acmv-line:#d6e3ec;--acmv-paper:#f3f7fa}
@media screen{
html{background:var(--acmv-paper);color:var(--acmv-ink)}
.sidebar{background:var(--acmv-navy)}.brand span{color:#9ddded}.sidebar .nav.active{background:#1d3552;color:#9ce8fc;border-color:#345776}.sidebar .nav:hover{background:#1b3049;color:#d8f4fc}.eyebrow{color:#14658c}.about-cta{background:#17658b;color:white;border-color:#17658b}.theme-toggle:focus-visible,a:focus-visible,button:focus-visible{outline-color:#2997c5}
.sidebar .nav .nav-icon{color:#88c4df}.sidebar .nav.active .nav-icon{color:#70dffa}.languages .current{border-color:#b3d9ed;background:#e7f4fc;color:#14658c}.project-bar button{color:#14658c}.tool-menu-toggle{background:#1d3552;border-color:#3e5876;color:#d3edff}.acmv-error{margin-left:auto}
.acmv-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:28px;margin:30px 0 42px;border:1px solid #294365;border-radius:20px;overflow:hidden;background:#101e36;color:#f4f8ff;padding:42px 36px}.acmv-hero h1{font-size:clamp(30px,3.2vw,48px);line-height:1.13;letter-spacing:-1.6px;margin:16px 0 20px}.acmv-hero .eyebrow{color:#70dffa;line-height:1.6;font-size:11px}.acmv-hero p{color:#c0cfe0;line-height:1.8;font-size:14px;max-width:530px}.acmv-hero h1 em{color:#71ddf7;font-style:normal}.acmv-hero figure{margin:0;min-width:0}.acmv-hero figure img{width:100%;height:auto;display:block;border-radius:12px}.acmv-hero figcaption{font-size:10px;color:#9aacbf;line-height:1.6;padding-top:8px}.acmv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.acmv-actions a{padding:12px 17px;border-radius:7px;font-weight:600;font-size:13px;text-decoration:none;line-height:1.4}.acmv-primary{background:#77def6;color:#102438}.acmv-secondary{border:1px solid #698198;color:#e5effa}.acmv-secondary:hover{background:#203654}.acmv-proof{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.acmv-proof span{border:1px solid #3a506b;color:#c8d8e9;border-radius:5px;padding:6px 9px;font-size:11px}
.acmv-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;margin:0 0 30px}.acmv-intro h2{font-size:25px;line-height:1.35;letter-spacing:-.6px}.acmv-intro p{margin:0;color:var(--acmv-muted);font-size:14px;line-height:1.85}.home-tools>h2{font-size:23px;margin-bottom:12px}.home-tool-group>h3{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#526981;margin:28px 0 14px}.tool-card{border-color:#d8e3ef;box-shadow:none;transition:transform .18s,border-color .18s}.tool-card:hover{transform:translateY(-3px);border-color:#3e94be}.tool-card>img{width:100%;aspect-ratio:1200/630;height:auto;object-fit:cover}.tool-card strong{color:#14658c}.home-process{padding:28px;margin:35px 0}.home-process h2{font-size:23px;margin-bottom:18px}.home-process>div{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.home-process p{line-height:1.8;color:var(--acmv-muted)}.home-process b{display:block;color:var(--acmv-ink)}.acmv-note{font-size:12px;line-height:1.8;color:var(--acmv-muted);border-left:3px solid #d89535;padding:10px 16px;margin:22px 0}
.acmv-about .acmv-hero{margin-top:30px}.acmv-about h2{font-size:23px;line-height:1.4}.acmv-about .about-grid{gap:18px;margin:25px 0}.acmv-about .about-grid section{padding:24px}.acmv-about .about-grid h2{font-size:18px}.acmv-about p{line-height:1.85;color:var(--acmv-muted)}.acmv-about .acmv-hero p{color:#c0cfe0}.acmv-about .about-section{padding:26px;margin:20px 0}.acmv-about ul{padding-left:20px;line-height:1.85;color:var(--acmv-muted)}.acmv-about .about-contributor{display:flex;gap:24px;align-items:center}.acmv-about .contributor-photo{width:120px;height:120px;object-fit:cover;border-radius:16px}.acmv-about a:not(.acmv-primary):not(.acmv-secondary){color:#14658c}.acmv-about figure.acmv-symbol{display:flex;align-items:center;justify-content:center;min-height:250px}.acmv-symbol img{max-width:210px}.acmv-error{max-width:620px;margin:80px auto;padding:32px;font-family:system-ui,sans-serif}.acmv-error img{width:72px}.acmv-error a{color:#17658b}
html[data-theme="dark"]{--acmv-ink:#e4edf8;--acmv-muted:#bdccdc;--acmv-line:#31445a;--acmv-paper:#101a2b;background:#101a2b;color:#e4edf8}html[data-theme="dark"] .eyebrow{color:#85dff7}html[data-theme="dark"] .tool-card,html[data-theme="dark"] .panel{background:#19283c;border-color:#31445a}html[data-theme="dark"] .tool-card h3,html[data-theme="dark"] .tool-card p{color:#d8e6f4}html[data-theme="dark"] .tool-card strong,html[data-theme="dark"] .acmv-about a:not(.acmv-primary):not(.acmv-secondary){color:#89e0f6}html[data-theme="dark"] .home-tool-group>h3{color:#a9c9e4}html[data-theme="dark"] .sidebar .nav.active{color:#9ce8fc}
@media(max-width:1100px){.acmv-hero{padding:30px 25px;gap:20px}.acmv-hero h1{font-size:34px}}
@media(max-width:780px){.acmv-hero{grid-template-columns:1fr;padding:28px 22px;margin:22px 0 30px}.acmv-hero h1{font-size:34px}.acmv-hero figure img{max-height:310px;object-fit:cover}.acmv-intro{grid-template-columns:1fr;gap:12px}.home-process>div{grid-template-columns:1fr;gap:4px}.acmv-about .about-grid{grid-template-columns:1fr}.acmv-about .about-contributor{align-items:flex-start;flex-direction:column}.acmv-about figure.acmv-symbol{min-height:170px}.acmv-symbol img{max-width:150px}}
@media(prefers-reduced-motion:reduce){.tool-card{transition:none}.tool-card:hover{transform:none}}
html[data-theme="dark"] body,html[data-theme="dark"] main{background:#101a2b}html[data-theme="dark"] .acmv-intro h2,html[data-theme="dark"] .acmv-about h2,html[data-theme="dark"] .home-tools>h2,html[data-theme="dark"] .home-process h2{color:#e4edf8}html[data-theme="dark"] .acmv-intro p,html[data-theme="dark"] .acmv-about p,html[data-theme="dark"] .acmv-about li,html[data-theme="dark"] .home-process p{color:#bdccdc}html[data-theme="dark"] .acmv-hero p{color:#c0cfe0}html[data-theme="dark"] .languages .current{border-color:#3f6685;background:#203c58;color:#9ce8fc}html[data-theme="dark"] .project-bar button{color:#9ce8fc}
/* Water-inspired identity: deep ocean blue, clean air blue and silver neutrals. */
html:not([data-theme="dark"]) body,html:not([data-theme="dark"]) main{background:#f3f7fa;color:#15334e}
.sidebar{background:#0b2545}.brand span{color:#bdd6e8}.sidebar .nav .nav-icon{color:#93bfdc}.sidebar .nav.active{background:#183e60;color:#e4f3fc;border-color:#426685}.sidebar .nav.active .nav-icon{color:#acd8f0}
.acmv-hero{background:linear-gradient(125deg,#fff 15%,#edf5fa 100%);border:1px solid #cddfe9;color:#15334e;box-shadow:0 12px 35px #0b254508}.acmv-hero h1{color:#0b2545}.acmv-hero h1 em{color:#1b6c9b}.acmv-hero .eyebrow{color:#2b6488}.acmv-hero p,.acmv-about .acmv-hero p{color:#50677a}.acmv-hero figure img{border:1px solid #d4e2eb}.acmv-hero figcaption{color:#596f80}.acmv-symbol img{border:none!important}.acmv-primary{background:#125a87;color:#fff;box-shadow:0 4px 12px #125a8718}.acmv-primary:hover{background:#0b4165}.acmv-secondary{border-color:#b2c9da;color:#244b68;background:#ffffffa8}.acmv-secondary:hover{background:#e4eff6}.acmv-proof span{border-color:#d0e0ea;background:#ffffffb3;color:#45657d}
.eyebrow,.tool-card strong,.acmv-about a:not(.acmv-primary):not(.acmv-secondary){color:#1b6c9b}.about-cta{background:#125a87;color:#fff;border-color:#125a87}.acmv-note{border-left-color:#82aecb}.tool-card{background:#fff;border-color:#d6e3ec}.tool-card:hover{border-color:#7aa8c6;box-shadow:0 8px 24px #0b25450a}.home-tool-group>h3{color:#406581}.languages .current{background:#e4eff6;border-color:#bed5e5;color:#174f77}
/* Align interactive calculator accents; warning/error colors retain their meaning. */
html:not([data-theme="dark"]) :is(.project-bar button,.text-button,.calc-links a,.transfer-actions a){color:#1b6c9b}
html:not([data-theme="dark"]) :is(.segmented button.selected,.shape-switch button.selected){background:#e6f1f8;color:#174f77;border-color:#80aecb}
html:not([data-theme="dark"]) .result-hero{background:#e7f1f8;border-color:#c1d9e9;color:#1b4969}
html:not([data-theme="dark"]) :is(.big-size small,.hero-middle p,.hero-foot){color:#52768f}html:not([data-theme="dark"]) .hero-foot strong{color:#245371}
html:not([data-theme="dark"]) :is(.badge,.count-tag){background:#e5f0f7;color:#215b82}.meter i{background:#448eb7}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#488eb7}
html[data-theme="dark"]{--acmv-ink:#e5eff7;--acmv-muted:#bccddb;--acmv-paper:#0b1b2b;background:#0b1b2b;color:#e5eff7}html[data-theme="dark"] body,html[data-theme="dark"] main{background:#0b1b2b}
html[data-theme="dark"] .acmv-hero{background:linear-gradient(125deg,#102c46,#153b56);border-color:#375b73;box-shadow:none}html[data-theme="dark"] .acmv-hero h1{color:#f2f7fb}html[data-theme="dark"] .acmv-hero h1 em{color:#8fc7e7}html[data-theme="dark"] .acmv-hero .eyebrow{color:#acd1e6}html[data-theme="dark"] .acmv-hero p{color:#c6d7e4}html[data-theme="dark"] .acmv-hero figcaption{color:#abc1d1}html[data-theme="dark"] .acmv-hero figure img{border-color:#395b73}
html[data-theme="dark"] .acmv-primary{background:#aad7f0;color:#0b2545;box-shadow:none}html[data-theme="dark"] .acmv-secondary{background:#163a55;border-color:#678da7;color:#e5f1f8}html[data-theme="dark"] .acmv-secondary:hover{background:#204b6a}html[data-theme="dark"] .acmv-proof span{background:#14344d;border-color:#4b6c83;color:#c6dbe9}
html[data-theme="dark"] :is(.panel,.tool-card){background:#122b40;border-color:#345166}html[data-theme="dark"] :is(.languages .current,.segmented button.selected,.shape-switch button.selected){background:#234d6c;color:#e5f1f8;border-color:#6a9cba;box-shadow:none}html[data-theme="dark"] :is(.tool-card strong,.project-bar button){color:#a7d0e8}
/* Shared calculator surfaces and controls, in both languages. */
html:not([data-theme="dark"]){--calc-surface:#f5f8fa;--calc-field:#fff;--calc-soft:#e3edf5;--calc-border:#c6d5e1;--calc-text:#15334e;--calc-secondary:#50677a;--calc-accent:#1b6c9b}
html[data-theme="dark"]{--calc-surface:#122b40;--calc-field:#10263a;--calc-soft:#183d59;--calc-border:#3e5b70;--calc-text:#e5eff7;--calc-secondary:#bdcfdd;--calc-accent:#a7d0e8}
html :is(.calc-inputs,.calc-results,.calc-path,.calc-method,.metric,.calc-metric,.transfer-actions,.method,.engineering-visual,.heat-preset-panel,.psy-process,.chart-panel,.psy-chart-panel){background:var(--calc-surface);border-color:var(--calc-border);color:var(--calc-text)}
html :is(.input-unit,.full-select,.calc-inputs select,.calc-inputs textarea){background:var(--calc-field);border-color:var(--calc-border);color:var(--calc-text)}
html :is(input,select,textarea,label,.metric strong,.calc-metric strong,.heading h1){color:var(--calc-text)}
html :is(.heading p,.input-note,.field-help,.calc-note,.calc-metric>span,.calc-metric small,.metric>span,.metric small,.metric p,.chart-foot,.chart-legend,.psy-legend,.psy-mix-note){color:var(--calc-secondary)}
html :is(.calc-metric.main,.calc-summary .calc-metric.main,.result-hero){background:var(--calc-soft);border-color:var(--calc-border);color:var(--calc-text)}
html :is(.calc-metric.main strong,.calc-metric.main small,.big-size,.big-size small,.hero-foot strong){color:var(--calc-accent)}
html :is(.segmented .selected,.shape-switch .selected,.heat-view-switch .selected,.scene-hotspot.selected){background:var(--calc-soft);border-color:var(--calc-accent);color:var(--calc-accent);box-shadow:inset 0 0 0 1px var(--calc-accent)}
html :is(.calc-links a,.calc-links button,.transfer-actions a,.method a,.calc-method a,.text-button){color:var(--calc-accent)}
html .input-unit:focus-within{border-color:#448eb7;box-shadow:0 0 0 3px #448eb71a}html :is(input,select,textarea):focus-visible{outline-color:#448eb7}
html table th{background:var(--calc-soft);color:var(--calc-secondary);border-color:var(--calc-border)}html table td{color:var(--calc-text);border-color:var(--calc-border)}html .candidate:hover,html .candidate.chosen{background:var(--calc-soft)}
html :is(.chart-legend i,.meter i){background:#448eb7}html #duct{color:var(--calc-accent)}
html .psy-properties strong{color:var(--calc-text)}html .psy-properties span{color:var(--calc-secondary)}html :is(.inputs,.calc-inputs,.calc-results,.chart-panel,.psy-chart-panel) h2{color:var(--calc-text)}
html .status:not(.warning){background:var(--calc-soft);color:var(--calc-accent);border:1px solid var(--calc-border)}
html:not([data-theme="dark"]) body :is(.segment-pass,.insulation-pass){color:#247451}html[data-theme="dark"] body :is(.segment-pass,.insulation-pass){color:#85d5af}
html:not([data-theme="dark"]) body :is(.segment-fail,.insulation-fail){color:#a43b36}html[data-theme="dark"] body :is(.segment-fail,.insulation-fail){color:#ffb5ad}
/* Softer light mode: reserve clean white for small editable fields. */
html:not([data-theme="dark"]){--acmv-paper:#e8eff4;background:#e8eff4}
html:not([data-theme="dark"]) body,html:not([data-theme="dark"]) main{background:#e8eff4}
html:not([data-theme="dark"]) :is(.panel,.project-bar,.tool-card,.project-toolbar,.project-panel){background:#f5f8fa;border-color:#c6d5e1}
html:not([data-theme="dark"]) .acmv-hero{background:linear-gradient(125deg,#f1f6fa,#e2edf5);border-color:#c2d5e3;box-shadow:0 8px 28px #0b254506}
html:not([data-theme="dark"]) .acmv-proof span{background:#f5f8fa;border-color:#c6d5e1}
html:not([data-theme="dark"]) .acmv-secondary{background:#f5f8fa;border-color:#adc5d7}
html:not([data-theme="dark"]) :is(.input-unit,.full-select){background:#fff}
html:not([data-theme="dark"]) tbody tr:nth-child(even){background:#edf3f7}
html:not([data-theme="dark"]) :is(.candidate:hover,.candidate.chosen){background:#e1edf5}
.tool-card>img.card-image-dark{display:none}
.tool-card>picture{display:block}
.languages{position:relative}
html:lang(ja) body{font-family:'Be Vietnam Pro','Yu Gothic','Meiryo',sans-serif}
html:lang(zh) body{font-family:'Be Vietnam Pro','Microsoft YaHei','PingFang SC',sans-serif}
html:lang(ko) body{font-family:'Be Vietnam Pro','Malgun Gothic','Apple SD Gothic Neo',sans-serif}
html:lang(th) body{font-family:'Be Vietnam Pro','Leelawadee UI','Tahoma',sans-serif;line-height:1.8}
html:lang(ja) :is(h1,h2,h3),html:lang(zh) :is(h1,h2,h3),html:lang(ko) :is(h1,h2,h3),html:lang(th) :is(h1,h2,h3){letter-spacing:normal;line-height:1.4}
.sidebar{overflow-x:hidden}
.sidebar .nav span:last-child{min-width:0;overflow-wrap:anywhere}
.language-picker{position:relative;font-size:14px}
.language-trigger{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:10px 13px;border:1px solid #b9cddd;border-radius:10px;background:#f5f8fa;color:#15334e;white-space:nowrap;min-height:42px}
.language-trigger::-webkit-details-marker{display:none}
.language-chevron{margin-left:9px;font-size:20px;line-height:1}
.language-picker[open] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;right:0;top:calc(100% + 8px);width:260px;max-width:calc(100vw - 32px);max-height: min(440px,65vh);overflow:auto;padding:8px;border:1px solid #b9cddd;border-radius:14px;background:#f5f8fa;box-shadow:0 15px 35px #0b25451f;z-index:1000}
.languages .language-options a{display:flex;align-items:center;gap:12px;padding:13px 14px;margin:0;border:0;border-radius:9px;color:#15334e;text-decoration:none;white-space:nowrap;min-height:46px}
.languages .language-options a:hover{background:#e3edf5}
.languages .language-options a.current{background:#dff1fb;color:#12638e;font-weight:700}
.language-options a span:not(.language-check){font-size:15px;line-height:1.5}
.language-check{margin-left:auto;font-size:20px}
.language-picker .language-flag{display:block;width:26px;height:18px;object-fit:cover;border-radius:3px;border:1px solid #c7d7e6}
.language-trigger:focus-visible,.language-options a:focus-visible{outline:2px solid #2681b1;outline-offset:3px}
html[data-theme="dark"] .language-trigger,html[data-theme="dark"] .language-options{background:#122b40;color:#e5eff7;border-color:#345166}
html[data-theme="dark"] .languages .language-options a{color:#d9e7f1}
html[data-theme="dark"] .languages .language-options a:hover{background:#1c3c54}
html[data-theme="dark"] .languages .language-options a.current{background:#234d6c;color:#a7d0e8}
@media(max-width:600px){.language-trigger{font-size:12px;gap:6px;padding:8px}.language-chevron{margin-left:2px}.language-options{width:245px}}
.tool-card>picture>img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}
html[data-theme="dark"] .tool-card>img.card-image-light{display:none}
html[data-theme="dark"] .tool-card>img.card-image-dark{display:block}
}
