.area-links{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;padding:1rem 0 1.8rem;border-bottom:1px solid var(--line);margin-bottom:1.5rem}.area-links a{padding:.6rem 0;text-underline-offset:5px}.area-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}.area-section{padding-block:2rem;min-width:0;scroll-margin-top:6rem}.area-section h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:1rem}.area-section>p{margin-bottom:1.2rem;max-width:45rem}.area-entry{padding:1.5rem 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.area-entry h3{font-size:1.3rem;margin:.4rem 0}.area-entry p{margin:.6rem 0}.area-entry .gallery-form{margin-top:1rem}.area-empty{padding:1.5rem;background:var(--sage)}.area-text{line-height:1.8;overflow-wrap:anywhere}.area-links a:focus-visible,.area-section :is(a,button,input,select,textarea):focus-visible{outline:3px solid #203c32;outline-offset:4px}.area-section .button{justify-self:start}.area-section .quiet-button{min-height:44px}.area-section .status-label{color:#203c32;font-weight:700}.area-section .field-help{color:#454f49}@media(max-width:760px){.area-columns{grid-template-columns:1fr;gap:0}.area-links{gap:.3rem 1rem}.area-section{padding-block:1.5rem}.area-section input,.area-section select,.area-section textarea{font-size:16px}.gallery-nav{gap:.3rem 1rem}.gallery-heading{margin-bottom:1.5rem}}

.calendar-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.calendar-heading nav{display:flex;align-items:center;gap:1rem;width:auto;flex-wrap:wrap}.calendar-heading .quiet-button{display:inline-flex;align-items:center;text-decoration:none}.school-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid #89998c;border-top:1px solid #89998c;margin-top:1rem}.calendar-weekday,.calendar-day,.calendar-pad{min-width:0;border-right:1px solid #89998c;border-bottom:1px solid #89998c;padding:.5rem}.calendar-weekday{background:#e5eae2;font-weight:600;text-align:center}.calendar-day{min-height:115px;background:#fffef9}.calendar-day time{display:inline-block;font-size:.85rem;font-weight:600}.calendar-today{background:#e5eae2}.calendar-today time{outline:2px solid #203d34;outline-offset:3px}.calendar-event{display:block;min-height:44px;padding:.45rem;background:#e0e8dc;color:#203d34;font-size:.78rem;line-height:1.4;margin-top:.5rem;overflow-wrap:anywhere;border:1px solid #7e9184;border-radius:3px;text-decoration:none}.calendar-event small{display:block}.calendar-agenda{margin-top:2rem}.calendar-agenda .area-entry{scroll-margin-top:7rem}@media(max-width:760px){.calendar-day{min-height:65px;padding:.3rem}.calendar-weekday{font-size:.72rem;padding:.3rem}.calendar-event{font-size:.65rem;padding:.2rem;min-height:44px}.calendar-event small{display:none}.calendar-heading nav{gap:.5rem}.calendar-heading nav strong{order:-1;width:100%}.calendar-heading .quiet-button{font-size:.82rem}.calendar-pad{padding:0}}
#appointment-create-form fieldset{min-width:0;max-width:100%;padding:1rem;border:1px solid #89998c}#appointment-create-form fieldset[hidden]{display:none}#appointment-create-form legend{font-size:1.1rem;font-weight:600;padding:0 .4rem}#appointment-create-form :is(input,select,textarea){box-sizing:border-box;min-width:0;width:100%;max-width:100%}#appointment-create-form select{white-space:normal}#appointment-create-form .field-help{margin:.75rem 0}

.calendar-views,.calendar-period{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.calendar-period{justify-content:space-between;margin:1rem 0}.calendar-views [aria-current=page]{background:#203c32;color:#fff}.calendar-year{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.calendar-mini{border:1px solid #89998c;padding:1rem;background:#fffef9;min-width:0}.calendar-mini h3{margin-bottom:1rem;font:1.4rem Georgia,serif}.calendar-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.15rem;text-align:center}.calendar-mini-grid>a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;text-decoration:none;position:relative}.calendar-mini-grid .has-events{background:#dce5d7;font-weight:700}.calendar-dot{line-height:.5;font-size:1rem}.calendar-date{display:inline-flex;min-width:32px;min-height:32px;align-items:center;justify-content:center;font-weight:700}.group-participant{padding:1rem 0;border-bottom:1px solid #b8c4b7;min-width:0}.group-participant .check{display:flex;align-items:center;gap:.8rem}.group-participant input[type=checkbox]{width:22px!important;min-width:22px!important;height:22px;min-height:22px!important}.group-participant select{margin-top:.5rem}.appointment-editor{max-width:850px}.appointment-delete{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #89998c}.calendar-agenda h3 a{text-underline-offset:5px}.calendar-views a:focus-visible,.calendar-mini a:focus-visible,.calendar-date:focus-visible{outline:3px solid #203c32;outline-offset:3px}@media(max-width:1100px){.calendar-year{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.calendar-year{grid-template-columns:1fr}.calendar-period{gap:.7rem}.calendar-period strong{order:-1;width:100%;font-size:1.2rem}.calendar-heading{align-items:flex-start}.calendar-event{overflow-wrap:anywhere}}
