:root{--ink:#172033;--blue:#2457d6;--bg:#f5f6f8;--panel:#fff;--line:#dde2ea;--muted:#667085;--green:#147a4a;--amber:#9a6700;--red:#b42318;--purple:#6d3bc5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.45}.topbar{min-height:68px;background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 max(20px,calc((100vw - 1200px)/2))}.brand{color:white;text-decoration:none;font-size:22px;white-space:nowrap}.brand small{font-size:12px;color:#aeb8c7}.project-switch{display:flex;align-items:center;gap:8px;min-width:220px;color:#d5dbe6;font-size:12px;font-weight:800}.project-switch select{min-width:0;max-width:310px;border:1px solid #536178;border-radius:8px;padding:7px 29px 7px 9px;background:#202c40;color:#f3f6fb;font:inherit}.userbox{display:flex;gap:14px;align-items:center;font-size:13px;white-space:nowrap}.userbox form{margin:0}.userbox button{border:0;background:transparent;color:#d5dbe6;cursor:pointer}.nav{position:relative;background:white;border-bottom:1px solid var(--line);display:flex;gap:5px;justify-content:center;align-items:stretch;overflow:visible}.nav>a,.nav-more>summary{display:flex;align-items:center;padding:15px 14px;text-decoration:none;color:#475467;font-weight:700;white-space:nowrap;cursor:pointer;list-style:none}.nav-more>summary::-webkit-details-marker{display:none}.nav>a:hover,.nav>a.active,.nav-more>summary:hover,.nav-more.is-active>summary{color:var(--blue);background:#f1f5ff}.nav-more{position:relative}.nav-more-menu{position:absolute;z-index:20;top:100%;right:0;min-width:190px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 10px 24px rgba(16,24,40,.14)}.nav-more-menu a{display:block;padding:9px 10px;text-decoration:none;color:#475467;font-weight:700;white-space:nowrap}.nav-more-menu a:hover{color:var(--blue);background:#f1f5ff;border-radius:6px}.page{width:min(1200px,100%);margin:auto;padding:30px 20px 80px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}.heading h1,.module-hero h1{font-size:34px;margin:4px 0}.heading p,.module-hero p{margin:0;color:var(--muted)}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--blue)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.metrics article,.panel,.module-hero{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 4px 18px rgba(16,24,40,.04)}.metrics span{display:block;color:var(--muted);font-size:13px}.metrics b{font-size:34px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.panel h2{margin:0 0 8px;font-size:20px}.panel p{color:var(--muted)}.tag{display:inline-flex;border-radius:50%;align-items:center;justify-content:center;width:26px;height:26px;color:white;font-weight:800}.tag.core{background:var(--blue)}.tag.welding{background:#d97706}.tag.ndt{background:#6d3bc5}.tag.iso{background:var(--green)}.button,button{border:0;border-radius:9px;padding:11px 14px;font:inherit;font-weight:800;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;cursor:pointer}.primary{background:var(--blue);color:white}.muted{background:#edf0f5;color:#344054}.danger{background:var(--red);color:white}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stack{display:flex;flex-direction:column;gap:13px}.stack label,.form-grid label,.filter label,.photo-form label{font-size:13px;font-weight:800;color:#475467}.stack input,.form-grid input,.form-grid select,.filter select,.confirmation-form input,.photo-form input{display:block;width:100%;margin-top:6px;border:1px solid #c9d0da;border-radius:9px;padding:11px;font:inherit;background:white}.form-grid textarea{display:block;width:100%;min-height:92px;margin-top:6px;border:1px solid #c9d0da;border-radius:9px;padding:11px;font:inherit;resize:vertical;background:white}.form-grid small{display:block;margin-top:5px;color:var(--muted);font-weight:400}.list{display:flex;flex-direction:column;gap:8px}.list a,.joint{border:1px solid var(--line);border-radius:10px;padding:12px;text-decoration:none;color:inherit;display:flex;gap:10px;align-items:center}.list a span{flex:1;color:var(--muted)}.list a small{color:var(--blue);font-weight:800}.empty{border:1px dashed #b8c2d0;border-radius:12px;padding:28px;text-align:center;color:var(--muted)}.joint-list{display:flex;flex-direction:column;gap:8px}.joint{justify-content:flex-start}.joint div{flex:1}.joint p{margin:3px 0 0;color:var(--muted);font-size:13px}.joint code{font-size:11px;color:#667085}.status{width:11px;height:11px;border-radius:50%;background:#98a2b3}.status.confirmed{background:var(--green)}.status.proposed{background:#e7a600}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid label:first-child{grid-column:span 2}.actions{grid-column:span 2;display:flex;justify-content:flex-end;gap:9px}.back{display:inline-block;margin-bottom:16px;color:var(--blue);font-weight:800;text-decoration:none}.badge{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.badge.confirmed{background:#eaf7f0;color:var(--green)}.badge.proposed{background:#fff4db;color:var(--amber)}.badge.welding-planned{background:#edf0f5;color:#475467}.badge.welding-in_progress{background:#fff4db;color:var(--amber)}.badge.welding-completed{background:#eaf7f0;color:var(--green)}dl{display:grid;grid-template-columns:150px 1fr;gap:10px;margin:0}dt{color:var(--muted)}dd{margin:0;font-weight:700;overflow-wrap:anywhere}.button-row{display:flex;gap:8px;flex-wrap:wrap}.timeline{display:flex;flex-direction:column;gap:8px}.timeline div{display:flex;justify-content:space-between;border-bottom:1px solid #edf0f5;padding-bottom:8px}.timeline span{color:var(--muted);font-size:13px}.module-hero{max-width:760px;margin:60px auto;text-align:center}.import-review{margin:16px 0;border-color:#ecd597}.confirmation-form{display:flex;gap:10px;align-items:end;max-width:520px}.confirmation-form input{margin:0}.photo-panel{margin-top:16px}.photo-count{border-radius:999px;background:#edf0f5;padding:4px 9px;font-weight:800}.photo-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-bottom:16px}.photo-form input[type=file]{padding:8px}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.photo-card{display:flex;flex-direction:column;gap:5px;color:inherit;text-decoration:none;font-size:12px}.photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:9px;background:#edf0f5}.photo-card small{color:var(--muted)}.module-hero{max-width:760px;margin:60px auto;text-align:center}.login-card{width:min(410px,100%);margin:12vh auto;background:white;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 10px 35px rgba(16,24,40,.08)}.login-card h1{margin:5px 0}.login-card p,.login-card small{color:var(--muted)}.flash{border-radius:10px;padding:12px 14px;margin-bottom:18px;font-weight:700}.flash.success{background:#eaf7f0;color:var(--green)}.flash.error{background:#fff0ee;color:var(--red)}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:14px}.section-heading h2{margin:2px 0 0}.saved-at{margin:5px 0 0!important;font-size:12px}.welding-panel{margin-top:16px}.danger-panel{margin-top:16px;border-color:#f4c7c3}.stamp{display:inline-block;margin:0 5px 5px 0;padding:3px 8px;border-radius:999px;background:#fff4db;color:#8a5600;font:700 12px ui-monospace,monospace}@media(max-width:720px){.topbar{padding:10px 14px;align-items:center;flex-wrap:wrap}.brand{font-size:18px}.brand small{display:none}.project-switch{order:3;flex:1 0 100%}.project-switch select{max-width:none;flex:1}.userbox b{display:none}.nav{justify-content:flex-start;overflow-x:auto}.nav-more{position:static}.nav-more-menu{right:14px}.page{padding:22px 14px 70px}.heading{align-items:start;flex-direction:column}.heading h1,.module-hero h1{font-size:28px}.metrics,.grid,.split{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label:first-child,.actions{grid-column:auto}.confirmation-form,.photo-form{align-items:stretch;flex-direction:column;display:flex}.photo-grid{grid-template-columns:repeat(2,1fr)}.joint code{display:none}dl{grid-template-columns:1fr}.timeline div{flex-direction:column}.metrics b{font-size:29px}}
.welder-list{display:flex;flex-direction:column;gap:10px}.welder-card{border:1px solid var(--line);border-radius:11px;padding:13px}.welder-title{display:flex;justify-content:space-between;gap:12px}.welder-title b,.welder-title span{display:block}.welder-title span,.muted-text{color:var(--muted);font-size:13px}.stamp-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.stamp-form{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:9px;align-items:end;border-top:1px solid #edf0f5;padding-top:12px}.stamp-form label{font-size:12px;font-weight:800;color:#475467}.stamp-form input{display:block;width:100%;margin-top:4px;border:1px solid #c9d0da;border-radius:8px;padding:9px;font:inherit;background:white}.weld-form{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}@media(max-width:720px){.stamp-form{grid-template-columns:1fr}}
.welder-create{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;gap:10px;align-items:end}.welder-create label{font-size:13px;font-weight:800;color:#475467}.welder-create input,.welder-create select{display:block;width:100%;margin-top:6px;border:1px solid #c9d0da;border-radius:9px;padding:11px;font:inherit;background:white}.welder-table-wrap{overflow:auto}.welder-table{width:100%;border-collapse:collapse;min-width:720px}.welder-table th,.welder-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e6e9ef}.welder-table th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#667085;background:#f8fafc}.welder-table td:first-child{font-weight:800}.welder-table tr:last-child td{border-bottom:0}@media(max-width:900px){.welder-create{grid-template-columns:repeat(2,1fr)}.welder-create button{grid-column:span 2;justify-self:end}}@media(max-width:520px){.welder-create{grid-template-columns:1fr}.welder-create button{grid-column:auto;justify-self:stretch}}
.welder-exchange{margin-bottom:16px}.welder-exchange .section-heading{margin-bottom:0}.welder-exchange p{margin:4px 0 0}.welder-import-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid #edf0f5}.welder-import-form label{font-size:13px;font-weight:800;color:#475467}.welder-import-form input{display:block;width:100%;margin-top:6px;border:1px solid #c9d0da;border-radius:9px;padding:9px;font:inherit;background:white}.welder-import-form small{display:block;margin-top:5px;color:var(--muted);font-weight:400}@media(max-width:720px){.welder-import-form{grid-template-columns:1fr}.welder-import-form button{justify-self:start}}
.welder-table-editable{min-width:1120px}.welder-table-editable input,.welder-table-editable select{width:100%;min-width:112px;border:1px solid #c9d0da;border-radius:7px;padding:8px;font:inherit;background:#fff}.welder-table-editable td:first-child input{min-width:230px}.welder-table-editable td:last-child{white-space:nowrap}.welder-table-editable form{margin:0}.welder-table-editable button{padding:9px 10px}
.welder-table th:first-child,.welder-table td:first-child{width:38%;min-width:300px}.welder-table th:nth-child(2),.welder-table td:nth-child(2){width:92px;min-width:92px;max-width:92px}.welder-table th:nth-child(3),.welder-table td:nth-child(3){width:150px}.welder-table th:nth-child(4),.welder-table td:nth-child(4),.welder-table th:nth-child(5),.welder-table td:nth-child(5){width:140px;white-space:nowrap}.welder-table-editable th:first-child,.welder-table-editable td:first-child{width:340px}.welder-table-editable th:nth-child(2),.welder-table-editable td:nth-child(2){width:108px;min-width:108px;max-width:108px}.welder-table-editable td:nth-child(2) input{min-width:0;padding-left:7px;padding-right:7px}.welder-table-editable th:last-child,.welder-table-editable td:last-child{width:116px}
.joints-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.joints-table{width:100%;min-width:920px;border-collapse:collapse;text-align:left}.joints-table th{padding:11px 14px;background:#f8fafc;border-bottom:1px solid var(--line);color:#475467;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.joints-table td{padding:12px 14px;border-bottom:1px solid #edf0f5;font-size:14px;vertical-align:middle}.joints-table tbody tr:last-child td{border-bottom:0}.joints-table tbody tr:hover{background:#f8fbff}.line-link,.cell-link{color:inherit;text-decoration:none}.line-link b,.line-link small{display:block}.line-link small{margin-top:3px;color:var(--muted);font-size:12px;font-weight:500}.cell-link{color:var(--blue);font-weight:800}.weld-status{display:inline-flex;border-radius:999px;padding:5px 8px;background:#fff4db;color:#9a6700;font-size:12px;font-weight:800;white-space:nowrap}.weld-status.welded{background:#eaf7f0;color:var(--green)}.weld-status.unwelded{background:#edf0f5;color:#667085}@media(max-width:720px){.joints-table-wrap{margin-left:-14px;margin-right:-14px;border-radius:0;border-left:0;border-right:0}}
.repair-panel{margin-top:16px}.repair-callout{display:flex;flex-direction:column;gap:5px;border-left:4px solid var(--purple);padding:10px 13px;background:#f6f3ff;border-radius:8px}.repair-callout a{color:var(--blue);font-weight:700;text-decoration:none}.repair-list{display:flex;flex-direction:column;gap:7px}.repair-list a{display:grid;grid-template-columns:150px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:10px 12px;color:inherit;text-decoration:none}.repair-list span{color:var(--muted)}.repair-list small{font-weight:800;color:var(--amber)}.repair-form{display:grid;grid-template-columns:130px 1fr auto;gap:10px;align-items:start;margin-top:14px;padding-top:14px;border-top:1px solid #edf0f5}.repair-form label{font-size:12px;font-weight:800;color:#475467}.repair-form input,.repair-form textarea{display:block;width:100%;margin-top:5px;border:1px solid #c9d0da;border-radius:8px;padding:9px;font:inherit;background:white}.repair-form textarea{min-height:56px;resize:vertical}.repair-form button{align-self:end;min-height:42px}.completion-warning,.completion-ready{border-radius:9px;padding:10px 12px;margin:0 0 14px;font-size:13px}.completion-warning{background:#fff4db;color:#7a4b00}.completion-warning b{display:block}.completion-ready{background:#eaf7f0;color:var(--green);font-weight:700}.print-page{background:#e5e7eb}.print-sheet{width:min(210mm,100%);min-height:297mm;margin:20px auto;background:#fff;padding:16mm;box-shadow:0 2px 12px rgba(16,24,40,.16);font-family:Arial,sans-serif;color:#111827}.print-actions{display:flex;justify-content:flex-end;gap:8px;margin-bottom:14px}.print-header{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #1f2937;padding-bottom:12px;margin-bottom:14px}.print-header span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.print-header h1{margin:3px 0;font-size:25px}.print-header p{margin:0;color:#4b5563}.print-number{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.print-number b{font-size:18px}.print-number em{font-style:normal;color:#6d3bc5;font-weight:800}.print-note{border:1px solid #c4b5fd;background:#f6f3ff;padding:9px 11px;margin:0 0 14px}.print-table{width:100%;border-collapse:collapse;font-size:13px}.print-table th,.print-table td{border:1px solid #9ca3af;padding:8px;text-align:left;vertical-align:top}.print-table th{background:#f3f4f6;font-weight:800}.print-section{margin-top:18px}.print-section h2{font-size:16px;margin:0 0 8px}.print-section p{font-size:13px}.print-warning{color:#9a6700}.print-ok{color:#147a4a}.print-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #9ca3af;margin-top:24px;padding-top:8px;color:#4b5563;font-size:11px}@media(max-width:720px){.repair-form,.repair-list a{grid-template-columns:1fr}.print-sheet{padding:20px;margin:0}.print-header{flex-direction:column}.print-number{align-items:flex-start;text-align:left}}@media print{.print-page{background:#fff}.print-sheet{width:auto;min-height:auto;margin:0;padding:0;box-shadow:none}.print-actions{display:none}}
.request-create{display:grid;grid-template-columns:180px 1fr auto;gap:12px;align-items:end;margin:16px 0}.request-create label,.assignment-form label,.queue-fields label{font-size:13px;font-weight:800;color:#475467}.request-create input,.assignment-form select,.queue-fields input,.queue-fields textarea{display:block;width:100%;margin-top:5px;border:1px solid #c9d0da;border-radius:9px;padding:10px;font:inherit;background:#fff}.request-cards,.ndt-queue{display:flex;flex-direction:column;gap:10px}.request-card{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:14px;color:inherit;text-decoration:none;background:#fff}.request-card b,.request-card span{display:block}.request-card span,.request-progress small{color:var(--muted);font-size:13px}.request-progress{text-align:right}.assignment-form{display:grid;grid-template-columns:260px 1fr auto;gap:14px;align-items:end}.assignment-form .joint-picker{grid-column:span 2}.assignment-form select[multiple]{min-height:190px}.ndt-items{display:flex;flex-direction:column;gap:7px}.ndt-items>div{display:grid;grid-template-columns:48px 1fr 140px auto;gap:10px;align-items:center;border-bottom:1px solid #edf0f5;padding:8px 0}.ndt-item-status{font-weight:800;color:var(--amber)}.ndt-item-status.completed{color:var(--green)}.queue-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.queue-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px}.queue-head b,.queue-head small{display:block}.queue-head small{margin-top:4px;color:var(--muted)}.queue-head a{color:var(--blue);font-weight:800;text-decoration:none}.method-chip{display:inline-block;border-radius:7px;background:#eee8ff;color:var(--purple);font-weight:900;padding:3px 7px;margin-right:7px}.queue-fields{display:grid;grid-template-columns:150px 1fr 260px;gap:12px}.queue-fields fieldset{margin:0;border:1px solid #c9d0da;border-radius:9px;padding:8px}.queue-fields fieldset label{display:inline-flex;gap:5px;margin-right:10px}.queue-fields input[type=radio]{display:inline;width:auto;margin:0}.queue-notes{grid-column:span 3}.queue-fields textarea{min-height:62px;resize:vertical}@media(max-width:720px){.request-create,.assignment-form,.request-card,.ndt-items>div,.queue-fields{grid-template-columns:1fr}.assignment-form .joint-picker,.queue-notes{grid-column:auto}.queue-head{flex-direction:column}}
.access-create{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 1fr 1.4fr auto;gap:10px;align-items:end}.access-create label,.user-list form{font-size:12px;font-weight:800;color:#475467}.access-create input,.access-create select,.user-list select{display:block;width:100%;margin-top:4px;border:1px solid #c9d0da;border-radius:8px;padding:9px;background:#fff;font:inherit}.user-list{display:flex;flex-direction:column;gap:9px}.user-list article{display:grid;grid-template-columns:180px 1fr 310px;gap:12px;align-items:center;border-bottom:1px solid #edf0f5;padding:10px 0}.user-list article:last-child{border-bottom:0}.user-list b,.user-list span{display:block}.user-list span{color:var(--muted);font-size:12px}.user-roles{display:flex;flex-wrap:wrap;gap:5px}.user-roles span{background:#edf0f5;border-radius:999px;padding:4px 7px;color:#475467}.user-list form{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;align-items:end}@media(max-width:720px){.access-create,.user-list article,.user-list form{grid-template-columns:1fr}}
.ndt-metrics{margin-top:16px}.metric-alert{border-color:#f4c7c3!important}.metric-alert b{color:var(--red)}.dashboard-list{display:flex;flex-direction:column;gap:7px}.dashboard-list a{display:grid;grid-template-columns:54px 1fr;gap:7px;align-items:center;border-bottom:1px solid #edf0f5;padding:8px 0;color:inherit;text-decoration:none}.dashboard-list a:last-child{border-bottom:0}.dashboard-list small{grid-column:2;color:var(--muted)}.dashboard-list.problems a{border-left:3px solid #f4c7c3;padding-left:7px}.queue-files{grid-column:span 2}.ndt-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.ndt-files a{color:var(--blue);text-decoration:none;border:1px solid var(--line);border-radius:7px;padding:4px 8px;background:#f7faff}.welding-metrics{margin-top:16px}.master-joints{display:flex;flex-direction:column}.master-joints a{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;border-bottom:1px solid #edf0f5;padding:12px 0;color:inherit;text-decoration:none}.master-joints a:last-child{border-bottom:0}.master-joints b,.master-joints small{display:block}.master-joints small{margin-top:4px;color:var(--muted)}.weld-status.active{background:#fff4db;color:var(--amber)}.admin-list{display:flex;flex-direction:column}.admin-list>div{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #edf0f5;padding:9px 0}.admin-list>div:last-child{border-bottom:0}.admin-list span{overflow-wrap:anywhere}.admin-list form{margin:0;flex:0 0 auto}.delete-project{display:flex;gap:10px;align-items:end}.delete-project label{font-size:13px;font-weight:800;color:#475467}.delete-project input{display:block;margin-top:5px;border:1px solid #c9d0da;border-radius:8px;padding:9px;font:inherit}@media(max-width:720px){.queue-files{grid-column:auto}.master-joints a{grid-template-columns:1fr;gap:5px}.admin-list>div,.delete-project{align-items:stretch;flex-direction:column}.admin-list form button{width:100%}}.report-metrics{grid-template-columns:repeat(4,1fr)}.report-metrics small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.report-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:13px;background:#fff}.report-table{width:100%;min-width:850px;border-collapse:collapse;text-align:left}.report-table th{padding:12px 14px;background:#f8fafc;border-bottom:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#475467}.report-table td{padding:11px 14px;border-bottom:1px solid #edf0f5;vertical-align:middle}.report-table tr:last-child td{border-bottom:0}.report-table tr.has-problem{background:#fffaf9}.progress-cell{display:grid;grid-template-columns:38px 1fr;gap:5px 8px;align-items:center;min-width:185px}.progress-cell b{font-size:13px}.progress-cell span{height:7px;overflow:hidden;border-radius:999px;background:#edf0f5}.progress-cell i{display:block;height:100%;border-radius:inherit;background:var(--green)}.progress-cell i.control{background:var(--purple)}.progress-cell small{grid-column:2;color:var(--muted);font-size:11px}.problem-count{color:var(--red)}.angular-pipe-fields{grid-column:span 2;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:14px;border:1px solid #cfe0ff;border-radius:12px;background:#f7faff}.angular-pipe-fields[hidden]{display:none!important}.angular-pipe-fields>b,.angular-pipe-fields>p{grid-column:span 2;margin:0}.angular-pipe-fields>b{color:#1d4ed8}.angular-pipe-fields>p{color:var(--muted);font-size:13px}@media(max-width:720px){.report-metrics{grid-template-columns:repeat(2,1fr)}.report-table-wrap{margin-left:-14px;margin-right:-14px;border-left:0;border-right:0;border-radius:0}.angular-pipe-fields{grid-column:auto;grid-template-columns:1fr}.angular-pipe-fields>b,.angular-pipe-fields>p{grid-column:auto}}
.summary-register{margin-top:16px}.summary-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}.summary-table{width:100%;min-width:1280px;border-collapse:collapse;text-align:left;font-size:13px}.summary-table th{position:sticky;top:0;z-index:1;padding:10px 11px;background:#f8fafc;border-bottom:1px solid var(--line);color:#475467;font-size:11px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.summary-filter-row th{position:sticky;top:0;padding:7px 5px;background:#eef4fb;border-bottom:0}.summary-filter-row input{width:100%;min-width:48px;box-sizing:border-box;border:1px solid #c9d0da;border-radius:6px;padding:5px 6px;background:#fff;color:#344054;font:inherit;text-transform:none;letter-spacing:normal}.summary-filter-row input::placeholder{color:#8b97a8}.summary-table th:nth-child(4),.summary-table td:nth-child(4),.summary-table th:nth-child(5),.summary-table td:nth-child(5){width:92px;min-width:92px;max-width:92px;box-sizing:border-box}.summary-table td{padding:10px 11px;border-bottom:1px solid #edf0f5;vertical-align:top}.summary-table tr:last-child td{border-bottom:0}.summary-table tr:hover td{background:#f8fbff}.summary-table td:nth-child(1),.summary-table td:nth-child(2){min-width:170px}.summary-table td:nth-child(3),.summary-table td:nth-child(4),.summary-table td:nth-child(5),.summary-table td:nth-child(6),.summary-table td:nth-child(9){white-space:nowrap}.line-isometry-link{color:var(--blue);font-weight:800;text-decoration:none;border-bottom:1px dashed currentColor}.line-isometry-link:hover{color:#114ca3}.control-list{display:flex;flex-wrap:wrap;gap:4px;min-width:105px}.control-list b{display:inline-block;border-radius:999px;padding:3px 6px;background:#eee8ff;color:var(--purple);font-size:11px;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.welding-card-form .welding-stamps-picker{grid-column:span 2}.welding-card-form .welding-stamps-picker select{display:block;width:100%;min-height:112px;margin-top:6px;border:1px solid #c9d0da;border-radius:9px;padding:7px;font:inherit;background:#fff}.welding-card-form .welding-notes{grid-column:span 1;max-width:430px}
.ndt-batch-panel{margin-top:16px}.ndt-request-meta{display:grid;grid-template-columns:180px minmax(240px,1fr) 170px minmax(220px,1fr);gap:12px;margin-bottom:14px}.ndt-request-meta label,.ndt-table-tools label,.ndt-exchange-panel label{font-size:13px;font-weight:800;color:#475467}.ndt-request-meta input,.ndt-request-meta select,.ndt-table-tools input,.ndt-exchange-panel input{display:block;width:100%;margin-top:5px;border:1px solid #c9d0da;border-radius:9px;padding:9px 10px;background:#fff;color:var(--ink);font:inherit}.ndt-table-tools{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px}.ndt-table-tools label{width:min(420px,100%)}.ndt-table-tools span{color:var(--muted)}.ndt-table-tools b{color:var(--blue);font-size:18px}.ndt-selection-wrap{overflow:auto;max-height:58vh;border:1px solid var(--line);border-radius:11px}.ndt-selection-table{width:100%;min-width:1350px;border-collapse:collapse;text-align:left;font-size:13px}.ndt-selection-table th{position:sticky;top:0;z-index:1;padding:10px 9px;background:#f8fafc;border-bottom:1px solid var(--line);color:#475467;font-size:11px;text-transform:uppercase;white-space:nowrap}.ndt-selection-table td{padding:9px;border-bottom:1px solid #edf0f5}.ndt-selection-table tr:last-child td{border-bottom:0}.ndt-selection-table tbody tr:hover{background:#f8fbff}.ndt-method-cell{width:52px;text-align:center}.ndt-method-cell label{display:inline-flex;align-items:center;justify-content:center;position:relative;width:32px;height:32px;cursor:pointer}.ndt-method-cell input{width:20px;height:20px;margin:0;accent-color:var(--blue)}.ndt-method-cell input:disabled{opacity:.18}.ndt-method-cell span{position:absolute;pointer-events:none;font-weight:900;color:var(--amber)}.ndt-method-cell span.completed{color:var(--green)}.ndt-submit-bar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:11px 0 0;background:var(--panel)}.ndt-submit-bar>span{color:var(--muted);font-size:12px}.ndt-submit-bar button:disabled{opacity:.45;cursor:not-allowed}.ndt-exchange-panel{margin-top:16px}.ndt-exchange-panel form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.ndt-existing-requests{margin-top:22px}@media(max-width:900px){.ndt-request-meta{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.ndt-request-meta,.ndt-exchange-panel form{grid-template-columns:1fr}.ndt-table-tools{align-items:stretch;flex-direction:column}.ndt-selection-wrap{margin-left:-20px;margin-right:-20px;border-left:0;border-right:0;border-radius:0}.ndt-submit-bar{align-items:stretch;flex-direction:column}.ndt-submit-bar button{width:100%}}
.ndt-filter-actions{display:flex;gap:7px}.ndt-filter-actions button{padding:9px 11px;font-size:12px}.ndt-filter-actions button.is-active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 22%,transparent)}.ndt-filter-row th{top:0!important;padding:6px!important;background:#eef4fb!important}.ndt-filter-row input,.ndt-filter-row select{display:block;width:100%;min-width:58px;border:1px solid #c9d0da;border-radius:6px;padding:6px;background:#fff;color:#344054;font:inherit;font-size:11px;text-transform:none}.ndt-filter-row input[type=date]{min-width:125px}.ndt-header-row th{top:43px!important}.ndt-selection-table tr[hidden]{display:none}.ndt-method-cell[data-method-state=selected]{background:#f1f5ff}.ndt-method-cell[data-method-state=completed]{background:#eefaf3}@media(max-width:620px){.ndt-filter-actions{width:100%}.ndt-filter-actions button{flex:1}}
.ndt-batch-panel{padding:16px}.ndt-batch-panel .section-heading{align-items:center;margin-bottom:10px}.ndt-batch-panel .section-heading p{margin:3px 0 0;font-size:13px}.ndt-batch-panel .section-heading .button{white-space:nowrap;padding:9px 12px}.ndt-request-meta{grid-template-columns:170px minmax(230px,1.25fr) 160px minmax(210px,1fr);gap:9px;margin-bottom:10px}.ndt-request-meta input,.ndt-request-meta select{height:38px;margin-top:3px;padding:7px 9px}.ndt-table-tools{display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(280px,1fr);align-items:end;gap:10px;margin-bottom:8px}.ndt-table-tools .ndt-filter-actions{justify-content:center}.ndt-table-tools>span{text-align:right;white-space:nowrap}.ndt-selection-wrap{max-height:62vh}.ndt-selection-table{min-width:1110px;table-layout:fixed;font-size:12px}.ndt-selection-table th,.ndt-selection-table td{padding:7px 5px;text-align:center;vertical-align:middle}.ndt-selection-table th{font-size:10px;letter-spacing:0;line-height:1.15;white-space:normal}.ndt-selection-table th:nth-child(1),.ndt-selection-table td:nth-child(1){width:116px;text-align:left}.ndt-selection-table th:nth-child(2),.ndt-selection-table td:nth-child(2){width:74px}.ndt-selection-table th:nth-child(3),.ndt-selection-table td:nth-child(3){width:62px}.ndt-selection-table th:nth-child(4),.ndt-selection-table td:nth-child(4){width:86px}.ndt-selection-table th:nth-child(5),.ndt-selection-table td:nth-child(5){width:82px}.ndt-selection-table th:nth-child(6),.ndt-selection-table td:nth-child(6){width:68px}.ndt-selection-table th:nth-child(7),.ndt-selection-table td:nth-child(7){width:68px}.ndt-selection-table th:nth-child(8),.ndt-selection-table td:nth-child(8){width:94px}.ndt-selection-table th:nth-child(9),.ndt-selection-table td:nth-child(9){width:70px}.ndt-selection-table th:nth-child(n+10):nth-child(-n+14),.ndt-selection-table td:nth-child(n+10):nth-child(-n+14){width:43px}.ndt-selection-table th:nth-child(15),.ndt-selection-table td:nth-child(15){width:130px;text-align:left}.ndt-filter-row input,.ndt-filter-row select{min-width:0;height:29px;padding:4px 5px;text-align:center}.ndt-filter-row input[type=date]{min-width:0;padding:3px;font-size:10px}.ndt-header-row th{top:41px!important}.ndt-method-cell label{width:27px;height:27px}.ndt-method-cell input{width:18px;height:18px}.ndt-submit-bar{margin-top:8px;padding-top:8px}.ndt-submit-bar button{padding:9px 14px}.ndt-selection-legend{display:flex;flex-direction:column;gap:2px;line-height:1.2}.ndt-selection-legend span{display:block}.request-card{padding:0}.request-card-open{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;min-width:0;padding:14px;color:inherit;text-decoration:none}.request-card-open:hover{background:var(--soft)}.request-card-export{margin-right:10px;white-space:nowrap}@media(max-width:900px){.ndt-table-tools{grid-template-columns:1fr auto}.ndt-table-tools>span{grid-column:span 2;text-align:left}.ndt-selection-table{min-width:1110px}}@media(max-width:620px){.ndt-batch-panel{padding:14px}.ndt-table-tools{display:flex}.ndt-table-tools>span{white-space:normal;text-align:left}.request-card-open{grid-template-columns:1fr}.request-card-export{margin:0 10px 10px}}
