:root {
  color-scheme: dark;

  --background: #060809;
  --surface: rgba(22, 25, 27, 0.73);
  --surface-light: rgba(255, 255, 255, 0.075);
  --border: rgba(255, 255, 255, 0.17);
  --border-light: rgba(255, 255, 255, 0.26);

  --text: rgba(255, 255, 255, 0.96);
  --muted: rgba(255, 255, 255, 0.58);
  --soft: rgba(255, 255, 255, 0.74);

  --green: #4ed77d;
  --amber: #ffbd4a;
  --red: #ff6464;
  --blue: #49a7ff;
  --purple: #9d7cff;

  --shadow:
    0 28px 80px rgba(0, 0, 0, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  background: var(--background);
}

body {
  margin: 0;
  min-height: 100vh;

  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "SF Pro Display",
    "SF Pro Text",
    Inter,
    sans-serif;

  color: var(--text);
  background: var(--background);
}

a {
  color: inherit;
  text-decoration: none;
}

.background {
  position: fixed;
  inset: 0;
  z-index: -5;
  overflow: hidden;

  background:
    linear-gradient(
      90deg,
      rgba(2, 4, 5, 0.92) 0%,
      rgba(5, 8, 10, 0.66) 47%,
      rgba(2, 4, 5, 0.86) 100%
    ),
    radial-gradient(
      circle at 67% 27%,
      rgba(37, 100, 150, 0.18),
      transparent 24%
    ),
    radial-gradient(
      circle at 28% 60%,
      rgba(136, 77, 32, 0.17),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      #101517 0%,
      #060809 44%,
      #0a0d0f 100%
    );
}

.background::before {
  content: "";
  position: absolute;
  inset: -10%;

  opacity: 0.28;

  background:
    repeating-linear-gradient(
      90deg,
      transparent 0,
      transparent 11.7%,
      rgba(62, 121, 157, 0.17) 11.9%,
      rgba(62, 121, 157, 0.05) 12.2%,
      transparent 12.5%
    ),
    repeating-linear-gradient(
      0deg,
      transparent 0,
      transparent 96px,
      rgba(255, 255, 255, 0.025) 97px,
      transparent 99px
    );

  filter: blur(0.3px);
  transform: perspective(900px) rotateY(-4deg);
}

.background::after {
  content: "";
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.05),
      rgba(0, 0, 0, 0.4)
    ),
    radial-gradient(
      ellipse at center,
      transparent 0%,
      rgba(0, 0, 0, 0.53) 100%
    );
}

.server-light {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  opacity: 0.78;
  box-shadow:
    0 22px 0 currentColor,
    0 44px 0 currentColor,
    0 66px 0 currentColor,
    0 88px 0 currentColor,
    0 110px 0 currentColor;
}

.server-light-one {
  top: 15%;
  right: 13%;
  color: #158aff;
}

.server-light-two {
  top: 35%;
  right: 25%;
  color: #34d67c;
}

.server-light-three {
  top: 58%;
  right: 7%;
  color: #ff9b3d;
}

.dashboard {
  width: min(1560px, calc(100% - 56px));
  margin: 0 auto;
  padding:
    max(34px, env(safe-area-inset-top))
    0
    max(28px, env(safe-area-inset-bottom));
}

.topbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 36px;
}

.eyebrow {
  display: block;
  margin-bottom: 10px;

  color: rgba(255, 255, 255, 0.47);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.18em;
}

h1 {
  margin: 0;

  font-size: clamp(2.45rem, 4.2vw, 4.8rem);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

.headline p {
  margin: 13px 0 0;

  color: var(--muted);
  font-size: 1rem;
}

.header-widgets {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
}

.header-widget {
  min-width: 130px;
  min-height: 68px;

  display: flex;
  align-items: center;
  gap: 12px;

  padding: 13px 17px;

  border: 1px solid var(--border);
  border-radius: 18px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.075),
      rgba(255, 255, 255, 0.025)
    );

  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);

  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.24);
}

.header-widget:first-child {
  min-width: 165px;
  display: block;
}

.header-widget strong {
  display: block;
  margin-top: 3px;
  font-size: 1rem;
}

.header-label {
  display: block;
  color: var(--muted);
  font-size: 0.72rem;
}

.header-icon {
  font-size: 1.3rem;
}

.status-dot,
.service-status-dot {
  flex: 0 0 auto;

  width: 9px;
  height: 9px;

  border-radius: 50%;
  background: var(--green);

  box-shadow: 0 0 16px rgba(78, 215, 125, 0.72);
}

.section {
  min-width: 0;
  margin-bottom: 30px;
}

.section-heading {
  display: flex;
  align-items: center;
  gap: 10px;

  margin: 0 3px 13px;
}

.section-heading h2 {
  margin: 0;

  font-size: 1.13rem;
  font-weight: 650;
  letter-spacing: -0.02em;
}

.section-icon {
  color: rgba(255, 255, 255, 0.78);
  font-size: 1.1rem;
}

.updated {
  margin-left: auto;

  color: rgba(255, 255, 255, 0.35);
  font-size: 0.72rem;
}

.glass-card {
  position: relative;
  overflow: hidden;

  border: 1px solid var(--border);
  border-radius: 23px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.09),
      rgba(255, 255, 255, 0.026)
    );

  backdrop-filter: blur(28px) saturate(138%);
  -webkit-backdrop-filter: blur(28px) saturate(138%);

  box-shadow: var(--shadow);

  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.glass-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background:
    radial-gradient(
      circle at 10% 0%,
      rgba(255, 255, 255, 0.105),
      transparent 36%
    );
}

.glass-card > * {
  position: relative;
  z-index: 1;
}

@media (hover: hover) {
  a.glass-card:hover {
    transform: translateY(-3px);
    border-color: var(--border-light);

    background:
      linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.125),
        rgba(255, 255, 255, 0.04)
      );
  }
}

.system-grid {
  display: grid;
  grid-template-columns:
    repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.metric-card {
  min-height: 210px;
  padding: 18px;
}

.card-top {
  display: flex;
  align-items: center;
  gap: 9px;
}

.metric-icon {
  font-size: 1.1rem;
}

.card-title {
  font-size: 0.92rem;
  font-weight: 600;
}

.health-indicator {
  width: 7px;
  height: 7px;
  margin-left: auto;

  border-radius: 50%;
  background: var(--green);

  box-shadow: 0 0 12px rgba(78, 215, 125, 0.6);
}

.metric-value {
  display: flex;
  align-items: baseline;
  gap: 5px;

  margin-top: 31px;
}

.metric-value strong {
  font-size: 2.75rem;
  line-height: 1;
  letter-spacing: -0.055em;
}

.metric-value span {
  color: var(--soft);
  font-size: 1.1rem;
}

.sparkline {
  height: 44px;
  margin: 12px 0 4px;
}

.sparkline svg {
  width: 100%;
  height: 100%;
}

.sparkline polyline {
  fill: none;
  stroke: var(--green);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}

.metric-footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;

  margin-top: 16px;

  color: var(--muted);
  font-size: 0.72rem;
}

.progress {
  height: 7px;
  margin-top: 24px;
  overflow: hidden;

  border-radius: 20px;
  background: rgba(255, 255, 255, 0.12);
}

.progress span {
  display: block;
  width: 0;
  height: 100%;

  border-radius: inherit;
  background:
    linear-gradient(90deg, #39c66d, #71e295);

  transition: width 500ms ease;
}

.sensor-row {
  display: flex;
  margin-top: 25px;
}

.sensor-row strong {
  font-size: 2rem;
  letter-spacing: -0.04em;
}

.sensor-row span {
  margin-left: 4px;
  color: var(--soft);
}

.sensor-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.sensor-row.secondary {
  margin-top: 18px;
}

.sensor-row.secondary strong {
  font-size: 1.45rem;
}

.network-row {
  display: flex;
  align-items: center;
  gap: 13px;

  margin-top: 24px;
}

.network-arrow {
  font-size: 2rem;
  font-weight: 700;
}

.network-row.download .network-arrow {
  color: var(--green);
}

.network-row.upload .network-arrow {
  color: var(--blue);
}

.network-row strong {
  display: block;
  font-size: 1.25rem;
}

.network-row small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
}

.main-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 3.3fr)
    minmax(280px, 1fr);
  gap: 24px;
  align-items: start;
}

.main-column,
.side-column {
  min-width: 0;
}

.pihole-card {
  display: grid;
  grid-template-columns:
    minmax(190px, 0.8fr)
    minmax(0, 2.2fr);
  gap: 24px;
  align-items: center;

  min-height: 150px;
  padding: 22px;
}

.service-brand {
  display: flex;
  align-items: center;
  gap: 14px;
}

.service-brand strong {
  display: block;
  font-size: 1rem;
}

.service-brand span {
  display: block;
  margin-top: 5px;

  color: var(--muted);
  font-size: 0.78rem;
}

.brand-icon {
  width: 48px;
  height: 48px;
  flex: 0 0 auto;

  display: grid;
  place-items: center;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 15px;

  color: white;
  font-size: 1.55rem;

  background:
    linear-gradient(
      145deg,
      rgba(110, 85, 255, 0.6),
      rgba(50, 83, 180, 0.35)
    );
}

.pihole-logo {
  color: #ff4d50;

  background:
    linear-gradient(
      145deg,
      rgba(230, 41, 45, 0.45),
      rgba(48, 120, 45, 0.4)
    );
}

.stats-grid {
  display: grid;
  gap: 16px;
}

.stats-grid.four {
  grid-template-columns:
    repeat(4, minmax(0, 1fr));
}

.stats-grid div {
  min-width: 0;
}

.stats-grid div + div {
  border-left: 1px solid rgba(255, 255, 255, 0.1);
  padding-left: 16px;
}

.stats-grid strong {
  display: block;

  overflow: hidden;
  text-overflow: ellipsis;

  font-size: 1.55rem;
  letter-spacing: -0.035em;
}

.stats-grid span {
  display: block;
  margin-top: 6px;

  color: var(--muted);
  font-size: 0.74rem;
}

.service-grid {
  display: grid;
  gap: 14px;
}

.service-grid.three {
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
}

.service-grid.two {
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
}

.service-card {
  min-height: 185px;
  padding: 19px;
}

.service-number {
  margin-top: 31px;
}

.service-number strong {
  display: block;

  font-size: 2.25rem;
  letter-spacing: -0.05em;
}

.service-number span,
.stream-title {
  color: var(--muted);
  font-size: 0.75rem;
}

.stream-title {
  margin-top: 12px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.dual-stat {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 14px;

  margin-top: 31px;
}

.dual-stat div + div {
  padding-left: 14px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.dual-stat strong {
  display: block;

  overflow: hidden;
  text-overflow: ellipsis;

  font-size: 1.65rem;
  letter-spacing: -0.04em;
}

.dual-stat span {
  display: block;
  margin-top: 4px;

  color: var(--muted);
  font-size: 0.72rem;
}

.link-grid {
  display: grid;
  grid-template-columns:
    repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.mini-link {
  min-height: 105px;
  padding: 17px;
}

.mini-link strong,
.quick-link strong {
  display: block;
  font-size: 0.91rem;
}

.mini-link span,
.quick-link span {
  display: block;
  margin-top: 6px;

  color: var(--muted);
  font-size: 0.72rem;
}

.home-card {
  display: flex;
  align-items: center;
  gap: 14px;

  min-height: 112px;
  padding: 20px;

  border-color: rgba(104, 208, 237, 0.28);

  background:
    linear-gradient(
      145deg,
      rgba(48, 151, 188, 0.24),
      rgba(255, 255, 255, 0.035)
    );
}

.home-icon {
  width: 50px;
  height: 50px;

  display: grid;
  place-items: center;

  border-radius: 16px;

  color: #6fd8ff;
  font-size: 1.8rem;

  background: rgba(40, 154, 202, 0.2);
}

.home-card strong {
  display: block;
  font-size: 0.98rem;
}

.home-card span:not(.arrow-right) {
  display: block;
  margin-top: 5px;

  color: var(--muted);
  font-size: 0.76rem;
}

.arrow-right {
  margin-left: auto;

  color: rgba(255, 255, 255, 0.6);
  font-size: 2rem;
}

.status-card {
  padding: 9px 17px;
}

.status-row {
  display: grid;
  grid-template-columns:
    9px
    minmax(0, 1fr)
    auto;
  align-items: center;
  gap: 10px;

  min-height: 43px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.status-row:last-child {
  border-bottom: 0;
}

.status-row strong {
  font-size: 0.8rem;
  font-weight: 570;
}

.status-row > span:last-child {
  color: var(--green);
  font-size: 0.72rem;
}

.service-status-dot {
  background: var(--amber);
  box-shadow: 0 0 14px rgba(255, 189, 74, 0.6);
}

.service-status-dot.online {
  background: var(--green);
  box-shadow: 0 0 14px rgba(78, 215, 125, 0.6);
}

.service-status-dot.offline {
  background: var(--red);
  box-shadow: 0 0 14px rgba(255, 100, 100, 0.6);
}

.quick-grid {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.quick-link {
  min-height: 92px;
  padding: 15px;
}

footer {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;

  padding-top: 10px;

  color: rgba(255, 255, 255, 0.53);
  font-size: 0.78rem;
}

.footer-divider {
  color: rgba(255, 255, 255, 0.25);
}

.health-good .health-indicator {
  background: var(--green);
}

.health-warn .health-indicator {
  background: var(--amber);
  box-shadow: 0 0 12px rgba(255, 189, 74, 0.6);
}

.health-bad .health-indicator {
  background: var(--red);
  box-shadow: 0 0 12px rgba(255, 100, 100, 0.6);
}

.health-warn .progress span {
  background: var(--amber);
}

.health-bad .progress span {
  background: var(--red);
}

@media (max-width: 1150px) {
  .dashboard {
    width: min(100% - 30px, 1100px);
  }

  .topbar {
    display: block;
  }

  .header-widgets {
    justify-content: flex-start;
    margin-top: 24px;
  }

  .system-grid {
    grid-template-columns:
      repeat(3, minmax(0, 1fr));
  }

  .main-grid {
    grid-template-columns: 1fr;
  }

  .side-column {
    display: grid;
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .side-column .section {
    margin-bottom: 0;
  }

  .side-column .section:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .dashboard {
    width: calc(100% - 22px);
    padding-top: max(22px, env(safe-area-inset-top));
  }

  h1 {
    font-size: 2.7rem;
  }

  .headline p {
    max-width: 280px;
  }

  .header-widgets {
    display: grid;
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .header-widget,
  .header-widget:first-child {
    min-width: 0;
  }

  .system-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .network-card {
    grid-column: 1 / -1;
  }

  .pihole-card {
    grid-template-columns: 1fr;
  }

  .stats-grid.four {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .stats-grid div + div {
    padding-left: 0;
    border-left: 0;
  }

  .service-grid.three,
  .service-grid.two {
    grid-template-columns: 1fr;
  }

  .link-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .side-column {
    display: block;
  }

  .side-column .section {
    margin-bottom: 26px;
  }

  footer {
    flex-wrap: wrap;
  }
}

@media (max-width: 430px) {
  .dashboard {
    width: calc(100% - 16px);
  }

  .header-widgets {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .header-widget {
    min-height: 61px;
    padding: 11px 12px;
    border-radius: 17px;
  }

  .system-grid {
    gap: 9px;
  }

  .metric-card {
    min-height: 190px;
    padding: 14px;
    border-radius: 20px;
  }

  .metric-value strong {
    font-size: 2.2rem;
  }

  .glass-card {
    border-radius: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .glass-card,
  .progress span {
    transition: none;
  }
}


/* Reihenfolge rechte Spalte */
.side-column {
  display: flex;
  flex-direction: column;
}

.side-column .sticky-status {
  order: 1;
}

.side-column .smart-home-section {
  order: 2;
}

/* Minimalistische Service-Logos */
.service-logo {
  display: grid;
  place-items: center;

  color: #d9dcdf;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.075),
      rgba(255, 255, 255, 0.025)
    );

  border-color: rgba(255, 255, 255, 0.12);
}

.service-logo img {
  display: block;

  width: 27px;
  height: 27px;

  object-fit: contain;

  opacity: 0.9;

  filter:
    drop-shadow(
      0 2px 5px rgba(0, 0, 0, 0.28)
    );
}

.home-icon.service-logo img {
  width: 29px;
  height: 29px;
}

.pihole-logo {
  color: #d9dcdf;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.075),
      rgba(255, 255, 255, 0.025)
    );
}

/* Lokale Seerr- und Prowlarr-Logos monochrom */
img[src="/icons/seerr.svg"],
img[src="/icons/prowlarr.svg"] {
  filter:
    grayscale(1)
    brightness(2.1)
    contrast(0.8);

  opacity: 0.82;
}

/* Smart Home im gleichen neutralen Glas-Look */
.home-card {
  border-color: var(--border);

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.09),
      rgba(255, 255, 255, 0.026)
    );
}

.home-icon {
  color: #d9dcdf;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.075),
      rgba(255, 255, 255, 0.025)
    );
}

/* Monochromes Symbol für CPU-Sensoren */
.sensor-icon {
  display: inline-grid;
  place-items: center;
}

.sensor-icon img {
  display: block;
  width: 21px;
  height: 21px;

  filter:
    grayscale(1)
    brightness(2.2);

  opacity: 0.9;
}

/* Aussagekräftige, einfarbige System-Symbole */
.system-icon {
  display: inline-block;
  flex: 0 0 auto;

  width: 22px;
  height: 22px;

  background-color: rgba(235, 238, 241, 0.92);

  -webkit-mask-image: var(--system-icon);
  mask-image: var(--system-icon);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-position: center;
  mask-position: center;

  -webkit-mask-size: contain;
  mask-size: contain;
}

/* Alte Bildregeln dürfen die neuen Masken nicht beeinflussen */
.system-icon img,
.sensor-icon img {
  display: none;
}

/* ===== Transparenter Hemma-Look ===== */

/* Hintergrund nur noch leicht abdunkeln */
.background {
  background:
    linear-gradient(
      180deg,
      rgba(3, 6, 9, 0.08) 0%,
      rgba(3, 6, 9, 0.14) 52%,
      rgba(3, 6, 9, 0.24) 100%
    ),
    url("/assets/backgrounds/serverraum-hemma.png")
      center center / cover no-repeat fixed !important;
}

.background::before {
  opacity: 0 !important;
}

.background::after {
  background:
    radial-gradient(
      ellipse at center,
      transparent 32%,
      rgba(0, 0, 0, 0.18) 100%
    ) !important;
}

/* Hauptkacheln transparenter */
.glass-card {
  background:
    linear-gradient(
      145deg,
      rgba(24, 29, 34, 0.62),
      rgba(9, 13, 17, 0.48)
    ) !important;

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

  backdrop-filter:
    blur(22px)
    saturate(125%);

  -webkit-backdrop-filter:
    blur(22px)
    saturate(125%);
}

/* Kopfzeilen-Kacheln ebenfalls angleichen */
.header-widget {
  background:
    linear-gradient(
      145deg,
      rgba(24, 29, 34, 0.58),
      rgba(9, 13, 17, 0.44)
    ) !important;

  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}

/* Smart Home bleibt identisch zu den anderen Karten */
.home-card {
  background:
    linear-gradient(
      145deg,
      rgba(24, 29, 34, 0.62),
      rgba(9, 13, 17, 0.48)
    ) !important;
}

/* ===== Deutlich transparenter Hemma-Look ===== */

.glass-card {
  background:
    linear-gradient(
      145deg,
      rgba(25, 30, 35, 0.30),
      rgba(8, 12, 16, 0.20)
    ) !important;

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

  box-shadow:
    0 16px 42px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.055) !important;

  backdrop-filter:
    blur(16px)
    saturate(115%) !important;

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

/* Zusätzliche Deckschicht der Karten entfernen */
.glass-card::before {
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Kopfleisten ebenfalls klar transparenter */
.header-widget {
  background:
    linear-gradient(
      145deg,
      rgba(25, 30, 35, 0.28),
      rgba(8, 12, 16, 0.18)
    ) !important;

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

  box-shadow:
    0 14px 36px rgba(0, 0, 0, 0.18) !important;

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

/* Smart Home identisch zu allen anderen Karten */
.home-card {
  background:
    linear-gradient(
      145deg,
      rgba(25, 30, 35, 0.30),
      rgba(8, 12, 16, 0.20)
    ) !important;
}

/* Hintergrund nahezu unverändert sichtbar lassen */
.background {
  background:
    linear-gradient(
      rgba(3, 6, 9, 0.03),
      rgba(3, 6, 9, 0.10)
    ),
    url("/assets/backgrounds/serverraum-hemma.png")
      center center / cover no-repeat fixed !important;
}

.background::after {
  background:
    radial-gradient(
      ellipse at center,
      transparent 48%,
      rgba(0, 0, 0, 0.10) 100%
    ) !important;
}

/* ===== Serverraum-Hintergrund ===== */

.background {
  background:
    linear-gradient(
      rgba(3, 6, 9, 0.02),
      rgba(3, 6, 9, 0.08)
    ),
    url("/assets/backgrounds/serverraum-hemma.png")
      center center / cover no-repeat !important;
}

.background::before {
  display: none !important;
}

.background::after {
  background:
    radial-gradient(
      ellipse at center,
      transparent 55%,
      rgba(0, 0, 0, 0.08) 100%
    ) !important;
}

.server-light {
  display: none !important;
}

/* ===== Hintergrund-Ebenen korrigieren ===== */

html,
body {
  background: transparent !important;
}

body {
  position: relative;
  isolation: isolate;
}

.background {
  z-index: 0 !important;

  background:
    linear-gradient(
      rgba(3, 6, 9, 0.02),
      rgba(3, 6, 9, 0.08)
    ),
    url("/assets/backgrounds/serverraum-hemma.png")
      center center / cover no-repeat !important;
}

.dashboard {
  position: relative;
  z-index: 1;
}

.background::before {
  display: none !important;
}

.background::after {
  background:
    radial-gradient(
      ellipse at center,
      transparent 55%,
      rgba(0, 0, 0, 0.08) 100%
    ) !important;
}

.server-light {
  display: none !important;
}

/* ===== Finale Hemma-Transparenz ===== */

.glass-card,
.home-card,
.status-card,
.service-card,
.metric-card,
.pihole-card,
.quick-link,
.mini-link {
  background:
    linear-gradient(
      145deg,
      rgba(20, 25, 30, 0.20),
      rgba(8, 12, 16, 0.12)
    ) !important;

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

  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;

  backdrop-filter:
    blur(10px)
    saturate(108%) !important;

  -webkit-backdrop-filter:
    blur(10px)
    saturate(108%) !important;
}

.glass-card::before,
.home-card::before,
.status-card::before,
.service-card::before,
.metric-card::before,
.pihole-card::before,
.quick-link::before,
.mini-link::before {
  display: none !important;
  content: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Kopfzeilen-Kacheln genauso transparent */
.header-widget {
  background:
    linear-gradient(
      145deg,
      rgba(20, 25, 30, 0.18),
      rgba(8, 12, 16, 0.10)
    ) !important;

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

  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.13) !important;

  backdrop-filter:
    blur(10px)
    saturate(108%) !important;

  -webkit-backdrop-filter:
    blur(10px)
    saturate(108%) !important;
}

/* Auch interne Flächen neutral halten */
.brand-icon,
.home-icon {
  background:
    rgba(255, 255, 255, 0.04) !important;

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

/* ===== Noch transparentere Hemma-Kacheln ===== */

.glass-card,
.home-card,
.status-card,
.service-card,
.metric-card,
.pihole-card,
.quick-link,
.mini-link {
  background:
    linear-gradient(
      145deg,
      rgba(18, 23, 28, 0.11),
      rgba(6, 10, 14, 0.06)
    ) !important;

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

  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;

  backdrop-filter:
    blur(8px)
    saturate(106%) !important;

  -webkit-backdrop-filter:
    blur(8px)
    saturate(106%) !important;
}

.header-widget {
  background:
    linear-gradient(
      145deg,
      rgba(18, 23, 28, 0.10),
      rgba(6, 10, 14, 0.05)
    ) !important;

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

  box-shadow:
    0 10px 24px rgba(0, 0, 0, 0.09) !important;

  backdrop-filter:
    blur(8px)
    saturate(106%) !important;

  -webkit-backdrop-filter:
    blur(8px)
    saturate(106%) !important;
}

.brand-icon,
.home-icon {
  background: rgba(255, 255, 255, 0.025) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}
