/* Safety suite shared interface: the same filter, risk, status and action language
   is used by desktop workbench, risk portfolio and report subscription panels. */
.suite-empty{padding:32px 14px;text-align:center;color:var(--text-muted);font-size:12px;line-height:1.8;border:1px dashed rgba(31,27,22,.14);border-radius:9px;background:#fffdf8}
.suite-filterbar{display:grid;grid-template-columns:minmax(180px,1.8fr) repeat(4,minmax(110px,1fr)) auto;gap:8px;align-items:end;padding:12px;margin-bottom:12px;border:1px solid rgba(31,27,22,.10);border-radius:10px;background:#fffaf2}
.suite-filter-field{display:flex;min-width:0;flex-direction:column;gap:5px;color:var(--text-muted);font-size:10px;font-weight:800}
.suite-filter-field input,.suite-filter-field select{height:36px;min-width:0;border:1px solid rgba(31,27,22,.14);border-radius:7px;background:#fffdf8;padding:0 9px;color:var(--ink);font-size:12px;outline:none}
.suite-filter-field input:focus,.suite-filter-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(154,95,61,.12)}
.suite-filter-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}
.suite-filter-presets{display:flex;gap:6px;align-items:center;flex-wrap:wrap;grid-column:1/-1}
.suite-filter-presets button{border:1px solid rgba(31,27,22,.13);border-radius:999px;background:#fffdf8;color:var(--text-secondary);padding:6px 10px;font-size:11px;cursor:pointer}
.suite-filter-presets button.active,.suite-filter-presets button:hover{border-color:var(--accent);background:#fff1e5;color:#805037}
.suite-pipeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}
.suite-pipeline-card{position:relative;min-width:0;padding:12px;border:1px solid rgba(31,27,22,.10);border-radius:9px;background:#fffaf2;cursor:pointer;transition:border-color .15s,transform .15s,background .15s}
.suite-pipeline-card:hover{transform:translateY(-1px);border-color:#c89c7f}.suite-pipeline-card.active{border-color:var(--accent);background:#fff1e5;box-shadow:0 0 0 2px rgba(154,95,61,.10)}
.suite-pipeline-card:not(:last-child)::after{content:'›';position:absolute;right:-8px;top:50%;transform:translateY(-50%);color:#b8a89d;font-size:18px;z-index:2}
.suite-pipeline-label{font-size:11px;color:var(--text-muted);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suite-pipeline-value{margin-top:5px;font-size:24px;line-height:1;color:var(--ink);font-weight:850;font-variant-numeric:tabular-nums}.suite-pipeline-note{margin-top:5px;font-size:10px;color:var(--text-muted);line-height:1.45;min-height:28px}
.suite-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.suite-summary-card{min-width:0;padding:12px;border-radius:9px;background:#fffdf8;border:1px solid rgba(31,27,22,.10)}.suite-summary-card span,.suite-summary-card small{display:block;color:var(--text-muted);font-size:10px;line-height:1.45}.suite-summary-card b{display:block;margin:4px 0;font-size:21px;color:var(--ink);font-variant-numeric:tabular-nums}
.suite-sla{margin-bottom:12px;padding:12px;border:1px solid rgba(31,27,22,.10);border-radius:10px;background:#fffaf2}.suite-sla-head,.suite-trend-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.suite-sla-head b,.suite-trend-head b{display:block;color:var(--ink);font-size:12px}.suite-sla-head span,.suite-trend-head span{display:block;margin-top:3px;color:var(--text-muted);font-size:10px}.suite-sla-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.suite-sla-grid .suite-summary-card{padding:10px}.suite-sla-grid .sla-bad{background:#fff0ee;border-color:#f3c5bf}.suite-sla-grid .sla-bad b{color:#b42318}.suite-sla-grid .sla-warn{background:#fff5e8;border-color:#f0d2a5}.suite-sla-grid .sla-warn b{color:#9a5f00}.suite-trend{margin-bottom:12px;padding:12px;border:1px solid rgba(31,27,22,.10);border-radius:10px;background:#fffdf8}.suite-trend-head small{color:var(--text-muted);font-size:10px}.suite-trend-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.suite-trend-card{padding:10px;border:1px solid rgba(31,27,22,.09);border-radius:8px;background:#fffaf2}.suite-trend-card span,.suite-trend-card small{display:block;color:var(--text-muted);font-size:10px}.suite-trend-card b{display:block;margin:4px 0;font-size:20px;color:var(--ink);font-variant-numeric:tabular-nums}.suite-trend-good{color:#137a3f}.suite-trend-bad{color:#b42318}.suite-trend-flat{color:var(--text-muted)}
.suite-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:12px;align-items:start}.suite-card{min-width:0;background:#fffaf2;border:1px solid rgba(31,27,22,.10);border-radius:9px;box-shadow:0 1px 2px rgba(31,27,22,.04),0 12px 30px rgba(31,27,22,.05);overflow:hidden}.suite-card+.suite-card{margin-top:12px}.suite-card-head,.suite-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(31,27,22,.08)}.suite-card-head h3,.suite-section-head h3{margin:0;color:var(--ink);font-size:14px}.suite-card-head p,.suite-section-head p{margin:4px 0 0;color:var(--text-muted);font-size:11px;line-height:1.55}.suite-card-body{padding:14px 16px}
.suite-tabs{display:flex;gap:6px;overflow:auto;padding:0 16px;border-bottom:1px solid rgba(31,27,22,.08)}.suite-tab{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);padding:10px 8px;font-size:11px;white-space:nowrap;cursor:pointer}.suite-tab.active{border-bottom-color:var(--accent);color:var(--ink);font-weight:800}
.suite-alert-list,.suite-work-list,.suite-risk-list,.suite-report-list{display:flex;flex-direction:column}.suite-alert-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid rgba(31,27,22,.07)}.suite-alert-row:first-child,.suite-work-row:first-child,.suite-report-row:first-child{border-top:0}.suite-alert-dot{width:9px;height:9px;border-radius:50%;background:#938982}.suite-alert-dot.high{background:#b42318;box-shadow:0 0 0 4px rgba(180,35,24,.10)}.suite-alert-dot.medium{background:#b54708}.suite-alert-dot.low{background:#2380e5}.suite-alert-main{min-width:0}.suite-alert-title{color:var(--ink);font-size:12px;font-weight:800;line-height:1.5;overflow-wrap:anywhere}.suite-alert-meta{margin-top:3px;color:var(--text-muted);font-size:10px;line-height:1.5;overflow-wrap:anywhere}.suite-alert-badges{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.suite-layer-badge,.suite-status-badge,.suite-risk-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:#f3eee7;color:#6e6258;font-size:10px;font-weight:800;white-space:nowrap}.suite-layer-badge.effective{background:#fff1e5;color:#805037}.suite-layer-badge.pending{background:#fce9e8;color:#a33b32}.suite-status-badge.done{background:#eaf8ef;color:#137a3f}.suite-status-badge.pending{background:#fff1df;color:#8b5638}.suite-risk-badge.high{background:#fce9e8;color:#a33b32}.suite-risk-badge.medium{background:#fff1df;color:#8b5638}.suite-risk-badge.low{background:#eaf3ff;color:#1769b0}
.suite-work-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid rgba(31,27,22,.07)}.suite-work-title{color:var(--ink);font-size:12px;font-weight:800}.suite-work-meta{margin-top:3px;color:var(--text-muted);font-size:10px;line-height:1.5}.suite-work-actions{display:flex;gap:5px;align-items:center}
.suite-check-list{display:flex;flex-direction:column;gap:8px}.suite-check-item{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid rgba(31,27,22,.09);border-radius:8px;background:#fffdf8}.suite-check-icon{display:inline-flex;width:21px;height:21px;align-items:center;justify-content:center;border-radius:50%;background:#eaf8ef;color:#137a3f;font-size:11px;font-weight:850;flex:0 0 auto}.suite-check-icon.warn{background:#fff1df;color:#8b5638}.suite-check-item b{display:block;font-size:11px;color:var(--ink);line-height:1.45}.suite-check-item span{display:block;margin-top:2px;color:var(--text-muted);font-size:10px;line-height:1.45}
.suite-risk-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.suite-risk-summary .suite-summary-card b{font-size:20px}.suite-risk-table{overflow:auto}.suite-risk-row{display:grid;grid-template-columns:38px minmax(130px,1.1fr) 70px 70px 90px minmax(150px,1fr) auto;gap:9px;align-items:center;min-width:780px;padding:11px 8px;border-top:1px solid rgba(31,27,22,.07);font-size:11px;color:var(--text-secondary)}.suite-risk-row.head{border-top:0;background:#f8f5f0;color:var(--text-muted);font-weight:800}.suite-risk-rank{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;background:#f3eee7;color:#6e6258;font-weight:800}.suite-risk-rank.top{background:#fff0bd;color:#805600}.suite-risk-name strong,.suite-risk-name small{display:block}.suite-risk-name strong{color:var(--ink);font-size:12px}.suite-risk-name small{margin-top:3px;color:var(--text-muted);font-size:10px}.suite-risk-score{color:#a33b32;font-weight:850}.suite-risk-action{white-space:nowrap}
.suite-report-center{margin-top:14px;background:#fffaf2;border:1px solid rgba(31,27,22,.10);border-radius:9px;box-shadow:0 1px 2px rgba(31,27,22,.04);overflow:hidden}.suite-report-center>.suite-section-head{border-bottom:1px solid rgba(31,27,22,.08)}.suite-report-delivery-head{margin-top:10px;border-top:1px solid rgba(31,27,22,.08)}.suite-report-row{display:grid;grid-template-columns:minmax(180px,1.2fr) 120px 130px 130px auto;gap:10px;align-items:center;padding:11px 16px;border-top:1px solid rgba(31,27,22,.07);font-size:11px;color:var(--text-secondary)}.suite-report-main strong,.suite-report-main small{display:block}.suite-report-main strong{color:var(--ink);font-size:12px}.suite-report-main small{margin-top:3px;color:var(--text-muted);font-size:10px}.suite-report-actions{display:flex;gap:6px;justify-content:flex-end}.suite-report-empty{padding:24px 16px;color:var(--text-muted);text-align:center;font-size:11px}
.suite-mobile-shell{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
@media(max-width:980px){.suite-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))}.suite-filterbar .suite-search{grid-column:1/-1}.suite-grid{grid-template-columns:1fr}.suite-pipeline{grid-template-columns:repeat(3,minmax(0,1fr))}.suite-pipeline-card:nth-child(3)::after{display:none}}
@media(max-width:760px){.suite-filterbar{grid-template-columns:1fr 1fr;padding:10px}.suite-filter-actions{grid-column:1/-1}.suite-filter-actions .btn{flex:1;justify-content:center}.suite-pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}.suite-pipeline-card:not(:last-child)::after{display:none}.suite-summary,.suite-risk-summary,.suite-sla-grid,.suite-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.suite-card-head,.suite-section-head{align-items:flex-start;flex-direction:column}.suite-card-head .btn,.suite-section-head .btn{width:100%;justify-content:center}.suite-alert-row{grid-template-columns:auto minmax(0,1fr)}.suite-alert-badges{grid-column:2;justify-content:flex-start}.suite-work-row{grid-template-columns:1fr}.suite-work-actions{justify-content:flex-start}.suite-report-row{grid-template-columns:1fr 1fr;padding:11px 12px}.suite-report-row>*:first-child{grid-column:1/-1}.suite-report-actions{justify-content:flex-start}.suite-report-actions .btn{flex:1;justify-content:center}}
