.dsp {--dsp-ok: #7CCB4A;--dsp-warning: #FFE066;--dsp-error: #FF9F1C;--dsp-critical: #E5484D;--dsp-skeleton: #EFE6B8;--dsp-alert-bg: #FFE3DE;--dsp-alert-edge: #C62828;--dsp-alert-ink: #8E1B1B;--dsp-unknown-bg: #EEEBE2}
.dsp-hero .drp-lead { max-width: 26em; }
.dsp-hero-mark { position: absolute; right: 0; top: 0; width: 64px; height: 64px; pointer-events: none; }
@media (min-width: 900px) {.dsp-hero-mark { right: 28px; top: -6px; width: 136px; height: 136px; }}
@media (min-width: 900px) {.dsp-cols { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }}
.dev-status-hub { display: grid; gap: 12px; }
.dev-status-hub .drp-board-title { margin-bottom: 0; }
.dev-status-access-link {display: flex;align-items: center;gap: 12px;min-height: 72px;padding: 12px 14px;border: 2px solid var(--drp-edge);border-radius: 16px;background: var(--drp-card);color: var(--drp-ink);text-decoration: none;transition: transform 0.12s, box-shadow 0.12s}
.dev-status-access-link:hover { box-shadow: 0 4px 0 var(--drp-edge); transform: translateY(-2px); }
.dev-status-access-link > .dev-status-uptime-title-icon {flex: none;width: 42px;height: 42px;padding: 9px;border: 2px solid var(--drp-edge);border-radius: 50%;background: var(--drp-b-imp);color: var(--drp-ink)}
.dev-status-access-link--sun > .dev-status-uptime-title-icon { background: var(--drp-b-bug); }
.dev-status-access-link--leaf > .dev-status-uptime-title-icon { background: var(--drp-b-new); }
@media (min-width: 900px) {.dev-status-access-link--in-page { display: none; }}
.dev-status-access-link-text { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.dev-status-access-link-text strong { font-size: 16px; font-weight: 800; }
.dev-status-access-link-text small { font-size: 13px; line-height: 1.5; color: var(--drp-sub); }
.dev-status-access-link-arrow { flex: none; width: 22px; height: 22px; color: var(--drp-ink); }
.dsp-monitor .dev-status-section-title { scroll-margin-top: 80px; }
.dev-status-health-banner {display: flex;align-items: center;gap: 12px;margin: 0 0 16px;padding: 14px;border: 2px solid var(--drp-edge);border-radius: 14px;font-size: 15px;font-weight: 800;line-height: 1.5}
.dev-status-health-banner--ok { background: var(--drp-c-new); }
.dev-status-health-banner--error { border-color: var(--dsp-alert-edge); background: var(--dsp-alert-bg); color: var(--dsp-alert-ink); }
.dev-status-health-banner--unknown { background: var(--dsp-unknown-bg); }
.dev-status-health-banner--loading {border-style: dashed;border-color: var(--drp-line);background: var(--drp-attach);color: var(--drp-sub);animation: dev-status-pulse 1.5s ease-in-out infinite}
.dev-status-health-icon {flex: none;width: 40px;height: 40px;padding: 7px;border: 2px solid currentColor;border-radius: 50%;background: var(--drp-card)}
.dev-status-skeleton-icon { flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--dsp-skeleton); }
.dev-status-skeleton-text { color: var(--drp-sub); }
.dev-status-health-text { flex: 1; }
.dev-status-health-sub { margin-top: 2px; font-size: 13px; font-weight: 400; color: var(--drp-sub); }
.dev-status-health-banner--error .dev-status-health-sub { color: var(--dsp-alert-ink); }
@keyframes dev-status-pulse {0%, 100% { opacity: 1; }
50% { opacity: 0.55; }}
.dev-status-uptime { padding: 14px; border: 2px solid var(--drp-edge); border-radius: 14px; background: var(--drp-field); }
.dev-status-uptime-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 12px; margin-bottom: 12px; }
.dev-status-uptime-title { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 800; }
.dev-status-uptime-title .dev-status-uptime-title-icon { width: 22px; height: 22px; }
.dev-status-uptime-pct { font-size: 30px; font-weight: 800; line-height: 1.1; color: var(--drp-ink); }
.dev-status-uptime-pct-unit { margin-left: 2px; font-size: 15px; font-weight: 700; color: var(--drp-sub); }
.dev-status-uptime-pct--unknown { font-size: 18px; color: var(--drp-sub); }
.dev-status-uptime-unknown {margin: 0;padding: 14px;border: 2px dashed var(--drp-line);border-radius: 12px;background: var(--drp-card);font-size: 14px;color: var(--drp-sub)}
.dev-status-uptime-bar {display: flex;gap: 2px;margin-bottom: 8px;padding: 4px;border: 2px solid var(--drp-edge);border-radius: 10px;background: var(--drp-edge)}
.dev-status-uptime-segment { flex: 1; min-width: 0; height: 32px; border-radius: 3px; cursor: default; }
.dev-status-uptime-segment--ok { background: var(--dsp-ok); }
.dev-status-uptime-segment--warning { background: var(--dsp-warning); }
.dev-status-uptime-segment--error { background: var(--dsp-error); }
.dev-status-uptime-segment--critical { background: var(--dsp-critical); }
.dev-status-uptime-segment--loading {background: var(--dsp-skeleton);transform-origin: center bottom;animation: dev-status-wave 1.2s ease-in-out infinite}
@keyframes dev-status-wave {0%, 100% { opacity: 0.35; transform: scaleY(0.55); }
50% { opacity: 1; transform: scaleY(1); }}
.dev-status-uptime-legend { display: flex; justify-content: space-between; font-size: 12px; color: var(--drp-sub); }
.dev-status-uptime-color-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; font-size: 12px; color: var(--drp-ink); }
.dev-status-uptime-color-item { display: inline-flex; align-items: center; gap: 6px; }
.dev-status-uptime-color-chip { flex: none; width: 14px; height: 14px; border: 2px solid var(--drp-edge); border-radius: 4px; }
@media (prefers-reduced-motion: reduce) {.dev-status-health-banner--loading,
.dev-status-uptime-segment--loading {animation: none}}