/* Scoped to the shortcode so theme/plugin CSS is unlikely to conflict. */
.afcs{--afcs-ink:#162c3a;--afcs-muted:#617383;--afcs-line:#dce5eb;--afcs-light:#f3f7f9;--afcs-accent:#176b88;--afcs-blue:#145e79;--afcs-good:#127d74;--afcs-shadow:0 9px 24px rgba(20,46,60,.06);box-sizing:border-box;display:block;width:100%;max-width:1260px;margin:28px auto 40px;color:var(--afcs-ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.5;text-align:left;}
.afcs *,.afcs *:before,.afcs *:after{box-sizing:border-box;}
.afcs [hidden]{display:none!important;}
.afcs .afcs-hero{min-height:205px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 40px;border-radius:16px 16px 0 0;background:radial-gradient(circle at 88% -20%,rgba(51,157,186,.28),transparent 43%),linear-gradient(116deg,#112a3a,#1d4558);color:#fff;}
.afcs .afcs-hero-copy{max-width:690px;}
.afcs .afcs-eyebrow{font-weight:800;font-size:11px;letter-spacing:.16em;color:#8dd5e7;}
.afcs .afcs-eyebrow sup{font-size:8px;}
.afcs .afcs-hero h2{color:#fff;margin:12px 0 10px;padding:0;border:0;font-size:clamp(25px,2.5vw,35px);font-weight:750;line-height:1.17;letter-spacing:-.04em;}
.afcs .afcs-hero p{max-width:600px;color:#c6d8e2;font-size:14px;line-height:1.65;margin:0;}
/* Neutralize aggressive theme heading effects inside the hero. */
.afcs .afcs-hero h1,.afcs .afcs-hero h2,.afcs .afcs-hero h3,.afcs .afcs-hero h4,.afcs .afcs-hero h5,.afcs .afcs-hero h6{background:none!important;border:0!important;box-shadow:none!important;text-shadow:none!important;text-transform:none!important;position:static!important;display:block!important;}
.afcs .afcs-hero h1::before,.afcs .afcs-hero h1::after,.afcs .afcs-hero h2::before,.afcs .afcs-hero h2::after,.afcs .afcs-hero h3::before,.afcs .afcs-hero h3::after,.afcs .afcs-hero h4::before,.afcs .afcs-hero h4::after,.afcs .afcs-hero h5::before,.afcs .afcs-hero h5::after,.afcs .afcs-hero h6::before,.afcs .afcs-hero h6::after{content:none!important;display:none!important;background:none!important;border:0!important;box-shadow:none!important;}
.afcs .afcs-hero-copy,.afcs .afcs-hero-copy *{isolation:isolate;}

.afcs .afcs-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(325px,1fr);align-items:start;gap:0;border:1px solid var(--afcs-line);border-top:0;border-radius:0 0 16px 16px;box-shadow:var(--afcs-shadow);background:#fff;overflow:hidden;}
.afcs .afcs-form{padding:32px 36px 28px;margin:0;min-width:0;background:#fff;}
.afcs .afcs-section{border-bottom:1px solid var(--afcs-line);padding-bottom:28px;margin-bottom:29px;}
.afcs .afcs-section.afcs-last{margin-bottom:18px;border:0;padding-bottom:0;}
.afcs .afcs-step{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px;}
.afcs .afcs-step>span{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border:1px solid #c5dde7;border-radius:10px;background:#edf6f9;color:var(--afcs-accent);font-size:12px;font-weight:800;}
.afcs .afcs-step h3{font-size:17px;line-height:1.2;letter-spacing:-.018em;color:var(--afcs-ink);font-weight:750;margin:1px 0 4px;padding:0;}
.afcs .afcs-step p{font-size:12px;color:var(--afcs-muted);margin:0;line-height:1.5;}
.afcs .afcs-switch{display:flex;gap:2px;border:1px solid var(--afcs-line);border-radius:10px;padding:4px;margin:0 0 17px;min-width:0;max-width:380px;background:#f2f6f7;}
.afcs .afcs-switch label{position:relative;display:block;flex:1;margin:0;cursor:pointer;line-height:1.2;}
.afcs .afcs-switch input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer;}
.afcs .afcs-switch span{display:block;border-radius:7px;font-size:12px;font-weight:700;color:#637581;text-align:center;padding:10px 10px;transition:background .15s,color .15s,box-shadow .15s;}
.afcs .afcs-switch input:checked+span{background:#fff;color:#174a61;box-shadow:0 1px 4px rgba(17,52,68,.12);}
.afcs .afcs-switch input:focus-visible+span{outline:2px solid #1a7195;outline-offset:1px;}
.afcs .afcs-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px;}
.afcs .afcs-fields-compact{gap:14px 16px;}
.afcs .afcs-field{min-width:0;display:flex;flex-direction:column;gap:6px;}
.afcs .afcs-field.afcs-full{grid-column:1/-1;}
.afcs .afcs-field label{font-size:12px;font-weight:750;color:#263f4e;line-height:1.35;margin:0;}
.afcs .afcs-field label b{color:#627d8b;font-size:11px;margin-left:3px;font-weight:650;}
.afcs .afcs-field small{font-size:11px;color:#718491;line-height:1.5;min-height:14px;}
.afcs .afcs-field input,.afcs .afcs-field select,.afcs .afcs-field textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:44px;height:auto;padding:10px 11px;margin:0;border-radius:8px;border:1px solid #cbd9e2;background:#fff;color:var(--afcs-ink);font:500 13px/1.4 Inter,"Segoe UI",Arial,sans-serif;box-shadow:none;outline:none;appearance:auto;transition:border-color .15s,box-shadow .15s;}
.afcs .afcs-field textarea{resize:vertical;min-height:82px;}
.afcs .afcs-field input::placeholder,.afcs .afcs-field textarea::placeholder{color:#9baeb9;}
.afcs .afcs-field input:focus,.afcs .afcs-field select:focus,.afcs .afcs-field textarea:focus{border-color:var(--afcs-accent);box-shadow:0 0 0 3px rgba(23,107,136,.13);}
.afcs .afcs-notice{margin-top:13px;border-left:3px solid #90b9c7;padding:9px 12px;color:#58717f;font-size:11px;line-height:1.55;background:#f3f8fa;border-radius:0 6px 6px 0;}
.afcs .afcs-details{border:1px solid var(--afcs-line);border-radius:9px;overflow:hidden;margin-top:16px;}
.afcs .afcs-details summary{list-style-position:inside;cursor:pointer;padding:12px 14px;font-size:12px;font-weight:700;color:#284858;background:#f7fafb;}
.afcs .afcs-details summary span{font-size:11px;font-weight:500;color:#7a8c98;margin-left:4px;}
.afcs .afcs-details .afcs-fields{padding:14px;}
.afcs .afcs-reset{font:700 12px/1.2 inherit!important;color:#6b7a86!important;background:transparent!important;border:0!important;padding:10px 0!important;cursor:pointer;box-shadow:none!important;}
.afcs .afcs-reset:hover{text-decoration:underline;color:#223e4c!important;}
.afcs .afcs-error{margin:0 0 9px;padding:11px 13px;background:#fff6f3;border:1px solid #efc9b9;color:#943d24;border-radius:8px;font-size:12px;}
.afcs .afcs-results{min-width:0;background:#f4f8fa;padding:28px 24px 32px;border-left:1px solid var(--afcs-line);align-self:stretch;}
.afcs .afcs-result-card{padding:24px 21px 20px;background:#fff;border:1px solid #d6e3e9;box-shadow:0 5px 16px rgba(20,47,65,.045);border-radius:12px;}
.afcs .afcs-result-top{display:flex;gap:8px;justify-content:space-between;align-items:center;}
.afcs .afcs-result-top>span:first-child{letter-spacing:.10em;font-size:10px;font-weight:800;color:#637b88;}
.afcs .afcs-status{flex-shrink:0;padding:5px 7px;border:1px solid #cfdee6;border-radius:7px;background:#f5f9fa;color:#657c87;font-size:10px;font-weight:750;white-space:nowrap;}
.afcs .afcs-output{display:flex;align-items:baseline;gap:8px;margin-top:23px;min-height:78px;}
.afcs .afcs-output strong{font-weight:780;font-size:clamp(38px,4vw,51px);color:#153c52;letter-spacing:-.055em;line-height:1.2;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
.afcs .afcs-output>span{font-size:12px;font-weight:700;color:#78909d;}
.afcs .afcs-suboutput{color:#728795;font-size:12px;min-height:35px;line-height:1.5;}
.afcs .afcs-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--afcs-line);border-bottom:1px solid var(--afcs-line);padding:15px 0;margin:14px 0 12px;gap:10px;}
.afcs .afcs-metrics>div{display:flex;flex-direction:column;gap:5px;}
.afcs .afcs-metrics small{color:#70838f;font-size:10px;line-height:1.35;}
.afcs .afcs-metrics strong{font-size:15px;font-weight:800;color:#1b4358;font-variant-numeric:tabular-nums;}
.afcs .afcs-formula{color:#6a818d;font-size:11px;line-height:1.5;}
.afcs .afcs-assessment{padding:26px 8px 0;}
.afcs .afcs-side-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;}
.afcs .afcs-side-title h3{font-size:14px;font-weight:800;color:#244153;margin:0;padding:0;}
.afcs .afcs-side-title span{font-size:11px;color:#718997;font-weight:700;}
.afcs .afcs-progress-track{height:6px;background:#dae6ed;border-radius:20px;overflow:hidden;}
.afcs .afcs-progress-fill{display:block;background:#287995;height:100%;border-radius:20px;transition:width .2s;}
.afcs .afcs-checks{list-style:none!important;padding:9px 0 3px!important;margin:0!important;}
.afcs .afcs-checks li{display:flex;align-items:center;gap:10px;padding:7px 0;margin:0;font-size:12px;color:#6e8390;line-height:1.4;}
.afcs .afcs-checkicon{display:grid;place-items:center;width:17px;height:17px;flex:0 0 17px;font-size:17px;color:#abbec8;line-height:1;}
.afcs .afcs-checks li.afcs-done{color:#274958;font-weight:650;}
.afcs .afcs-checks li.afcs-done .afcs-checkicon{background:#d8eee9;color:#127568;border-radius:50%;font-size:11px;font-weight:800;}
.afcs .afcs-warning{background:#eaf1f5;color:#526d7d;padding:13px 14px;border-radius:9px;font-size:11px;line-height:1.65;margin:17px 0 15px;}
.afcs .afcs-warning strong{color:#264756;display:block;margin-bottom:2px;}
.afcs .afcs-actions{display:grid;grid-template-columns:minmax(0,1fr) 83px;gap:9px;}
.afcs .afcs-actions button{display:block;min-height:43px;border-radius:8px;padding:9px 10px;margin:0;font:750 12px/1.3 Inter,"Segoe UI",Arial,sans-serif!important;cursor:pointer;transition:opacity .15s;}
.afcs .afcs-copy{background:var(--afcs-blue)!important;color:#fff!important;border:1px solid var(--afcs-blue)!important;}
.afcs .afcs-copy:hover{opacity:.9;}
.afcs .afcs-copy:disabled{opacity:.43;cursor:not-allowed;}
.afcs .afcs-print{background:#fff!important;color:#315769!important;border:1px solid #cbdce4!important;}
.afcs .afcs-source{font-size:10px;color:#728693;line-height:1.65;margin:17px 2px 0;}
@media(max-width:950px){.afcs .afcs-layout{grid-template-columns:1fr;}.afcs .afcs-form{padding:28px 32px;}.afcs .afcs-results{border-left:0;border-top:1px solid var(--afcs-line);padding:24px 32px;}.afcs .afcs-assessment{padding:22px 8px 0;}.afcs .afcs-hero{padding:30px 32px;}}
@media(max-width:560px){.afcs{margin:14px auto 28px;}.afcs .afcs-hero{padding:25px 22px;min-height:0;flex-direction:column;align-items:flex-start;gap:18px;border-radius:12px 12px 0 0;}.afcs .afcs-hero h2{font-size:26px;}.afcs .afcs-layout{border-radius:0 0 12px 12px;}.afcs .afcs-form,.afcs .afcs-results{padding:24px 18px;}.afcs .afcs-fields{grid-template-columns:1fr;}.afcs .afcs-field.afcs-full{grid-column:auto;}.afcs .afcs-assessment{padding-left:2px;padding-right:2px;}.afcs .afcs-result-card{padding:19px 16px;}.afcs .afcs-output strong{font-size:42px;}.afcs .afcs-result-top{flex-wrap:wrap;}}
@media print{.afcs{margin:0;max-width:100%;font-size:12px;}.afcs .afcs-layout{grid-template-columns:1fr 1fr;box-shadow:none;}.afcs .afcs-form{padding:15px;}.afcs .afcs-results{padding:15px;border-left:1px solid #ddd;border-top:0;}.afcs .afcs-hero{min-height:0;padding:12px 16px;color:#111;background:#fff;border:1px solid #ddd;}.afcs .afcs-hero h2,.afcs .afcs-hero p,.afcs .afcs-eyebrow{color:#111;}.afcs .afcs-switch,.afcs .afcs-actions,.afcs .afcs-reset{display:none!important;}.afcs .afcs-section{break-inside:avoid;padding-bottom:10px;margin-bottom:12px;}.afcs .afcs-section .afcs-step{margin-bottom:8px;}.afcs .afcs-fields{gap:6px;}.afcs .afcs-field input,.afcs .afcs-field select,.afcs .afcs-field textarea{min-height:25px;padding:3px 5px;font-size:10px;}.afcs .afcs-notice{display:none;}}

.afcs .afcs-inline-result{display:none;}
@media(max-width:950px){.afcs .afcs-inline-result:not([hidden]){display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:7px;margin-top:16px;padding:12px 14px;border-radius:8px;background:#eaf5f8;border:1px solid #cfebf0;}.afcs .afcs-inline-result span{font-size:10px;letter-spacing:.06em;font-weight:800;color:#52788a;}.afcs .afcs-inline-result strong{font-size:16px;font-weight:800;color:#17556e;font-variant-numeric:tabular-nums;}}

/* Independent units and one matching configuration drawing. */
.afcs .afcs-measure{display:flex;gap:6px;min-width:0;width:100%}
.afcs .afcs-measure input{flex:1 1 auto;min-width:0;width:0}
.afcs .afcs-measure select{flex:0 0 65px;width:65px;min-width:0;padding:8px 7px}
.afcs .afcs-drawing-preview{border-top:1px solid var(--afcs-line);margin:27px 8px 4px;padding-top:22px}
.afcs .afcs-drawing-preview .afcs-side-title{align-items:flex-start}
.afcs .afcs-drawing-preview .afcs-side-title>span{font-size:10px;text-align:right}
.afcs .afcs-drawing-intro{font-size:11px;line-height:1.6;color:var(--afcs-muted);margin:5px 0 13px}
.afcs .afcs-drawing-empty{font-size:12px;color:#6b7d89;line-height:1.55;border:1px dashed #c9dbe3;background:#fff;padding:20px;border-radius:10px}
.afcs .afcs-drawing-result{background:#fff;border:1px solid var(--afcs-line);border-radius:11px;padding:12px}
.afcs .afcs-drawing-result h4{font-size:13px;line-height:1.4;font-weight:800;margin:0 0 10px;color:#183f54}
.afcs .afcs-drawing-view{display:flex;align-items:center;justify-content:center;min-height:110px;max-height:400px;border-radius:8px;background:#fff;text-decoration:none}
.afcs .afcs-drawing-view img{display:block;width:auto;max-height:390px;max-width:100%;object-fit:contain}
.afcs .afcs-drawing-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.afcs .afcs-drawing-buttons a{display:inline-block;text-decoration:none;font-size:12px;font-weight:750;border:1px solid #cadce5;border-radius:8px;padding:10px 12px;background:#f1f7f9;color:#15546d}
.afcs .afcs-drawing-buttons a:first-child{background:#175e7b;border-color:#175e7b;color:#fff}
.afcs a:focus-visible,.afcs button:focus-visible,.afcs summary:focus-visible{outline:3px solid #1681a5;outline-offset:3px}
@media print{.afcs .afcs-drawing-buttons{display:none!important}.afcs .afcs-drawing-preview{margin-top:10px;padding-top:12px}.afcs .afcs-drawing-view{max-height:180px}.afcs .afcs-drawing-view img{max-height:170px}}

/* Customer-facing configuration drawing layout */
.afcs .afcs-drawing-result[hidden],.afcs .afcs-drawing-empty[hidden]{display:none!important}
.afcs .afcs-drawing-intro{margin:11px 3px 1px;font-size:11px;line-height:1.55;color:#627c89}
.afcs .afcs-drawing-buttons a:focus-visible{outline:3px solid #1681a5;outline-offset:3px}
@media(max-width:560px){.afcs .afcs-layout{border-radius:0 0 12px 12px}.afcs .afcs-drawing-preview{margin:22px 0 0}}

/* V4 customer-facing catalog match and compact result dimensions. */
.afcs .afcs-checkbox{display:flex;align-items:flex-start;flex-direction:row;gap:10px;cursor:pointer;font-size:12px;font-weight:650;line-height:1.45;color:#264355;margin:6px 0 0}
.afcs .afcs-checkbox input{appearance:auto;flex:0 0 17px;width:17px;min-width:17px;min-height:17px;height:17px;margin:1px 0 0;accent-color:var(--afcs-accent)}
.afcs .afcs-checkbox span{flex:1;line-height:1.5}
.afcs .afcs-confirm{padding:12px;border:1px solid #cadde6;border-radius:9px;background:#f6fafc;margin-top:6px}
.afcs .afcs-selection{margin-top:23px;padding:0 8px}
.afcs .afcs-selection-empty{padding:20px;border:1px dashed #c6d8e2;background:#fff;border-radius:10px;color:#536f7e;line-height:1.6;font-size:12px}
.afcs .afcs-match{border:1px solid #cadde4;border-radius:12px;background:#fff;padding:18px 18px 14px}
.afcs .afcs-match-kicker{font-size:10px;color:#427a8b;font-weight:800;letter-spacing:.09em}
.afcs .afcs-model{font-size:21px!important;line-height:1.2;color:#173c50!important;font-weight:800!important;margin:8px 0 6px!important;padding:0!important;letter-spacing:-.015em}
.afcs .afcs-match-description{font-size:12px;color:#557181;line-height:1.55;margin:0 0 16px}
.afcs .afcs-specs{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid #e3ebf0}
.afcs .afcs-spec-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #e4edf1;font-size:12px;line-height:1.35}
.afcs .afcs-spec-row span{color:#5e7887;flex:1}
.afcs .afcs-spec-row strong{font-size:12px;color:#1b4055;font-weight:750;text-align:right;flex:1;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.afcs .afcs-match-footnote{margin:12px 1px 0;font-size:10px;color:#6c8290;line-height:1.6}
.afcs .afcs-customer-note{font-size:12px;color:#58727e;line-height:1.6;margin:0 0 15px}
.afcs .afcs-results{padding-bottom:30px}
.afcs .afcs-drawing-preview{margin-top:20px}
.afcs .afcs-drawing-view img{max-height:250px}
@media(max-width:950px){.afcs .afcs-selection{padding-left:0;padding-right:0}}
@media(max-width:560px){.afcs .afcs-selection{padding:0}.afcs .afcs-match{padding:16px 14px}.afcs .afcs-spec-row{gap:8px}}
@media print{.afcs .afcs-checkbox{font-size:10px}.afcs .afcs-selection{margin-top:10px}.afcs .afcs-spec-row{padding:4px 0;font-size:9px}.afcs .afcs-spec-row strong{font-size:9px}.afcs .afcs-drawing-view img{max-height:185px}}

/* v4.0.3: customer fit guidance replaces the untestable self-certification checkbox. */
.afcs .afcs-fit-guidance{grid-column:1/-1;margin:3px 0 0;font-size:12px;line-height:1.55;color:#4d7183;background:#f1f7fa;border-left:3px solid #6ca5bb;padding:11px 13px;border-radius:0 8px 8px 0}

/* v4.0.4: compact core sizing and optional advanced application details */
.afcs .afcs-advanced{margin-top:21px}
.afcs .afcs-advanced summary span{font-size:11px;color:#627f8e;font-weight:600}
.afcs .afcs-fit-guidance{margin:0 14px 16px;color:#537283;font-size:11px;line-height:1.6}
.afcs .afcs-outstanding{margin:15px 0 8px;background:#f0f6f9;border:1px solid #d3e3eb;border-radius:9px;padding:13px 14px}
.afcs .afcs-outstanding strong{display:block;font-size:12px;color:#234e63;margin-bottom:8px}
.afcs .afcs-outstanding-list{list-style:disc outside!important;padding-left:17px!important;margin:0!important;color:#446475}
.afcs .afcs-outstanding-list li{font-size:11px;line-height:1.6;margin:0 0 5px!important;padding:0!important}
.afcs .afcs-outstanding-list li:last-child{margin-bottom:0!important}
