.calendar{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--line)}
.calendar .weekday{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 8px;background:#f0f3ec;border-right:1px solid var(--line);color:#506057;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.calendar .weekday:nth-child(7n){border-right:0}
.calendar .day{position:relative;min-height:115px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;transition:background .16s ease-out}
.calendar .day:nth-child(7n){border-right:0}
.calendar .day.empty{background:#fbfaf6}
.calendar .day:not(.empty):hover{background:#fcfdf9}
.calendar .date-no{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:50%;color:var(--muted);font-size:12px;font-weight:700}
.calendar .event{display:block;margin-top:6px;padding:4px 6px;background:#e5efe7;border-radius:5px;color:#13523a;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:560px){.calendar{grid-template-columns:repeat(7,75px)}.calendar .weekday{min-height:38px;font-size:9px}.calendar .day{min-height:108px;padding:8px}}
.metrics-expanded{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}.metrics-detail{grid-template-columns:repeat(3,1fr);max-width:760px}.filter-form{display:grid;grid-template-columns:1.3fr repeat(3,minmax(150px,1fr)) auto;gap:10px;align-items:end}.filter-form input,.filter-form select{min-width:0}.pill{display:inline-block;padding:3px 7px;border-radius:999px;background:#e5efe7;color:#13523a;font-weight:700;font-size:11px}.pill-warning{background:#fff1ea;color:#9d3f31}@media(max-width:1050px){.filter-form{grid-template-columns:repeat(2,minmax(180px,1fr))}.filter-form .button{width:max-content}}@media(max-width:900px){.metrics-detail{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.metrics-detail,.filter-form{grid-template-columns:1fr}.filter-form .button{width:100%}}
.metric-link{display:block;color:inherit;text-decoration:none}.metric-link article{height:100%;transition:transform .16s ease-out,box-shadow .16s ease-out}.metric-link:hover article,.metric-link:focus-visible article{transform:translateY(-2px);box-shadow:0 12px 24px rgba(24,42,32,.10)}.metric-link:focus-visible{outline:2px solid #0d4c35;outline-offset:3px;border-radius:12px}.report-filter{grid-template-columns:1.3fr repeat(2,minmax(150px,1fr)) auto}.report-filter label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.annual-filter{grid-template-columns:130px repeat(3,minmax(150px,1fr)) auto}.annual-metrics{margin-bottom:20px}.annual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.annual-month{min-height:250px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(24,42,32,.035)}.annual-month header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.annual-month header p{margin:0 0 3px;color:#13523a;font-size:15px;font-weight:750;text-transform:capitalize}.annual-month header strong{color:var(--muted);font-size:12px;font-weight:600}.annual-month header a{color:#13523a;font-size:12px;font-weight:700;white-space:nowrap}.annual-stats{display:flex;flex-wrap:wrap;gap:9px 14px;padding:11px 0;color:var(--muted);font-size:12px}.annual-stats b{color:var(--ink)}.annual-stats .pending b{color:#a64a38}.annual-events{display:grid;gap:7px}.annual-event{display:grid;gap:1px;padding:7px 0;border-bottom:1px dashed #e6e6de}.annual-event:last-child{border-bottom:0}.annual-event a{color:#173e2d;font-size:12px;font-weight:750}.annual-event small{color:var(--muted);font-size:11px}.annual-events .muted{margin:10px 0;font-size:12px}@media(max-width:1050px){.annual-filter{grid-template-columns:repeat(2,minmax(180px,1fr))}.annual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.annual-filter{grid-template-columns:1fr}.annual-grid{grid-template-columns:1fr}.annual-month{min-height:0}.annual-stats{gap:10px}}
.executive-filter{align-items:center}.executive-metrics article{min-height:126px}.executive-trend{margin-top:1.25rem}.trend-grid{display:grid;grid-template-columns:repeat(12,minmax(92px,1fr));gap:.7rem;align-items:end;overflow-x:auto;padding:.5rem 0}.trend-month{display:grid;grid-template-rows:auto 154px auto auto auto;gap:.38rem;min-width:92px;color:#244234}.trend-month>strong{font-size:.78rem;line-height:1.2;text-transform:capitalize}.trend-month small{font-size:.72rem;line-height:1.35;color:#6a746d}.trend-value{display:flex;align-items:baseline;gap:.22rem}.trend-value strong{font-family:Georgia,serif;font-size:1.45rem;color:#0d4c35}.trend-bar{height:154px;padding:4px;background:linear-gradient(to top,#f0f3ec 1px,transparent 1px);background-size:100% 25%;display:flex;align-items:end;border-bottom:1px solid #cfd7cc}.trend-bar span{width:100%;background:linear-gradient(180deg,#1c7654,#0d4c35);border-radius:8px 8px 2px 2px;min-height:8px}.trend-month em{font-size:.68rem;font-style:normal;color:#96493e;font-weight:700;line-height:1.3}.executive-breakdowns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem}.executive-breakdowns table{min-width:430px}@media(max-width:920px){.executive-breakdowns{grid-template-columns:1fr}.trend-grid{grid-template-columns:repeat(12,110px)}}
.executive-breakdowns{display:block;min-width:0}.executive-breakdowns .table-scroll{overflow:visible;min-width:0;max-width:100%}.executive-breakdowns table{width:100%;max-width:100%;min-width:0;table-layout:fixed}.executive-breakdowns th,.executive-breakdowns td{min-width:0;overflow-wrap:anywhere;word-break:normal}.executive-breakdowns th:first-child,.executive-breakdowns td:first-child{width:50%}.executive-breakdowns th:not(:first-child),.executive-breakdowns td:not(:first-child){width:16.66%}
