:root{font-family:Inter,'Noto Sans KR',Arial,sans-serif;color:#172a41;background:#f2f5f8}*{box-sizing:border-box}body{margin:0}.wrap{max-width:1400px;margin:auto;padding:32px 26px 56px}header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}h1{font-size:30px;letter-spacing:-.03em;margin:5px 0 7px}header p{margin:0;color:#697b90;font-size:14px}.eyebrow{color:#a8782e;font-size:12px;letter-spacing:.16em;font-weight:800}.source{font-size:14px;color:#1e507c;text-decoration:none;border:1px solid #cbd8e4;border-radius:7px;padding:10px 13px;background:white;white-space:nowrap}.source:hover{text-decoration:underline}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:#fff;border:1px solid #dce4eb;border-radius:10px;padding:18px 20px}.metric span{display:block;font-size:13px;color:#687a8e;margin-bottom:8px}.metric strong{font-size:24px;letter-spacing:-.02em}.metric b{font-size:13px;color:#8290a0;font-weight:400;margin-left:5px}.toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;margin:24px 0 14px}.toolbar label{font-size:13px;font-weight:700;color:#607187;display:flex;flex-direction:column;gap:6px}.toolbar .toggle{flex-direction:row;align-items:center;padding-bottom:9px}.toolbar input:not([type=checkbox]){border:1px solid #ccd7e2;background:white;border-radius:7px;color:#1a3048;font:inherit;font-size:15px;padding:9px 11px;min-height:40px;min-width:280px}input[type=checkbox]{accent-color:#173456}.tableWrap{background:white;border:1px solid #dce4eb;border-radius:10px;overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:13px 15px;border-bottom:1px solid #e8eef3;text-align:left;font-size:14px;white-space:nowrap}th{color:#728196;background:#f9fbfd;font-size:13px;font-weight:700}tbody tr:hover{background:#f8fbfe}tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.date{color:#4d6177;font-variant-numeric:tabular-nums}.lc{font-size:13px;color:#566a80}.muted{color:#9ba8b5}.note{font-size:13px;color:#77889a;line-height:1.7;margin-top:16px}@media(max-width:760px){.wrap{padding:22px 13px}header{display:block}.source{display:inline-block;margin-top:14px}.summary{grid-template-columns:repeat(2,1fr)}.metric{padding:14px}.metric strong{font-size:20px}.toolbar input:not([type=checkbox]){width:100%}}
.boxes{min-width:230px;white-space:normal}.breakdown{font-size:12px;color:#697b8c;line-height:1.5;margin-top:4px;max-width:280px}
.state{display:inline-block;border-radius:6px;padding:5px 9px;font-size:13px;font-weight:700}.state.paid{background:#e6f4eb;color:#26724d}.state.scheduled{background:#fff2df;color:#9c601c}.state.unknown{background:#edf1f5;color:#69798b}
.overview{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:12px;margin-top:18px}.overviewPanel{background:#fff;border:1px solid #dce4eb;border-radius:10px;overflow:hidden}.panelTitle{padding:17px 18px 11px}.panelTitle h2{font-size:17px;margin:0 0 5px}.panelTitle span{font-size:12px;color:#78899b}.monthlyScroll{max-height:340px;overflow:auto}.monthly{min-width:670px}.monthly th,.monthly td{padding:10px 12px;font-size:13px}.monthRow{cursor:pointer}.monthRow:hover,.monthRow.selected{background:#eef5fb}.purchasePanel{padding-bottom:13px}.purchaseLine{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 18px;border-top:1px solid #e8eef3;padding:13px 0;font-size:14px}.purchaseLine strong{white-space:nowrap}.purchaseLine small{display:block;font-size:11px;color:#8492a1;margin-top:3px}.purchaseLine.focus{color:#9a5f1f}.purchasePanel p{margin:5px 18px;color:#8b99a9;font-size:12px}.toolbar select{border:1px solid #ccd7e2;background:#fff;border-radius:7px;color:#1a3048;font:inherit;font-size:15px;padding:9px 11px;min-height:40px}@media(max-width:1050px){.overview{grid-template-columns:1fr}}@media(max-width:760px){.monthlyScroll{max-height:300px}.metric strong{font-size:18px}.metric b{display:block;margin:3px 0 0}}
.monthly{min-width:760px}

.summary{grid-template-columns:repeat(5,minmax(0,1fr))}.metric strong{overflow-wrap:anywhere}@media(max-width:1120px){.summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

.summaryTitle{font-size:17px;margin:24px 0 10px;letter-spacing:-.02em}.summaryTitle+.summary{margin-top:0}
