/* 홈 — 전 사업장 합산 (애플 토큰은 bank.css) */
.top-row { display: flex; align-items: end; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.month { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); }
.month input { height: 40px; width: auto; }

.hero { gap: 16px; }
.hero .total { font-size: clamp(36px, 9vw, 56px); font-weight: 600; line-height: 1.07; letter-spacing: -0.28px; font-variant-numeric: tabular-nums; }
.breakdown { display: grid; gap: 10px; }
.bk-bar { display: flex; height: 10px; border-radius: 5px; overflow: hidden; gap: 2px; background: var(--seg-bg); }
.bk-legend { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 14px; letter-spacing: -0.224px; color: var(--muted); }
.bk-legend span { display: flex; align-items: center; gap: 6px; }
.bk-legend i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.note { margin: 0; font-size: 14px; line-height: 1.43; letter-spacing: -0.224px; color: var(--warn); background: var(--warn-soft); border-radius: 12px; padding: 10px 14px; }
.fresh { font-size: 12px; letter-spacing: -0.12px; color: var(--muted); text-align: right; }

.kpi-row { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.kpi { background: var(--surface); border: 1px solid var(--hairline); border-radius: var(--r-lg); padding: 20px; display: grid; gap: 4px; text-decoration: none; color: var(--ink); transition: transform .12s ease; }
a.kpi:active { transform: scale(0.98); }
.kpi .label { font-size: 14px; letter-spacing: -0.224px; color: var(--muted); }
.kpi .val { font-size: 28px; font-weight: 600; line-height: 1.14; letter-spacing: -0.374px; font-variant-numeric: tabular-nums; }
.kpi .val.warn { color: var(--warn); }
.kpi .val.good { color: var(--good); }
.kpi .hint { font-size: 12px; letter-spacing: -0.12px; color: var(--muted); }

.section-title { margin: 8px 0 12px; }
.biz-list { display: grid; gap: 12px; }
.biz { background: var(--surface); border: 1px solid var(--hairline); border-radius: var(--r-lg); padding: 20px; display: grid; gap: 12px; }
.biz-head { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.biz-name { font-size: 17px; font-weight: 600; letter-spacing: -0.374px; }
.biz-sales { font-size: 21px; font-weight: 600; letter-spacing: -0.2px; font-variant-numeric: tabular-nums; }
.biz-bar { height: 6px; border-radius: 3px; background: var(--seg-bg); overflow: hidden; }
.biz-bar i { display: block; height: 100%; background: var(--primary); border-radius: 3px; }
.biz-sub { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 14px; letter-spacing: -0.224px; color: var(--muted); }
.biz-sub b { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.biz-warn { color: var(--warn); font-weight: 600; }
.empty { color: var(--muted); font-size: 17px; padding: 32px 16px; text-align: center; }
