.cal-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:24px;align-items:start}.cal-month-panel,.cal-agenda{min-width:0}.cal-month{grid-template-columns:repeat(7,minmax(0,1fr))}.cal-month .day{min-width:0;min-height:100px;overflow:hidden;cursor:pointer;text-align:left}.cal-month .day:hover,.cal-month .day:focus-visible{background:#edf6f1;outline:2px solid #116765;outline-offset:-2px}.cal-month .cal-selected{box-shadow:inset 0 0 0 2px #116765;background:#edf6f1}.cal-day-heading{display:flex;align-items:center;justify-content:space-between;gap:3px}.cal-day-count{font:600 9px Arial,sans-serif;border-radius:10px;padding:2px 5px;background:#e7eee9;color:#0a3338}.cal-day-dots{display:flex;flex-wrap:wrap;gap:4px;margin-top:9px;min-height:7px}.cal-dot{display:inline-block;width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--event-color)}.cal-heat{--event-color:#b93b52;--event-bg:#fff1f3}.cal-litter{--event-color:#2864b5;--event-bg:#edf4ff}.cal-appointment{--event-color:#116765;--event-bg:#edf7f3}.cal-vaccine{--event-color:#986300;--event-bg:#fff7de}.cal-home{--event-color:#7957a6;--event-bg:#f5effc}.cal-care{--event-color:#995431;--event-bg:#fff3eb}.cal-task{--event-color:#5d6b75;--event-bg:#f0f3f5}.cal-cell-events{display:block;margin-top:6px}.cal-cell-event{display:block;padding:3px 4px;margin:3px 0;background:var(--event-bg);border-left:2px solid var(--event-color);color:#203b36;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.3}.cal-more{display:block;font-size:9px;color:#526c62;margin-top:4px}.cal-blank{cursor:default!important;background:#fafaf6}.cal-legend{display:flex;gap:10px 16px;flex-wrap:wrap;padding:18px 0 14px;border-bottom:1px solid #e1e6dc;margin-bottom:14px}.cal-legend>span{display:flex;align-items:center;gap:6px;font-size:11px;color:#465d55}.cal-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cal-filters .field{font-size:11px;margin:0 0 12px}.cal-filters select{width:100%;min-width:0}.cal-result-count{font-size:11px;color:#65786f;margin:8px 0 18px}.cal-date-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e0e6dc;padding-top:19px;margin:22px 0 12px;font:600 12px Arial,sans-serif;color:#0a3338}.cal-date-heading>span{font-size:10px;color:#116765}.cal-event{border:1px solid #dfe5dc;border-left:4px solid var(--event-color);border-radius:10px;padding:15px 16px;background:#fffefa;margin:0 0 12px;min-width:0}.cal-event-top{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.cal-type{display:inline-flex;gap:6px;align-items:center;color:var(--event-color);background:var(--event-bg);border-radius:6px;padding:4px 7px;font:600 10px Arial,sans-serif}.cal-type i{width:6px;height:6px;border-radius:50%;background:var(--event-color)}.cal-status{font-size:9px;color:#68776f}.cal-status.cal-review{color:#995431}.cal-event h3{font:600 14px Arial,sans-serif;line-height:1.45;margin:12px 0 7px;color:#0a3338;overflow-wrap:anywhere}.cal-event p{font-size:11px;line-height:1.7;color:#526c62;margin:0 0 10px;white-space:pre-line;overflow-wrap:anywhere}.cal-event .textbutton{font-size:11px;text-align:left;min-height:32px}.cal-review-link{background:#fff3e8;border:1px solid #eddbc8;border-radius:8px;padding:11px 14px;text-align:left;width:100%;font-size:11px;line-height:1.5;color:#8d5428}.cal-empty{padding:18px 0;color:#61746b}.cal-empty h3{font:20px Georgia,serif;margin-bottom:8px}.cal-empty p{font-size:12px;line-height:1.7}.cal-day-details{margin-top:18px}.cal-month-panel .monthnav h2{font-size:24px}.cal-month-panel .panelhead{gap:12px}.cal-agenda .panelhead{margin-bottom:18px}
@media(max-width:1200px){.cal-layout{grid-template-columns:1fr}.cal-month .day{min-height:90px}}
@media(max-width:600px){.cal-month-panel{padding:18px 10px}.cal-month-panel .panelhead{padding:0 7px}.cal-month-panel .monthnav h2{font-size:21px}.cal-month-panel .monthnav{gap:3px}.cal-month .day{min-height:64px;padding:7px 4px}.cal-cell-events{display:none}.cal-day-dots{margin-top:9px;gap:3px}.cal-dot{width:6px;height:6px;flex-basis:6px}.cal-day-count{font-size:8px;padding:1px 4px}.cal-month .dayname{font-size:8px;padding:8px 0}.cal-month .daynum{font-size:12px}.cal-legend{padding:16px 7px 12px;gap:10px 12px}.cal-legend>span{font-size:10px}.cal-month-panel>.formhint{padding:0 7px}.cal-layout{gap:18px}.cal-event{padding:13px 12px}.cal-event h3{font-size:14px}.cal-event p{font-size:12px}.cal-event .textbutton{min-height:40px}.cal-agenda .panelhead h2{font-size:25px}.cal-date-heading{font-size:12px;line-height:1.5}}
