.monthly-panel{margin:28px auto;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:28px;padding:30px;box-shadow:0 18px 55px rgba(0,0,0,.06)}
.monthly-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.monthly-heading h2{font-size:30px;margin:5px 0 8px}.monthly-heading p{margin:0;color:#6e6e73}
.monthly-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end}.monthly-controls label{display:grid;gap:7px;font-size:12px;color:#6e6e73}.monthly-controls input,.monthly-controls select{height:44px;min-width:145px;border:1px solid #d2d2d7;border-radius:12px;background:#fff;padding:0 12px;font:inherit;color:#1d1d1f}.monthly-controls button{height:44px;white-space:nowrap}
.monthly-placeholder{margin-top:24px;min-height:108px;border-radius:20px;background:#f5f5f7;display:grid;place-items:center;padding:24px;color:#6e6e73;text-align:center}.monthly-result{margin-top:24px;display:grid;gap:22px}
.monthly-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.monthly-kpi{background:#f5f5f7;border-radius:18px;padding:18px}.monthly-kpi small{display:block;color:#6e6e73;margin-bottom:8px}.monthly-kpi strong{font-size:21px;letter-spacing:-.03em}
.analysis-copy{background:linear-gradient(135deg,#111,#29292c);color:#fff;border-radius:22px;padding:22px}.analysis-copy h3,.breakdown h3,.history h3{margin:0 0 14px}.analysis-copy ul{margin:0;padding-left:20px;display:grid;gap:8px;color:#e8e8ed}
.breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.breakdown,.history{border:1px solid #e5e5ea;border-radius:20px;padding:20px;overflow:auto}.monthly-table{width:100%;border-collapse:collapse;min-width:640px}.monthly-table th,.monthly-table td{text-align:right;border-bottom:1px solid #ececf0;padding:12px 8px;font-size:13px;white-space:nowrap}.monthly-table th:first-child,.monthly-table td:first-child{text-align:left}.monthly-table tbody tr[data-subject]{cursor:pointer}.monthly-table tbody tr[data-subject]:hover{background:#f5f5f7}.monthly-table tbody tr:last-child td{border-bottom:0}.subject-caption{color:#6e6e73;font-size:13px;margin:-6px 0 14px}
.coverage-box{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0;padding:12px;border-radius:16px;background:#f5f5f7}.coverage-box span{padding:8px;color:#6e6e73;font-size:12px}.coverage-box strong{display:block;margin-top:5px;color:#1d1d1f;font-size:17px}.coverage-box.is-complete{background:#edf8f1}.coverage-box.has-warning{background:#fff6e6}.coverage-warning{color:#b85c00;font-weight:650}
.session-analysis{border:1px solid #d2d2d7;border-radius:999px;background:#fff;color:#06c;padding:9px 13px;font-weight:600;white-space:nowrap;cursor:pointer}.session-analysis:hover{background:#f5f5f7}
@media(max-width:900px){.monthly-panel{padding:22px;border-radius:22px}.monthly-heading{align-items:stretch;flex-direction:column}.monthly-controls{justify-content:stretch}.monthly-controls label,.monthly-controls button{flex:1 1 145px}.monthly-controls input,.monthly-controls select{width:100%;min-width:0}.monthly-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.breakdown-grid{grid-template-columns:1fr}}
@media(max-width:900px){.coverage-box{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.monthly-kpis{grid-template-columns:1fr 1fr}.monthly-kpi:last-child{grid-column:1/-1}.monthly-heading h2{font-size:26px}}
.monthly-kpi strong{display:block}.monthly-kpi em{display:block;margin-top:6px;color:#66717e;font-size:12px;font-style:normal}.monthly-table td small{display:block;margin-top:3px;color:#7a7a80}
.shift-groups{display:grid;gap:10px}.shift-groups-head h3{margin:0}.shift-groups-head p{margin:7px 0 5px;color:#6e6e73;font-size:13px}.shift-group{border:1px solid #e0e5eb;border-radius:18px;background:#fff;overflow:hidden}.shift-group.is-merged{border-color:#94bde5;background:#f8fbff}.shift-group summary{display:grid;grid-template-columns:1.15fr auto 1fr;align-items:center;gap:14px;padding:17px 18px;cursor:pointer;list-style:none}.shift-group summary::-webkit-details-marker{display:none}.shift-group summary strong,.shift-group summary small{display:block}.shift-group summary small{margin-top:4px;color:#6e6e73;font-size:12px}.shift-badge{padding:6px 10px;border-radius:999px;background:#eaf3fc;color:#075fa8;font-size:12px;font-weight:700}.shift-total{text-align:right;color:#4c5968;font-size:13px}.shift-session-list{display:grid;gap:8px;padding:0 12px 12px}.shift-session-list button{display:grid;grid-template-columns:75px 1.2fr 1fr 1.4fr;align-items:center;gap:12px;width:100%;padding:12px;border:0;border-radius:12px;background:#fff;color:#232a33;text-align:left;cursor:pointer}.shift-session-list button:hover{background:#eef5fc}.shift-session-list button span{color:#1769b1;font-weight:700}.shift-session-list button small{color:#697481;line-height:1.45}
@media(max-width:540px){.shift-group summary{grid-template-columns:1fr auto}.shift-total{grid-column:1/-1;text-align:left}.shift-session-list button{grid-template-columns:65px 1fr}.shift-session-list button small{grid-column:2}}
