.calendar-page{color:#172944}.cal-checked{color:#4e617b;border:1px solid #dbe3ed;border-radius:100px;margin-top:8px;padding:7px 12px;font-size:.78rem;display:inline-block}.cal-scope{margin:24px 0}.cal-filters{background:#f2f5fa;border:1px solid #dce4ef;border-radius:20px;grid-template-columns:1fr 1fr 1fr;gap:16px;padding:22px;display:grid}.cal-filters label{gap:8px;font-size:.8rem;font-weight:650;display:grid}.calendar-page select{color:#182c47;width:100%;font:inherit;background:#fff;border:1px solid #ccd7e6;border-radius:10px;min-height:46px;padding:12px 34px 12px 12px}.cal-help{color:#5b6c82;font-size:.81rem;line-height:1.65}.cal-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);align-items:start;gap:28px;margin:28px 0 40px;display:grid}.cal-board{background:#fff;border:1px solid #dae3ef;border-radius:22px;padding:24px;position:sticky;top:100px;box-shadow:0 8px 28px #263d6410}.cal-month-bar{grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:22px;display:grid}.cal-month-bar>button{color:#254a83;cursor:pointer;background:#f4f7fc;border:1px solid #d9e2ef;border-radius:12px;min-height:44px;font-size:1.2rem}.cal-month-select select{text-align:center;background:#fff;border:0;font-size:1.1rem;font-weight:700}.cal-week,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.cal-week{text-align:center;color:#62748c;margin-bottom:8px;font-size:.74rem;font-weight:650}.cal-day{aspect-ratio:1;color:#213754;min-height:39px;font:inherit;cursor:pointer;background:#f4f7fb;border:1px solid #0000;border-radius:10px;font-size:.9rem;transition:background .15s,border-color .15s,transform .15s;position:relative}.cal-day.off{color:#9b4c40;background:#fff0ed}.cal-day.short{color:#805b13;background:#fff4d9}.cal-day.has-event:after{content:"";background:#2c5fe9;border-radius:50%;width:4px;height:4px;position:absolute;bottom:5px;left:calc(50% - 2px)}.cal-day:hover{border-color:#597ae2;transform:translateY(-1px)}.cal-day.selected{color:#fff;background:#285ce5;border-color:#285ce5}.cal-day.selected:after{background:#fff}.cal-legend{color:#52667f;flex-wrap:wrap;gap:9px 15px;margin:18px 0 24px;font-size:.7rem;display:flex}.cal-legend span{align-items:center;gap:5px;display:flex}.cal-legend i{background:#e9eef5;border-radius:3px;width:10px;height:10px}.cal-legend .legend-off{background:#fbe0d9}.cal-legend .legend-short{background:#f7e1a3}.cal-legend .legend-event{background:#285ce5;border-radius:50%;width:5px;height:5px}.cal-stat-grid{border-top:1px solid #e0e7f0;grid-template-columns:1fr 1fr;gap:20px;padding-top:18px;display:grid}.cal-stat-grid>div{gap:4px;display:grid}.cal-stat-grid span{color:#60718a;font-size:.74rem}.cal-stat-grid strong{letter-spacing:-.04em;font-size:1.6rem;font-weight:650}.cal-agenda-head{justify-content:space-between;align-items:center;margin:0 0 14px;display:flex}.cal-agenda-head h2{text-transform:capitalize;letter-spacing:-.03em;margin:0;font-size:1.65rem}.cal-agenda-head .eyebrow{margin:0 0 8px}.cal-count{color:#285ce5;background:#eaf0ff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:.9rem;font-weight:700;display:flex}.cal-actions{flex-wrap:wrap;gap:10px;display:flex}.cal-actions button{min-height:44px;font:inherit;cursor:pointer;border:1px solid #cedbee;border-radius:10px;padding:10px 14px;font-size:.8rem;font-weight:650;transition:background .15s}.cal-subtle{color:#36577f;background:#fff}.cal-export{color:#234ec1;background:#eaf0ff}.calendar-page button:disabled,.calendar-page select:disabled{opacity:.45;cursor:default}.calendar-page :focus-visible{outline-offset:3px;outline:3px solid #90abff}.cal-event{background:#fff;border:1px solid #dce5ef;border-radius:16px;margin:14px 0;padding:20px}.cal-event-meta{color:#57718e;justify-content:space-between;align-items:center;gap:10px;font-size:.75rem;font-weight:650;display:flex}.cal-kind{background:#edf2fa;border-radius:100px;padding:4px 8px}.cal-kind.payment{color:#386e5c;background:#e9f3ef}.cal-kind.notice{color:#80611f;background:#fff3dd}.cal-event h3{margin:13px 0 8px;font-size:1.02rem;line-height:1.45}.cal-event p{color:#576b83;margin:0;font-size:.84rem;line-height:1.65}.cal-event-sources{flex-wrap:wrap;gap:6px 12px;margin-top:12px;display:flex}.cal-event-sources a{color:#3c61ae;text-underline-offset:3px;font-size:.7rem;line-height:1.5}.cal-empty{color:#536b87;background:#f7f9fc;border:1px dashed #cbd7e8;border-radius:16px;padding:30px 24px;font-size:.9rem;line-height:1.7}.cal-sources{background:#f0f4f9;border:1px solid #dce4ef;border-radius:16px;padding:22px;font-size:.85rem;line-height:1.7}.cal-sources summary{cursor:pointer;font-weight:700}.cal-sources .source-list{padding-left:20px}.cal-sources li{margin:9px 0}.cal-sources a{color:#315ba5}.cal-sources small{color:#65788e}.cal-sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=850px){.cal-layout{grid-template-columns:1fr;gap:28px}.cal-board{position:static}.cal-day{aspect-ratio:auto;height:48px}.cal-filters{gap:12px}.cal-stat-grid{grid-template-columns:repeat(4,1fr)}.cal-stat-grid strong{font-size:1.35rem}}@media (width<=520px){.cal-filters{grid-template-columns:1fr;padding:18px}.cal-board{padding:16px}.cal-day{height:43px;min-height:39px}.cal-week,.cal-grid{gap:4px}.cal-stat-grid{grid-template-columns:1fr 1fr}.cal-event{padding:17px}.cal-agenda-head h2{font-size:1.4rem}.cal-sources{padding:18px}}@media (prefers-reduced-motion:reduce){.calendar-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root[data-motion=off] .calendar-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
