/* RECATOOLS — shared engineering / construction calculator styles (Batch 8 A2) */
.eng-form { display: flex; flex-direction: column; gap: .85rem; }
.eng-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; padding: .85rem; background: #fafaf9; border: 1px solid #ebebeb; border-radius: 10px; }
@media (max-width: 540px) { .eng-inputs { grid-template-columns: 1fr; } }
.eng-field { display: flex; flex-direction: column; gap: .25rem; }
.eng-field label { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: #6b6760; }
.eng-field input[type="number"], .eng-field select { padding: .5rem .6rem; font-size: .9rem; font-family: inherit; border: 1px solid #ebebeb; border-radius: 6px; background: #fff; color: #1a1814; width: 100%; box-sizing: border-box; }
.eng-field input:focus, .eng-field select:focus { outline: none; box-shadow: inset 0 0 0 2px #0891b2; }
.eng-field .hint { font-size: .66rem; color: #94a3b8; }
.eng-seg-row { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.eng-seg-row .lbl { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: #6b6760; }
.eng-seg { display: inline-flex; border: 1px solid #ebebeb; border-radius: 8px; overflow: hidden; }
.eng-seg-btn { border: none; background: #fafaf9; padding: .4rem .85rem; font-size: .8rem; font-weight: 600; color: #6b6760; cursor: pointer; font-family: inherit; }
.eng-seg-btn.is-active { background: #0891b2; color: #fff; }
.eng-calc-btn { width: 100%; margin: .25rem 0; padding: .8rem 1.25rem; background: #E8472F; color: #fff; border: none; border-radius: 8px; font-size: .95rem; font-weight: 700; cursor: pointer; font-family: inherit; }
.eng-calc-btn:hover { background: #c8391f; }
.eng-error { padding: .7rem 1rem; background: #fef2f2; border-left: 3px solid #dc2626; border-radius: 0 6px 6px 0; font-size: .82rem; color: #991b1b; line-height: 1.5; }
.eng-headline { padding: 1rem 1.1rem; background: #ecfeff; border: 1px solid #a5f3fc; border-radius: 12px; text-align: center; }
.eng-headline-lbl { font-size: .64rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: #0e7490; }
.eng-headline-val { font-size: 2.2rem; font-weight: 800; font-family: 'IBM Plex Serif', serif; color: #155e75; line-height: 1.05; margin-top: .1rem; }
.eng-headline-sub { font-size: .8rem; color: #475569; margin-top: .25rem; }
.eng-band { margin-top: .25rem; padding: .75rem 1rem; border-left: 3px solid #0891b2; border-radius: 0 6px 6px 0; font-size: .875rem; line-height: 1.6; color: #1a1814; background: #ecfeff; }
.eng-band:empty { display: none; }
.eng-band.is-warn { border-left-color: #d97706; background: #fffbeb; }
.eng-band.is-high { border-left-color: #dc2626; background: #fef2f2; }
.eng-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .6rem; }
@media (max-width: 600px) { .eng-grid { grid-template-columns: 1fr 1fr; } }
.eng-card { padding: .8rem .55rem; background: #fafaf9; border: 1px solid #ebebeb; border-radius: 10px; text-align: center; }
.eng-card-key { background: #ecfeff; border-color: #a5f3fc; }
.eng-lbl { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: #6b6760; }
.eng-val { font-size: 1.05rem; font-weight: 800; font-family: 'IBM Plex Serif', serif; color: #155e75; margin-top: .2rem; line-height: 1.2; }
/* construction tools reuse the same classes with an amber key tint */
.eng-card-con { background: #fffbeb; border-color: #fde68a; }
.eng-card-con .eng-val { color: #92400e; }
.eng-headline.con { background: #fffbeb; border-color: #fde68a; }
.eng-headline.con .eng-headline-lbl { color: #b45309; }
.eng-headline.con .eng-headline-val { color: #92400e; }
.eng-band.con { border-left-color: #d97706; background: #fffbeb; }
/* cache-buster: 2026-05-31T02:00:00Z */
