/* Laabak calculator family. Palette matches BeltForge Field Edition.
   Presentation only: the existing calculator engines are preserved. */
.design-test-bar{display:flex;justify-content:center;align-items:center;gap:8px 20px;flex-wrap:wrap;padding:10px 18px;background:#25211e;color:#f0c9ad;border-bottom:1px solid #69482f;font:600 13px/1.5 system-ui,sans-serif;text-align:center}
.design-test-bar strong{color:#ff9a50}.design-test-bar a{color:#f6f0ea;text-underline-offset:4px;min-height:30px;display:inline-flex;align-items:center}
.calculator-family{--bg:#111315;--panel:#1d2126;--panel2:#242a31;--paper:#1d2126;--ink:#edf0f4;--muted:#a7afb9;--gray:#a7afb9;--line:#373d46;--orange:#ff7a1a;--navy:#111315;--dark:#111315;--pale:#1d2126;--ice:#ffad73;color-scheme:dark;background:radial-gradient(ellipse at 88% 0%,#c55a131a,transparent 34%),#111315;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.calculator-family :is(input,select,textarea,button){font-family:inherit}
.calculator-family :is(.calculator,.drum,.beltGuide,.travel,#designer){scroll-margin-top:88px;background:transparent}
.calculator-family :is(.kicker,.eyebrow){color:#ff9a50;letter-spacing:.16em}
.calculator-family :is(.top,header){background:#111315;border-color:var(--line);color:var(--ink)}
.calculator-family .head{min-height:88px}.calculator-family .head a{color:#e4e9ef}
.calculator-family .head img{background:#e6e8e5;border-radius:8px;padding:5px 9px}
.calculator-family .hero{background:transparent;padding:58px 0 46px;border-bottom:1px solid var(--line)}
.calculator-family h1{font-weight:850;letter-spacing:-.05em}
.calculator-family .hero h1 span{color:var(--orange)}
.calculator-family .hero p{color:#b4becb}
.calculator-family .heroPanel{background:#1d2126;border-left:3px solid var(--orange);border-radius:0 12px 12px 0;color:#edf0f4}
.calculator-family .heroPanel ul{color:#bdc6d1}
.calculator-family .draft{display:none}
.calculator-family .tool-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid #3b424b;background:#14181df5;backdrop-filter:blur(14px)}
.calculator-family .tool-nav-inner{display:flex;align-items:center;gap:8px;padding:11px 0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#5b4739 #14181d}
.calculator-family .tool-nav a{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:8px;color:#b7c0cd;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.calculator-family .tool-nav a:hover{background:#242b33;color:#fff}
.calculator-family .tool-nav a[aria-current]{color:#ffac70;border-color:#88542f;background:#39291e}
.calculator-family .tool-nav a span{color:#ff9a50;font-size:11px;font-variant-numeric:tabular-nums}
.calculator-family :is(.calculator>.wrap,.drum>.wrap,#designer>.wrap){background:#191d22;border:1px solid #414851;border-top:3px solid var(--orange);border-radius:16px;box-shadow:0 18px 50px #0003;padding:clamp(20px,3.2vw,40px);font-family:inherit}
.calculator-family :is(.calculator,.drum){padding:38px 0}
.calculator-family .beltGuide{padding:0 0 12px}
.calculator-family :is(.calculator h2,.drum h2,.beltGuide h2,#designer h2){font-family:inherit;font-weight:800;color:#f0f3f7;letter-spacing:-.035em}
.calculator-family :is(.calcLead,.drum .note,.heading p,.guideCaveat){color:#aeb7c2;line-height:1.7}
.calculator-family :is(.calcGrid,.planner){gap:22px;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
.calculator-family :is(.calcForm,#designer .formPanel){background:#1e2329;border:1px solid #414851;border-radius:12px;padding:26px;box-shadow:none;min-width:0}
.calculator-family :is(.calcForm,.calcResult,.advancedGuide,.formPanel,.resultPanel){font-family:inherit;font-variant-numeric:tabular-nums}
.calculator-family :is(.calcResult,#designer .resultPanel){background:radial-gradient(ellipse at 100% 0%,#ff7a1a15,transparent 55%),#14181d;border:1px solid #784524;border-top:4px solid var(--orange);border-radius:12px;padding:26px;box-shadow:0 10px 30px #0002;color:#edf0f4;min-width:0}
.calculator-family .resultPanel{position:static}
.calculator-family .calcResult .kicker{color:#ff9a50}
.calculator-family .calcResult .figure{font-size:clamp(28px,3.8vw,46px);line-height:1.15;letter-spacing:-.045em;color:#f4f6f9}
.calculator-family .calcResult dl{border-color:#3a434e;gap:10px 18px}
.calculator-family .calcResult dt{color:#bac4d1}.calculator-family .calcResult dd{color:#f2f5fa}
.calculator-family .calcResult .calcTotal{border-color:#5d4431;color:#ffab6e;font-weight:800}
.calculator-family :is(.assumptions,.fine,.calcResult small,.calcForm small,.takeupHelp,.help,.field small,.resultPanel p,.routeFoot){color:#aeb9c7;line-height:1.65}
.calculator-family :is(.calcForm label,.spliceCheck label,.travel label,.b2bfields label,.field){color:#d0d8e3;font-family:inherit;font-size:14px;font-weight:650;letter-spacing:0;min-width:0}
.calculator-family :is(.calcForm input,.calcForm select,.calcForm textarea,.spliceCheck input,.travel input,.field input,.field select,.field textarea,.b2bfields input,.b2bfields textarea,.freightPanel input,.row input){background:#13181e;color:#f2f5fa;border:1px solid #536170;border-radius:8px;padding:13px 14px;min-height:52px;width:100%;max-width:100%;min-width:0;box-shadow:inset 0 2px 4px #0002;font-size:16px}
.calculator-family :is(.calcForm input[type=number],.field input[type=number]){font-size:21px;font-weight:700;font-variant-numeric:tabular-nums}
.calculator-family :is(input,textarea)::placeholder{color:#919eae;opacity:1;font-size:15px;font-weight:400}
.calculator-family :is(input,select,textarea):hover{border-color:#8292a4}
.calculator-family :is(input,select,textarea):focus{outline:2px solid var(--orange);outline-offset:2px;border-color:var(--orange);background:#1a2027}
.calculator-family select{color-scheme:dark;text-overflow:ellipsis}
.calculator-family input[type=radio],.calculator-family input[type=checkbox]{accent-color:var(--orange);width:20px!important;min-height:20px;height:20px;box-shadow:none;padding:0}
.calculator-family input:disabled,.calculator-family select:disabled{opacity:.55}
.calculator-family :is(.button,.cartbtn,.cardbody button,.lookup button,.travel button){background:var(--orange);border:1px solid var(--orange);color:#19130e;border-radius:8px;min-height:48px;padding:13px 18px;font-weight:800;text-decoration:none;line-height:1.4}
.calculator-family :is(.button,.cartbtn,.cardbody button,.lookup button,.travel button):hover:not(:disabled){background:#ff9446;border-color:#ff9446}
.calculator-family :is(.buttonOutline,.button.secondary){background:#252c34;border:1px solid #596677;color:#e7edf5}
.calculator-family :is(.buttonOutline,.button.secondary):hover:not(:disabled){background:#34404e;border-color:#8292a4}
.calculator-family .calcForm>button[type=submit]{margin-top:6px;width:100%}
.calculator-family .calc-step{display:flex;align-items:center;gap:12px;margin:15px 0 2px;padding-top:20px;border-top:1px solid #3b444e;font-size:17px;letter-spacing:-.015em;color:#f2f5f9}
.calculator-family .calc-step:first-child{margin-top:0;padding-top:0;border-top:0}
.calculator-family .step-number{display:inline-grid;place-items:center;background:var(--orange);color:#19130e;width:34px;height:34px;flex:0 0 34px;border-radius:7px;font-size:15px;font-weight:900;font-variant-numeric:tabular-nums}
.calculator-family .sequence-note{font-size:13px;color:#aab6c5;margin:0 0 20px}
.calculator-family :is(.takeup,.jointChoice){border:1px solid #505c6a;background:#191e25;padding:18px;border-radius:10px;min-width:0}
.calculator-family :is(.takeup legend,.jointChoice legend){color:#e8edf4;font-size:14px;letter-spacing:0}
.calculator-family .jointChoice{margin:0}
.calculator-family .jointOptions label{background:#13181e;color:#dce4ee;border:1px solid #566475;border-radius:9px}
.calculator-family .jointOptions label:has(input:checked){background:#39291e;border-color:var(--orange);box-shadow:0 0 0 1px var(--orange);color:#fff}
.calculator-family :is(.calcExtra,.angleHelp,.calcAdvanced,.jointInfo){background:#171d24;color:#b8c3d1;border:1px solid #414e5e;border-radius:9px;padding:12px 15px}
.calculator-family :is(.calcExtra>summary,.angleHelp summary,.calcAdvanced summary,.jointInfo summary){color:#d9e2ee;font-size:14px;font-weight:700}
.calculator-family .jointInfo{padding:0}
.calculator-family .jointInfo summary:hover,.calculator-family .jointInfo summary:focus-visible{background:#303943;outline-color:var(--orange)}
.calculator-family :is(.jointInfoBody figcaption,.jointInfoBody .jointSource){color:#aab7c7;border-color:#414e5e}
.calculator-family :is(.jointInfoBody a,.calcResult a:not(.button),.fine a,.travel a,.travelHint a,.help a){color:#ffad73;text-underline-offset:3px}
.calculator-family :is(.takeupNotice,.travelHint){background:#32281f;border-left:3px solid var(--orange);color:#edc8aa;border-radius:0 8px 8px 0;padding:13px 15px}
.calculator-family :is(.calcWarn,.jointChoice .calcWarn,.routeError,.spliceStatus,.notice){color:#ffb789}
.calculator-family .beltGuide .advancedGuide{border:1px solid #414851;border-top:3px solid var(--orange);border-radius:16px;background:#191d22;box-shadow:0 12px 40px #0002;overflow:hidden}
.calculator-family .beltGuide .advancedGuide>summary{background:#1e2329;color:#edf0f4;padding:25px 32px;gap:5px}
.calculator-family .advancedGuide>summary span{color:#acb8c8}.calculator-family .advancedGuide>summary::after{color:#ff9a50}
.calculator-family .beltGuide .advancedGuideBody{background:#191d22;padding:26px 32px 32px;border-color:#414851}
.calculator-family .travelPanel{background:#1e2329;border:1px solid #414851;border-top:3px solid var(--orange);border-radius:12px;padding:26px}
.calculator-family .travel .small{color:#aeb9c7}.calculator-family .travel .results button{background:#303a46;color:#e8edf4;border-color:#566475}
.calculator-family .travel .feeGrid>div{background:#14181d;border:1px solid #414851;border-radius:10px;padding:18px}
.calculator-family .travel .feeGrid b{color:#ffab6e;font-size:23px}
.calculator-family .travel .feeTable td{border-color:#414851}.calculator-family .travel .manual{border-color:#414851}
.calculator-family .spliceCheck{background:#1e2329;border:1px solid #414851;border-left:3px solid var(--orange);border-radius:10px;padding:24px;color:#dce4ee}
.calculator-family :is(.intro p,.count,.cardbody p,.meta,.price span){color:#aeb9c7}
.calculator-family :is(.tag,.price,.count){color:#ffab6e}
.calculator-family .product{background:#1d2126;border-color:#414851;border-radius:12px;overflow:hidden}
.calculator-family .meta{border-color:#414851}
.calculator-family .productPhoto{background:#dfe5e7}.calculator-family .productPhoto figcaption{background:#303a44;color:#d8e0e9}
.calculator-family .productPhoto figcaption a{color:#ffb17b}
.calculator-family .how{background:#1a1e23}.calculator-family .how p{color:#aeb9c7}.calculator-family .how .steps div{border-color:var(--orange)}
.calculator-family :is(.contact,footer){background:#111315;border-top:1px solid #373d46}
.calculator-family :is(.contact p,footer p){color:#b7c1cf}.calculator-family .contact a{color:#ffad73}
.calculator-family .drawer{background:#1d2126;color:#edf0f4;border-left:1px solid #596677}
.calculator-family :is(.drawer small,.disclaimer,.freightPanel p,.freightPanel label){color:#aeb9c7}
.calculator-family .close{color:#e8eef6}.calculator-family .row button{color:#ffad73}
.calculator-family .lookup{background:#14181d;border-color:#414851;border-radius:9px}
.calculator-family .companyResults button{background:#303a46;color:#e8edf4;border:1px solid #596677;border-radius:8px}
.calculator-family :is(.freightPanel,.cart-estimate){background:#191e24;color:#edf0f4;border-color:#4c5867}
.calculator-family .freightPanel{border-radius:10px;padding:18px}
.calculator-family #designer .shape{background:#151b21;border:1px solid #4c5969;color:#e7edf5;border-radius:10px}
.calculator-family #designer .shape small{color:#aeb9c7}
.calculator-family #designer .shape svg{fill:#303b47;stroke:#bcc9d8}
.calculator-family #designer .shape[aria-pressed=true]{background:#39291e;border-color:var(--orange);outline:2px solid var(--orange);outline-offset:-2px}
.calculator-family #designer .shape[aria-pressed=true] svg{stroke:#ff9a50;fill:#6f4628}
.calculator-family #designer fieldset{border-color:#414e5e}
.calculator-family #designer legend{color:#f2f5fa;display:flex;align-items:center;gap:10px;font-size:16px}
.calculator-family #designer .measure{background:radial-gradient(ellipse at 80% 0%,#ff7a1a12,transparent 60%),#191f26;border-color:#4c5969;border-radius:10px}
.calculator-family #designer #drawing [fill="#31556a"]{fill:#35404c}
.calculator-family #designer #drawing [stroke="#8dbbc3"]{stroke:#ff9a50}
.calculator-family #designer .readout{color:#ff9a50;font-size:clamp(44px,5vw,68px);margin-top:22px}
.calculator-family #designer .metric{border-color:#414e5e;color:#b8c4d3}.calculator-family #designer .metric strong{color:#f1f5fb}
.calculator-family #designer :is(.status,.fluidInfo){background:#2a3037;border-left:3px solid #ff9a50;color:#d3dce7;border-radius:0 8px 8px 0}
.calculator-family #designer .status.warn{background:#39291e;color:#f5c49f}
.calculator-family #designer .summary{background:#13181e;border-color:#4c5969;color:#cbd6e4;border-radius:8px}
.calculator-family #designer .photoPanel{background:#191e25;border-color:#414e5e;border-radius:10px}
.calculator-family #designer :is(.photoPanel p,.photoExample,.photoInfo){color:#b9c7d8}
.calculator-family #designer .photoAction{background:#2a333e;border-color:#637389;color:#e9f0f8;border-radius:8px}
.calculator-family #designer .photoExample li{border-color:#b16a35}.calculator-family #designer .photoTile{background:#13181e;border-color:#4c5969;border-radius:8px;overflow:hidden}
.calculator-family #designer .photoAction input{position:absolute;width:1px;min-height:1px;height:1px;opacity:0}
.calculator-family .light{background:#1a1e23;color:#edf0f4}.calculator-family .light article{background:#252b33;border-color:var(--orange);border-radius:8px}
.calculator-family .light :is(.heading p,article p,.fine){color:#b6c3d3!important}.calculator-family .light a{color:#ffad73}
.calculator-family :is(button,a,input,select,textarea,summary):focus-visible{outline-color:#ffad73!important;box-shadow:0 0 0 6px #111315!important}
.calculator-family :is(.mobile-menu nav){background:#191f26;border-color:var(--orange)}
.calculator-family :is(.calcGrid,.planner,.fieldGrid,.calcPair)>*{min-width:0}
@media(max-width:850px){
 .calculator-family :is(.calcGrid,.planner){grid-template-columns:minmax(0,1fr)}
 .calculator-family .tool-nav-inner{gap:4px}.calculator-family .tool-nav a{font-size:13px;padding:9px 12px}
 .calculator-family .hero{padding:38px 0}.calculator-family .head{min-height:74px}
 .calculator-family .heroPanel{padding:21px}
}
@media(max-width:600px){
 .design-test-bar{font-size:12px;gap:5px 12px}
 .calculator-family :is(.calculator>.wrap,.drum>.wrap,#designer>.wrap){padding:17px;border-radius:12px}
 .calculator-family :is(.calculator,.drum){padding:24px 0}
 .calculator-family :is(.calcForm,.calcResult,#designer .formPanel,#designer .resultPanel,.travelPanel){padding:18px;border-radius:10px}
 .calculator-family :is(.beltGuide .advancedGuide>summary,.beltGuide .advancedGuideBody){padding:20px 17px}
 .calculator-family .calcGrid{gap:18px}.calculator-family h2{font-size:28px;line-height:1.14}
 .calculator-family .calcResult dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr);font-size:14px;gap:10px}
 .calculator-family .calcResult dd{overflow-wrap:anywhere}
 .calculator-family .calc-step{font-size:16px;gap:10px}
 .calculator-family :is(.takeup,.jointChoice){padding:14px}
 .calculator-family .hero .button{margin:8px 8px 0 0}
 .calculator-family .actions .button{width:100%;margin-left:0;text-align:center}
 .calculator-family .shapeGrid{gap:9px}
 .calculator-family .photoActions{grid-template-columns:minmax(0,1fr)}
}
@media print{
 .design-test-bar,.tool-nav{display:none!important}
 .calculator-family{background:white;color:black;color-scheme:light}
 .calculator-family :is(.calcResult,#designer .resultPanel){background:white;color:black;border:1px solid #777;box-shadow:none}
 .calculator-family :is(.calcResult,#designer .resultPanel) *{color:black!important}
}
