:root{--bg: #16161c;--surface: #1e1e26;--accent: #45233f;--accent-bright: #936c89;--ink: #e8e6ea;--ink-muted: #936c89;--danger: #e0556b;--success: #5fae8f;--warning: #e0b355;--radius-card: 8px;--radius-control: 6px;--page-padding: 24px;--section-gap: 32px;--card-padding: 20px;font-family:Inter,Pretendard Variable,system-ui,-apple-system,sans-serif;font-variant-numeric:tabular-nums;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;background:var(--bg)}body{font-size:14px;line-height:20px}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.muted{color:var(--ink-muted)}.caption{font-size:12px;line-height:16px;color:var(--ink-muted)}.metric{font-size:32px;font-weight:600;line-height:40px}.section-title{font-size:18px;font-weight:600;line-height:24px;margin:0 0 16px}.page-title{font-size:28px;font-weight:600;line-height:36px;margin:0}.app{max-width:1280px;margin:0 auto;padding:var(--page-padding);display:flex;flex-direction:column;gap:var(--section-gap)}.card{background:var(--surface);border-radius:var(--radius-card);padding:var(--card-padding)}.kpi-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}@media (max-width: 1024px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.kpi-grid{grid-template-columns:1fr}.mobile-block{display:flex;align-items:center;justify-content:center;min-height:100vh}}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;line-height:16px;border:1px solid}.pill-ok{color:var(--success);border-color:var(--success)}.pill-fail{color:var(--danger);border-color:var(--danger)}.pill-warn{color:var(--warning);border-color:var(--warning)}.pill-info{color:var(--accent-bright);border-color:var(--accent-bright)}table{width:100%;border-collapse:collapse}th,td{padding:12px 16px;text-align:left;vertical-align:top}thead th{font-size:12px;font-weight:400;color:var(--ink-muted)}tbody tr{border-top:1px solid rgba(147,108,137,.15)}tbody tr:hover{background:#936c890f}button{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-control);padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer}button:hover{filter:brightness(1.1)}button:disabled{opacity:.4;cursor:not-allowed}button.danger{background:var(--danger)}
