.calendar-page{min-width:0}.calendar-notice{border:1px solid #d8e2d1;border-left:3px solid #78936e;background:#edf3e8;border-radius:10px;padding:15px 18px;margin:0 0 20px;font-size:12px;line-height:1.7}.calendar-notice strong{color:#36583c;font-size:12px}.calendar-notice p{margin-top:4px;color:#62735b}.calendar-baseline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.calendar-term-setup{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.calendar-term-setup summary{cursor:pointer;font-size:12px;font-weight:600;color:#456541}.calendar-term-setup summary span{font-size:10px;font-weight:400;color:var(--muted);margin-left:9px}.calendar-term-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.calendar-term-grid fieldset{border:1px solid #e0e7d9;border-radius:9px;padding:12px;margin:0;min-width:0;background:#fafbf8}.calendar-term-grid legend{font-size:11px;font-weight:600;padding:0 5px;color:#58714c}.calendar-term-grid .field+.field{margin-top:11px}.calendar-term-grid input{padding:8px;font-size:11px}.calendar-term-bar{display:flex;gap:15px;align-items:center;justify-content:space-between;margin:25px 0 15px}.calendar-term-tabs{display:inline-flex}.calendar-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}.calendar-metric{border:1px solid var(--line);border-radius:11px;background:#fff;padding:15px 15px 13px;display:flex;flex-direction:column;gap:7px}.calendar-metric>span{font-size:10px;color:#697762;line-height:1.5;min-height:30px}.calendar-metric>strong{font-size:27px;font-weight:550;line-height:1.2;letter-spacing:-.6px}.calendar-metric>small{font-size:9px;line-height:1.5;color:#84907b}.calendar-metric.available{background:#e9f1e4;border-color:#ccdcbc}.calendar-metric.available>strong{color:#365d35}.calendar-provisional-note{font-size:11px;color:#8e672d;line-height:1.7;margin:12px 0 0}.calendar-warnings{font-size:11px;color:#8e6029;border:1px solid #ead9b8;border-radius:8px;background:var(--amber-bg);padding:10px 13px;margin-top:12px}.calendar-warnings p+p{margin-top:5px}.calendar-inline-warnings{font-size:10px;border:0;border-radius:5px;padding:7px 9px;margin-top:9px}.calendar-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:25px 0 13px}.calendar-section-heading h3{font-size:14px}.calendar-section-heading p{font-size:11px;color:var(--muted);margin-top:4px}.calendar-week-table{min-width:870px}.calendar-week-table th,.calendar-week-table td{padding:13px 12px}.calendar-week-table th:nth-child(1){width:15%}.calendar-week-table th:nth-child(2){width:25%}.calendar-week-table th:nth-child(6){width:25%}.calendar-week-table .calendar-number{text-align:center;font-variant-numeric:tabular-nums;min-width:62px}.calendar-week-table th:nth-child(3),.calendar-week-table th:nth-child(4),.calendar-week-table th:nth-child(5){text-align:center}.calendar-week-table .calendar-remaining{font-weight:650;color:#3e6340}.calendar-week-table .calendar-number small{font-size:9px;white-space:nowrap;font-weight:400}.calendar-week-events{display:flex;gap:5px;flex-wrap:wrap}.calendar-event-tag{font-size:10px;padding:3px 7px;background:#f0f3ec;border:1px solid #e0e6da;border-radius:5px;line-height:1.5;color:#5c6e53}.calendar-event-tag.is-hbl{background:#e8f2ef;border-color:#d2e1d9;color:#366a5d}.calendar-week-units{display:flex;gap:6px;flex-direction:column;align-items:flex-start}.calendar-week-units .text-button{font-size:11px}.calendar-week-table .calendar-provisional-row .calendar-remaining small{color:#9b763d}.calendar-amber{color:#986d2b!important}.calendar-events-section{margin-top:24px}.calendar-event-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:17px 18px;margin-bottom:12px}.calendar-event-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.calendar-event-heading h3{font-size:13px;margin-top:9px}.calendar-event-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:10px}.calendar-event-meta .pill{font-size:9px}.calendar-event-actions{display:flex;align-items:center;gap:3px;flex-wrap:wrap;justify-content:flex-end}.calendar-event-actions .btn{font-size:10px}.calendar-delete{color:#9f5550}.calendar-impact-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.calendar-impact-chip{display:inline-flex;gap:5px;padding:5px 8px;border:1px solid #e4e8df;background:#fafbf8;border-radius:6px;font-size:10px;color:#77816e}.calendar-impact-chip b{font-weight:600}.calendar-impact-chip.current{border-color:#bfcfb3;background:#edf3e7;color:#49643d}.calendar-event-note{white-space:pre-line;font-size:11px;color:#6c7965;line-height:1.7;margin-top:11px}.calendar-sources{border-top:1px solid var(--line);padding-top:17px;margin-top:27px;font-size:10px;color:#78836e}.calendar-sources strong{font-size:10px;color:#627457}.calendar-sources>div{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:8px}.calendar-sources p{margin-top:9px;line-height:1.6}.calendar-event-form .form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-event-form .field>span small{font-weight:400;color:#829078;font-size:10px;margin-left:5px}.calendar-form-help{font-size:11px;color:#6e7c65;margin:7px 0 14px;line-height:1.7}.calendar-event-impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-course-impact{border:1px solid #dde5d7;border-radius:9px;background:#fafbf8;padding:13px}.calendar-course-impact.current{border-color:#bacdae;background:#f2f6ee}.calendar-course-impact .check-line{margin:0 0 13px!important;font-size:12px}.calendar-course-impact .field>span{font-weight:400;font-size:10px}.calendar-course-impact input[type=number]{background:#fff}.calendar-form-tip{padding:12px 14px;border-radius:8px;background:#edf3e8;margin:15px 0;color:#62765a;font-size:11px;line-height:1.7}.calendar-form-tip strong{font-size:11px;color:#48633e}.calendar-form-tip p{margin-top:3px}.calendar-event-source{margin-top:15px}.calendar-event-source input{font-size:10px;background:#f5f7f1;color:#78836e}.calendar-budget{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-top:16px;padding:14px 16px;border:1px solid #d5e1cd;border-radius:9px;background:#f0f5eb}.calendar-budget.over{border-color:#e4c8b7;background:#fff5ee}.calendar-budget-main{min-width:0;flex:1}.calendar-budget-heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.calendar-budget strong{font-size:11px;color:#4c6842}.calendar-budget .pill{font-size:9px;padding:3px 7px}.calendar-budget p{font-size:10px;color:#718064;line-height:1.6;margin-top:6px}.calendar-budget .calendar-budget-balance{color:#567348}.calendar-budget .calendar-budget-balance.over{color:#a45837}.calendar-budget .calendar-budget-note{color:#98723b}.calendar-budget-numbers{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px;font-size:11px;color:#6b7b60}.calendar-budget-numbers b{font-size:16px;font-weight:600;color:#365e3b;margin-right:3px}.calendar-budget-numbers small{font-size:10px}.calendar-budget .btn{font-size:10px;margin-top:1px}.calendar-budget.unscheduled{border-left:3px solid #b6c7a4;background:#f6f8f2}.calendar-budget.unscheduled p{max-width:610px}.calendar-budget .calendar-inline-warnings p{color:#8e6029}
@media(max-width:1150px){.calendar-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-metric>span{min-height:0}.calendar-term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-event-heading{flex-wrap:wrap}.calendar-event-actions{margin-left:auto}}
@media(max-width:800px){.calendar-baseline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.calendar-metric{padding:13px}.calendar-metric.available{grid-column:1/-1;order:5;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px}.calendar-metric.available>strong{grid-column:2;grid-row:1/3}.calendar-metric.available>small{grid-column:1}.calendar-metric>strong{font-size:25px}.calendar-term-tabs .course-tab{padding:7px 11px;font-size:11px}.calendar-term-grid{gap:10px}.calendar-term-setup summary span{display:block;margin:4px 0 0 15px}.calendar-event-card{padding:14px}.calendar-event-actions{width:100%;justify-content:flex-start;margin-top:0}.calendar-event-heading{gap:10px}.calendar-budget{flex-wrap:wrap}.calendar-budget .btn{margin-left:auto}.calendar-budget-numbers{gap:12px}.calendar-page .view-heading .head-actions{justify-content:flex-start}.calendar-page .view-heading .head-actions .btn{font-size:11px}.calendar-section-heading{align-items:flex-start}.calendar-section-heading>span{font-size:10px;white-space:nowrap}.calendar-sources>div{flex-direction:column;gap:8px}}
@media(max-width:430px){.calendar-term-grid{grid-template-columns:1fr}.calendar-event-impact-grid{grid-template-columns:1fr}.calendar-event-form .form-grid.two{grid-template-columns:1fr}.calendar-term-bar{gap:8px}.calendar-term-tabs .course-tab{padding:7px 8px;font-size:10px}.calendar-term-bar>.pill{font-size:9px}.calendar-impact-chips{display:grid;grid-template-columns:1fr 1fr}.calendar-impact-chip{font-size:9px}.calendar-budget-numbers{gap:8px;font-size:10px}}
@media print{.calendar-budget{break-inside:avoid;font-size:8pt;padding:6px;border:1px solid #ccd3c7;background:#fff}.calendar-budget .btn{display:none}.calendar-budget-numbers b{font-size:10pt}.calendar-budget strong{font-size:8pt}.calendar-budget p,.calendar-budget .pill{font-size:7pt}}

@media(max-width:800px){#main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}#main-nav .nav-item{min-width:0;line-height:1.4;text-align:center;min-height:43px}}
@media(max-width:430px){#main-nav .nav-item{font-size:9px;padding:8px 3px}}
