/* Serwer module only. The page shell/title/navigation remain theme-owned. */
#dashboard-app .server-dashboard,
#dashboard-app .server-docker-page { width: 100%; min-width: 0; color: inherit; }
#dashboard-app .server-dashboard-meta { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:14px; color:var(--muted); font-size:.82rem; }
#dashboard-app .server-dashboard-meta .server-dashboard-source { margin-left:auto; opacity:.72; }
#dashboard-app .server-metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
#dashboard-app .server-metric { min-width:0; min-height:154px; display:flex; flex-direction:column; justify-content:space-between; gap:10px; padding:15px; border:1px solid color-mix(in srgb,var(--panel-accent,var(--accent)) 34%,var(--line)); border-radius:12px; background:color-mix(in srgb,var(--panel-accent,var(--accent)) 8%,transparent); box-shadow:0 8px 20px rgba(0,0,0,.12); text-align:left; }
#dashboard-app .server-metric[role="button"] { cursor:pointer; }
#dashboard-app .server-metric[role="button"]:hover,
#dashboard-app .server-metric[role="button"]:focus-visible { border-color:var(--panel-accent,var(--accent)); transform:translateY(-2px); }
#dashboard-app .server-metric-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
#dashboard-app .server-metric-label { font-weight:760; }
#dashboard-app .server-metric-head small,
#dashboard-app .server-metric-description { color:var(--muted); font-size:.75rem; }
#dashboard-app .server-metric-visual { display:grid; place-items:center; min-height:70px; }
#dashboard-app .server-metric-value { font-size:clamp(1.3rem,2.4vw,2rem); letter-spacing:-.02em; }
#dashboard-app .server-gauge { --gauge-track:rgba(255,255,255,.12); width:74px; height:74px; display:grid; place-items:center; position:relative; border-radius:50%; background:conic-gradient(var(--panel-accent,var(--accent)) calc(var(--value) * 1%),var(--gauge-track) 0); }
#dashboard-app .server-gauge::after { content:""; position:absolute; inset:7px; border-radius:50%; background:var(--panel-background,var(--panel)); }
#dashboard-app .server-gauge strong { position:relative; z-index:1; font-size:.95rem; }
#dashboard-app .server-progress { width:100%; height:9px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.12); }
#dashboard-app .server-progress i { display:block; height:100%; border-radius:inherit; background:var(--panel-accent,var(--accent)); }
#dashboard-app .server-temperature-value { color:var(--panel-accent,var(--accent)); }
#dashboard-app .server-empty { grid-column:1/-1; padding:28px; border:1px dashed var(--line); border-radius:12px; color:var(--muted); text-align:center; }
#dashboard-app .server-docker-note { margin-bottom:14px; color:var(--muted); }
#dashboard-app .server-docker-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
#dashboard-app .server-docker-container { min-width:0; padding:15px; border:1px solid var(--line); border-radius:12px; background:color-mix(in srgb,var(--panel-accent,var(--accent)) 7%,transparent); }
#dashboard-app .server-docker-container header { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
#dashboard-app .server-docker-container h3 { margin:0; font-size:1rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#dashboard-app .server-docker-status { margin:12px 0 8px; font-weight:700; }
#dashboard-app .server-docker-detail { display:grid; grid-template-columns:auto 1fr; gap:4px 10px; margin:0; color:var(--muted); font-size:.78rem; }
#dashboard-app .server-docker-detail dt { opacity:.72; }
#dashboard-app .server-docker-detail dd { margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#dashboard-app .panel-monitoring[data-open-server-page] { cursor:pointer; }
#dashboard-app .panel-monitoring[data-open-server-page]:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }




/* Server pages: preserve the shared header while scrolling module content. */
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoring"],
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoringDocker"] {
  box-sizing: border-box;
  height: 100svh;
  min-height: 100svh;
  max-height: 100svh;
  overflow: hidden;
}
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoring"],
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoringDocker"] {
  display: flex;
  flex-direction: column;
}
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoring"] > .theme-layout-item,
#dashboard-app .theme-layout-page[data-theme-layout-page="monitoringDocker"] > .theme-layout-item {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding-right: 6px;
  padding-bottom: 26px;
}
/* Server pages: three-row viewport sizing. */

/* Docker view status and healthcheck presentation. */
#dashboard-app .server-docker-badges { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:flex-start; gap:4px 10px; text-align:right; font:inherit; }
#dashboard-app .server-docker-badges .state-dot { white-space:nowrap; }
#dashboard-app .server-docker-badges .server-docker-orange { color:#f97316; }
#dashboard-app .server-docker-badges .server-docker-neutral { color:var(--muted); }

@media (min-width: 901px) {
  #dashboard-app .theme-layout-page[data-theme-layout-page="monitoring"] > .theme-layout-item,
  #dashboard-app .theme-layout-page[data-theme-layout-page="monitoringDocker"] > .theme-layout-item {
    flex: 0 0 calc(100dvh - 190px);
    height: calc(100dvh - 190px);
    max-height: calc(100dvh - 190px);
  }
}
