:root{color-scheme:light dark;--tool-bg:#f3f6fa;--tool-card:#fff;--tool-ink:#132b49;--tool-muted:#465c73;--tool-line:#cad5e1;--tool-link:#154d86;--tool-accent:#106653;--tool-note:#eaf3f9;--tool-error:#a92323}*{box-sizing:border-box}body{margin:0;background:var(--tool-bg);color:var(--tool-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:var(--tool-link);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #d29422;outline-offset:4px}.tool-skip{position:absolute;left:1rem;top:-6rem;background:var(--tool-card);padding:1rem;z-index:9}.tool-skip:focus{top:1rem}.tool-header{background:#102b4b;color:#fff}.tool-header-inner{max-width:1140px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1.5rem;flex-wrap:wrap}.tool-header a{color:#fff}.tool-brand{font-size:1.2rem;font-weight:750;text-decoration:none}.tool-header nav{display:flex;gap:1.2rem;flex-wrap:wrap}.tool-main{max-width:1140px;margin:auto;padding:1.5rem}.tool-breadcrumb{font-size:.9rem;color:var(--tool-muted)}.tool-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:750;color:var(--tool-accent);margin:1.8rem 0 .4rem}.tool-main h1{font-size:clamp(1.8rem,4.5vw,3.1rem);line-height:1.18;letter-spacing:-.025em;margin:.3rem 0 1rem;max-width:900px}.tool-intro{max-width:780px;font-size:1.12rem;color:var(--tool-muted)}.tool-meta{font-size:.86rem;color:var(--tool-muted)}.tool-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;align-items:start;margin:1.8rem 0}.tool-panel{min-width:0;background:var(--tool-card);border:1px solid var(--tool-line);border-radius:16px;padding:1.5rem;box-shadow:0 4px 18px #0c234408}.tool-panel h2{font-size:1.3rem;margin:0 0 1rem}.tool-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tool-field{min-width:0}.tool-field label{display:block;font-weight:650;font-size:.88rem;margin:0 0 .35rem}.tool-field input,.tool-field select,.tool-state-picker{width:100%;min-width:0;border:1px solid #8b9db1;border-radius:8px;padding:.65rem;font:inherit;font-size:1rem;background:var(--tool-card);color:var(--tool-ink);min-height:46px}.tool-field small{display:block;color:var(--tool-muted);font-size:.77rem;margin-top:.3rem}.tool-field input[aria-invalid=true]{border:2px solid var(--tool-error)}.tool-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.3rem 0 .7rem}button{font:inherit;border:0;border-radius:8px;padding:.7rem 1rem;cursor:pointer;min-height:44px;font-weight:650}.tool-primary{background:var(--tool-accent);color:#fff}.tool-secondary{background:var(--tool-note);color:var(--tool-link);border:1px solid var(--tool-line)}[hidden]{display:none!important}.tool-error{color:var(--tool-error);font-weight:650;border-left:4px solid var(--tool-error);padding:.6rem .8rem;background:var(--tool-bg)}.tool-live-status{font-size:.8rem;color:var(--tool-muted);min-height:1.3em}.tool-metrics{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.tool-metric{background:var(--tool-bg);padding:1rem;border-radius:10px;min-width:0}.tool-metric:first-child{grid-column:1/-1;background:var(--tool-note);border-left:4px solid var(--tool-accent)}.tool-metric dt{font-size:.8rem;line-height:1.4;color:var(--tool-muted)}.tool-metric dd{font-size:1.35rem;line-height:1.3;font-weight:750;margin:.4rem 0 0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.tool-metric:first-child dd{font-size:1.9rem}.tool-notice,.tool-empty{font-size:.88rem;background:var(--tool-note);border-radius:8px;padding:.8rem;margin:1rem 0 0}.tool-panel details{margin-top:1rem;border-top:1px solid var(--tool-line);padding-top:.8rem}.tool-panel summary{cursor:pointer;font-weight:650}.tool-table-scroll{max-width:100%;overflow-x:auto;margin:.8rem 0}.tool-table-scroll table{border-collapse:collapse;min-width:480px;width:100%;font-size:.82rem;font-variant-numeric:tabular-nums}.tool-table-scroll caption{text-align:left;font-weight:650;padding:.5rem}.tool-table-scroll th,.tool-table-scroll td{padding:.6rem;text-align:right;white-space:nowrap;border-bottom:1px solid var(--tool-line)}.tool-table-scroll th:first-child,.tool-table-scroll td:first-child{text-align:left}.tool-method{max-width:900px;margin:1.5rem 0}.tool-method h2{margin:1.5rem 0 .6rem}.tool-method li{margin:.6rem 0}.tool-related{display:flex;gap:.7rem 1.1rem;flex-wrap:wrap;padding:1rem 0}.tool-footer{background:#102b4b;color:#d5e0ec;padding:2rem 1.5rem;margin-top:3rem;font-size:.88rem}.tool-footer>div{max-width:1110px;margin:auto}.tool-footer nav{display:flex;gap:.8rem 1.2rem;flex-wrap:wrap}.tool-footer a{color:#fff}.tool-state{margin:0 0 1.2rem;padding:.9rem;background:var(--tool-note);border-radius:8px}.tool-state label{display:block;font-weight:650}.tool-state p{margin:.5rem 0 0;font-size:.8rem}.tool-visually-hidden{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}@media(max-width:760px){.tool-workspace{grid-template-columns:minmax(0,1fr)}.tool-panel{padding:1.15rem}.tool-main{padding:1rem}.tool-header-inner{padding:1rem}.tool-header nav{gap:.6rem 1rem}}@media(max-width:390px){.tool-inputs,.tool-metrics{grid-template-columns:minmax(0,1fr)}.tool-metric:first-child{grid-column:auto}.tool-metric dd{font-size:1.2rem}.tool-header nav{font-size:.85rem}}@media(prefers-color-scheme:dark){:root{--tool-bg:#101c2a;--tool-card:#192b3f;--tool-ink:#edf3fb;--tool-muted:#bfcede;--tool-line:#4b617a;--tool-link:#9fccff;--tool-accent:#177f69;--tool-note:#223b51;--tool-error:#ffb2ad}.tool-eyebrow{color:#78dec2}.tool-secondary{color:#c4e0ff}.tool-primary{background:#177f69}}
/* Keep the initial form compact; reveal the result column only after submission. */
.tool-workspace:has([data-result-panel][hidden]){grid-template-columns:minmax(0,1fr);max-width:760px}[data-result-panel]{scroll-margin-top:20px}

.tool-explanation p,.worked-example p{line-height:1.8;overflow-wrap:anywhere}.tool-main details{padding:1rem;margin:.8rem 0;border:1px solid #34445a;border-radius:12px}.tool-main summary{cursor:pointer;font-weight:600}.tool-byline{font-size:.85rem;line-height:1.6}.tool-explanation,.worked-example{margin:2rem 0}.tool-workspace>*{min-width:0}
