@font-face{font-family:system;src:local('Segoe UI')}*{box-sizing:border-box}body{margin:0;background:#f3f6fa;color:#162b43;font:16px/1.5 system,'Segoe UI',Arial,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid #cdd8e3;background:white;border-radius:7px;padding:8px 13px;color:#26425a;transition:background .15s}button:hover{background:#e9f3f5}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #02a79b;outline-offset:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:99;background:white;padding:10px}.shell{display:grid;grid-template-columns:242px minmax(0,1fr);min-height:100vh}aside{background:#102b43;color:#e7eff8;padding:30px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-weight:650;font-size:19px;padding:0 8px 36px}.brand-mark{display:grid;place-items:center;width:38px;height:44px;border:2px solid #25c0b0;border-radius:6px;color:#69e1cd;font-size:24px}.brand small{display:block;font-size:11px;letter-spacing:1.8px;font-weight:500;color:#91afc7;margin-top:3px}.nav-label{font-size:11px;letter-spacing:2px;color:#8da7bd;padding:0 12px 10px}nav{display:grid;gap:5px}nav button{display:flex;gap:12px;align-items:center;text-align:left;border:0;background:transparent;color:#b6c8d8;padding:11px 12px;font-size:14px}nav button.active{background:#1e475d;color:#fff;box-shadow:inset 3px 0 #35d1bc}nav button:hover{background:#1e4056}nav .nav-icon{width:22px;text-align:center;color:#76bcbf}.aside-bottom{margin-top:auto;font-size:12px;padding:30px 10px 0;color:#b6c8d8}.aside-bottom p{color:#8ca5ba}.live-dot{display:inline-block;width:7px;height:7px;background:#3fd1b7;border-radius:50%;margin-right:6px}.dark-button{border-color:#375366;background:transparent;color:white;font-size:13px}main{min-width:0;padding:32px 38px 15px;max-width:1900px;width:100%;margin:auto}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}h1{font-size:30px;letter-spacing:-.7px;margin:4px 0;font-weight:650}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:650;color:#54718c;margin:0}.header-actions{display:flex;align-items:flex-end;flex-direction:column;gap:7px;font-size:12px;color:#587087}.header-actions button{font-size:14px}.filter-panel{background:white;border:1px solid #dce4ec;border-radius:10px;padding:17px 20px;margin-bottom:20px}.filter-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px}.filter-top button{padding:2px 0;border:0;color:#007c76;font-size:13px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.filters label{font-size:12px;font-weight:600;color:#5b7188}.filters input,.filters select{display:block;width:100%;min-width:0;background:#f9fbfd;color:#233d54;border:1px solid #d7e0e9;border-radius:5px;padding:8px;font-size:14px;margin-top:5px}summary{cursor:pointer;font-size:13px;color:#087e7a;margin:12px 0}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{font-size:12px;background:#e4f5f1;border:0;color:#046f67;margin-top:10px;padding:4px 9px}.notice{padding:12px 16px;background:#fff7e7;border:1px solid #f1d8a6;border-radius:8px;font-size:14px;margin-bottom:18px}.muted{color:#61788e;font-size:14px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 14px}.section-head h2{font-size:18px;margin:0;font-weight:650}.section-head p{font-size:13px;margin:4px 0;color:#6b8195}.section-head select{padding:6px;max-width:230px;border:1px solid #dce4ec;border-radius:6px;color:#2b485f;background:white;font-size:13px}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.kpi{background:white;border:1px solid #dce4ec;border-radius:10px;padding:18px 18px 16px;position:relative;overflow:hidden}.kpi:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#09988c}.kpi .label{color:#5a7188;font-size:13px;font-weight:600}.kpi strong{display:block;font-size:32px;letter-spacing:-1px;line-height:1.3;margin:7px 0}.kpi small{font-size:12px;color:#708397}.kpi.warn:before{background:#e2a444}.chart-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.panel{background:#fff;border:1px solid #dce4ec;border-radius:10px;padding:22px;min-width:0}.trend{height:235px;display:flex;align-items:flex-end;gap:3px;padding:12px 0 32px;border-bottom:1px solid #dfe7ef;position:relative;background:repeating-linear-gradient(to top,transparent 0,transparent 46px,#eff3f6 47px,#eff3f6 48px)}.trend-col{height:100%;flex:1;min-width:5px;display:flex;align-items:flex-end;position:relative}.trend-bar{padding:0;border:0;background:#159f97;width:100%;border-radius:3px 3px 0 0;min-height:2px;position:relative}.trend-bar:hover{background:#0d5f74}.trend-col span{position:absolute;bottom:-27px;font-size:10px;white-space:nowrap;left:50%;transform:translateX(-50%);color:#688096}.chart-caption{font-size:12px;color:#688096;margin-top:13px}.bars{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(80px,1.25fr) minmax(30px,1fr) 40px;gap:10px;align-items:center;border:0;padding:3px 0;font-size:13px;text-align:left;border-radius:3px;width:100%;background:transparent}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:10px;background:#eef3f7;border-radius:2px;overflow:hidden}.bar-fill{display:block;background:#279f99;height:100%;border-radius:2px}.bar-row:nth-child(2n) .bar-fill{background:#608aa8}.bar-count{text-align:right;font-variant-numeric:tabular-nums}.compare{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.area-card{display:block;text-align:left;padding:15px;border:1px solid #dce4ec;border-radius:8px}.area-card strong{display:block;font-size:25px;margin:8px 0}.area-card small{display:block;font-size:12px;color:#6c8296}.area-card .area-name{font-size:14px;color:#116b70;font-weight:650}.records{margin-top:20px}.table-tools{display:flex;gap:8px;align-items:center}.table-tools input{width:240px;max-width:100%;padding:8px 10px;border:1px solid #ccd9e4;border-radius:6px;font-size:14px}.table-wrap{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{background:#f6f9fb;color:#546d83;font-size:12px;font-weight:600;white-space:nowrap}td,th{padding:12px 13px;border-bottom:1px solid #e7edf2;vertical-align:top}td{max-width:310px}td.text-cell{min-width:200px}td .ellipsis{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}td button{font-size:12px;padding:4px 8px;color:#007d75;border-color:#cae4df}.badge{display:inline-block;border-radius:4px;background:#e7f4ee;color:#25745d;font-size:12px;padding:3px 7px;white-space:nowrap}.badge.open{background:#fff0d9;color:#976514}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;font-size:13px;color:#647b90}.pagination button{font-size:13px}.empty{padding:45px 20px;text-align:center;color:#61778c}.empty h2{color:#264459}.empty input{margin:20px}.source-note{font-size:12px;color:#637b90;padding:10px 0}.quality-list{padding-left:20px;font-size:14px;color:#435f77}.quality-list li{margin:10px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.primary{background:#087f78;color:white;border-color:#087f78}.primary:hover{background:#066960}dialog{border:0;border-radius:12px;width:min(840px,94vw);max-height:90vh;padding:28px;color:#19364d;box-shadow:0 20px 100px #06192a66}dialog::backdrop{background:#061a2b99}.dialog-head{display:flex;justify-content:space-between;gap:20px}.dialog-head h2{margin:7px 0 20px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-field{border-bottom:1px solid #e1e9ef;padding-bottom:12px;overflow-wrap:anywhere}.detail-field.wide{grid-column:1/-1}.detail-field strong{display:block;font-size:12px;color:#607a90;margin-bottom:5px}.detail-field p{margin:0;white-space:pre-wrap;font-size:14px}.link-form{padding:16px;background:#f2f7fa;margin:15px 0;border-radius:8px}.link-form select,.link-form input{padding:8px;margin:5px 0;width:100%;border:1px solid #c9d8e3;border-radius:5px}.heatmap td{text-align:center}.heatmap button{width:100%;border:0;border-radius:4px;background:rgba(0,140,132,var(--intensity));padding:9px;color:#14374e}.hide{display:none}footer{font-size:12px;color:#7b8c9d;margin:22px 0}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:white}.auth-story{background:#102b43;color:white;padding:10vw 7vw;display:flex;flex-direction:column;justify-content:center}.auth-story .brand{padding:0 0 60px}.auth-story h1{font-size:46px;line-height:1.15;max-width:450px}.auth-story p{color:#a7c3d5;max-width:420px}.auth-form{display:grid;place-items:center;padding:30px}.auth-form form{max-width:360px;width:100%}.auth-form h2{font-size:28px}.auth-form label{display:block;font-size:14px;margin-top:20px}.auth-form input{width:100%;padding:12px;border:1px solid #ccd9e4;border-radius:7px;margin-top:7px}.auth-form button{width:100%;padding:12px;margin-top:25px}.auth-form small{display:block;color:#71869a;margin-top:18px}.error{color:#9d3d28;background:#fff0e9;padding:12px;border-radius:6px;font-size:14px}
@media(min-width:1600px){main{padding:40px 55px}.trend{height:280px}}@media(max-width:1200px){.shell{grid-template-columns:205px minmax(0,1fr)}main{padding:25px 22px}.brand{font-size:16px}.kpis{gap:9px}.kpi{padding:14px 12px}.kpi strong{font-size:28px}.chart-grid{grid-template-columns:1.3fr 1fr}.table-tools{flex-wrap:wrap}.section-head{flex-wrap:wrap}}@media(max-width:900px){.shell{display:block}aside{position:static;height:auto;padding:17px}.brand{padding:0 8px 16px}nav{display:flex;overflow:auto}.nav-label,.aside-bottom{display:none}nav button{white-space:nowrap}.chart-grid,.two-col{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(3,1fr)}header{align-items:flex-start}.header-actions{max-width:180px}.compare{grid-template-columns:repeat(3,1fr)}.auth-page{grid-template-columns:1fr}.auth-story{padding:35px}.auth-story .brand{padding-bottom:15px}.auth-story h1{font-size:30px}}@media(max-width:580px){main{padding:22px 14px}.eyebrow{font-size:10px}h1{font-size:25px}.header-actions{max-width:130px}.kpis{grid-template-columns:repeat(2,1fr)}.compare{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:17px}.filter-panel{padding:15px}.detail-grid{grid-template-columns:1fr}.detail-field.wide{grid-column:auto}.table-tools input{width:100%}.trend-col span{font-size:9px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{aside,.filter-panel,.header-actions,.table-tools,footer{display:none}.shell{display:block}main{padding:0}.panel,.kpi{break-inside:avoid}body{background:white}}

/* Phone and tablet usability: keep content within the viewport and controls reachable. */
.filters>label,.section-head>*,header>*,.kpi{min-width:0}
.kpi-causes ol{list-style:none;margin:8px 0;padding:0;display:grid;gap:5px}.kpi-causes li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;font-size:12px;color:#435f77}.kpi-causes li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kpi-causes li strong{display:inline;font-size:13px;line-height:1.4;letter-spacing:0;margin:0}.kpi-causes .kpi-unavailable{font-size:20px;letter-spacing:0;margin:8px 0}.kpi-causes small{display:block}
.chart-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
@media(max-width:900px){
 aside{position:relative;padding-top:18px}
 aside .brand{padding-right:80px}
 .aside-bottom{display:block;position:absolute;right:17px;top:18px;padding:0;margin:0;font-size:0}
 .aside-bottom .live-dot,.aside-bottom p{display:none}
 .aside-bottom button{font-size:13px;min-height:44px}
 #nav{scrollbar-width:thin;padding-bottom:5px;overscroll-behavior-x:contain}
 nav button{min-height:44px}
 .chart-scroll .line-chart{min-width:600px;min-height:0}
 .chart-scroll::after{content:'Swipe chart to see more';display:block;font-size:12px;color:#637b90;padding:6px 0}
 .table-wrap{overscroll-behavior-x:contain}
 .table-wrap::after{content:'Swipe table to see more columns';display:block;font-size:12px;color:#637b90;padding:8px 0;position:sticky;left:0}
 button,summary{min-height:44px}
 .sort-button{min-height:44px;padding:8px 0}
 .bar-row{min-height:44px}
 .bar-label{white-space:normal;overflow-wrap:anywhere}
 input,select,.filters input,.filters select,.section-head select,.table-tools input{font-size:16px;min-height:44px}
 .trend-bar{min-height:2px}
 .pagination{flex-wrap:wrap}
}
@media(max-width:580px){
 header{display:block;margin-bottom:18px}
 .header-actions{max-width:none;flex-direction:row;justify-content:space-between;align-items:center;margin-top:12px;gap:12px}
 .header-actions button{flex-shrink:0}
 h1{font-size:26px;line-height:1.2;overflow-wrap:anywhere}
 .filters{grid-template-columns:minmax(0,1fr)}
 .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kpi{padding:14px 11px}
 .kpi strong{font-size:27px}
 .kpi .label,.kpi small{overflow-wrap:anywhere}
 .streak-kpis strong{font-size:20px;letter-spacing:-.6px}
 .section-head{align-items:flex-start}
 .section-head>label,.section-head select{max-width:100%;width:100%}
 .table-tools{width:100%;display:flex;flex-wrap:wrap}
 .table-tools input{width:100%;flex-basis:100%}
 .table-tools button{flex:1}
 .line-legend{gap:9px 14px}
 dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:18px}
 .dialog-head{gap:10px}
 #closeDetail{flex:0 0 44px;height:44px}
 .auth-story{padding:24px}
 .auth-story h1{font-size:28px}
 .auth-form{padding:24px 20px}
 .auth-form label{margin-top:14px}
}

.panel p,.panel .source-note{overflow-wrap:anywhere}
@media(max-width:900px){.chart-scroll .trend{min-width:600px;margin:0 24px}.chart-scroll{padding-bottom:4px}}
@media(max-width:580px){.kpis.streak-kpis strong{font-size:20px}}

/* Complementary chart colors retain the neutral dashboard surfaces. */
.bar-track{height:12px;background:#edf1f7;border-radius:4px}
.inspection-result-legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;line-height:1.3;margin-bottom:10px;color:#425d73}
.inspection-result-legend span{display:inline-flex;align-items:center;gap:5px}
.inspection-result-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}
.inspection-result-row{grid-template-columns:minmax(80px,1.25fr) minmax(35px,1fr) minmax(86px,auto)}
.inspection-result-stack{height:100%;display:flex;overflow:hidden;border-radius:3px}
.inspection-result-segment{height:100%;display:block;min-width:1px}
.inspection-result-counts{display:flex;justify-content:flex-end;gap:3px;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}
.inspection-result-counts b{font-weight:400;color:#8190a0}
.inspection-weekly-toggle{font-size:12px;padding:4px 8px;margin:0 0 9px;border-color:#94aaa9;color:#315764;background:#f4f8f8}
.inspection-weekly-toggle:before{content:'\2610';margin-right:6px;font-size:15px}
.inspection-weekly-toggle.selected{background:#e1f1ed;border-color:#18856d;color:#12634f}
.inspection-weekly-toggle.selected:before{content:'\2611'}
.bar-fill{border-radius:4px}
.bar-row:hover .bar-fill{filter:brightness(.88)}
.trend-bar{background:var(--trend-color,#178f89);background:linear-gradient(to top,var(--trend-color,#178f89),color-mix(in srgb,var(--trend-color,#178f89) 68%,white));border-radius:4px 4px 0 0}
.trend-bar:hover{background:var(--trend-color,#178f89);filter:brightness(.9)}
.heatmap button{background:rgba(111,88,173,var(--intensity));color:#25304b}

.heat-legend{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px;color:#62778d;margin:14px 0 0}.heat-legend span{display:flex;align-items:center;gap:5px}.heat-legend i{display:inline-block;width:24px;height:12px;border-radius:3px;border:1px solid #0000000d}.heatmap button{font-weight:650}.heatmap button:hover{filter:brightness(.94)}

.chart-scroll .trend{min-width:var(--trend-width,600px);margin:0 24px;padding-top:28px}
.trend-col .trend-value{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translateX(-50%);font-size:12px;font-weight:650;line-height:1.2;color:#24425c;white-space:nowrap;pointer-events:none}
.brand{flex-wrap:wrap}.fortis-logo{display:block;width:190px;max-width:100%;height:auto;background:#fff;padding:12px;border-radius:5px;box-sizing:content-box}.brand-project{font-size:16px;width:100%}.brand-project small{display:inline;margin-left:8px}@media(max-width:900px){aside .fortis-logo{width:160px;padding:8px}aside .brand{max-width:230px;gap:8px}aside .brand-project{font-size:13px}}

.action-update-form label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.action-update-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.action-update-form input,.action-update-form select,.action-update-form textarea{width:100%;min-width:0;padding:10px;border:1px solid #bdcdd6;border-radius:8px;font:inherit}.action-update-form [hidden]{display:none!important}@media(max-width:600px){.action-update-fields{grid-template-columns:1fr;gap:0}}

.wsbc-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px}.wsbc-legend span{display:flex;align-items:center;gap:6px}.wsbc-legend i{width:10px;height:10px;border-radius:3px}.wsbc-clean{background:#178f89}.wsbc-orders{background:#cc7951}.wsbc-unknown{background:#8492a5}.wsbc-trend{display:flex;align-items:end;height:225px;gap:12px;padding:28px 8px 16px}.wsbc-month{flex:1;min-width:40px;text-align:center}.wsbc-stack{position:relative;display:flex;flex-direction:column;width:100%;padding:0;border:0;min-height:1px;border-radius:5px;overflow:visible;background:transparent}.wsbc-stack span{display:block;min-height:0}.wsbc-stack b{position:absolute;top:-22px;left:0;right:0;color:var(--text)}.wsbc-month small{display:block;font-size:10px;margin-top:10px;white-space:nowrap}

.wsbc-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}.wsbc-grid>.panel{min-width:0}@media(max-width:1000px){.wsbc-grid{grid-template-columns:minmax(0,1fr)}}

.records tr.action-overdue td{background:#fff0f0}.records tr.action-overdue td:first-child{border-left:3px solid #d98383}.records tr.action-overdue:hover td{background:#ffe4e4}

.incident-list-item{display:flex;align-items:center;gap:8px}.incident-list-item .list-row{flex:1;min-width:0}.delete-incident-draft{flex-shrink:0;min-width:44px;min-height:44px;color:#a52d36;font-size:24px}
/* Keep investigation labels clear of controls and separate each action visually. */
.investigation-update-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;margin-top:20px}
.investigation-update-form label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:14px;font-weight:600;line-height:1.45}
.investigation-update-form input,.investigation-update-form select,.investigation-update-form textarea{display:block;width:100%;min-width:0;max-width:100%;padding:11px 12px;border:1px solid #bdcdd6;border-radius:8px;background:#fff;color:#162b43;font:inherit;font-weight:400}
.investigation-update-form textarea{min-height:105px;resize:vertical}
.investigation-update-form>label:has(textarea),.investigation-update-form>.new-investigation-actions,.investigation-update-form>p{grid-column:1/-1}
.investigation-update-form>button{justify-self:start;align-self:start;min-height:44px}
.investigation-update-form>p{margin:0;font-weight:400;font-size:14px}
.new-investigation-actions{display:grid;gap:20px}
.new-investigation-actions:empty{display:none}
.new-investigation-actions fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;min-width:0;margin:0;padding:20px;border:1px solid #d4e0e7;border-radius:10px;background:#f7fafc}
.new-investigation-actions legend{padding:0 8px;font-weight:650}
.new-investigation-actions fieldset>label:first-of-type{grid-column:1/-1}
.new-investigation-actions fieldset>button{justify-self:start;align-self:end;min-height:44px}
.investigation-linked-actions{margin-top:28px;padding-top:20px;border-top:1px solid #dce4ec}
.investigation-linked-actions .linked-list{display:grid;gap:10px;margin-bottom:18px}
@media(max-width:600px){.investigation-update-form,.new-investigation-actions fieldset{grid-template-columns:1fr;gap:16px}.new-investigation-actions fieldset{padding:16px}.investigation-update-form input,.investigation-update-form select,.investigation-update-form textarea{font-size:16px}.investigation-update-form>button{width:100%}}

/* Readable record actions without squeezing adjacent values. */
.records td:last-child{white-space:nowrap;min-width:92px;padding:10px 14px}
.records td:last-child button,.records td:last-child a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;margin:3px 4px;text-decoration:none}
@media(max-width:640px){.records td:last-child button,.records td:last-child a{min-height:44px}.panel{padding:16px}.two-col{gap:14px}}

/* 5.0.6: shared Incident-style records; full detail stays in Open. */
.records-compact{table-layout:fixed;min-width:0;width:100%}.records-compact th,.records-compact td{max-width:none;min-width:0;white-space:normal;overflow-wrap:anywhere;padding:12px 10px}.records-compact .record-actions-cell{width:124px;position:sticky;left:0;z-index:1;background:#fff}.records-compact th.record-actions-cell{background:#f6f9fb}.record-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.record-controls button,.record-controls a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;font:inherit;font-size:13px;text-decoration:none;border:1px solid #b9d8d4;border-radius:6px;background:#fff;color:#08756f}.record-controls button:disabled{opacity:.55}.records-compact .record-description{width:35%;line-height:1.5}.records-compact .record-description>span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.records-compact .sort-button{white-space:normal;text-align:left}.records-compact-wrap::after{display:none!important}
.linked-record-button{display:inline-block;width:auto;min-height:36px;max-width:min(220px,100%);margin:2px 4px 2px 0;padding:7px 9px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;font-size:12px;text-align:left;vertical-align:top}
@media(max-width:760px){.records-compact thead{display:none}.records-compact tbody,.records-compact tr,.records-compact td{display:block;width:100%!important}.records-compact tr{padding:12px 0;border-bottom:1px solid #dce4ec}.records-compact td{border:0;padding:5px 0}.records-compact td[data-label]:not(.record-actions-cell)::before{content:attr(data-label);display:block;font-size:12px;font-weight:650;color:#5c7488}.records-compact .record-actions-cell{position:static;padding-bottom:10px}.record-controls button,.record-controls a{min-height:44px;min-width:58px}.records-compact .record-description{width:100%}.records-compact .record-description>span{-webkit-line-clamp:5}}
.records .records-compact td:last-child{white-space:normal;min-width:0;padding:12px 10px}.records-compact .record-description>span{white-space:normal;overflow-wrap:anywhere}@media(max-width:760px){.records .records-compact td:last-child{padding:5px 0}}
/* 5.0.7: keep Open/Edit together independently of description length. */
.records-compact .record-actions-cell{width:150px;min-width:150px;box-sizing:border-box}
.record-controls{flex-wrap:nowrap;min-width:124px;width:max-content}
.record-controls>button,.record-controls>a{flex:0 0 auto;white-space:nowrap;min-width:58px;box-sizing:border-box}
@media(max-width:760px){.records-compact .record-actions-cell{min-width:0}.record-controls{max-width:100%}}

/* Explore Records column sizing is browser-local and leaves the mobile card layout intact. */
.records-compact th{position:relative}
.record-column-resize-handle{position:absolute;z-index:4;top:0;right:-6px;width:12px;height:100%;min-height:36px;cursor:col-resize;touch-action:none;user-select:none}
.record-column-resize-handle::after{content:'';position:absolute;top:20%;bottom:20%;left:5px;width:2px;border-radius:2px;background:#9db0c0;opacity:.45}
.record-column-resize-handle:hover::after,.record-column-resize-handle:focus-visible::after,.record-column-resizing .record-column-resize-handle::after{background:#087f78;opacity:1}
.record-column-resize-handle:focus-visible{outline:3px solid #02a79b;outline-offset:1px;border-radius:3px}
.record-column-resize-active{cursor:col-resize!important;user-select:none!important}
.record-column-width-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.column-width-tools{margin-left:auto}
.record-column-widths-applied th,.record-column-widths-applied td{min-width:0!important;max-width:none!important}
@media(max-width:760px){.record-column-resize-handle{display:none}.records-compact.record-column-widths-applied{table-layout:auto!important;width:100%!important;min-width:0!important}.records-compact.record-column-widths-applied col{width:auto!important}.column-width-tools{margin-left:0}}
@media print{.record-column-resize-handle,[data-reset-record-columns]{display:none!important}}


@media(min-width:761px){.records-compact.overview-records-table{table-layout:auto;min-width:950px}.records-compact.overview-records-table th,.records-compact.overview-records-table td{padding:9px 8px}.overview-records-table [data-label="RecordID"]{width:110px}.overview-records-table [data-label="Date"]{width:90px;white-space:nowrap}.overview-records-table [data-label="Area"]{width:85px}.overview-records-table [data-label="Status"]{width:75px}.overview-records-table [data-label="Incident Classification"]{width:135px}.overview-records-table [data-label="Contractor"]{width:115px}.records-compact.overview-records-table .record-description{width:auto;min-width:240px}}
.auth-form .auth-powered{margin:26px 0 0;color:#52697d;font-size:12px;line-height:1.5;letter-spacing:.01em}.auth-form .auth-powered strong{font-weight:600}
/* Incident and injury explorer only: compact metadata, generous narrative, unchanged mobile cards. */
@media(min-width:761px){.records-compact.incident-records-table{table-layout:auto;min-width:950px}.records-compact.incident-records-table th,.records-compact.incident-records-table td{padding:9px 8px}.incident-records-table [data-label="RecordID"]{width:105px}.incident-records-table [data-label="Date"]{width:90px;white-space:nowrap}.incident-records-table [data-label="Area"]{width:85px}.incident-records-table [data-label="Status"]{width:75px}.incident-records-table [data-label="Incident Classification"]{width:130px}.incident-records-table [data-label="Contractor"]{width:110px}.records-compact.incident-records-table .record-description{width:auto;min-width:230px}.records-compact.injury-records-table{min-width:1150px}.injury-records-table [data-label="BodyPart"],.injury-records-table [data-label="InjuryType"]{width:110px}}
/* Wide action/activity logs must not compress every field into a fixed viewport.
   Keep the same mobile cards and the shared pinned Open/Edit controls. */
@media(min-width:761px){
 .records-compact.corrective-actions-records-table,.records-compact.observations-records-table{table-layout:auto;min-width:1500px}
 .records-compact.observations-records-table{min-width:1150px}
 .corrective-actions-records-table th,.corrective-actions-records-table td,.observations-records-table th,.observations-records-table td{padding:9px 10px;min-width:100px}
 .records-compact.corrective-actions-records-table .record-description,.records-compact.observations-records-table .record-description{width:280px;min-width:260px;max-width:360px}
 .corrective-actions-records-table [data-label="Action ID"],.corrective-actions-records-table [data-label="Parent Reference"]{min-width:150px;max-width:200px}
 .corrective-actions-records-table [data-label="Linked records"],.observations-records-table [data-label="Linked records"]{min-width:190px;max-width:240px}
 .corrective-actions-records-table [data-label="Assigned Date"],.corrective-actions-records-table [data-label="Target Date"],.observations-records-table [data-label="Date"]{white-space:nowrap}
.records-compact.corrective-actions-records-table .record-actions-cell,.records-compact.observations-records-table .record-actions-cell{min-width:150px;width:150px;z-index:2;box-shadow:2px 0 3px #102b4310}
}
.observation-kpis{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}
.observation-kpis .insight-tile{width:100%;text-align:left;min-width:0;display:flex;flex-direction:column;gap:6px}
.observation-kpis .insight-tile small{flex:1}
.observation-mix{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.observation-mix svg{max-width:100%;flex:0 1 230px}
.observation-legend{display:grid;gap:8px;flex:1;min-width:160px}
.observation-legend-item{display:flex;align-items:center;gap:8px}
.observation-legend-item i{display:inline-block;width:12px;height:12px;border-radius:3px;flex-shrink:0}
.observation-legend button{font-size:13px;text-align:left;padding:7px}
.observation-leading svg{max-width:100%;height:auto}
.observation-focus-table{width:100%;table-layout:fixed;border-collapse:collapse}
.observation-focus-table th:first-child{width:30%}
.observation-focus-table th,.observation-focus-table td{white-space:normal;padding:10px;border-bottom:1px solid #d7e2e8}
.observation-focus-table tbody th{text-align:left}
.observation-focus-table button{width:100%;text-align:left;white-space:normal}
.observation-rising{color:#aa302b;font-weight:700}
.observation-trend-values{margin-top:10px}
@media(max-width:700px){.observation-leading .two-col{grid-template-columns:1fr}.observation-focus-table{min-width:700px}.observation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.observation-quick-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin:0 0 14px;padding:12px 14px;background:#fff;border:1px solid #d7e4eb;border-radius:9px}
.observation-filter-heading{color:#23465b;font-weight:700;font-size:.84rem}
.observation-filter-choices{display:flex;flex-wrap:wrap;gap:6px;flex:1}
.observation-filter-choice{min-height:36px;padding:7px 11px;border:1px solid #cfdee7;border-radius:6px;color:#23465b;background:#f8fbfc;font-size:.82rem;font-weight:600;white-space:normal}
.observation-filter-choice[aria-pressed=true]{background:#173f55;color:#fff;border-color:#173f55;box-shadow:inset 0 -3px 0 #39b8ac}
.observation-filter-choice.positive[aria-pressed=true]{background:#127d70;border-color:#127d70}.observation-filter-choice.danger[aria-pressed=true]{background:#ac3544;border-color:#ac3544}.observation-filter-choice.attention[aria-pressed=true]{background:#885811;border-color:#885811}.observation-filter-choice.program[aria-pressed=true]{background:#665193;border-color:#665193}
.observation-filter-choice:focus-visible,.observation-specific-type select:focus-visible{outline:3px solid #3dbbad;outline-offset:2px}
.observation-specific-type{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#416077;white-space:nowrap;margin:0}.observation-specific-type select{width:210px;min-height:36px;border:1px solid #b8cddc;border-radius:6px;background:white;color:#23465b;padding:6px 9px}
.observation-filter-feedback{font-size:.73rem;color:#60788c;flex-basis:100%}
.linked-record-picker-button{display:inline-flex;align-items:center;justify-content:center;width:174px;max-width:100%;height:40px;white-space:nowrap;font-size:13px;border-radius:6px}
.linked-record-picker{width:min(760px,94vw)}
.linked-record-picker .dialog-head p{margin:0 0 18px;color:#60788c;font-size:14px}
.linked-record-picker .dialog-head>button{align-self:start;min-height:40px}
.linked-record-picker-list{display:grid;gap:10px}
.linked-record-picker-item{display:grid;gap:7px;width:100%;text-align:left;padding:14px;border:1px solid #cedde6;border-radius:8px;background:#f8fbfc;color:#213f54;overflow-wrap:anywhere}
.linked-record-picker-heading{display:flex;gap:12px;justify-content:space-between;align-items:start}
.linked-record-picker-heading strong{min-width:0;font-size:14px}
.linked-record-picker-meta{font-size:12px;color:#557085}
.linked-record-picker-description{font-size:14px;line-height:1.5;white-space:normal}
.record-detail-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:12px;border:1px solid #c7dce2;border-radius:8px;background:#f3f8fa}
.record-detail-edit{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:6px;padding:8px 14px;text-decoration:none;font-weight:600;font-size:14px}
.record-detail-navigation>span{font-size:13px;color:#506c7e}
.records .records-compact td[data-label="Linked records"]{width:194px;min-width:194px;max-width:194px}
.records .records-compact td[data-label="Linked records"] .linked-record-picker-button{width:174px;max-width:174px;min-width:174px}
.linked-record-picker .record-status-badge{display:inline-flex;flex-shrink:0;padding:3px 9px;border-radius:6px;font-size:12px;font-weight:700;white-space:nowrap}
.linked-record-picker .record-status-badge--open{background:#b63a43;color:white}.linked-record-picker .record-status-badge--closed{background:#e4f3ed;color:#176446}
/* Fixed two-line summaries on desktop; mobile retains readable stacked cards.
   Export styles remain independent and retain complete report table content. */
@media screen and (min-width:761px){
 .records .records-compact tbody tr{height:66px}
 .records .records-compact tbody td{height:66px;padding-top:11px;padding-bottom:11px;vertical-align:middle}
 .records .records-compact tbody td:not(.record-actions-cell)>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;height:42px;max-height:42px;line-height:21px;overflow:hidden;overflow-wrap:anywhere;white-space:normal}
 .records .records-compact tbody td[data-label="Linked records"]>span,.records .records-compact tbody td[data-label="Status"]>span,.records .records-compact tbody td[data-label="Investigation Status"]>span{display:flex;align-items:center}
}
@media(max-width:650px){.observation-filter-heading{flex-basis:100%}.observation-filter-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex-basis:100%}.observation-specific-type{display:grid;grid-template-columns:auto minmax(0,1fr);width:100%}.observation-specific-type select{width:100%}.observation-filter-choice{min-height:42px}}

/* WSBC compact controls and column sizing: keep desktop resize hit targets inside their header. */
@media(min-width:761px){
 #regulatory-records .regulatory-records-table .record-actions-cell{width:84px;min-width:84px}
 #regulatory-records .regulatory-records-table .record-controls{min-width:0;width:auto;flex-wrap:wrap}
 #regulatory-records .regulatory-records-table .record-column-resize-handle{right:0}
 #regulatory-records .regulatory-records-table.record-column-widths-applied th,#regulatory-records .regulatory-records-table.record-column-widths-applied td{width:auto!important}
}
