@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{color:#183d30;font-synthesis:none;background:#f4f7f2;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}main{max-width:680px;margin:auto;padding:36px 20px 64px}.brand{letter-spacing:.15em;color:#52745e;margin-bottom:36px;font-size:12px;font-weight:700}h1{letter-spacing:-1.5px;margin:0 0 10px;font-size:36px}h2{margin:8px 0;font-size:25px}p{line-height:1.5}.subtitle{color:#647369;margin-bottom:28px}.panel{background:#fff;border:1px solid #dce5d9;border-radius:20px;margin:20px 0;padding:24px;box-shadow:0 6px 24px #193c2705}label{font-weight:600;display:block}input{width:100%;font:inherit;border:1px solid #a5b7a9;border-radius:10px;margin:12px 0 20px;padding:16px;font-size:20px;display:block}button{color:#fff;font:inherit;cursor:pointer;background:#205641;border:0;border-radius:10px;min-height:48px;padding:15px 20px;font-weight:600}form button{width:100%}button:disabled{opacity:.5;cursor:wait}.secondary{color:#205641;background:#e7eee4;margin-top:12px}.small{color:#68756c;font-size:14px;display:block}.time{color:#58704c;margin:0;font-weight:700}a{color:#205641}summary{cursor:pointer;padding:20px 0 10px;font-weight:700}.student{border-top:1px solid #e6ece4;padding:14px 0}.medical{color:#76501c;background:#fff2da;border-radius:8px;margin:8px 0;padding:10px}.message{color:#695020}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #d0a542}@media (width<=420px){h1{font-size:31px}.panel{padding:20px}main{padding:28px 16px}}.attendance select{color:#183d30;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #a5b7a9;border-radius:10px;margin-top:12px;padding:12px;display:block}.attendance select:focus-visible{outline-offset:3px;outline:3px solid #d0a542}.attendance>.secondary{margin-right:8px}.attendance .student strong{display:block}.school-guide p{white-space:pre-wrap;line-height:1.6}.school-guide{margin:1rem 0}.group-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.group-tabs button[aria-pressed=true]{color:#fff;background:#215540}.class-report select,.class-report textarea{width:100%;min-height:48px;font:inherit;color:inherit;background:#fff;border:1px solid #a5b7a9;border-radius:10px;margin:10px 0 20px;padding:12px;display:block}.class-report textarea{resize:vertical;min-height:110px}.class-report fieldset{border:1px solid #dce5d9;border-radius:12px;margin:16px 0;padding:16px}.class-report input[type=checkbox]{vertical-align:middle;width:20px;height:20px;margin:8px 12px 8px 0;display:inline-block}.class-report legend{font-weight:700}.equipment-item{border-bottom:1px solid #dce5d9;margin-bottom:16px;padding-bottom:16px}.attendance-filters{grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;display:grid}.attendance-filters label:first-child{grid-column:1/-1}.attendance-filters input{margin:8px 0 0;font-size:16px}.attendance-filters select{margin-top:8px}.panel>details{border:1px solid #dce5d9;border-radius:14px;margin-top:14px;overflow:hidden}.panel>details>summary{background:#f2f6ef;flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;padding:17px;list-style:none;display:flex}.panel>details>summary::-webkit-details-marker{display:none}.panel>details>summary:after{content:"Open";color:#386149;background:#fff;border-radius:20px;margin-left:auto;padding:5px 10px;font-size:12px}.panel>details[open]>summary:after{content:"Close"}.panel>details>:not(summary){margin-left:14px;margin-right:14px}.report-badge{background:#e2ecd9;border-radius:20px;padding:5px 8px;font-size:11px;font-weight:600}.class-report .report-choice{border:0;margin:22px 0;padding:0}.choice-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice-options label{cursor:pointer;position:relative}.choice-options input[type=radio]{opacity:0;width:1px;height:1px;margin:0;position:absolute}.choice-options span{text-align:center;background:#fff;border:1px solid #cad7c6;border-radius:12px;justify-content:center;align-items:center;min-height:56px;padding:12px;font-size:14px;display:flex}.choice-options input:checked+span{color:#fff;background:#205641;border-color:#205641;box-shadow:inset 0 0 0 2px #ffffff40}.choice-options input:focus-visible+span{outline-offset:3px;outline:3px solid #d0a542}.choice-options input:disabled+span{opacity:.6;cursor:default}.attendance-buttons{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.attendance-buttons button{color:#254f3b;background:#fff;border:1px solid #bacbbb;min-height:50px}.attendance-buttons button[aria-pressed=true][data-status=Present]{color:#fff;background:#205641;border-color:#205641}.attendance-buttons button[aria-pressed=true][data-status=Absent]{color:#fff;background:#903e32;border-color:#903e32}.attendance-status{color:#56665b;margin-top:8px;font-size:12px;font-weight:600;display:inline-block}.contact-dialog{color:#183d30;background:#fff;border:1px solid #cad7c6;border-radius:20px;width:min(540px,100% - 24px);max-height:85dvh;padding:24px;overflow:auto}.contact-dialog::backdrop{background:#102d2380}.contact-dialog h2{font-size:24px}.contact-dialog h3{margin-bottom:4px;font-size:15px}.contact-dialog>button{margin:8px 8px 8px 0}.contact-dialog select,.contact-dialog textarea{width:100%;font:inherit;border:1px solid #bacbbb;border-radius:10px;margin:10px 0 18px;padding:12px;display:block}.contact-dialog textarea{min-height:110px}.contact-dialog input[type=checkbox]{vertical-align:middle;width:20px;height:20px;margin:8px 10px 8px 0;display:inline-block}.recipient-picks{max-height:220px;margin:14px 0;overflow:auto}.preview-message{border:1px solid #dce5d9;border-radius:12px;margin:12px 0;padding:14px}.preview-message p{white-space:pre-wrap}[hidden]{display:none!important}.student-location,.student-pickup{margin:6px 0;font-size:14px;line-height:1.45}.student-location{font-weight:600}.student-pickup{background:#f1f5ec;border-radius:8px;padding:9px}.after-plans{border:1px solid #dce5d9;border-radius:12px;margin-top:14px;padding:0 12px 12px}.pickup-options{flex-wrap:wrap;gap:8px;display:flex}.pickup-options button{text-align:left;white-space:normal;font-size:13px}.pickup-options button[aria-pressed=true]{color:#fff;background:#205641}
