@charset "UTF-8";
:root{--ink:#17202c;--muted:#566275;--blue:#164ce5;--line:#dce2ec;--surface:#f3f6fc}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font:1.0625rem/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--blue);text-underline-offset:4px}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ecaa08;outline-offset:4px}.skip{position:absolute;top:-80px;left:12px;background:white;padding:10px;z-index:9}.skip:focus{top:8px}.wrap{max-width:1180px;margin:auto;padding:0 30px}.header{border-bottom:1px solid var(--line)}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:850;letter-spacing:-1px;color:var(--ink);font-size:1.5625rem;text-decoration:none}.brand span{color:var(--blue)}nav{display:flex;gap:28px;flex-wrap:wrap}nav a{color:var(--ink);font-size:0.9375rem;text-decoration:none;font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:0.75rem;font-weight:800;color:var(--blue)}.hero{padding:65px 0 48px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}h1,h2,h3{line-height:1.14;letter-spacing:-.04em}h1{font-size:clamp(2.5rem,5.2vw,4.5rem);margin:16px 0 24px;font-weight:800}h2{font-size:2rem;margin:10px 0 22px}h3{font-size:1.35rem}p{margin:0 0 20px}.lead{font-size:1.25rem;color:var(--muted);max-width:620px}.button,button{background:var(--blue);border:0;color:white;display:inline-block;padding:13px 22px;font:700 15px/1.4 system-ui;border-radius:4px;text-decoration:none;cursor:pointer}.button:hover,button:hover{background:#103bc1;text-decoration:none}.diagram{background:var(--surface);border:1px solid var(--line);padding:24px;border-radius:8px}.diagram svg{width:100%;height:225px;display:block}.diagram p{font-size:0.875rem;color:var(--muted);margin:8px 0 0}.section{padding:42px 0}.section-top{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.section-top p{font-size:0.875rem;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:25px;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:3px}.card h3{margin:16px 0 12px}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--blue)}.card p{font-size:1rem;color:var(--muted);margin-bottom:20px}.card>a{font-size:0.875rem;font-weight:700}.meta{font-size:0.8125rem;color:var(--muted)}footer{border-top:1px solid var(--line);margin-top:45px;padding:30px 0;color:var(--muted);font-size:0.875rem}.footer-inner{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.crumbs{font-size:0.875rem;padding-top:30px;color:var(--muted)}.article-head{max-width:880px;padding:25px 0 30px}.article-head h1{font-size:clamp(2.4rem,4.5vw,3.6rem)}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:65px}.prose h2{font-size:1.65rem;margin-top:36px}.prose li{margin-bottom:10px}.prose p{max-width:75ch}.prose table{width:100%;border-collapse:collapse;margin:24px 0;font-size:0.9375rem}.prose th,.prose td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.prose th{background:var(--surface)}.table-scroll{overflow:auto}.callout{background:var(--surface);border-left:4px solid var(--blue);padding:20px 24px;margin:22px 0}.callout p:last-child{margin:0}aside{border-top:3px solid var(--ink);padding-top:18px}aside h2{font-size:1.1rem}aside a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:0.9375rem}.sources{font-size:0.875rem;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-top:35px}.calc{display:grid;grid-template-columns:1.2fr 1fr;border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:0 0 30px}.fields{padding:30px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:0.875rem;font-weight:650;margin-bottom:18px}input,select{display:block;width:100%;min-height:46px;padding:10px;border:1px solid #9ba8bc;border-radius:4px;font:1rem system-ui;color:var(--ink);background:white;margin-top:7px}.hint{font-size:0.875rem;color:var(--muted);margin-top:18px}.result{padding:30px;background:#123fc3;color:#fff;display:flex;flex-direction:column;justify-content:center}.result h2{font-size:0.9375rem;letter-spacing:0;font-weight:500;margin:0 0 16px}.result strong{display:block;font-size:clamp(2.7rem,6vw,4rem);letter-spacing:-2px;line-height:1.15;margin-bottom:22px}.result p{font-size:0.9375rem}.result .small{font-size:0.875rem;color:#e2eafe}.error{color:#ad2017;font-size:0.875rem;min-height:24px}.tool-copy{max-width:800px}.tool-links{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px}.tool-links a{background:var(--surface);padding:9px 15px;font-size:0.875rem;border:1px solid var(--line);border-radius:3px}.formula{font:15px/1.7 ui-monospace,monospace;overflow-wrap:anywhere}.note-strip{border-top:1px solid var(--line);padding:24px 0;font-size:0.9375rem;color:var(--muted)}@media(max-width:800px){.hero{grid-template-columns:1fr;gap:30px;padding-top:38px}.diagram{max-width:480px}.cards{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr;gap:35px}.calc{grid-template-columns:1fr}.header-inner{padding:20px 0;align-items:flex-start;flex-direction:column;gap:12px}nav{gap:22px}}@media(max-width:520px){.wrap{padding:0 20px}.cards,.field-grid{grid-template-columns:1fr}.section-top{display:block}.fields,.result{padding:24px}.lead{font-size:1.125rem}.hero{gap:20px}.diagram svg{height:180px}.article-head h1{font-size:2.35rem}h2{font-size:1.7rem}}@media print{header,footer,aside,.skip,.tool-links,button{display:none}.wrap{padding:0}.article-layout{display:block}body{font-size:12pt;color:#000}.result{background:white;color:black}.result .small{color:black}}

nav{row-gap:12px}.cards>*{min-width:0}.prose,.article-head{overflow-wrap:break-word}.download-link{display:inline-block;margin:8px 0}
/* Keep large calculator results and navigation usable on narrow screens. */
.fields,.result,.article-layout>*,.calc>*{min-width:0}
.result strong{overflow-wrap:anywhere}
.table-scroll:focus-visible{outline:3px solid #ecaa08;outline-offset:4px}
nav a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:1000px){.header-inner{flex-wrap:wrap;padding-top:16px;padding-bottom:16px}}
@media(max-width:800px){.header-inner{padding-left:30px;padding-right:30px}}
@media(max-width:520px){.header-inner{padding-left:20px;padding-right:20px}}
[hidden]{display:none!important}
.preview-panel{background:var(--surface);padding:28px;min-width:0}
.preview-panel canvas,.preview-panel svg{display:block;max-width:100%;width:auto;max-height:440px;margin:0 auto 20px;border:1px solid #9ba8bc;background:white}
.preview-panel svg{width:100%;height:400px;border:0}
.preview-panel p{font-size:.9375rem;overflow-wrap:anywhere}
.secondary{background:#e4eafb;color:#183679;margin-top:8px}.secondary:hover{background:#ccd9fa}
button:disabled{opacity:.6;cursor:wait}
input[type=file]{font-size:.875rem;max-width:100%}
.trouble-form{max-width:800px;border:1px solid var(--line);border-radius:6px}
[data-symptom]{scroll-margin-top:24px;border-bottom:1px solid var(--line);padding-bottom:20px}
[data-symptom]:focus-visible{outline:3px solid #ecaa08;outline-offset:6px}
#pattern-download{margin:10px 0}
@media(max-width:520px){.preview-panel{padding:20px}.preview-panel svg{height:320px}.fields button{max-width:100%}}
.faq-item{border-bottom:1px solid var(--line);padding:16px 0}.faq-item summary{font-weight:650;cursor:pointer;min-height:44px;padding:8px 0;line-height:1.5}.faq-item p{margin:12px 0 8px}.faq-item summary:focus-visible{outline:3px solid #ecaa08;outline-offset:4px}
.consent-panel{position:fixed;bottom:16px;left:16px;right:16px;max-width:640px;padding:22px;background:#fff;border:1px solid #9ba8bc;border-radius:8px;box-shadow:0 6px 30px #17202c30;z-index:20;max-height:75vh;overflow:auto}.consent-panel h2{font-size:1.25rem}.consent-panel p{font-size:.9375rem}.consent-actions{display:flex;gap:12px;flex-wrap:wrap}.consent-actions button{flex:1;min-width:160px}.settings-link{background:none;color:var(--blue);font:inherit;padding:8px 0;text-decoration:underline}.settings-link:hover{background:none;color:var(--ink)}
@media print{.consent-panel{display:none!important}.faq-item{break-inside:avoid}}
.reference-figure{margin:24px 0}.reference-figure img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:5px}.reference-figure figcaption{font-size:.875rem;color:var(--muted);margin-top:10px;line-height:1.5}.card .reference-figure{margin:16px 0}.card .reference-figure figcaption{font-size:.8125rem}.cards .card h2{font-size:1.35rem;line-height:1.25}.cards .card h2 a{color:var(--ink);text-decoration:none}.crumbs{display:flex;flex-wrap:wrap;gap:7px;font-size:.875rem;line-height:1.5;padding-bottom:8px}.crumbs a{min-height:24px}.consent-title{font-size:1.25rem;margin:0 0 16px}
