@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/IBMPlexSans-Variable.woff2)format("woff2")}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/IBMPlexSerif-SemiBold.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/IBMPlexMono-Medium.woff2)format("woff2")}:root{--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:48px;--r-sm:6px;--r-md:10px;--r-lg:14px;--radius-pill:999px;--fs-xs:12px;--fs-sm:13.5px;--fs-md:15px;--fs-lg:17px;--fs-xl:21px;--fs-2xl:26px;--lh-tight:1.25;--lh-body:1.5;--bg-page:#fff;--surface:#fff;--surface-2:#fff;--line:#7a9bb8;--line-strong:#4d7aa0;--ink-1:#141416;--ink-2:#2a2a2e;--ink-3:#5c5c64;--ok:#15803d;--ok-bg:#15803d14;--ok-solid:#15803d;--ok-on:#fff;--warn:#b45309;--bad:#b91c1c;--bad-bg:#b91c1c14;--text:var(--ink-2);--text-h:var(--ink-1);--bg:var(--surface);--border:var(--line);--border-strong:var(--line-strong);--code-bg:#fff;--accent:#2f6fad;--accent-solid:#2f6fad;--accent-strong:#296298;--on-accent:#fff;--accent-bg:#2f6fad1f;--accent-border:#2f6fad80;--accent-glow:0 6px 22px #2f6fad38;--grad-accent:linear-gradient(180deg, #3e86cc 0%, #2f6fad 100%);--grad-accent-hover:linear-gradient(180deg, #5995cf 0%, #3379bd 100%);--grad-danger:linear-gradient(135deg, #f43f6b 0%, #b5468f 100%);--device-hue-0:#c2410c;--device-hue-1:#0e7490;--device-hue-2:#be185d;--device-hue-3:#4d7c0f;--device-unknown:#64748b;--card-glow:0 0 0 1px #2f6fad47, 0 10px 34px -6px #2f6fad47, 0 4px 14px -4px #3e86cc38;--elev-1:0 1px 2px #0c15201a, 0 1px 1px #0c15200f;--elev-2:0 6px 16px #0c15201f, 0 2px 5px #0c152014;--serif:"IBM Plex Serif", ui-serif, Georgia, "Times New Roman", serif;--sans:"IBM Plex Sans", system-ui, "Segoe UI", Roboto, sans-serif;--heading:var(--serif);--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--font-num:tabular-nums;font:16px/150% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg-page);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-page:#0b0e13;--surface:#10151c;--surface-2:#171e28;--line:#2a455c;--line-strong:#3e5f7a;--ink-1:#e8f1fb;--ink-2:#9aafc4;--ink-3:#6d8298;--ok:#22c55e;--ok-bg:#22c55e2e;--ok-solid:#15803d;--ok-on:#fff;--warn:#f59e0b;--bad:#f87171;--bad-bg:#f8717121;--text:var(--ink-2);--text-h:var(--ink-1);--bg:var(--surface);--border:var(--line);--border-strong:var(--line-strong);--code-bg:#1a222c;--accent:#7ec8f8;--accent-solid:#2f6fad;--accent-strong:#3379bd;--on-accent:#fff;--accent-bg:#1e8cdc24;--accent-border:#5abef56b;--accent-glow:0 8px 28px #0e8cdc80;--grad-accent:linear-gradient(180deg, #3e86cc 0%, #2f6fad 100%);--grad-accent-hover:linear-gradient(180deg, #5995cf 0%, #3379bd 100%);--grad-danger:linear-gradient(135deg, #ff5470 0%, #c25aa6 100%);--device-hue-0:#fb923c;--device-hue-1:#22d3ee;--device-hue-2:#f472b6;--device-hue-3:#a3e635;--device-unknown:#94a3b8;--card-glow:0 0 0 1px #5abef559, 0 12px 38px -6px #0e8cdc73, 0 4px 16px -4px #0ea5e94d;--elev-1:0 1px 2px #00000059, 0 1px 1px #00000040;--elev-2:0 6px 18px #00000073, 0 2px 6px #0000004d}body{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in srgb, var(--accent) 28%, transparent);color:var(--accent-strong)}#root{min-height:100svh}h1,h2,h3{font-family:var(--heading);color:var(--text-h);font-weight:500}a{color:var(--accent)}.num{font-variant-numeric:var(--font-num)}.file-name-form{flex-direction:column;gap:6px;width:100%;padding:6px 8px;display:flex}.file-name-form-title{color:var(--text-h);margin:0;font-size:13px;font-weight:500}.file-name-form-desc{color:var(--text);margin:0;font-size:11px;line-height:1.35}.file-name-form-input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-h);font:inherit;border-radius:8px;padding:8px 10px;font-size:13px}.file-name-form-input:focus{outline:2px solid var(--accent);outline-offset:1px}.file-name-form-detail{color:var(--text);margin:0;font-size:11px}.file-name-form-actions{justify-content:flex-end;gap:8px;margin-top:2px;display:flex}:root{--grid-scan-low:#dc2626;--grid-scan-medium:#facc15;--grid-scan-high:#10b981;--grid-scan-nominal:#10b981}.grid-scan-group{margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--line)}.grid-scan-group-head{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.grid-scan-group-title{color:var(--text-h);font-weight:600}.grid-scan-inline-field{align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);color:var(--text);display:flex}.grid-scan-inline-field select,.grid-scan-size-field select{background:var(--surface);color:var(--ink-1);border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;padding:2px 6px}.grid-scan-add-btn{background:var(--grad-accent);color:var(--on-accent);border-radius:var(--r-sm);font:inherit;cursor:pointer;border:none;padding:6px 12px;font-weight:600}.grid-scan-add-btn:disabled{opacity:.5;cursor:not-allowed}.grid-scan-refused-note{color:var(--bad);font-size:var(--fs-sm);margin:0 0 var(--sp-2)}.grid-scan-table-wrap{margin-bottom:var(--sp-5);padding:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.grid-scan-head{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.grid-scan-title{color:var(--text-h);font-weight:600}.grid-scan-location{color:var(--ink-3)}.grid-scan-size-field,.grid-scan-band-field{align-items:center;gap:4px;display:flex}.grid-scan-place-btn{background:var(--surface-2);color:var(--accent-strong);border:1px solid var(--accent-border);border-radius:var(--r-sm);font:inherit;cursor:pointer;margin-left:auto;padding:4px 10px}.grid-scan-cell{box-sizing:border-box;text-align:center;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-width:44px;color:var(--ink-1);font:inherit;padding:2px 0}.grid-scan-band-low .grid-scan-cell{background:color-mix(in srgb, var(--grid-scan-low) 22%, var(--surface))}.grid-scan-band-medium .grid-scan-cell{background:color-mix(in srgb, var(--grid-scan-medium) 26%, var(--surface))}.grid-scan-band-high .grid-scan-cell{background:color-mix(in srgb, var(--grid-scan-high) 15%, var(--surface))}.grid-scan-band-nominal .grid-scan-cell{background:color-mix(in srgb, var(--grid-scan-nominal) 26%, var(--surface))}.grid-scan-footer{gap:var(--sp-4);margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-3);display:flex}.wr-methods{flex-direction:column;gap:6px;display:flex}.wr-method{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.wr-method-name{color:var(--ink-1);flex:0 0 2rem;font-size:12px;font-weight:700}.wr-card .wr-method select.floor-repairs-result,.wr-card .wr-method input.wr-method-date{flex:none;width:auto}.wr-card .wr-method input.wr-method-date{min-width:9rem}.wr-card .wr-method input.wr-method-notes{flex:8rem;width:auto;min-width:6rem}.wr-card .wr-welder{max-width:12rem}.floor-repair-welder{flex-direction:column;gap:1px;min-width:0;max-width:12rem;margin:0;display:flex}.floor-repair-welder>span{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);font-size:9px;font-weight:600}.floor-repair-welder input{box-sizing:border-box;width:100%;min-height:2.1rem;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink-1);border-radius:6px;padding:4px 8px;font-size:13px}.nde-meta-tech-chip-wrap{align-items:center;max-width:100%;display:inline-flex}.nde-meta-tech-more{color:#2f6fad;cursor:pointer;background:0 0;border:0;margin-left:2px;padding:0 6px;font-weight:700}
