.measurement-lab{margin:2.5rem 0;padding:clamp(18px,3vw,30px);border:1px solid #b9d1dc;border-radius:12px;background:#f6f9fb;color:#183449;scroll-margin-top:100px;min-width:0}
.measurement-lab h2{color:#16384d;font-size:clamp(1.4rem,2.4vw,1.85rem);line-height:1.25}
.measurement-lab p,.measurement-lab figcaption{color:#3d596d}.measurement-lab .eyebrow{color:#176780;font-size:.875rem}.measurement-lab .fineprint,.measurement-lab figcaption{font-size:.875rem;line-height:1.6}
.measurement-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px}.measurement-controls label{font-size:.875rem;color:#25465c;margin:12px 0 0;min-width:0}.measurement-controls input,.measurement-controls select{background:#fff;color:#16384d;border-color:#9ab4c3;font-size:1rem;min-height:44px;padding:9px}
.measurement-lab .button{font-size:.875rem;min-height:44px;background:#fff;color:#183b51;border-color:#9db9c9;line-height:1.4}.measurement-lab .button.primary{background:#155e78;color:#fff}.measurement-lab button:disabled{opacity:.5}.measurement-lab :is(input,select,button):focus-visible{outline:3px solid #e5a335;outline-offset:3px}
.optical-workspace{margin-top:24px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;align-items:start}.optical-viewport{min-width:0;height:330px;position:relative;overflow:hidden;border:1px solid #ccdbe5;border-radius:8px;background:#e7eff4}.optical-scene{position:absolute;inset:0}.optical-scene canvas{width:100%;height:100%;display:block;touch-action:none}.optical-placeholder{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:18px}.optical-placeholder img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.48}.optical-placeholder button{position:relative}
.optical-detector{margin:0;min-width:0}.optical-detector canvas{display:block;max-width:100%;width:100%;height:auto;background:#0b1f2e;border-radius:8px}.optical-buttons,.scan-presets{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.optical-legend{display:flex;flex-wrap:wrap;gap:8px 26px;padding-left:20px;font-size:.875rem}.measurement-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border-top:1px solid #cedce5;padding-top:18px;margin-top:20px}.measurement-results span{font-size:.875rem;display:block;color:#496579}.measurement-results strong{font-size:1.2rem;display:block;color:#164d67;font-variant-numeric:tabular-nums;margin-top:5px}.measurement-equation{font-family:var(--mono);font-size:1rem!important;line-height:1.85!important;overflow-wrap:anywhere;padding:15px 0}
.scan-image{margin:20px 0;min-width:0}.scan-image canvas{width:100%;height:auto;display:block;border-radius:8px}.scan-status{padding:12px 16px;border-left:3px solid #397684;background:#e2edf1}.scan-status[data-invalid=true]{background:#fae9dc;border-color:#b56126;color:#6b3818}
.capture-feature{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(0,1.4fr);gap:28px;align-items:center;padding:24px;border:1px solid #335868;background:#0d1d29;margin-top:25px;margin-bottom:30px;border-radius:8px}.capture-feature-image{display:block}.capture-feature img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}.capture-feature h2{font-size:clamp(1.6rem,3vw,2.15rem);margin:10px 0}.capture-feature p{font-size:1rem;max-width:700px}.capture-feature .eyebrow{font-size:.875rem}.capture-feature-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.capture-feature-links .button{font-size:.875rem}.capture-feature-links .textlink{font-size:.875rem}.blog-masthead+.capture-feature{margin-top:0}
@media(max-width:1000px){.measurement-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.optical-workspace{grid-template-columns:1fr}.optical-viewport{height:360px}.measurement-results{grid-template-columns:repeat(2,minmax(0,1fr))}.optical-detector{max-width:600px}.capture-feature{gap:20px}}
@media(max-width:600px){.capture-feature{grid-template-columns:1fr;padding:20px}.capture-feature img{max-height:210px}.optical-viewport{height:285px}.measurement-lab{padding:18px 12px}.measurement-controls{gap:8px}.measurement-controls label{font-size:.875rem}.measurement-results{gap:18px 10px}.measurement-results strong{font-size:1.05rem}.scan-presets .button{flex:1 1 42%;padding:8px}.measurement-equation{font-size:.875rem!important}.optical-legend{display:grid;grid-template-columns:1fr 1fr}.optical-buttons .button{flex:1 1 40%}}
@media(prefers-reduced-motion:reduce){.measurement-lab *{animation:none!important;transition:none!important}}
