/* ==========================================================================
   Industrial IoT Precision Dashboard Styling
   Refactored under antislop-ui guidelines:
   - Matte surfaces: zero fuzzy glows or decorative shadows (R-12, R-13)
   - Zero endless pulsing animations or distraction loops (R-19)
   - Strict radius scale (4px - 6px), no uniform pill shapes (R-11)
   - Zero decorative left stripes on cards/rows (R-01, R-31)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap');

:root {
  --bg-canvas: #090D16;
  --bg-card: #0F1623;
  --bg-surface: #151E2E;
  --border-subtle: #1E293B;
  --border-strong: #334155;
  --text-primary: #F8FAFC;
  --text-secondary: #94A3B8;
  --text-muted: #64748B;
  
  /* Semantic Industrial Colors (Matte, High Contrast) */
  --status-normal: #10B981;
  --status-warning: #D97706;
  --status-critical: #DC2626;
  --metric-temp: #F97316;
  --metric-humidity: #06B6D4;
  --metric-vibration: #38BDF8;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  background-color: var(--bg-canvas);
  color: var(--text-primary);
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

.font-mono-numbers {
  font-family: 'JetBrains Mono', monospace;
  font-variant-numeric: tabular-nums;
}

/* Technical Minimalist Scrollbar */
::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-track {
  background: #090D16;
}
::-webkit-scrollbar-thumb {
  background: #1E293B;
  border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover {
  background: #334155;
}

/* Precision Technical Cards (No blurry box-shadows, crisp 1px borders) */
.scada-card {
  background-color: var(--bg-card);
  border: 1px solid var(--border-subtle);
  border-radius: 6px;
  transition: border-color 0.15s ease;
}
.scada-card:hover {
  border-color: var(--border-strong);
}

.scada-surface {
  background-color: var(--bg-surface);
  border: 1px solid var(--border-subtle);
  border-radius: 4px;
}

/* Precision Threshold Needle Marker (Matte, Technical pointer) */
.threshold-needle {
  position: absolute;
  top: -3px;
  width: 2px;
  height: 16px;
  background-color: #FFFFFF;
  border-radius: 1px;
  transform: translateX(-50%);
  transition: left 0.3s ease-out;
  z-index: 10;
}
.threshold-needle::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background-color: #FFFFFF;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

/* Static, High-Contrast Status Dots (No Endless Pulses) */
.status-dot-normal {
  background-color: #10B981;
}
.status-dot-warning {
  background-color: #F59E0B;
}
.status-dot-critical {
  background-color: #EF4444;
}

/* Table Row Highlights (Clean background tint, no decorative left stripe) */
.table-row-critical {
  background-color: rgba(220, 38, 38, 0.10) !important;
}
.table-row-warning {
  background-color: rgba(217, 119, 6, 0.08) !important;
}
