/* ============================================
   GRAPHS & CHARTS MODERNIZATION
   Modern styling for Chart.js and data visualizations
   ============================================ */

/* ============================================
   ATTACKS CHART CONTAINER
   ============================================ */

div[style*="background: #1e293b"][style*="border: 1px solid #334155"][style*="margin-top: 30px"],
div[style*="height: 180px"][style*="position: relative"] {
  background: linear-gradient(135deg, rgba(26, 31, 46, 0.9) 0%, rgba(33, 40, 53, 0.4) 100%) !important;
  border: 1px solid rgba(91, 127, 255, 0.25) !important;
  border-radius: 16px !important;
  padding: 28px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
  transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  backdrop-filter: blur(10px) !important;
}

/* Chart title styling */
h3[style*="color: #d1d5db"] {
  color: #ffffff !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

h3 i {
  color: #5b7fff !important;
  font-size: 24px !important;
}

/* Chart canvas container */
div[style*="height: 180px"][style*="position: relative"] {
  background: rgba(42, 49, 66, 0.5) !important;
  border-radius: 12px !important;
  padding: 16px !important;
  margin: 16px 0 !important;
  border: 1px solid rgba(91, 127, 255, 0.1) !important;
}

/* Chart stats display */
div[style*="margin-top: 15px"][style*="text-align: center"],
div[style*="margin-top: 16px"][style*="text-align: center"] {
  padding: 20px 0;
  border-top: 1px solid rgba(91, 127, 255, 0.15);
}

/* Total attacks number */
span[style*="color: #d1d5db"][style*="font-size: 28px"],
span[style*="font-size: 28px"][style*="font-weight: 700"] {
  color: #00d4ff !important;
  font-weight: 900 !important;
  font-size: 36px !important;
  text-shadow: 0 0 20px rgba(0, 212, 255, 0.2) !important;
}

/* Attacks label */
span[style*="color: #64748b"][style*="font-size: 14px"] {
  color: #a8b2c1 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

/* ============================================
   NETWORK USAGE SECTION
   ============================================ */

div[style*="background: #1e293b"][style*="border: 1px solid #334155"][style*="border-radius: 12px"][style*="padding: 25px"][style*="margin-top: 30px"],
div[style*="fa-network-wired"] {
  background: linear-gradient(135deg, rgba(26, 31, 46, 0.9) 0%, rgba(33, 40, 53, 0.4) 100%) !important;
  border: 1px solid rgba(91, 127, 255, 0.25) !important;
  border-radius: 16px !important;
  padding: 28px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  backdrop-filter: blur(10px) !important;
}

/* Network title */
h3[style*="fa-network-wired"] {
  color: #ffffff !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  margin-bottom: 24px !important;
}

h3[style*="fa-network-wired"] i {
  color: #5b7fff !important;
}

/* ============================================
   LAYER SECTIONS (7 & 4)
   ============================================ */

/* Layer section title container */
div[style*="display: flex"][style*="align-items: center"][style*="gap: 10px"][style*="margin-bottom: 20px"],
div[style*="display: flex"][style*="align-items: center"][style*="gap: 10px"][style*="margin-bottom: 20px"] {
  padding: 0;
  margin-bottom: 24px !important;
}

/* Layer icon containers */
div[style*="width: 40px"][style*="height: 40px"][style*="background: linear-gradient(135deg, #3b82f6"],
div[style*="width: 40px"][style*="height: 40px"][style*="background: linear-gradient(135deg, #374151"] {
  border-radius: 14px !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3) !important;
  transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

/* Layer 7 icon - Purple */
div[style*="background: linear-gradient(135deg, #3b82f6"] {
  background: linear-gradient(135deg, #1d4ed8, #a78bfa) !important;
}

/* Layer 4 icon - Blue */
div[style*="background: linear-gradient(135deg, #374151"][style*="width: 40px"] {
  background: linear-gradient(135deg, #5b7fff, #00d4ff) !important;
}

/* Layer titles */
h4[style*="color: #e2e8f0"] {
  color: #ffffff !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  margin: 0 !important;
}

/* Layer descriptions */
p[style*="color: #64748b"][style*="font-size: 12px"] {
  color: #7c8899 !important;
  font-size: 12px !important;
  margin: 6px 0 0 0 !important;
}

/* ============================================
   SERVER CARDS (Dedicated #1, #2, etc)
   ============================================ */

/* L7 Server cards */
div[style*="background: linear-gradient(135deg, rgba(139, 92, 246"],
/* L4 Server cards */
div[style*="background: linear-gradient(135deg, rgba(59, 130, 246"] {
  background: linear-gradient(135deg, rgba(26, 31, 46, 0.8) 0%, rgba(33, 40, 53, 0.4) 100%) !important;
  border: 1px solid rgba(91, 127, 255, 0.2) !important;
  border-radius: 14px !important;
  padding: 24px !important;
  transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  -webkit-backdrop-filter: blur(5px) !important;
  backdrop-filter: blur(5px) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Server card hover */
div[style*="background: linear-gradient(135deg, rgba(139, 92, 246"]:hover,
div[style*="background: linear-gradient(135deg, rgba(59, 130, 246"]:hover {
  border-color: rgba(91, 127, 255, 0.4) !important;
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 32px rgba(91, 127, 255, 0.15) !important;
}

/* Server name */
div[style*="color: #e2e8f0"][style*="font-weight: 600"][style*="font-size: 14px"] {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

/* ============================================
   STATUS BADGES (Online/Offline)
   ============================================ */

/* Online badge */
span[style*="background: rgba(34, 197, 94"],
span[style*="rgba(34, 197, 94"],
span[style*="color: #4ade80"],
span[style*="#22c55e"],
span[style*="color: #1dd1a1"] {
  background: rgba(29, 209, 161, 0.15) !important;
  color: #1dd1a1 !important;
  border: 1px solid #1dd1a1 !important;
  border-radius: 20px !important;
  padding: 6px 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
}

/* Offline badge */
span[style*="background: rgba(239, 68, 68"],
span[style*="rgba(239, 68, 68"],
span[style*="color: #f87171"],
span[style*="#ef4444"],
span[style*="color: #ff4757"] {
  background: rgba(255, 71, 87, 0.15) !important;
  color: #ff4757 !important;
  border: 1px solid #ff4757 !important;
  border-radius: 20px !important;
  padding: 6px 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
}

/* ============================================
   LOAD PERCENTAGE & PROGRESS
   ============================================ */

/* Load label */
span[style*="color: #94a3b8"][style*="font-size: 12px"] {
  color: #7c8899 !important;
  font-size: 12px !important;
}

/* Load percentage number - L7 (Purple) */
span[style*="color: #3b82f6"][style*="font-weight: 700"][style*="font-size: 16px"] {
  color: #1d4ed8 !important;
  font-weight: 800 !important;
  font-size: 18px !important;
}

/* Load percentage number - L4 (Blue) */
span[style*="color: #374151"][style*="font-weight: 700"][style*="font-size: 16px"] {
  color: #5b7fff !important;
  font-weight: 800 !important;
  font-size: 18px !important;
}

/* Progress bar background */
div[style*="height: 8px"][style*="background: #0f172a"][style*="border-radius: 4px"] {
  background: rgba(42, 49, 66, 0.8) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.3) !important;
}

/* Progress bar L7 (Purple) */
div[style*="background: linear-gradient(90deg, #3b82f6"] {
  background: linear-gradient(90deg, #1d4ed8, #a78bfa) !important;
  border-radius: 12px !important;
  box-shadow: 0 0 15px rgba(124, 58, 237, 0.3) !important;
  transition: width 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

/* Progress bar L4 (Blue) */
div[style*="background: linear-gradient(90deg, #374151"][style*="height: 100%"] {
  background: linear-gradient(90deg, #5b7fff, #00d4ff) !important;
  border-radius: 12px !important;
  box-shadow: 0 0 15px rgba(91, 127, 255, 0.3) !important;
  transition: width 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

/* ============================================
   EMPTY STATE MESSAGE
   ============================================ */

p[style*="color: #64748b"][style*="text-align: center"][style*="padding: 20px"] {
  color: #7c8899 !important;
  font-size: 14px !important;
}

/* ============================================
   RESPONSIVE ADJUSTMENTS
   ============================================ */

@media (max-width: 1024px) {
  div[style*="background: #1e293b"][style*="border: 1px solid #334155"] {
    padding: 20px !important;
  }
}

@media (max-width: 768px) {
  h3[style*="color: #d1d5db"],
  h3[style*="fa-network-wired"] {
    font-size: 1.1rem !important;
  }

  span[style*="font-size: 28px"][style*="font-weight: 700"] {
    font-size: 28px !important;
  }

  div[style*="grid-template-columns: repeat(auto-fit"] {
    grid-template-columns: 1fr !important;
  }
}
