:root{font-family:Inter,Pretendard,"Noto Sans KR",system-ui,sans-serif;color:#17202a;background:#f4f6f8;--card:#fff;--line:#dfe4ea;--muted:#657381;--up:#d32f2f;--down:#1976d2;--accent:#253858;--shadow:0 5px 20px rgba(25,35,50,.08)}
:root.dark{color:#e5e9f0;background:#11151b;--card:#181e26;--line:#303a46;--muted:#9aa8b6;--accent:#d8e2f0;--shadow:none}
*{box-sizing:border-box}body{margin:0;min-width:320px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px max(20px,4vw);background:var(--card);border-bottom:1px solid var(--line)}h1{margin:0;font-size:1.45rem}h2{font-size:1.05rem;margin:.1rem 0 .8rem}.topbar p,footer p{margin:.35rem 0;color:var(--muted);font-size:.86rem}main{max-width:1500px;margin:auto;padding:18px}.status-badge{padding:7px 10px;border-radius:99px;background:#eef2f7;color:#42526e;font-size:.78rem}.status-badge.warn{background:#fff4d6;color:#7a4d00}.status-badge.ok{background:#e6f4ea;color:#216e39}.control-card,.chart-card,.interpretation-card,.regime-card,.flow-controls,.flow-panel{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.control-card{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;padding:14px;align-items:end}.control-card label{font-size:.78rem;color:var(--muted);display:flex;flex-direction:column;gap:5px}.control-card select,.control-card button{font:inherit;border:1px solid var(--line);border-radius:7px;background:var(--card);color:inherit;padding:7px}.control-card select[multiple]{padding:3px;min-height:82px}.control-card button{background:#263b5e;color:#fff;cursor:pointer;height:38px}.toggle{align-self:center!important;flex-direction:row!important;align-items:center}.summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0}.metric{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px}.metric .label{font-size:.72rem;color:var(--muted)}.metric .value{font-weight:700;margin-top:4px}.positive{color:var(--up)}.negative{color:var(--down)}.chart-card{position:relative;padding:8px}#chart{height:650px;min-height:430px}.error-box{padding:12px;background:#fff0f0;color:#9f1d1d;border-radius:8px;margin-bottom:8px}.hidden{display:none}.flow-controls{margin-top:14px;padding:12px}.flow-controls #flow-checkboxes{display:flex;gap:15px;flex-wrap:wrap;font-size:.82rem}.flow-panels{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}.flow-panel{padding:10px}.flow-panel header{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem}.flow-panel canvas{display:block;width:100%;height:180px}.interpretation-card{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;padding:16px;margin-top:14px}.interpretation-card p{line-height:1.65;margin:0}.evidence{width:100%;border-collapse:collapse;font-size:.82rem}.evidence td{padding:6px;border-bottom:1px solid var(--line)}.evidence td:last-child{text-align:right;font-variant-numeric:tabular-nums}.regime-card{padding:16px;margin-top:14px}.regime-item{display:flex;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:.82rem}.regime-item time{min-width:105px;color:var(--muted)}footer{max-width:1500px;margin:12px auto 30px;padding:16px 22px;border-top:1px solid var(--line)}
@media(max-width:1050px){.control-card{grid-template-columns:repeat(3,1fr)}.summary-grid{grid-template-columns:repeat(3,1fr)}#chart{height:580px}}@media(max-width:650px){main{padding:10px}.topbar{padding:14px}.topbar p{display:none}.control-card{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}.interpretation-card{grid-template-columns:1fr}#chart{height:500px}.status-badge{max-width:120px;text-align:center}}
