#reports-panel .reports-heading{align-items:center;margin:24px 0 14px}
#reports-panel .reports-heading>button{flex:0 0 auto;min-width:196px;min-height:44px}
#reports-panel .report-period-card{margin:0 0 12px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}
#reports-panel .report-period-card *{box-sizing:border-box}
#reports-panel .report-presets-row{display:grid;grid-template-columns:160px repeat(5,minmax(140px,1fr));gap:8px;align-items:end}
#reports-panel .report-year-field,#reports-panel .report-controls label{display:grid;gap:6px;min-width:0;margin:0;font-size:13px;font-weight:650;color:var(--muted)}
#reports-panel .report-year-field select{height:48px;background:#fff}
#reports-panel .report-year-field select,#reports-panel .report-controls input,#reports-panel .report-controls select{width:100%;min-width:0;color:var(--ink);border-radius:9px}
#reports-panel .report-presets{display:contents}
#reports-panel .report-presets button{display:flex;width:100%;min-width:0;height:48px;padding:6px 10px;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;white-space:normal;line-height:1.12;background:#f8faf8;border:1px solid var(--line);border-radius:9px;color:var(--ink)}
#reports-panel .report-presets button strong{font-size:13px}
#reports-panel .report-presets button small{margin-top:2px;font-size:10px;color:var(--muted)}
#reports-panel .report-presets button[aria-pressed="true"]{background:#e9f3ec;border-color:#6b9d80;color:#19563d;box-shadow:inset 0 0 0 1px #6b9d80}
#reports-panel .report-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) 150px minmax(210px,.9fr) 170px;gap:10px;align-items:end;margin:14px 0 0}
#reports-panel .report-controls input,#reports-panel .report-controls select,#reports-panel .report-controls>button{width:100%;height:48px;min-width:0}
#reports-panel .report-controls input[readonly]{cursor:pointer;background:#fff}
#reports-panel .report-controls>button{align-self:end;white-space:nowrap;border-radius:9px}
#reports-panel .report-period-error{min-height:18px;margin:5px 0 0;font-size:12px;color:#a23a2e}
#reports-panel .report-applied-period{min-height:44px;margin:0 0 14px;padding:12px 14px}
#reports-panel .report-period-card button:focus-visible,#report-calendar-dialog button:focus-visible,#report-calendar-dialog select:focus-visible{outline:2px solid var(--green);outline-offset:2px}
#reports-panel .report-controls button:disabled,#reports-panel .report-actions button:disabled{opacity:.55;cursor:default}
#report-calendar-dialog{width:min(730px,calc(100vw - 28px));max-height:min(90vh,850px);padding:0;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 60px #12271f33}
#report-calendar-dialog::backdrop{background:#17241d99}
#report-calendar-dialog .report-calendar-shell{padding:20px;overflow:auto;max-height:min(90vh,850px)}
#report-calendar-dialog .report-calendar-heading,#report-calendar-dialog .report-calendar-nav,#report-calendar-dialog .report-calendar-actions{display:flex;align-items:center;gap:8px}
#report-calendar-dialog .report-calendar-heading{justify-content:space-between}
#report-calendar-dialog .report-calendar-heading h2{margin:0;font-size:21px}
#report-calendar-dialog .report-calendar-heading button{min-width:36px;padding:4px;font-size:20px;line-height:1}
#report-calendar-dialog p{margin:7px 0 14px;color:var(--muted);font-size:13px}
#report-calendar-dialog .report-calendar-nav{justify-content:center;margin-bottom:13px}
#report-calendar-dialog .report-calendar-nav button{min-width:42px;min-height:42px}
#report-calendar-dialog .report-calendar-nav select{height:42px;min-width:112px}
#report-calendar-dialog .report-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#report-calendar-dialog .report-calendar-months section{padding:12px;border:1px solid var(--line);border-radius:10px}
#report-calendar-dialog .report-calendar-months h3{margin:0 0 8px;font-size:15px;text-align:center}
#report-calendar-dialog .report-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
#report-calendar-dialog .report-calendar-weekday{font-size:11px;font-weight:650;color:var(--muted);text-align:center;padding:7px 0}
#report-calendar-dialog .report-calendar-day{display:grid;place-items:center;min-width:0;min-height:35px;padding:0;background:transparent;border:1px solid transparent;border-radius:7px;font-size:13px;color:var(--ink)}
#report-calendar-dialog .report-calendar-day:hover,#report-calendar-dialog .report-calendar-day[aria-current="date"]{border-color:#6b9d80}
#report-calendar-dialog .report-calendar-day.in-range{background:#e9f3ec}
#report-calendar-dialog .report-calendar-day.is-selected{background:#235d45;color:#fff}
#report-calendar-dialog .report-calendar-selection{min-height:19px;margin:12px 0 0;color:var(--ink);font-weight:650}
#report-calendar-dialog .report-calendar-actions{justify-content:flex-end;margin-top:14px}
#report-calendar-dialog .report-calendar-actions button{min-width:120px;min-height:42px}
@media(max-width:1100px){#reports-panel .report-presets-row{grid-template-columns:repeat(3,minmax(0,1fr))}#reports-panel .report-controls{grid-template-columns:repeat(2,minmax(0,1fr))}#reports-panel .report-controls #report-refresh{grid-column:2}}
@media(max-width:590px){#reports-panel .reports-heading{align-items:stretch}#reports-panel .reports-heading>button{width:100%}#reports-panel .report-period-card{padding:14px}#reports-panel .report-presets-row,#reports-panel .report-controls{grid-template-columns:1fr}#reports-panel .report-controls #report-refresh{grid-column:auto}#reports-panel .report-controls>*{flex:none}#report-calendar-dialog .report-calendar-months{grid-template-columns:1fr}#report-calendar-dialog .report-calendar-shell{padding:14px}}
