.daily-report-card .daily-calendar-layout { grid-template-columns: minmax(210px,.7fr) minmax(360px,1.1fr) minmax(340px,1fr); align-items: start; }
.daily-calendar-layout .daily-worktime-options { grid-template-columns: minmax(0,1fr); }
.daily-calendar-layout .report-static-layout { min-height: 0; padding: 10px; }
.daily-calendar-layout .daily-weekend-controls { grid-template-columns: repeat(2,minmax(0,1fr)); }
.daily-calendar-layout .report-field-grid:not(.daily-worktime-options):not(.daily-report-options) { grid-template-columns: minmax(0,1fr); }
.calendar-month { display:flex; align-items:center; gap:8px; justify-content:space-between; }
.calendar-month button { border:1px solid var(--line); background:var(--card); color:var(--text); border-radius:9px; min-height:34px; padding:4px 10px; }
.calendar-help, .calendar-panel small { color:var(--text-dim); font-size:12px; line-height:1.6; }
.calendar-week, .calendar-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:5px; }
.calendar-week { text-align:center; color:var(--text-dim); margin:14px 0 8px; font-size:12px; }
.calendar-day { min-width:0; min-height:55px; display:grid; gap:3px; align-content:center; border:1px solid var(--line); border-radius:9px; background:var(--card); color:var(--text-soft); padding:4px 0; }
.calendar-day small { font-size:10px; }
.calendar-day.pending { color:#ffce82; background:#61421055; }
.calendar-day.printed { color:#8cebb7; background:#145a3855; }
.calendar-day.changed { color:#9bd8ff; background:#1c589455; }
.calendar-day.selected { outline:2px solid var(--cyan); outline-offset:-2px; }
.calendar-day:hover { border-color:var(--cyan); }
.calendar-legend { display:flex; flex-wrap:wrap; gap:12px; margin:14px 0; font-size:12px; color:var(--text-soft); }
.calendar-legend .pending { color:#eab05b; }.calendar-legend .printed { color:#65cf99; }.calendar-legend .changed { color:#70b9ed; }
#calendarSummary { font-size:13px; color:var(--text-dim); }
.calendar-detail { max-height:180px; overflow:auto; font-size:12px; line-height:1.8; overflow-wrap:anywhere; margin-bottom:12px; }
.calendar-actions { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.calendar-actions .btn { padding:8px 10px; font-size:12px; }
.daily-calendar-panel > small { display:block; color:var(--text-dim); line-height:1.6; }
@media(max-width:1250px) {
 .daily-report-card .daily-calendar-layout { grid-template-columns:minmax(210px,.7fr) minmax(340px,1fr); }
 .daily-calendar-layout > :last-child { grid-column:1 / -1; }
 .daily-calendar-layout .daily-worktime-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 .daily-report-card .daily-calendar-layout { grid-template-columns:minmax(0,1fr); }
 .daily-calendar-layout .daily-worktime-options { grid-template-columns:minmax(0,1fr); }
 .calendar-week,.calendar-days { gap:3px; }
 .calendar-day { min-height:48px; }.calendar-day small { font-size:9px; }
}
