/* BuiltinWashington v12.1 — single, plugin-only outer boundary.
   Future tools get this automatically through bw_master_page().
   Tool-specific styles continue controlling the UI INSIDE each section. */
.t000_main {
 --bw-master-max:1400px;
 --bw-master-edge:clamp(5px,1.15vw,22px);
 width:calc(100vw - 2 * var(--bw-master-edge)) !important;
 max-width:var(--bw-master-max) !important;
 margin:clamp(7px,1.1vw,18px) 0 clamp(22px,2vw,38px) !important;
 padding:0 !important;
 box-sizing:border-box !important;
 position:relative !important;
 left:50% !important;
 transform:translateX(-50%) !important;
 min-width:0 !important;
 color:inherit;
 background:transparent;
}
.t000_main, .t000_main *, .t000_main *::before, .t000_main *::after {box-sizing:border-box}
/* RESET ONLY THE EXTERNAL GEOMETRY imposed by old theme breakouts, v11, v12, and module CSS. */
body .t000_main > :is(.bplait,.bpex,.bput,.bw-mod,.bw-calc-tool,.bw-tool-heading),
body .t000_main :is(.bplait,.bpex,.bput,.bw-mod,.bw-calc-tool) {
 width:100% !important;
 max-width:100% !important;
 min-width:0 !important;
 position:relative !important;
 left:auto !important;
 right:auto !important;
 transform:none !important;
 margin-left:0 !important;
 margin-right:0 !important;
}
/* Section 001: uniform heading, description, breadcrumb, with independent theme/color. */
body .t000_main :is(.t001,.bw-tool-heading){
 display:block;
 width:100% !important;
 max-width:100% !important;
 min-width:0 !important;
 margin:0 0 clamp(15px,2.1vw,28px) !important;
 padding:clamp(17px,2.3vw,34px) !important;
 border-radius:clamp(12px,1.6vw,20px) !important;
 position:static !important;
 left:auto !important;
 transform:none !important;
 text-align:center !important;
}
.t000_main .t001 h1,.t000_main .bw-tool-heading h1 {margin-inline:auto!important;text-wrap:balance;overflow-wrap:anywhere}
.t000_main .t001 .bw-tool-summary,.t000_main .bw-tool-heading .bw-tool-summary {margin-inline:auto!important;max-width:950px!important;text-align:center!important}
.t000_main .t001 .bw-tool-crumb,.t000_main .bw-tool-heading .bw-tool-crumb{max-width:780px!important;margin-inline:auto!important}
/* Section 002: original tool-specific workspace; only its outer dimensions are standardized. */
.t000_main :is(.t002,.bplait-workspace,.bpex-layout,.bput-workspace,.bw-mod-work,.bw-calc-workspace){
 box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
}
.t000_main .bplait-upload,.t000_main .bplait-results {max-width:100%!important;min-width:0!important}
.t000_main :is(.bpex-primary,.bpex-settings,.bput-left,.bput-settings,.bw-mod-left,.bw-mod-settings,.bw-calc-form,.bw-calc-output){min-width:0;max-width:100%;box-sizing:border-box}
/* Sections 003 and 004: same left and right boundary as workspace and content. */
body .t000_main :is(.t003,.bw-input-help,.t004,.bw-related){
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin-left:auto!important;margin-right:auto!important;
 position:relative!important;left:auto!important;transform:none!important;
}
.t000_main .bw-input-help[hidden]{display:none!important}
.t000_main .bw-related{margin-top:clamp(18px,2.3vw,32px)!important;margin-bottom:clamp(22px,3vw,40px)!important}
/* Article and its rich content fill exactly the same master boundary. */
body .t000_main :is(.t005_article,.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article,.bw-v12-final-article){
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin-left:auto!important;margin-right:auto!important;
 box-sizing:border-box!important;
}
.t000_main :is(.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article){padding-inline:clamp(5px,.9vw,15px)!important}
.t000_main :is(.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article) :is(section,div,figure){max-width:100%;box-sizing:border-box}
.t000_main :is(.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article) img{max-width:100%;height:auto}
.t000_main :is(.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article) table{max-width:100%!important}
/* Section 005 FAQ: preserve native accessible collapsible details and existing palette. */
.t000_main :is(.t005_faq,.bw-final-faq){width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-bottom:0!important}
.t000_main :is(.t005_faq,.bw-final-faq) details{max-width:100%!important;min-width:0!important;overflow-wrap:anywhere}
.t000_main :is(.t005_faq_title,.bw-final-faq h2){line-height:1.3;overflow-wrap:anywhere}
.t000_main :is(.t005_faqs_que,.bw-final-faq summary){cursor:pointer;overflow-wrap:anywhere}
.t000_main :is(.t005_faq-ans,.bw-final-faq details p){overflow-wrap:anywhere}
/* Theme content width should not constrain our output; theme header/footer remain unchanged. */
body:has(.t000_main) .post-content{padding-top:0!important}
/* Prevent nested horizontal overflow caused by inherited fixed-width child grids. */
.t000_main :is(.bplait-main,.bplait-settings,.bw-mod-grid,.bw-calc-fields,.bpex-files,.bw-related-grid){min-width:0;max-width:100%}
@media(max-width:800px){
 .t000_main{--bw-master-edge:5px;margin-top:6px!important;margin-bottom:24px!important}
 body .t000_main :is(.t001,.bw-tool-heading){padding:clamp(14px,3.8vw,22px) clamp(10px,3vw,17px)!important;margin-bottom:14px!important}
 .t000_main :is(.bplait-seo-content,.bpex-seo,.bput-article,.bw-mod>article,.bw-calc-tool>article){padding-inline:5px!important}
 .t000_main .bw-related-grid{grid-template-columns:minmax(0,1fr)!important}
 .t000_main :is(.bpex-layout,.bput-workspace,.bw-mod-grid,.bw-calc-workspace){min-width:0!important}
}
@media(min-width:801px) and (max-width:1200px){.t000_main{--bw-master-edge:clamp(8px,1.2vw,16px)}}

/* Master boundary for both searchable public directories. */
body .t000_main :is(.bplait-directory,.bw-calc-directory){
 width:100%!important;max-width:100%!important;min-width:0!important;
 left:auto!important;right:auto!important;transform:none!important;
 position:relative!important;margin:0!important;padding:0!important;
}
.t000_main :is(.bplait-directory-grid,.bw-calc-cards){max-width:100%;min-width:0}

/* v12.2: focus FAQs and keep the page article wide. Apply only inside BuiltinWashington. */
body .t000_main :is(.t005_faq,.bw-final-faq,.bpex-faq,.bplait-faq,.bput-faq){
 width:calc(100% - 12px)!important;max-width:990px!important;margin-inline:auto!important;
 padding-inline:clamp(2px,1vw,12px)!important;
}
body .t000_main :is(.t005_faq,.bw-final-faq) h2{max-width:940px!important;margin-inline:auto!important;text-align:center!important}
body .t000_main :is(.t005_faq,.bw-final-faq) details{width:100%!important;max-width:100%!important;margin-inline:auto!important}
/* Browser's hidden attribute must defeat plugin layout rules and theme display overrides. */
.t000_main :is(.bplait-upload,.bpex-upload,.bplait-workspace,.bpex-results,.bplait-results)[hidden]{display:none!important}
/* Consistent first-contact design, without replacing each tool's own settings. */
.t000_main .bplait-upload,.t000_main .bpex-upload,.t000_main .bput-upload,.t000_main .bw-mod-picker{
 box-sizing:border-box!important;max-width:100%!important;text-align:center!important;
 border-radius:18px!important;min-width:0!important;overflow-wrap:anywhere;
}
.t000_main .bplait-upload{margin-inline:auto!important;min-height:260px!important;
 padding:clamp(22px,3vw,42px) clamp(12px,2.7vw,34px)!important}
.t000_main .bpex-upload{min-height:245px!important;align-content:center!important}
.t000_main :is(.bplait-upload-icon,.bpex-upload-icon,.bw-mod-icon){font-size:clamp(28px,3.4vw,44px)!important}
.t000_main .bplait-upload h3,.t000_main .bpex-upload strong,.t000_main .bput-upload h2,.t000_main .bw-mod-picker strong{
 display:block;font-size:clamp(18px,1.7vw,25px)!important;line-height:1.3!important;
 max-width:850px;margin-left:auto!important;margin-right:auto!important;
}
.t000_main .bplait-upload p,.t000_main .bpex-upload p,.t000_main .bput-upload p{
 font-size:clamp(12px,1vw,15px)!important;line-height:1.65!important;max-width:720px!important;
 margin-left:auto!important;margin-right:auto!important;
}
.t000_main .bplait-pill{max-width:100%!important;white-space:normal!important;text-align:center!important}
.t000_main :is(.bplait-choose,.bpex-choose,.bput-pick){min-height:44px!important;cursor:pointer!important}
.t000_main .bw-mod-picker{padding:clamp(22px,3vw,36px) 15px!important}
.t000_main .bw-mod-picker input[type=file]{display:block;max-width:min(100%,390px)!important;
 margin:16px auto 0!important;cursor:pointer!important; font-size:13px!important}
@media(max-width:800px){
 body .t000_main :is(.t005_faq,.bw-final-faq,.bpex-faq,.bplait-faq,.bput-faq){max-width:100%!important;width:100%!important;padding-inline:1px!important}
 .t000_main .bplait-upload{min-height:220px!important}
 .t000_main .bpex-upload{min-height:190px!important}
}

/* v12.3: output controls remain actual buttons; no persistent download href. */
.t000_main .bplait-results[hidden]{display:none!important}
.t000_main .bplait-results:not([hidden]){display:grid!important;min-width:0;width:100%!important}
.t000_main .bplait-result-card .bplait-download-one {display:block;width:calc(100% - 20px);margin:8px 10px 12px;cursor:pointer}
.t000_main .bplait-result-card .bplait-download-one:hover {filter:brightness(.96)}
.t000_main .bw-module-download-button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:39px;margin:6px;cursor:pointer;background:#175bc0;color:white;border:0;border-radius:9px;padding:9px 15px;font:inherit;font-size:13px;font-weight:650;overflow-wrap:anywhere}
@media(max-width:900px){.t000_main .bplait-results:not([hidden]){display:flex!important;flex-direction:column!important;gap:13px}}
