/* =========================
   Dennis Server Dashboard
   ========================= */

/* Hintergrund */
body {
  background:
    radial-gradient(circle at top left, rgba(70, 90, 140, 0.16), transparent 35%),
    radial-gradient(circle at bottom right, rgba(30, 120, 100, 0.10), transparent 30%),
    #0b0f14 !important;

  background-attachment: fixed;
}

/* Hauptbereich etwas großzügiger */
#page_container {
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}

/* Gruppenüberschriften */
.service-group-name {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  margin-bottom: 14px !important;
}

/* Service-Karten */
.service-card {
  background: rgba(20, 26, 34, 0.68) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 18px !important;

  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;

  box-shadow:
    0 12px 30px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease !important;
}

/* Hover */
.service-card:hover {
  transform: translateY(-4px) scale(1.01) !important;

  border-color: rgba(255, 255, 255, 0.16) !important;

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(255, 255, 255, 0.03) !important;
}

/* Karteninhalt */
.service-card .service-title {
  font-weight: 650 !important;
  font-size: 1rem !important;
}

.service-card .service-description {
  opacity: 0.65 !important;
  font-size: 0.86rem !important;
}

/* Icons */
.service-card img {
  border-radius: 12px !important;
  filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.25));
}

/* Statuspunkt etwas deutlicher */
.service-card .status {
  transform: scale(1.08);
}

/* Widgets oben */
.widget {
  background: rgba(20, 26, 34, 0.55) !important;
  border: 1px solid rgba(255, 255, 255, 0.07) !important;
  border-radius: 16px !important;

  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

/* Suchfeld */
input {
  border-radius: 14px !important;
  background: rgba(20, 26, 34, 0.7) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Scrollbar */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12);
  border-radius: 20px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}

/* Etwas mehr Abstand zwischen Gruppen */
.services-group {
  margin-bottom: 34px !important;
}

/* Mobil */
@media (max-width: 768px) {
  #page_container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .service-card {
    border-radius: 14px !important;
  }
}
