:root{--tool-ink:#102448;--tool-muted:#5e6e87;--tool-blue:#0658ed;--tool-border:#dbe5f1;--tool-panel:#fff;--tool-bg:#f3f7fb}
.tool-skip{position:absolute;left:-9999px;top:0;z-index:50;padding:.75rem;background:white;color:var(--tool-ink)}
.tool-skip:focus{left:1rem;top:1rem}
.tool-header{background:#fff;border-bottom:1px solid var(--tool-border)}
.tool-header-inner{max-width:1440px;min-height:72px;margin:auto;padding:0 4%;display:flex;align-items:center;gap:clamp(1rem,5vw,5rem)}
.tool-brand{white-space:nowrap;font-size:clamp(1.4rem,2.1vw,1.75rem);font-weight:800;letter-spacing:-.065em;color:#142139;text-decoration:none;line-height:1}
.tool-brand b{color:#ec2f24;font-weight:800}
.tool-brand strong{color:#075bf7;font-weight:800}
.tool-nav{display:flex;align-items:center;gap:2.1rem;flex:1}
.tool-nav a,.tool-language{font-size:.95rem;color:#40516d;text-decoration:none}
.tool-nav a:hover,.tool-nav a:focus-visible,.tool-language:hover{color:var(--tool-blue)}
.tool-language{font-weight:700;white-space:nowrap}
body[data-tool]{margin:0;background:var(--tool-bg);color:var(--tool-ink);font-family:Inter,"Segoe UI","Microsoft YaHei",Arial,sans-serif;line-height:1.55}
.tool-main{max-width:1440px;margin:0 auto;padding:26px 4% 70px}
.tool-breadcrumb{color:#425975;font-size:.875rem;margin-bottom:26px}
.tool-breadcrumb a{color:#425975;text-decoration:none}
.tool-heading{max-width:920px;margin-bottom:28px}
.tool-eyebrow{font-size:.77rem;letter-spacing:.12em;color:#2d6cd8;font-weight:700;margin:0 0 8px}
.tool-heading h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.18;letter-spacing:-.035em;margin:0;color:#101f3e}
.tool-subtitle{margin:.35rem 0;color:#425975;font-size:1.3rem;font-weight:600}
.tool-description{font-size:1rem;color:#536884;margin:12px 0 0}
.tool-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:16px;align-items:stretch}
.tool-card{display:block;background:var(--tool-panel);border:1px solid var(--tool-border);border-radius:7px;padding:24px;min-width:0}
.tool-card h2,.tool-related h2{margin:0 0 18px;font-size:1.22rem;line-height:1.3;letter-spacing:-.02em}
.tool-fields{display:grid;grid-template-columns:1fr;gap:12px}
.tool-field{display:grid;grid-template-columns:minmax(150px,1fr) minmax(140px,1.25fr);gap:12px;align-items:center}
.tool-label{font-size:.92rem;color:#4a607c}
.tool-input-wrap{min-width:0;display:flex;align-items:stretch;border:1px solid #d7e2ef;border-radius:5px;background:#fff;overflow:hidden}
.tool-input-wrap:focus-within{outline:2px solid #375f9b;outline-offset:1px}
.tool-input-wrap input,.tool-input-wrap select{box-sizing:border-box;width:100%;min-width:0;border:0;background:transparent;font:inherit;font-size:.95rem;color:#14264a;padding:10px 12px;outline:0}
.tool-input-wrap input:focus-visible,.tool-input-wrap select:focus-visible{box-shadow:inset 0 0 0 2px #375f9b}
.tool-input-wrap select{cursor:pointer}
.tool-input-wrap .tool-inline-unit{flex:0 0 76px;width:76px;background:#f3f6fb;border-left:1px solid #d7e2ef;color:#516985}
.tool-unit{display:grid;place-items:center;min-width:45px;padding:0 9px;white-space:nowrap;background:#f3f6fb;color:#425975;font-size:.8rem}
.tool-unit:empty{display:none}
.tool-button{display:block;width:100%;margin-top:22px;padding:13px;border:0;border-radius:5px;background:#1264e9;color:white;font:inherit;font-weight:700;cursor:pointer}
.tool-button:hover{background:#034cc3}
.tool-button:focus-visible,.tool-language:focus-visible,.tool-related a:focus-visible{outline:3px solid #375f9b;outline-offset:3px}
.tool-error{margin:12px 0 0;color:#aa271c;font-weight:600;font-size:.9rem}
.tool-unit-switch-error{grid-column:1/-1;color:#aa271c;font-size:.9rem}
.tool-private{font-size:.8rem;color:#425975;margin:16px 0 0}
.tool-result-card{background:#f8fbff}
.tool-result-box{padding:24px;background:#e8f2ff;border-radius:6px;min-height:190px;box-sizing:border-box}
.tool-result-label{color:#4b6385;font-weight:600}
.tool-result-line{margin:12px 0 4px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.tool-result-value{font-size:clamp(2.4rem,4vw,4.2rem);line-height:1.15;font-weight:750;color:#0758eb;overflow-wrap:anywhere}
.tool-result-unit{font-size:1.25rem;color:#233e65}
.tool-detail{margin:16px 0 0;color:#4c6686;font-size:.9rem;overflow-wrap:anywhere}
.tool-result-hint{font-size:.9rem;color:#5b6f8b;margin:18px 0 0}
.tool-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.tool-info-grid p,.tool-info-grid li{font-size:.9rem;color:#526783}
.tool-info-grid ul{padding-left:1.2em;margin:0}.tool-info-grid li+li{margin-top:8px}
.tool-equation{padding:17px;background:#f4f7fb;border-radius:5px;color:#172e54!important;font-family:Georgia,serif;font-size:1rem!important;overflow-wrap:anywhere}
.tool-related{margin-top:35px}.tool-related h2{margin-bottom:15px}
.tool-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tool-related-grid a{display:flex;justify-content:space-between;gap:1rem;background:#fff;border:1px solid var(--tool-border);border-radius:6px;padding:16px;color:#31577e;text-decoration:none;font-size:.9rem}
.tool-related-grid a:hover{border-color:#9cbcf0;color:var(--tool-blue)}
.tool-disclaimer{margin:28px 0 0;font-size:.84rem;color:#425975}
.tool-footer{border-top:1px solid var(--tool-border);background:#fff;padding:24px 4%;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.tool-footer>div{display:flex;align-items:center;gap:1rem}.tool-footer p{font-size:.78rem;color:#425975;margin:0}.tool-footer>a{color:#3767ad;text-decoration:none}
.tool-brand-small{font-size:1.25rem}
@media(max-width:800px){.tool-header-inner{min-height:66px}.tool-nav{gap:1rem}.tool-nav a{font-size:.85rem}.tool-grid{grid-template-columns:1fr}.tool-info-grid{grid-template-columns:1fr}.tool-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tool-header-inner{flex-wrap:wrap;gap:.6rem;padding-top:13px;padding-bottom:12px}.tool-nav{order:3;flex-basis:100%;gap:1.3rem}.tool-language{margin-left:auto}.tool-main{padding-top:20px}.tool-breadcrumb{margin-bottom:20px}.tool-card{padding:19px}.tool-field{grid-template-columns:1fr;gap:5px}.tool-footer>div{display:block}.tool-footer p{margin-top:8px}.tool-related-grid{grid-template-columns:1fr}}

.tool-layers{display:grid;gap:12px;margin-top:18px}.tool-layer{min-width:0;margin:0;padding:14px;border:1px solid var(--tool-border);border-radius:6px}.tool-layer legend{padding:0 6px;font-weight:700;color:#31577e}.tool-layer-add,.tool-layer-remove{font:inherit;font-size:.9rem;cursor:pointer;background:transparent;color:#0758eb;border:1px solid #b9cfeb;border-radius:5px;padding:8px 12px}.tool-layer-add{margin-top:12px}.tool-layer-remove{margin-top:12px}.tool-layer-remove:disabled{opacity:.5;cursor:not-allowed}.tool-layer-add:focus-visible,.tool-layer-remove:focus-visible{outline:3px solid #375f9b;outline-offset:3px}
/* Keep fields disabled until the calculator's submit handler is installed. */
.tool-calculator-fields{border:0;margin:0;padding:0;min-width:0}
.tool-calculator-loading{color:#755317;background:#fff8ea;border:1px solid #ead8ac;border-radius:6px;padding:.75rem;font-size:.9rem}
