:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1117;--surface: #161b22;--surface2: #21262d;--border: #30363d;--text: #e6edf3;--muted: #8b949e;--accent: #58a6ff;--green: #3fb950;--yellow: #d29922;--red: #f85149;--radius: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;color:var(--text);background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code{font-family:SFMono-Regular,Consolas,monospace;font-size:.85em;color:var(--accent)}.dashboard{max-width:860px;margin:0 auto;padding:2rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.dashboard__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.dashboard__title{display:flex;align-items:center;gap:.75rem}.dashboard__logo{font-size:2.2rem;line-height:1;color:var(--accent);filter:drop-shadow(0 0 8px #58a6ff88)}.dashboard__title h1{font-size:1.35rem;font-weight:600;line-height:1.2}.dashboard__subtitle{font-size:.8rem;color:var(--muted);margin-top:2px}.env-switcher{display:flex;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.env-btn{background:none;border:none;color:var(--muted);padding:.45rem 1.1rem;cursor:pointer;font-size:.85rem;font-weight:500;text-transform:capitalize;transition:background .15s,color .15s}.env-btn:hover{background:var(--surface);color:var(--text)}.env-btn--active{background:var(--accent);color:#0d1117}.summary-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.summary-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.2rem}.summary-value{font-size:1.5rem;font-weight:700;line-height:1}.summary-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.summary-card--healthy .summary-value{color:var(--green)}.summary-card--degraded .summary-value{color:var(--yellow)}.module-list{display:flex;flex-direction:column;gap:.6rem}.module-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}.module-card:hover{border-color:var(--accent)}.module-card--degraded{border-left:3px solid var(--yellow)}.module-card--healthy{border-left:3px solid var(--green)}.module-card--unknown{border-left:3px solid var(--muted)}.module-card__header{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none}.module-card__header:focus-visible{outline:2px solid var(--accent)}.module-name{flex:1;font-weight:500;font-size:.92rem}.badge{font-size:.75rem;font-weight:500;padding:.2rem .55rem;border-radius:99px}.badge--healthy{background:#1a3a22;color:var(--green)}.badge--degraded{background:#3a2c10;color:var(--yellow)}.badge--unknown{background:var(--surface2);color:var(--muted)}.chevron{color:var(--muted);font-size:.7rem}.module-card__body{border-top:1px solid var(--border);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.45rem;background:var(--bg)}.detail-row{display:flex;justify-content:space-between;font-size:.82rem}.detail-row span{color:var(--muted)}.dashboard__footer{text-align:center;font-size:.8rem;color:var(--muted);padding-top:.5rem;border-top:1px solid var(--border)}@media (max-width: 540px){.summary-bar{grid-template-columns:repeat(2,1fr)}.dashboard__header{flex-direction:column;align-items:flex-start}}
