/* Lightweight monochrome calculator workbench. Loaded only on calculators page. */
.calculator-directory,.calc-lab{box-sizing:border-box;max-width:100%;min-width:0;border:1px solid var(--card-border);border-radius:14px;background:var(--card-bg);color:var(--card-text);margin:16px 0;padding:clamp(12px,2.5vw,22px)}
.calculator-directory h2{font:700 clamp(20px,2.4vw,28px)/1.25 var(--font);margin:0 0 8px}
.calculator-directory p,.calc-lab p{font:400 var(--fs-sm)/1.55 var(--font);margin:0 0 12px}
.calculator-directory nav,.calc-lab-examples,.calc-lab-actions{display:flex;flex-wrap:wrap;gap:8px}
.calculator-directory nav a,.calculator-directory nav a:visited,.calc-lab :is(a,a:visited){color:var(--card-text)!important}
.calculator-directory nav a{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--card-border);border-radius:10px;padding:9px 13px;text-decoration:none}
.calculator-directory nav a:hover{border-color:var(--text-primary);text-decoration:underline}
.calc-lab{padding:0;overflow:visible}
.calc-lab>summary{display:block;cursor:pointer;list-style:none;min-height:52px;padding:17px 20px;position:relative;padding-right:52px}
.calc-lab>summary::-webkit-details-marker{display:none}
.calc-lab>summary:after{content:'+';position:absolute;right:18px;top:17px;font-size:24px}
.calc-lab[open]>summary:after{content:'−'}
.calc-lab>summary strong{display:block;font:700 clamp(16px,2vw,21px)/1.4 var(--font)}
.calc-lab>summary small{display:block;font:400 var(--fs-sm)/1.5 var(--font);color:var(--card-muted);margin-top:3px}
.calc-lab-body{border-top:1px solid var(--card-border);padding:clamp(12px,2.5vw,20px);min-width:0}
.calc-lab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,195px),1fr));gap:12px;margin:12px 0}
.calc-lab-field,.calc-lab-sub{min-width:0}
.calc-lab-wide{grid-column:1/-1}
.calc-lab-field label,.calc-lab-sub>label{display:block;font:600 var(--fs-sm)/1.45 var(--font);margin-bottom:6px}
.calc-lab :is(input,textarea,select){font:400 16px/1.4 var(--font);background:var(--card-bg);color:var(--card-text);border:1px solid var(--card-border);border-radius:9px;box-sizing:border-box;max-width:100%;width:100%;padding:11px;min-height:46px}
.calc-lab textarea{resize:vertical;max-height:240px}
.calc-lab :is(button,summary,a,input,select,textarea):focus-visible{outline:3px solid var(--text-primary);outline-offset:3px}
.calc-lab :is(button){font:600 var(--fs-sm)/1.4 var(--font);background:var(--soft-bg);color:var(--card-text);border:1px solid var(--card-border);border-radius:9px;cursor:pointer;min-height:44px;padding:8px 12px}
.calc-lab :is(button):hover{border-color:var(--text-primary)}
.calc-lab-note{font-size:var(--fs-xs)!important;color:var(--card-muted);margin-top:12px!important}
.calc-lab-status{min-height:22px;color:var(--card-muted)}
.calc-lab-error{color:var(--text-primary);font-weight:700;border-left:3px solid var(--text-primary);padding-left:9px}
.ieee-bit-legend{display:flex;gap:12px;margin:14px 0 8px;font-size:12px}
.ieee-bit-legend span{padding:5px 9px;border:1px solid var(--card-border);border-radius:7px}
.ieee-bit-legend span:nth-child(2){border-style:dashed}
.ieee-bit-legend span:nth-child(3){background:var(--soft-bg)}
.ieee-bit-wrap{overflow-x:auto;padding:4px 0 12px;max-width:100%;-webkit-overflow-scrolling:touch}
.ieee-bit-grid{display:flex;flex-wrap:wrap;gap:3px;max-width:100%}
.calc-lab .ieee-bit{box-sizing:border-box;font:600 14px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;min-width:30px;min-height:38px;border-radius:6px;padding:6px;flex:0 0 30px}
.ieee-bit-sign{border-width:2px!important}
.ieee-bit-exponent{border-style:dashed!important}
.ieee-bit-fraction{background:var(--soft-bg)!important}
.calc-lab-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:9px;margin:14px 0}
.calc-lab-results>div{min-width:0;background:var(--soft-bg);border:1px solid var(--card-border);border-radius:10px;padding:11px 12px}
.calc-lab-results dt{font:600 var(--fs-xs)/1.35 var(--font);color:var(--card-muted);margin:0 0 5px}
.calc-lab-results dd{margin:0;font:600 13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;white-space:normal}
.calc-lab-sub{margin:0 0 14px;padding:14px;border:1px solid var(--card-border);border-radius:12px}
.calc-lab-sub h3{font:700 17px/1.35 var(--font);margin:0 0 9px}
.calc-lab-output{display:block;min-height:24px;padding:10px 12px;border:1px solid var(--card-border);border-radius:9px;background:var(--soft-bg);color:var(--card-text);font:600 var(--fs-sm)/1.6 var(--font);overflow-wrap:anywhere}
@media(max-width:600px){
.calculator-directory,.calc-lab{margin:12px 0}
.calc-lab>summary{padding:13px 44px 13px 13px}
.calc-lab-body{padding:12px}
.calc-lab-grid{grid-template-columns:minmax(0,1fr);gap:9px}
.calc-lab-sub{padding:11px}
.calc-lab-results{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){.calc-lab *{scroll-behavior:auto;transition:none!important}}


/* ENJIGIRLING workshop identity: fieldbook-inspired black-and-white headings. */
.calculator-directory {border-width:2px;border-radius:18px;position:relative;}
.calculator-directory::before {content:'ENGINEERING / WORKBENCH';display:block;font:700 10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.16em;color:var(--card-muted);margin-bottom:12px;}
.calculator-directory nav a {border-radius:6px;font-size:13px;}
.calc-lab {counter-reset:workshop;overflow:hidden;}
.calc-lab>summary {border-left:5px solid var(--text-primary);padding-left:18px;background:var(--soft-bg);}
.calc-lab[open]>summary {border-bottom:1px dashed var(--card-border);}
.calc-lab-sub {counter-increment:workshop;position:relative;background:var(--card-bg);}
.calc-lab-sub h3::before {content:counter(workshop,decimal-leading-zero) " / ";font:700 12px ui-monospace,Consolas,monospace;color:var(--card-muted);}
.calc-lab-output {border-left:3px solid var(--text-primary);border-radius:4px;background:var(--soft-bg);font-variant-numeric:tabular-nums;}
.bit-passport-title {font:700 11px/1.5 ui-monospace,Consolas,monospace!important;letter-spacing:.09em;text-transform:uppercase;margin-top:16px!important;}
.ieee-bit-legend span {font-family:ui-monospace,Consolas,monospace;}
.production-panel .calc-lab-sub {scroll-margin-top:10px;}
@media(max-width:600px){.calc-lab>summary{padding-left:12px}.calc-lab-sub h3::before{display:block;margin-bottom:4px}}


/* Lightweight grouped index of calculator workbenches. */
.calculator-directory .calculator-groups {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;}
.calculator-directory .calculator-group {display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid var(--card-border);border-radius:10px;min-width:0;background:var(--soft-bg);}
.calculator-directory .calculator-group h3 {font:700 11px/1.4 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--card-muted);margin:0 0 4px;}
.calculator-directory .calculator-group a {width:100%;box-sizing:border-box;min-height:44px;overflow-wrap:anywhere;background:var(--card-bg);}
.calc-lab-sub a,.calc-lab-sub a:visited {text-decoration:underline;text-underline-offset:3px;color:var(--card-text)!important;}
@media(max-width:880px){.calculator-directory .calculator-groups{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:540px){.calculator-directory .calculator-groups{grid-template-columns:minmax(0,1fr);gap:7px;}.calculator-directory .calculator-group{padding:9px;}}


.caliper-viewport{width:100%;max-width:100%;overflow-x:auto;color:var(--card-text);padding:12px 0;}
.caliper-viewport svg{display:block;min-width:580px;width:100%;max-width:780px;height:auto;}
.caliper-slider{width:100%!important;accent-color:var(--text-primary);touch-action:pan-y;}
.instrument-panel .calc-lab-body>label{display:block;margin:10px 0 7px;font-weight:600;}

.atlas-direct-link{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 0!important;font-size:13px!important}
.atlas-direct-link a,.atlas-direct-link a:visited{display:inline-flex;align-items:center;min-height:44px;padding:9px 13px;border:2px solid var(--card-border);border-radius:9px;color:var(--card-text)!important;text-decoration:none;font-weight:700}
.atlas-direct-link a:hover{border-color:var(--text-primary);text-decoration:underline}
.atlas-direct-link span{color:var(--card-muted)}


/* All calculators use the same 6-group layout, including the original three tools. */
.calculator-workshop-section {margin:25px 0 30px;min-width:0;scroll-margin-top:16px;}
.calculator-workshop-heading {display:flex;align-items:start;justify-content:space-between;gap:12px;padding:0 2px 10px;border-bottom:1px solid var(--card-border);margin-bottom:13px;color:var(--card-text);}
.calculator-workshop-heading h2 {font:700 clamp(19px,2.3vw,25px)/1.3 var(--font);margin:0 0 4px;}
.calculator-workshop-heading p {color:var(--card-muted);font:400 var(--fs-sm)/1.5 var(--font);margin:0;}
.calculator-workshop-heading span {white-space:nowrap;border:1px solid var(--card-border);border-radius:7px;padding:6px 9px;background:var(--soft-bg);color:var(--card-muted);font:600 11px/1.4 var(--font);}
.calculator-workshop-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;}
.calculator-workshop-grid > .calc-lab {margin:0;min-width:0;}
.calculator-workshop-grid > .calc-lab[open] {grid-column:1/-1;}
.calc-legacy .calc-section {margin:0!important;padding:0!important;border:0!important;max-width:100%;}
.calc-legacy .calc-section > .eng-divider,.calc-legacy .calc-section > .calc-heading,.calc-legacy .calc-section > .calc-subtitle {display:none;}
.calc-legacy .calc-layout,.calc-legacy .calc-controls {max-width:100%;min-width:0;}
.calc-legacy .calc-field input,.calc-legacy .calc-field select {max-width:100%;box-sizing:border-box;}
.calc-legacy .field-guide {margin:18px 0 2px;}
@media(max-width:720px){.calculator-workshop-grid {grid-template-columns:minmax(0,1fr)}.calculator-workshop-grid>.calc-lab[open]{grid-column:auto;}.calculator-workshop-heading{align-items:start;}.calculator-workshop-heading span{white-space:normal;}}
@media(max-width:390px){.calculator-workshop-heading{flex-wrap:wrap;gap:6px}.calculator-workshop-grid{gap:9px;}}
