:root{
  --bg:#f6f7f9;
  --panel:#ffffff;
  --text:#17202a;
  --muted:#667085;
  --line:#e4e7ec;
  --accent:#111827;
  --ok:#18794e;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif}
.site-header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 22px}
.brand{font-weight:800;text-decoration:none;color:var(--text)}
.container{width:min(1120px,calc(100% - 32px));margin:32px auto}
.hero,.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px}
.hero h1{margin:0 0 8px;font-size:clamp(28px,4vw,44px)}
.muted{color:var(--muted)}
.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:18px}
.status-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}
.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700;background:#eef2f6}
.badge.ok{color:var(--ok);background:#e8f7ef}
.site-footer{padding:28px;text-align:center;color:var(--muted)}
a.button{display:inline-block;margin-top:18px;padding:11px 16px;border-radius:10px;background:var(--accent);color:white;text-decoration:none;font-weight:700}
table{width:100%;border-collapse:collapse}
th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
