.page-main{padding:72px 24px 60px;max-width:960px;margin:0 auto;}

.page-header{text-align:center;margin-bottom:40px;}
.page-header h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;margin-bottom:12px;}

.status-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 24px;border-radius:var(--cs-radius);background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.35);margin-bottom:32px;}
.status-dot{width:12px;height:12px;border-radius:50%;background:#22c55e;box-shadow:0 0 12px rgba(34,197,94,0.6);animation:pulse 2s ease infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.5;}}
.status-banner-text{font-size:1.1rem;font-weight:700;color:#22c55e;}
.status-checked{text-align:center;font-size:13px;color:var(--cs-text-muted);margin-bottom:40px;}

.service-list{margin-bottom:48px;}
.service-row{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border:1px solid var(--cs-border);border-radius:var(--cs-radius);margin-bottom:8px;background:var(--cs-surface);}
.service-name{font-size:15px;font-weight:600;}
.service-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#22c55e;font-weight:500;}
.service-status-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;}

.uptime-section{margin-bottom:32px;}
.uptime-section h2{font-size:1.1rem;font-weight:700;margin-bottom:8px;}
.uptime-meta{font-size:13px;color:var(--cs-text-muted);margin-bottom:16px;}
.uptime-chart{display:flex;flex-wrap:wrap;gap:2px;}
.uptime-day{width:8px;height:32px;border-radius:2px;cursor:pointer;transition:transform 0.15s,opacity 0.15s;}
.uptime-day:hover{transform:scaleY(1.15);opacity:0.85;}
.uptime-day--up{background:#22c55e;}
.uptime-day--degraded{background:#eab308;}
.uptime-day--down{background:#ef4444;}
.uptime-legend{display:flex;gap:20px;margin-top:16px;font-size:12px;color:var(--cs-text-muted);}
.uptime-legend-item{display:flex;align-items:center;gap:6px;}
.uptime-legend-swatch{width:12px;height:12px;border-radius:2px;}
