/* ═══ SAFETY MODULE — styles/safety.css ═══ */
.sf-wrap{max-width:1180px;margin:0 auto;padding:0 0 80px}
.sf-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.sf-header h1{font-size:22px;font-weight:800;color:var(--tx-primary);flex:1;min-width:120px}
.sf-section-filter{display:flex;gap:4px;flex-wrap:wrap}
.sf-sf-btn{padding:5px 12px;border:1px solid var(--border);border-radius:999px;font-size:10px;font-weight:600;cursor:pointer;background:var(--bg-input);color:var(--tx-muted);transition:all .15s}
.sf-sf-btn.active{border-color:var(--brand);color:var(--brand-bright);background:rgba(45,127,249,0.1)}
.sf-sf-btn:hover{border-color:var(--brand);color:var(--tx-primary)}
.sf-tabs{display:flex;gap:2px;margin-bottom:2px;overflow-x:auto;overflow-y:hidden;padding:0 0 2px;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap;flex-wrap:nowrap}
.sf-tabs::-webkit-scrollbar{display:none}
.sf-tab{display:inline-flex;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;font-size:11px;font-weight:600;color:var(--tx-muted);white-space:nowrap;transition:all .15s;border-bottom:none;flex-shrink:0}
.sf-tab:hover{color:var(--tx-primary);background:var(--bg-card)}
.sf-tab-active{background:var(--bg-card)!important;color:var(--brand-bright)!important;border-color:var(--brand)!important}
.sf-content{background:var(--bg-card);border:1px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) var(--radius-sm);padding:16px;min-height:200px;backdrop-filter:blur(10px)}
/* Safety KPI row */
.sf-kpi-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.sf-kpi-card{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;text-align:center;backdrop-filter:blur(10px)}
.sf-kpi-value{font-size:28px;font-weight:800;font-family:'JetBrains Mono',monospace}
.sf-kpi-label{font-size:9px;color:var(--tx-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
/* Safety Cards */
.sf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.sf-card{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:all .15s}
.sf-card:hover{border-color:var(--brand);transform:translateY(-1px)}
.sf-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 12px 6px;gap:8px}
.sf-card-title{font-size:12px;font-weight:700;color:var(--tx-primary);flex:1}
.sf-card-body{padding:0 12px 8px}
.sf-card-meta{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.sf-meta-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;background:var(--bg-card-solid);border-radius:4px;font-size:9px;color:var(--tx-secondary)}
.sf-meta-chip .sf-chip-icon{font-size:11px}
.sf-card-desc{font-size:10px;color:var(--tx-secondary);line-height:1.4;margin-bottom:6px}
.sf-card-actions{display:flex;gap:3px;flex-wrap:wrap;padding:6px 12px 10px;border-top:1px solid var(--border)}
.sf-btn{padding:3px 8px;border:none;border-radius:4px;font-size:9px;font-weight:600;cursor:pointer;transition:all .15s}
.sf-btn.primary{background:var(--brand);color:#fff}
.sf-btn.outline{background:transparent;border:1px solid var(--border);color:var(--tx-secondary)}
.sf-btn.outline:hover{border-color:var(--brand);color:var(--brand-bright)}
.sf-btn.kmeh{background:rgba(139,92,246,0.15);color:#a78bfa;border:1px solid rgba(139,92,246,0.2)}
/* Status badges */
.sf-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:9px;font-weight:700;white-space:nowrap}
.sf-badge.active{background:rgba(239,68,68,0.15);color:#ef4444}
.sf-badge.warning{background:rgba(245,158,11,0.15);color:#f59e0b}
.sf-badge.completed{background:rgba(34,197,94,0.15);color:#22c55e}
.sf-badge.planned{background:rgba(45,127,249,0.15);color:#4d9bff}
/* Priority indicators */
.sf-priority{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:600}
.sf-eq-link{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--brand-bright);cursor:pointer;font-weight:600}
.sf-eq-link:hover{text-decoration:underline}
/* Emergency specific */
.sf-emergency-icon{font-size:32px;text-align:center;padding:8px 0}
.sf-emergency-scenario{background:rgba(239,68,68,0.04);border:1px solid rgba(239,68,68,0.1);border-radius:var(--radius-sm);padding:8px 10px;margin-bottom:6px;font-size:10px;color:var(--tx-secondary)}
/* Empty state */
.sf-empty{padding:40px 20px;text-align:center;color:var(--tx-muted);font-size:13px}
/* Mobile */
@media(max-width:600px){
  .sf-kpi-row{grid-template-columns:repeat(2,1fr);gap:6px}
  .sf-grid{grid-template-columns:1fr}
  .sf-tab{padding:8px 10px;font-size:10px}
  .sf-content{padding:10px}
  .sf-header h1{font-size:18px}
  .sf-section-filter{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .sf-sf-btn{white-space:nowrap;flex-shrink:0}
}
