.dash-admin .admin-support-layout{grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:1.25rem}.dash-admin .admin-support-layout>aside{background:#f7f9fb;border:1px solid #dbe4ea;border-radius:24px;flex-direction:column;min-height:660px;max-height:calc(100vh - 190px);display:flex;overflow:hidden;box-shadow:0 12px 30px #22364b14}.dash-admin .admin-support-layout>aside>header{color:#fff;background:linear-gradient(135deg,#294f6c,#3d6089);border-bottom:1px solid #dfe7ec;gap:.2rem;padding:1.15rem 1.2rem;display:grid}.dash-admin .admin-support-layout>aside>header strong{font-size:.92rem}.dash-admin .admin-support-layout>aside>header span{color:#d7e8ef;font-size:.66rem}.dash-admin .admin-support-layout aside nav{align-content:start;max-height:none;padding:.65rem;display:grid;overflow-y:auto}.dash-admin .admin-support-layout aside a{color:#496371;border:1px solid #0000;border-radius:15px;grid-template-columns:46px minmax(0,1fr) auto;gap:.7rem;padding:.75rem;transition:background .16s,border-color .16s,transform .16s;display:grid;position:relative}.dash-admin .admin-support-layout aside a+a{margin-top:.35rem}.dash-admin .admin-support-layout aside a:hover{background:#fff;border-color:#d8dfe8;transform:translate(2px)}.dash-admin .admin-support-layout aside a[aria-current=page]{background:#fff;border-color:#abc0d8;box-shadow:0 6px 16px #2753691a}.dash-admin .admin-support-layout aside a[aria-current=page]:before{content:"";background:#2f5f95;border-radius:0 99px 99px 0;width:4px;position:absolute;inset:10px auto 10px 0}.dash-admin .admin-support-layout aside a>span{color:#29578b;background:#deedf2;border-radius:14px;width:46px;height:46px;font-size:.82rem}.dash-admin .admin-support-layout aside a[aria-current=page]>span{color:#fff;background:linear-gradient(135deg,#2d5a8d,#4b77aa)}.dash-admin .admin-support-layout aside a>div{align-self:center;gap:.12rem}.dash-admin .admin-support-layout aside a strong{color:#365568;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.dash-admin .admin-support-layout aside a small{color:#83949d;font-size:.61rem}.dash-admin .admin-support-layout aside a p{color:#93a0a7;margin-top:.2rem;font-size:.59rem}.dash-admin .admin-support-layout aside a>b{background:#e65e73;align-self:center;box-shadow:0 3px 8px #ca425738}.dash-admin .support-conversation{min-width:0;min-height:660px;max-height:calc(100vh - 190px);box-shadow:0 12px 30px #22364b14}@media (max-width:1050px){.dash-admin .admin-support-layout{grid-template-columns:290px minmax(0,1fr)}}@media (max-width:800px){.dash-admin .admin-support-layout{grid-template-columns:1fr}.dash-admin .admin-support-layout>aside{min-height:0;max-height:340px}.dash-admin .support-conversation{min-height:620px;max-height:none}}.support-delete-dialog{background:0 0;border:0;border-radius:22px;width:min(460px,100vw - 2rem);max-width:none;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 28px 80px #19223152}.support-delete-dialog[open]{display:block}.support-delete-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#181f2b94}.support-delete-dialog>section{background:#fff;border-radius:22px;overflow:hidden}.support-delete-dialog header{background:linear-gradient(135deg,#fff4f5,#fff);align-items:center;gap:.8rem;padding:1.25rem 1.35rem;display:flex}.support-delete-dialog header>span{color:#b33f50;background:#ffe0e4;border-radius:14px;place-items:center;width:44px;height:44px;font-size:1rem;font-weight:950;display:grid}.support-delete-dialog header>div{gap:.12rem;display:grid}.support-delete-dialog header small{color:#b45a66;letter-spacing:.1em;font-size:.55rem;font-weight:950}.support-delete-dialog h3{color:#493e43;font-size:1rem}.support-delete-dialog>section>p{color:#697982;padding:1rem 1.35rem;font-size:.72rem;line-height:1.6}.support-delete-dialog>section>footer{background:#fafbfc;border-top:1px solid #edf0f2;justify-content:flex-end;gap:.6rem;padding:1rem 1.35rem;display:flex}.support-delete-dialog footer form{display:inline-flex}.support-delete-dialog footer button{border-radius:10px;min-height:42px;padding:.65rem .85rem;font-size:.68rem;font-weight:950}.support-delete-dialog footer>button{color:#596f7b;background:#fff;border:1px solid #d8e0e4}.support-delete-dialog footer form button{color:#fff;background:linear-gradient(135deg,#bd4657,#d65b6b);border:0;box-shadow:0 5px 12px #b93d4f33}@media (max-width:520px){.support-delete-dialog>section>footer{flex-direction:column;align-items:stretch}.support-delete-dialog footer button,.support-delete-dialog footer form{width:100%}}.dash-admin .admin-support-layout aside form.admin-discussions-search{padding:.7rem .9rem 0}.dash-admin .admin-support-layout aside form.admin-discussions-search label{color:#496371;gap:.3rem;font-size:.66rem;font-weight:900;display:grid}.dash-admin .admin-support-layout aside nav:not(.admin-files-pagination){flex:auto;min-height:0}.dash-admin .admin-support-layout aside nav.admin-files-pagination{background:#fff;border-top:1px solid #dfe7ec;flex:none;gap:.5rem;padding:.75rem .9rem;display:grid;overflow:visible}.dash-admin .admin-support-layout aside .admin-files-pagination a{color:#2c5079;background:#eaf4f1;border:0;border-radius:9px;grid-template-columns:none;align-items:center;padding:.5rem .7rem;font-size:.7rem;font-weight:900;display:inline-flex}.dash-admin .admin-support-layout aside .admin-files-pagination a+a{margin-top:0}.dash-admin .admin-support-layout aside .admin-files-pagination a:hover{transform:none}.dash-admin .admin-support-layout aside .admin-files-pagination div{justify-content:space-between;gap:.5rem;display:flex}.dash-admin .admin-support-layout aside .admin-files-pagination div a:only-child{margin-left:auto}.dash-admin .admin-support-layout>aside>header{justify-content:space-between;align-items:start}.dash-admin .admin-support-layout>aside>header>div{flex-direction:column;gap:.2rem;display:flex}.contact-parent-panel{background:#fff;border-bottom:1px solid #dfe7ec;flex:none;padding:.85rem .9rem}.contact-parent-panel[data-open=true]{background:#eef6f8}.contact-parent-trigger{color:#237c9d;text-align:center;cursor:pointer;background:#f2f8fa;border:1px dashed #b7d0da;border-radius:12px;width:100%;padding:.65rem .8rem;font-size:.7rem;font-weight:900;transition:background .16s,border-color .16s;display:block}.contact-parent-trigger:hover{background:#e6f2f5;border-color:#89b7c6}.contact-parent-panel[data-open=true] .contact-parent-trigger{color:#fff;background:#237c9d;border-style:solid;border-color:#237c9d}.contact-parent-inline{gap:.65rem;margin-top:.75rem;display:grid}.contact-parent-inline label{color:#496371;gap:.35rem;font-size:.66rem;font-weight:900;display:grid}.contact-parent-inline input{background:#fff;border:1px solid #d8e3e8;border-radius:12px;padding:.6rem .75rem;font-size:.78rem}.contact-parent-results{gap:.4rem;max-height:260px;display:grid;overflow-y:auto}.contact-parent-results>p{color:#83949d;padding:.3rem 0;font-size:.68rem}.dash-admin .admin-support-layout aside .contact-parent-results>a{color:#365568;background:#fff;border:1px solid #e2e9ed;border-radius:12px;grid-template-columns:1fr;gap:.15rem;padding:.6rem .75rem;transition:background .14s,border-color .14s;display:grid}.contact-parent-results>a:hover{background:#f7fafb;border-color:#abcbd8}.contact-parent-results>a>strong{font-size:.76rem}.contact-parent-results>a>small{color:#83949d;font-size:.63rem}.admin-discussions-empty{color:#83949d;text-align:center;padding:1.2rem .9rem;font-size:.72rem;line-height:1.6}.parent-family-row{align-items:center;gap:.5rem;display:flex}.parent-family-row>:first-child{flex:1;min-width:0}.parent-link-remove{color:#a5414d;font:inherit;cursor:pointer;background:#fff5f5;border:1px solid #efcbd0;border-radius:9px;flex:none;padding:.4rem .65rem;font-size:.66rem;font-weight:900}.parent-link-remove:hover{background:#ffeaec}.student-parent-links{background:#fbfcfc;border:1px solid #dfe7ea;border-radius:14px;gap:.7rem;margin-top:1rem;padding:.9rem 1rem;display:grid}.student-parent-links>header{justify-content:space-between;align-items:center;display:flex}.student-parent-links>header span{color:#5b6f7a;letter-spacing:.08em;font-size:.62rem;font-weight:950}.student-parent-links>header strong{color:#2f5f72;background:#e6eef1;border-radius:99px;place-items:center;min-width:24px;height:24px;font-size:.7rem;display:grid}.student-parent-links ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.student-parent-links li{background:#fff;border:1px solid #e3eaed;border-radius:11px;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.student-parent-links li>div{gap:.1rem;min-width:0;display:grid}.student-parent-links li strong{color:#2f4b59;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.student-parent-links li strong small,.student-parent-links li>div>small{color:#7b8e97;font-size:.64rem;font-weight:700}.student-parent-links-empty{color:#7b8e97;margin:0;font-size:.7rem}.student-parent-links-add{border-top:1px dashed #d7e0e4;gap:.6rem;padding-top:.7rem;display:grid}.student-parent-links-modes{gap:.35rem;display:flex}.student-parent-links-modes button{color:#4f6673;font:inherit;cursor:pointer;background:#fff;border:1px solid #d6e1e6;border-radius:99px;padding:.35rem .75rem;font-size:.68rem;font-weight:900}.student-parent-links-modes button[aria-selected=true]{border-color:var(--dash-primary,#28536d);background:color-mix(in srgb,var(--dash-primary,#28536d) 9%,#fff);color:var(--dash-primary,#28536d)}.student-parent-links-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .7rem;display:grid}.student-parent-links-form label{color:#536c78;gap:.3rem;font-size:.66rem;font-weight:850;display:grid}.student-parent-links-form input,.student-parent-links-form select{min-height:40px;font:inherit;background:#fff;border:1px solid #d5dfe5;border-radius:9px;padding:.45rem .6rem;font-size:.74rem}.student-parent-links-form>button,.student-parent-links-form>.modal-form-error,.student-parent-links-form>.student-parent-links-success{grid-column:1/-1}.student-parent-links-form>button{background:var(--dash-primary,#28536d);color:#fff;min-height:40px;font:inherit;border:0;border-radius:9px;justify-self:end;padding:.5rem .9rem;font-size:.7rem;font-weight:900}.student-parent-links-success{color:#2f7458;background:#eaf6f0;border-radius:9px;margin:0;padding:.5rem .65rem;font-size:.7rem;font-weight:800}@media (max-width:560px){.student-parent-links-form{grid-template-columns:1fr}}.student-create-plan-option{cursor:pointer;background:#fff;border:1px solid #dfe7ea;border-radius:11px;align-items:flex-start;gap:.55rem;margin-top:.6rem;padding:.6rem .7rem;display:flex!important}.student-create-plan-option input{flex:none;width:18px;height:18px;margin-top:.1rem}.student-create-plan-option span{gap:.15rem;display:grid}.student-create-plan-option strong{color:#2f4b59;font-size:.72rem}.student-create-plan-option small{color:#7b8e97;font-size:.62rem;font-weight:700}.admin-support-layout aside .contact-directory-search{padding:.7rem .75rem 0;display:block}.admin-support-layout aside .contact-directory-search input{appearance:none;box-sizing:border-box;color:#334f60;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #d3dfe4;border-radius:12px;margin:0;padding:.55rem .8rem;font-size:.78rem;display:block}.admin-support-layout aside .contact-directory-search input:focus{border-color:#4c91a7;outline:3px solid #4c91a724}.admin-support-layout aside .contact-directory-empty{color:#83949d;padding:.6rem .4rem;font-size:.7rem}
.student-stats{--ok:#1f7a52;--late:#d39410;--late-excused:#0a8f7a;--excused:#3a55b8;--miss:#c22a3a;--ok-wash:#e4f1ea;gap:1rem;margin-top:1rem;display:grid}.student-stats-heroes{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;display:grid}.student-stats-heroes article{border:1px solid var(--role-line,#e9d5db);background:#fff;border-radius:16px;gap:.2rem;padding:1rem 1.1rem;display:grid;box-shadow:0 6px 18px #542e3a0f}.student-stats-heroes span{color:var(--role-ink,#653443);letter-spacing:.07em;text-transform:uppercase;opacity:.75;font-size:.66rem;font-weight:900}.student-stats-heroes strong{color:var(--role-ink,#653443);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:900;line-height:1.1}.student-stats-heroes strong small{opacity:.6;font-size:.95rem;font-weight:800}.student-stats-heroes em{color:#8d7178;font-size:.74rem;font-style:normal;font-weight:700}.student-stats-card{border:1px solid var(--role-line,#e9d5db);background:#fff;border-radius:18px;padding:1.1rem 1.2rem;box-shadow:0 6px 18px #542e3a0f}.student-stats-card>h2{color:var(--role-ink,#653443);margin:0 0 .9rem;font-size:1rem;font-weight:900}.student-stats-empty{color:#8d7178;margin:0;font-size:.82rem}.student-stats-curve{width:100%;height:auto;display:block;overflow:visible}.student-stats-curve line{stroke:#efe2e6;stroke-width:1px}.student-stats-curve text{fill:#9d8389;font-size:11px;font-weight:700}.student-stats-curve polyline{fill:none;stroke:var(--role-primary,#ae6178);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.student-stats-curve circle{fill:var(--role-primary,#ae6178);stroke:#fff;stroke-width:2px;cursor:default}.student-stats-curve circle:hover{r:6.5}.student-stats-stack{gap:2px;height:26px;margin-bottom:.8rem;display:flex}.student-stats-stack>span{width:var(--part);height:100%}.student-stats-stack>span:first-child{border-radius:6px 0 0 6px}.student-stats-stack>span:last-child{border-radius:0 6px 6px 0}.student-stats-stack>span:only-child{border-radius:6px}.student-stats [data-kind=onTime]{background:var(--ok)}.student-stats [data-kind=late]{background:var(--late)}.student-stats [data-kind=missing]{background:var(--miss)}.student-stats-keys{flex-wrap:wrap;gap:.45rem 1rem;margin:0;padding:0;list-style:none;display:flex}.student-stats-keys li{color:#6b4d56;align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;display:flex}.student-stats-keys li>b{font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:1.6rem;padding:.1rem .45rem;font-size:.72rem;font-weight:900;display:inline-grid}.student-stats-keys span{color:#fff;border-radius:5px;flex:none;place-items:center;width:17px;height:17px;font-size:.66rem;font-weight:900;display:grid}.student-stats [data-state=late]{background:var(--late)}.student-stats [data-state=excused]{background:var(--excused)}.student-stats [data-state=lateExcused]{background:var(--late-excused)}.student-stats [data-state=absent]{background:var(--miss)}.student-stats-details{border-top:1px solid var(--role-line,#e9d5db);margin-top:.9rem;padding-top:.7rem}.student-stats-details summary{cursor:pointer;color:var(--role-primary,#ae6178);font-size:.78rem;font-weight:800}.student-stats-details ul{gap:.45rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.student-stats-details li{gap:.1rem;display:grid}.student-stats-details strong{color:var(--role-ink,#653443);font-size:.8rem}.student-stats-details small{color:#8d7178;font-size:.72rem}.student-stats-subjects{margin:0;padding:0;list-style:none;display:grid}.student-stats-subjects li{border-top:1px solid var(--role-line,#e9d5db);grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:.9rem;padding:.6rem 0;display:grid}.student-stats-subjects li:first-child{border-top:0;padding-top:0}.student-stats-subjects span{overflow-wrap:anywhere;color:#6b4d56;font-size:.84rem;font-weight:800}.student-stats-subjects li>small{color:#9d8389;font-size:.72rem;font-weight:700}.student-stats-subjects strong{min-width:4.5rem;color:var(--role-ink,#653443);font-variant-numeric:tabular-nums;text-align:right;font-size:1rem;font-weight:900}.student-stats-subjects strong small{opacity:.6;font-size:.72rem;font-weight:800}.student-stats-calendar{grid-template-columns:repeat(7,26px);gap:3px;display:grid}.student-stats-calendar>b{color:#b49aa1;text-align:center;font-size:.6rem;font-weight:900}.student-stats-calendar>span{background:var(--role-soft,#f7f0f2);color:#a88f96;font-variant-numeric:tabular-nums;border-radius:5px;place-items:center;height:24px;font-size:.66rem;font-weight:700;display:grid}.student-stats-calendar>span:empty{background:0 0}.student-stats-incidents{flex-wrap:wrap;align-items:flex-start;gap:1.2rem 2rem;margin-bottom:1rem;display:flex}.student-stats-incidents>div{align-content:start;gap:.4rem;display:grid}.student-stats-incidents>div>span{color:#9d8389;letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:900}.student-stats-keys li>b[data-kind=onTime]{color:var(--ok);background:#e4f1ea}.student-stats-keys li>b[data-kind=late],.student-stats-keys li>b[data-state=late]{color:#7e5806;background:#faefd8}.student-stats-keys li>b[data-kind=missing],.student-stats-keys li>b[data-state=absent]{color:#a3301f;background:#f7e4e2}.student-stats-keys li>b[data-state=excused]{color:var(--excused);background:#e6eaf7}.student-stats-keys li>b[data-state=lateExcused]{color:#076b5b;background:#dff2ee}.student-stats-keys li>span{border-radius:4px;width:14px;height:14px}.student-stats-calendar>a{color:#fff;font-variant-numeric:tabular-nums;border-radius:5px;place-items:center;height:24px;font-size:.66rem;font-weight:900;text-decoration:none;transition:transform .12s;display:grid}.student-stats-calendar>a[data-state=late]{color:#3f2a05}.student-stats-calendar>a:hover,.student-stats-calendar>a:focus-visible{outline:2px solid var(--role-ink,#653443);outline-offset:1px;transform:scale(1.12)}.student-stats-details li>a{border-radius:10px;gap:.1rem;margin:0 -.5rem;padding:.35rem .5rem;text-decoration:none;display:grid}.student-stats-details li>a:hover{background:var(--role-soft,#f7f0f2)}@media (prefers-reduced-motion:reduce){.student-stats-calendar>a{transition:none}}.parent-absence-list article[id]{scroll-margin-top:96px}.parent-absence-list article[data-focus]{box-shadow:0 0 0 3px #ae6178,0 10px 24px #ae61782e}
.dash-student .admin-support-layout,.dash-teacher .admin-support-layout{grid-template-columns:300px minmax(0,1fr);align-items:stretch;gap:1rem;margin-top:1rem}.direct-messaging-page{flex-direction:column;height:calc(100dvh - 158px);min-height:0;display:flex;overflow:hidden}.direct-messaging-page>.dash-page-heading{flex:none}.direct-messaging-page>.admin-support-layout{flex:1;min-height:0}.direct-messaging-page>.admin-support-layout>aside,.direct-messaging-page>.admin-support-layout>.direct-conversation{min-height:0;max-height:none}.admin-direct-directory{background:#fff;border:1px solid #dce5e8;border-radius:20px;top:85px;overflow:hidden;box-shadow:0 8px 22px #21374a12;position:sticky!important}.admin-direct-directory>header{color:#fff;background:linear-gradient(120deg,#173f59,#2e5c91);justify-content:space-between;align-items:center;padding:1rem;display:flex}.admin-direct-directory>header>div{gap:.08rem;display:grid}.admin-direct-directory>header strong{font-size:.9rem}.admin-direct-directory>header small{opacity:.75;font-size:.6rem}.admin-direct-directory>header>span{background:#ffffff29;border-radius:99px;padding:.3rem .5rem;font-size:.68rem;font-weight:900}.admin-direct-filters{background:#f7f9fa;border-bottom:1px solid #e4eaed;gap:.6rem;padding:.75rem;display:grid}.admin-direct-filters>label,.admin-direct-filters>div label{gap:.25rem;display:grid}.admin-direct-filters>label>span,.admin-direct-filters>div label>span{color:#617884;font-size:.59rem;font-weight:900}.admin-direct-filters input,.admin-direct-filters select{color:#385565;width:100%;min-width:0;min-height:38px;font:inherit;background:#fff;border:1px solid #d5dce4;border-radius:9px;padding:.5rem .6rem;font-size:.67rem}.admin-direct-filters>div{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.admin-direct-directory>nav{max-height:520px;padding:.45rem;display:grid;overflow-y:auto}.admin-direct-directory>nav>section>header{justify-content:space-between;align-items:center;padding:.55rem .6rem .35rem;display:flex}.admin-direct-directory>nav>section>header strong{color:#2a4e77;text-transform:uppercase;letter-spacing:.06em;font-size:.62rem;font-weight:950}.admin-direct-directory>nav>section>header span{color:#395d86;background:#e7f1f3;border-radius:99px;padding:.2rem .4rem;font-size:.57rem;font-weight:900}.admin-direct-directory nav a{color:#506b79;border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.6rem;display:grid}.admin-direct-directory nav a:hover{background:#f2f6f7}.admin-direct-directory nav a[aria-current=page]{background:#e2f1f3;box-shadow:inset 0 0 0 1px #acc1da}.admin-direct-directory nav a>span{color:#214f83;background:#dceff2;border-radius:11px;place-items:center;width:38px;height:38px;font-size:.76rem;font-weight:950;display:grid}.admin-direct-directory nav a>div{min-width:0;display:grid}.admin-direct-directory nav a strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.admin-direct-directory nav a small{color:#738994;text-overflow:ellipsis;white-space:nowrap;font-size:.61rem;overflow:hidden}.admin-direct-directory nav a p{color:#87979e;text-overflow:ellipsis;white-space:nowrap;margin-top:.12rem;font-size:.59rem;overflow:hidden}.admin-direct-directory nav a time{color:#8999a1;align-self:start;font-size:.56rem}.admin-direct-no-result{color:#7d9099;text-align:center;padding:1.5rem .8rem;font-size:.68rem}@media (max-width:760px){.admin-direct-directory{position:static!important}.admin-direct-directory>nav{max-height:320px}}.dash-student .admin-support-layout>aside,.dash-teacher .admin-support-layout>aside{background:#fbfcfd;border:1px solid #e1e8ec;border-radius:18px;flex-direction:column;align-self:stretch;min-height:650px;max-height:calc(100vh - 190px);display:flex;overflow:hidden;box-shadow:0 10px 28px #22364b0f}.dash-student .admin-support-layout>aside>header,.dash-teacher .admin-support-layout>aside>header{color:#22384a;background:#fff;border-bottom:1px solid #e5ecef;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;display:flex}.dash-student .admin-support-layout>aside>header strong,.dash-teacher .admin-support-layout>aside>header strong{font-size:.9rem}.dash-student .admin-support-layout>aside>header span,.dash-teacher .admin-support-layout>aside>header span{color:#647b87;background:#edf3f5;border-radius:99px;padding:.3rem .5rem;font-size:.62rem;font-weight:900}.dash-student .admin-support-layout aside nav,.dash-teacher .admin-support-layout aside nav{gap:.38rem;max-height:none;padding:.65rem;display:grid;overflow-y:auto}.dash-student .admin-support-layout aside a,.dash-teacher .admin-support-layout aside a{color:#536676;border:1px solid #0000;border-radius:13px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.65rem;transition:background .16s,border-color .16s,box-shadow .16s;display:grid;position:relative}.dash-student .admin-support-layout aside a:hover,.dash-teacher .admin-support-layout aside a:hover{background:#fff;border-color:#e0e8eb}.dash-student .admin-support-layout aside a[aria-current=page],.dash-teacher .admin-support-layout aside a[aria-current=page]{background:#fff;border-color:#bdd8de;box-shadow:0 5px 14px #265b6b17}.dash-student .admin-support-layout aside a[aria-current=page]:before,.dash-teacher .admin-support-layout aside a[aria-current=page]:before{content:"";background:#6857d9;border-radius:0 99px 99px 0;width:4px;position:absolute;inset:10px auto 10px 0}.dash-teacher .admin-support-layout aside a[aria-current=page]:before{background:#287f9e}.dash-student .admin-support-layout aside a>span,.dash-teacher .admin-support-layout aside a>span{color:#2d687c;background:#e4eef2;border-radius:12px;place-items:center;width:42px;height:42px;font-size:.76rem;font-weight:950;display:grid}.dash-student .admin-support-layout aside a[aria-current=page]>span,.dash-teacher .admin-support-layout aside a[aria-current=page]>span{background:var(--role-primary,#28536d);color:#fff}.dash-student .admin-support-layout aside a>div,.dash-teacher .admin-support-layout aside a>div{gap:.13rem;min-width:0;display:grid}.dash-student .admin-support-layout aside a strong,.dash-teacher .admin-support-layout aside a strong{color:#385466;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.dash-student .admin-support-layout aside a small,.dash-teacher .admin-support-layout aside a small{color:#87959e;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.dash-student .direct-conversation,.dash-teacher .direct-conversation{min-width:0;min-height:650px;max-height:calc(100vh - 190px);box-shadow:0 10px 28px #22364b0f}.direct-chat-head{border-bottom:1px solid var(--cchat-line);flex-wrap:nowrap;flex:none;justify-content:flex-start}.direct-chat-head>span{background:color-mix(in srgb,var(--cchat-accent) 12%,#fff);width:42px;height:42px;color:var(--cchat-accent);border-radius:12px;flex:none;place-items:center;font-size:.75rem;font-weight:950;display:grid}.direct-chat-head .cchat-title p{color:var(--cchat-muted);font-size:.68rem}.direct-chat-feed{flex:1;min-height:0!important;max-height:none!important}.direct-chat-composer{flex:none}.direct-chat-composer .cchat-attachment{grid-column:1/-1}.direct-message-file{background:#f8fafb;border:1px dashed #cbd9df;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.35rem .65rem;padding:.55rem .7rem;grid-column:1!important;display:grid!important}.direct-message-file>span{color:#38657a;font-size:.68rem;font-weight:900}.direct-message-file>small{color:#7c8f98;grid-column:1/-1;font-size:.58rem;font-weight:650}.direct-message-file input{color:#607984;min-width:0;font:inherit;font-size:.62rem}.direct-message-file input::file-selector-button{cursor:pointer;color:#2e6d83;font:inherit;background:#e3eef2;border:0;border-radius:8px;padding:.48rem .65rem;font-size:.62rem;font-weight:900}.direct-message-file:focus-within{border-color:#568da4;box-shadow:0 0 0 3px #4889a31f}.direct-message-attachment{color:#365666;background:#ffffffb8;border:1px solid #5e778433;border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:.6rem;margin-top:.6rem;padding:.55rem .65rem;display:grid}.direct-message-attachment>span{color:#2d6d82;background:#e3eef2;border-radius:9px;place-items:center;width:38px;height:38px;font-size:.58rem;font-weight:950;display:grid}.direct-message-attachment>div{min-width:0;display:grid}.direct-message-attachment strong{text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.direct-message-attachment small{color:#81929a;margin-top:.1rem;font-size:.56rem}.direct-message-attachment>b{color:#28738b;font-size:.62rem}.direct-message-attachment:hover{background:#fff;border-color:#91bdca}@media (max-width:900px){.dash-student .admin-support-layout,.dash-teacher .admin-support-layout{grid-template-columns:270px minmax(0,1fr)}}@media (max-width:760px){.direct-messaging-page{height:auto;overflow:visible}.dash-student .admin-support-layout,.dash-teacher .admin-support-layout{grid-template-columns:1fr}.dash-student .admin-support-layout>aside,.dash-teacher .admin-support-layout>aside{min-height:0;max-height:310px}.dash-student .direct-conversation,.dash-teacher .direct-conversation{min-height:590px;max-height:none}}.admin-direct-thread article:not([data-student=true]){justify-self:end}.admin-direct-thread article[data-student=true]{justify-self:start}.dash-student .admin-support-layout aside nav,.dash-teacher .admin-support-layout aside nav,.dash-parent .admin-support-layout aside nav{grid-auto-rows:max-content;align-content:start}.cchat-feed .cchat-msg[data-first-unread]{margin-top:1.4rem;position:relative}.cchat-feed .cchat-msg[data-first-unread]:before{content:"Nouveaux messages";color:#b4515f;letter-spacing:.06em;text-align:center;border-top:1px solid #e3b7bf;font-size:.62rem;font-weight:900;position:absolute;top:-1rem;left:0;right:0}.awaiting-reply-notice{background:#fff7ec;border-bottom:1px solid #f0dcc0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;margin:0;padding:.7rem 1rem;display:flex}.awaiting-reply-notice>div{flex:260px;min-width:0}.awaiting-reply-notice strong{color:#8a5212;font-size:.84rem;font-weight:900;display:block}.awaiting-reply-notice p{color:#6e5a3e;margin:.2rem 0 0;font-size:.76rem;line-height:1.45}.awaiting-reply-notice .awaiting-reply-error{color:#b23e37;font-weight:800}.awaiting-reply-notice button{cursor:pointer;color:#8a5212;min-height:38px;font:inherit;background:#fff;border:1px solid #e3c18f;border-radius:10px;flex:none;padding:.45rem .85rem;font-size:.78rem;font-weight:900}.awaiting-reply-notice button:hover:not(:disabled){background:#fff1dc}.awaiting-reply-notice button:disabled{cursor:progress;opacity:.65}
.class-type-tabs{grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1rem 0 1.2rem;display:grid}.class-type-tabs a{color:#506977;background:#fff;border:1px solid #dce5e9;border-radius:17px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.85rem;transition:all .16s;display:grid;box-shadow:0 5px 15px #27394b0e}.class-type-tabs a:hover{border-color:#9ec4d2;transform:translateY(-2px)}.class-type-tabs a[aria-current=page]{background:linear-gradient(145deg,#f2f9fb,#fff);border-color:#3b819b;box-shadow:inset 0 0 0 1px #3b819b,0 7px 18px #2b728d1a}.class-type-tabs a>span{color:#2e7894;background:#e3f0f4;border-radius:14px;place-items:center;width:48px;height:48px;font-size:.7rem;font-weight:950;display:grid}.class-type-tabs a[aria-current=page]>span{color:#fff;background:linear-gradient(135deg,#307792,#4e97ac)}.class-type-tabs a>div{min-width:0;display:grid}.class-type-tabs strong{font-size:.76rem}.class-type-tabs small{color:#84959d;margin-top:.12rem;font-size:.6rem}.class-type-tabs a>b{color:#647b86;background:#edf1f3;border-radius:99px;place-items:center;min-width:26px;height:26px;font-size:.58rem;display:grid}.class-type-heading{justify-content:space-between;align-items:end;gap:1rem;margin:1.2rem 0 .8rem;display:flex}.class-type-heading>div{display:grid}.class-type-heading span{color:#37809b;letter-spacing:.1em;font-size:.57rem;font-weight:950}.class-type-heading h2{color:#36566a;font-size:1.05rem}.class-type-heading p{color:#7d9099;font-size:.66rem}.class-type-heading>strong{color:#39758b;background:#e7f1f4;border-radius:99px;padding:.42rem .65rem;font-size:.65rem}@media (max-width:850px){.class-type-tabs{grid-template-columns:1fr}.class-type-tabs a{min-height:76px}}.class-directory-search{color:#456270;gap:.4rem;margin:0 0 1rem;font-size:.75rem;font-weight:900;display:grid;position:relative}.class-directory-search input{color:#304f60;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #d2dfe4;border-radius:13px;outline:none;padding:.7rem 2.8rem .7rem .85rem;font-size:.8rem;box-shadow:0 5px 15px #27394b0d}.class-directory-search input:focus{border-color:#3b819b;box-shadow:0 0 0 4px #3b819b1f}.class-directory-search>button{cursor:pointer;color:#58717d;background:#edf2f3;border:0;border-radius:9px;place-items:center;width:32px;height:32px;font-size:1rem;display:grid;position:absolute;bottom:.48rem;right:.55rem}.class-search-empty{color:#71858f;text-align:center;background:#f8fafb;border:2px dashed #d4e1e5;border-radius:16px;justify-items:center;gap:.3rem;padding:2rem;display:grid}.class-search-empty strong{color:#385868;font-size:.9rem}.class-search-empty p{font-size:.72rem}
.class-create-control{justify-content:flex-end;margin-bottom:1rem;display:flex}.class-create-dialog{width:min(720px,100vw - 2rem)}.class-create-dialog>section>main{max-height:calc(100vh - 180px);overflow-y:auto}.class-create-dialog .people-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.class-create-dialog .people-form>button,.class-create-dialog .crud-error,.class-create-dialog .crud-success{grid-column:1/-1}@media (max-width:600px){.class-create-control .dash-primary-action{width:100%}.class-create-dialog{width:calc(100vw - 1rem)}.class-create-dialog .people-form{grid-template-columns:1fr}.class-create-dialog .people-form>button,.class-create-dialog .crud-error,.class-create-dialog .crud-success{grid-column:auto}}
.program-admin{gap:1.2rem;display:grid}.program-page-heading{justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.program-overview{background:#fff;border:1px solid #dde6ec;border-radius:16px;flex:none;grid-template-columns:repeat(3,minmax(82px,1fr));display:grid;overflow:hidden;box-shadow:0 8px 22px #1f3b4f0f}.program-overview>div{text-align:center;min-width:88px;padding:.75rem .9rem}.program-overview>div+div{border-left:1px solid #e5ebef}.program-overview dt{color:#7a8d98;font-size:.55rem;font-weight:900}.program-overview dd{color:#294b60;margin-top:.2rem;font-size:1.05rem;font-weight:950}.program-create-card{background:#fff;border:1px solid #dce5eb;border-radius:18px;overflow:hidden;box-shadow:0 8px 22px #1f3b4f0d}.program-create-card>summary{cursor:pointer;align-items:center;gap:.75rem;padding:1rem 1.15rem;list-style:none;display:flex}.program-create-card>summary::-webkit-details-marker{display:none}.program-create-card>summary>span{background:var(--dash-primary);color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-size:1rem;font-weight:900;display:grid}.program-create-card>summary>div{gap:.12rem;display:grid}.program-create-card>summary strong{color:#294b60;font-size:.76rem}.program-create-card>summary small{color:#7b8e99;font-size:.59rem}.program-create-card>form{background:#f8fafb;border-top:1px solid #e5ebef;padding:1rem}.session-create-trigger{cursor:pointer;color:#315f76;text-align:left;background:#f8fafb;border:1px dashed #bdcbd4;border-radius:14px;width:100%;padding:.85rem 1rem;font-size:.68rem;font-weight:900}.session-create-dialog{background:0 0;border:0;border-radius:19px;width:min(680px,100vw - 2rem);max-width:none;max-height:calc(100vh - 2rem);margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 24px 70px #1930414d}.session-create-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#182a3699}.session-create-dialog>section{background:#fff;border-radius:19px;overflow:hidden}.session-create-dialog header{background:#f4f8fa;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.3rem;display:flex}.session-create-dialog header small{color:#367891;letter-spacing:.12em;font-size:.53rem;font-weight:900}.session-create-dialog header h2{color:#294b60;margin:.25rem 0;font-size:1.05rem}.session-create-dialog header p{color:#788c98;margin:0;font-size:.62rem}.session-create-dialog header button{color:#637985;background:#fff;border:1px solid #d8e2e8;border-radius:50%;width:31px;height:31px;font-size:1rem}.session-create-dialog form{max-height:calc(100vh - 180px);padding:1.2rem;overflow-y:auto}.session-create-dialog form>[role=alert]{color:#b34444;grid-column:1/-1;margin:0;font-size:.62rem}.session-create-dialog footer{grid-column:1/-1;justify-content:flex-end;gap:.6rem;display:flex}.session-create-dialog footer button{width:auto}.session-create-dialog footer button:first-child{color:#607683;background:#fff;border:1px solid #d9e2e7}.session-edition-actions{flex-wrap:wrap;gap:.7rem;margin:1rem;display:flex}.session-edition-actions>button{color:#37647a;background:#f5f9fb;border:1px solid #d5e0e6;border-radius:10px;min-height:40px;padding:.65rem .9rem;font-size:.7rem;font-weight:900}.session-edition-actions>button[data-danger]{color:#b54858;background:#fff4f5;border-color:#efd3d7}.session-delete-dialog{width:min(500px,100vw - 2rem)}.session-delete-body{gap:1rem;padding:1.2rem;display:grid}.session-delete-body>p{color:#687e8a;margin:0;font-size:.68rem;line-height:1.6}.session-delete-impact{border:1px solid #e0e7eb;border-radius:12px;gap:.3rem;padding:.8rem .9rem;display:grid}.session-delete-impact strong{font-size:.72rem}.session-delete-impact span{color:#667c88;font-size:.68rem;line-height:1.55}.session-delete-impact[data-impact=deleted]{background:#fff6f7;border-color:#efd4d8}.session-delete-impact[data-impact=deleted] strong{color:#aa4453}.session-delete-impact[data-impact=kept]{background:#f4fbf8;border-color:#cfe5dc}.session-delete-impact[data-impact=kept] strong{color:#347963}.session-delete-body footer{justify-content:flex-end;gap:.6rem;display:flex}.session-delete-body footer button{border:0;border-radius:10px;padding:.6rem .8rem;font-size:.6rem;font-weight:900}.session-delete-body footer button:first-child{color:#607683;background:#fff;border:1px solid #d9e2e7}.session-delete-body footer button[data-danger]{color:#fff;background:#bd4454}.program-admin .program-card>header small{font-size:.68rem}.program-admin .program-card>header p,.program-admin .program-offering-card>header p{font-size:.75rem;line-height:1.5}.program-admin .program-card-counts span,.program-admin .program-card-counts strong{font-size:.7rem}.program-admin .program-section-heading span,.program-admin .offering-calendar header span{font-size:.65rem}.program-admin .program-section-heading h3,.program-admin .offering-calendar header strong{font-size:.82rem}.program-admin .program-inline-empty strong{font-size:.8rem}.program-admin .program-inline-empty p,.program-admin .offering-calendar li strong{font-size:.72rem}.program-admin .offering-calendar li small{font-size:.66rem}.program-admin .people-form label{font-size:.68rem}.program-admin .people-form input,.program-admin .people-form select,.program-admin .people-form textarea{font-size:.72rem}.session-create-dialog header small{font-size:.64rem}.session-create-dialog header p{font-size:.72rem}.session-create-dialog form footer{border-top:1px solid #e4eaee;grid-column:1/-1;justify-content:flex-end;gap:.7rem;margin-top:.4rem;padding-top:1rem;display:flex}.session-create-dialog form footer button{min-height:42px;font-size:.7rem}.session-level-selector{border:0;min-width:0;margin:0;padding:0}.session-level-selector legend{color:#536c7b;margin-bottom:.55rem;font-size:.68rem;font-weight:900}.session-level-selector-actions{flex-wrap:wrap;gap:.45rem;margin-bottom:.55rem;display:flex}.session-level-selector-actions button{color:#59727f;background:#fff;border:1px solid #d7e2e7;border-radius:999px;width:auto;min-height:34px;padding:.4rem .7rem;font-size:.62rem;font-weight:850}.session-level-selector-actions button.is-selected{color:#27677f;background:#e9f4f7;border-color:#367891}.session-level-options{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:.5rem;display:grid}.session-level-options label{color:#526c7a;cursor:pointer;background:#fff;border:1px solid #dbe5e9;border-radius:11px;align-items:center;gap:.55rem;min-width:0;min-height:44px;margin:0;padding:.55rem .65rem;font-size:.67rem;font-weight:800;display:flex}.session-level-options label.is-selected{color:#245d73;background:#eef8fa;border-color:#77a8ba}.session-level-options input[type=checkbox]{display:block;accent-color:#367891!important;width:17px!important;min-width:17px!important;height:17px!important;min-height:17px!important;margin:0!important;padding:0!important}.session-level-required,.session-legacy-warning{color:#805d1e;background:#fff9ec;border:1px solid #efd69f;border-radius:12px;margin:0;padding:.8rem .9rem;font-size:.7rem;line-height:1.55}.session-level-selector>small{color:#3f7183;background:#f0f7f9;border-radius:9px;margin-top:.65rem;padding:.55rem .7rem;font-size:.65rem;font-weight:750;display:block}.session-advanced-settings{background:#fafcfc;border:1px solid #e0e8ec;border-radius:12px}.session-advanced-settings>summary{cursor:pointer;color:#58717e;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .85rem;font-size:.67rem;font-weight:850;list-style:none;display:flex}.session-advanced-settings>summary::-webkit-details-marker{display:none}.session-advanced-settings>summary:after{content:"+";color:#367891;font-size:1rem}.session-advanced-settings[open]>summary:after{content:"−"}.session-advanced-settings summary small{color:#8799a2;text-align:right;margin:0;font-size:.56rem;font-weight:700}.session-advanced-settings>div{border-top:1px solid #e5ecef;grid-template-columns:minmax(0,1fr);gap:.8rem;padding:.85rem;display:grid}.period-create-trigger{color:#326279;text-align:left;background:#f7fafb;border:1px dashed #b9cad3;border-radius:12px;width:100%;margin-top:.9rem;padding:.8rem .9rem;font-size:.72rem;font-weight:900}.period-create-dialog{width:min(580px,100vw - 2rem)}.period-modal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.period-reference-required{color:#78652d;background:#fffbef;border:1px dashed #d9cda8;border-radius:12px;margin-top:.9rem;padding:.8rem;font-size:.7rem;line-height:1.5}.periods-complete-badge{color:#28745f;background:#edf8f4;border:1px solid #bfe0d3;border-radius:999px;align-items:center;gap:.45rem;width:max-content;max-width:100%;margin-top:.75rem;padding:.5rem .7rem;font-size:.62rem;font-weight:900;display:inline-flex}.periods-complete-badge>span{color:#fff;background:#3b9a7e;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:.55rem;display:grid}.offering-period-actions{white-space:nowrap;flex-wrap:nowrap;flex:none;align-items:center;gap:1.5rem;display:inline-flex}.period-text-action{color:#37647a;text-underline-offset:3px;background:0 0;border:0;flex:none;width:auto;padding:.2rem 0;font-size:.68rem;font-weight:850;-webkit-text-decoration:underline #9eb6c2;text-decoration:underline #9eb6c2;text-decoration-thickness:1px;display:inline}.period-text-action:hover{color:#1f5169;text-decoration-color:currentColor}.period-text-danger{color:#ad4a58;text-decoration-color:#dfadb4}.period-text-danger:hover{color:#913442}.session-delete-body [role=alert]{color:#b34444;margin:0;font-size:.68rem}.program-list{gap:1.35rem;display:grid}.program-card{background:#fff;border:1px solid #d9e3e9;border-radius:22px;overflow:hidden;box-shadow:0 10px 28px #1f3b4f12}.program-card>header{background:linear-gradient(125deg,#f3f8fa,#fff 60%);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.25rem;display:grid}.program-card-index{background:var(--dash-primary);color:#fff;width:50px;height:50px;box-shadow:0 6px 14px color-mix(in srgb, var(--dash-primary) 24%, transparent);border-radius:15px;place-items:center;font-size:.76rem;font-weight:950;display:grid}.program-card>header small,.program-section-heading span,.program-level-strip>span,.program-teachers>span{color:#4087a0;letter-spacing:.11em;font-size:.53rem;font-weight:950}.program-card>header h2{color:#294b60;margin:.16rem 0;font-size:1.15rem}.program-card>header p{color:#748893;max-width:650px;font-size:.67rem;line-height:1.5}.program-card-counts{justify-items:end;gap:.35rem;display:grid}.program-card-counts span,.program-card-counts strong{border-radius:999px;padding:.4rem .65rem;font-size:.58rem}.program-card-counts span{color:#627987;background:#edf3f5}.program-card-counts strong{color:#2c7c67;background:#e9f5f1}.program-level-strip{border-top:1px solid #e7edef;border-bottom:1px solid #e7edef;align-items:center;gap:.8rem;padding:.75rem 1.25rem;display:flex}.program-level-strip ul{flex-wrap:wrap;gap:.45rem;display:flex}.program-level-strip li{color:#506b7a;background:#f7f9fa;border:1px solid #dbe4e9;border-radius:999px;padding:.38rem .62rem;font-size:.58rem;font-weight:850}.program-level-strip p{color:#81929b;font-size:.6rem}.program-setup-grid{grid-template-columns:1fr 1fr;gap:.8rem;padding:1rem 1.25rem;display:grid}.program-setup-grid>details{background:#fafcfc;border:1px solid #dfe7ec;border-radius:14px}.program-setup-grid summary,.program-group-create>summary{cursor:pointer;color:#347b96;padding:.8rem .9rem;font-size:.64rem;font-weight:950;list-style:none}.program-setup-grid summary::-webkit-details-marker{display:none}.program-group-create>summary::-webkit-details-marker{display:none}.program-setup-grid form{border-top:1px solid #e4eaee;padding:.9rem}.program-offering-form>button{align-self:end}.program-offerings{background:#f5f8f9;border-top:1px solid #e5ebef;padding:1.1rem 1.25rem 1.25rem}.program-section-heading{justify-content:space-between;align-items:center;margin-bottom:.8rem;display:flex}.program-section-heading h3{color:#345467;margin-top:.16rem;font-size:.86rem}.program-section-heading>strong{color:#347b96;background:#e3eff3;border-radius:10px;place-items:center;width:34px;height:34px;font-size:.68rem;display:grid}.program-inline-empty{text-align:center;background:#fff;border:2px dashed #d8e2e7;border-radius:14px;padding:1.15rem}.program-inline-empty strong{color:#526c7a;font-size:.7rem}.program-inline-empty p{color:#82939c;margin-top:.2rem;font-size:.59rem}.program-offering-level+.program-offering-level{margin-top:1.1rem}.program-offering-level-heading{border-left:3px solid #77a8ba;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.55rem;padding-left:.65rem;display:flex}.program-offering-level-heading span{color:#4788a0;letter-spacing:.06em;font-size:.52rem;font-weight:950}.program-offering-level-heading h4{color:#345467;margin-top:.1rem;font-size:.78rem}.program-offering-level-heading>strong{color:#718894;white-space:nowrap;font-size:.58rem}.program-offering-card{background:#fff;border:1px solid #dce5ea;border-radius:17px;overflow:hidden}.program-offering-card+.program-offering-card{margin-top:.85rem}.program-offering-card>header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.program-offering-card>header span{color:#4788a0;text-transform:uppercase;font-size:.53rem;font-weight:950}.program-offering-card>header h3{color:#2f5064;margin:.18rem 0;font-size:.83rem}.program-offering-card>header p{color:#798c97;font-size:.59rem}.program-offering-card>header>strong{color:#647986;background:#eef2f4;border-radius:999px;padding:.42rem .65rem;font-size:.55rem}.program-offering-card>header>strong[data-status=UPCOMING]{color:#8a641e;background:#fff3d9}.program-offering-card>header>strong[data-status=IN_PROGRESS],.program-offering-card>header>strong[data-status=REGISTRATION_OPEN]{color:#27765e;background:#e5f5ee}.program-offering-card>header>strong[data-status=CANCELLED]{color:#a94450;background:#fff0f1}.program-offering-card>header>strong[data-status=COMPLETED]{color:#6257a0;background:#eceaf8}.program-offering-editor{background:#fcfdfd;border-top:1px solid #e7edef}.program-offering-editor>summary,.offering-calendar li details>summary{cursor:pointer;color:#347b96;font-size:.58rem;font-weight:900;list-style:none}.program-offering-editor>summary{padding:.75rem 1rem}.program-offering-editor>summary::-webkit-details-marker{display:none}.offering-calendar li details>summary::-webkit-details-marker{display:none}.program-offering-editor>.people-form{border-top:1px solid #e7edef;padding:.9rem 1rem}.program-delete-form{border-top:1px solid #f0dfe1;padding:.75rem 1rem}.program-danger-button{color:#a43f4c;background:#fff6f7;border:1px solid #e5bfc4;border-radius:9px;padding:.55rem .7rem;font-size:.58rem;font-weight:900}.program-group-create{background:#fafcfc;border-top:1px solid #e7edef;border-bottom:1px solid #e7edef}.offering-calendar{background:#f8fafb;border-top:1px solid #e7edef;padding:.85rem 1rem}.offering-calendar>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.offering-calendar>header>div{gap:.15rem;display:grid}.offering-calendar>header span{color:#4788a0;letter-spacing:.08em;font-size:.5rem;font-weight:950}.offering-calendar>header strong{color:#476574;font-size:.62rem}.offering-calendar ul{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.offering-calendar li{background:#fff;border:1px solid #d9e4e9;border-radius:10px;gap:.45rem;padding:.45rem 2.55rem .45rem .6rem;display:grid;position:relative}.offering-calendar li>div{gap:.1rem;min-width:0;display:grid}.offering-calendar li>.offering-period-actions{z-index:4;opacity:0;pointer-events:none;min-width:0;transition:opacity .14s;display:block;position:absolute;top:.3rem;right:.3rem}.offering-calendar li:hover>.offering-period-actions,.offering-calendar li:focus-within>.offering-period-actions{opacity:1;pointer-events:auto}.period-actions-popover{background:#fff;border:1px solid #d7e1e6;border-radius:10px;width:140px;padding:.3rem;display:grid;position:absolute;top:calc(100% + .3rem);right:0;overflow:hidden;box-shadow:0 10px 26px #233a4833}.period-actions-popover>button{width:100%;min-height:32px;box-shadow:none;color:#405f70;text-align:left;background:0 0;border:0;border-radius:7px;padding:.5rem .6rem;font-size:.6rem;font-weight:850}.period-actions-popover>button:hover,.period-actions-popover>button:focus-visible{background:#eff5f7;outline:none}.period-actions-popover>button[data-danger]{color:#ad4656}.period-actions-popover>button[data-danger]:hover,.period-actions-popover>button[data-danger]:focus-visible{background:#fff0f2}.offering-calendar li details{margin-top:.25rem}.offering-calendar li details>form{margin-top:.5rem}.offering-calendar li strong{color:#385a6c;font-size:.56rem}.offering-calendar li small{color:#81939d;font-size:.47rem}.offering-calendar>details{margin-top:.6rem}.offering-calendar>details>summary{cursor:pointer;color:#347b96;font-size:.58rem;font-weight:900}.offering-calendar>details>form{border-top:1px solid #e2e9ed;margin-top:.65rem;padding-top:.75rem}.program-group-create>form{border-top:1px solid #e7edef;padding:.9rem 1rem}.program-group-empty{color:#81929b;text-align:center;padding:1rem;font-size:.6rem}.program-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:1rem;display:grid}.program-groups>section{border:1px solid #e0e7eb;border-radius:14px;overflow:hidden}.program-groups>section>header{background:#f7fafb;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem;display:flex}.program-groups>section>header span{color:#46849b;font-size:.48rem;font-weight:950}.program-groups h4{color:#345467;margin-top:.14rem;font-size:.7rem}.program-groups>section>header p{color:#7c8e98;align-items:center;gap:.3rem;font-size:.52rem;display:flex}.program-groups>section>header p strong{color:#466372}.program-teachers{padding:.8rem}.program-teachers>ul{gap:.4rem;margin-top:.55rem;display:grid}.program-teachers>ul li{background:#f4f7f8;border-radius:9px;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .65rem;display:flex}.program-teachers li>div{gap:.1rem;display:grid}.program-teachers li strong{color:#405e70;font-size:.58rem}.program-teachers li small,.program-teachers>p{color:#82939c;font-size:.49rem}.program-teachers li button{color:#a84c56;font-size:.49rem;font-weight:850}.program-teachers>.class-assign{margin-top:.65rem}.program-empty-state{margin-top:0}@media (max-width:850px){.program-page-heading{flex-direction:column;align-items:stretch}.program-overview{width:100%}.program-setup-grid,.program-groups{grid-template-columns:1fr}}@media (max-width:600px){.program-card>header{grid-template-columns:auto 1fr}.program-card-counts{grid-column:1/-1;grid-template-columns:1fr 1fr;justify-items:stretch}.program-card-counts span,.program-card-counts strong{text-align:center}.program-level-strip{flex-direction:column;align-items:flex-start}.program-offerings,.program-setup-grid{padding:1rem}.program-offering-card>header,.program-groups>section>header{flex-direction:column;align-items:flex-start}.program-overview>div{min-width:0;padding:.7rem .35rem}.program-groups{padding:.75rem}}.general-curriculum-card{background:#fff;border:1px solid #dce5ea;border-radius:17px;margin:1rem;box-shadow:0 7px 18px #294b600f}.general-curriculum-card>header{background:linear-gradient(125deg,#f0f7fa,#fff);border-bottom:1px solid #e4eaee;align-items:center;gap:.85rem;padding:1rem;display:flex}.general-curriculum-icon{color:#fff;background:#347e98;border-radius:13px;flex:none;place-items:center;width:44px;height:44px;font-size:.66rem;font-weight:950;display:grid}.general-curriculum-card>header>div>span{color:#347e98;letter-spacing:.1em;font-size:.52rem;font-weight:950}.general-curriculum-card>header h3{color:#2d5064;margin:.16rem 0;font-size:.88rem}.general-curriculum-card>header p{color:#748994;font-size:.64rem;line-height:1.45}.level-picker a{min-width:0}.level-picker nav{grid-template-columns:repeat(auto-fill,minmax(225px,1fr))}.level-picker nav a{grid-template-columns:52px minmax(0,1fr);min-height:88px;padding:.9rem}.level-picker>header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.pedagogy-catalog-create{position:relative}.pedagogy-catalog-create>summary{cursor:pointer;color:#6257b6;background:#f5f2ff;border:1px solid #d9d4f2;border-radius:11px;padding:.65rem .8rem;font-size:.64rem;font-weight:950;list-style:none}.pedagogy-catalog-create>summary::-webkit-details-marker{display:none}.pedagogy-catalog-create>form{z-index:10;background:#fff;border:1px solid #dce4ea;border-radius:15px;gap:.7rem;width:min(390px,100vw - 2rem);padding:1rem;display:grid;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 14px 40px #1d2e432e}.pedagogy-catalog-create textarea{resize:none;min-height:82px;font:inherit;border:1px solid #d9e3e9;border-radius:9px;padding:.62rem;font-size:.62rem}.program-level-create-control{margin-top:.75rem}.curriculum-admin .program-create-trigger{color:#6257b6;width:auto;min-height:auto;box-shadow:none;background:#f5f2ff;border:1px solid #d9d4f2;border-radius:11px;padding:.65rem .8rem;font-size:.64rem;font-weight:950}.program-create-dialog textarea{resize:none;min-height:90px;font:inherit;border:1px solid #d9e3e9;border-radius:9px;padding:.62rem}.level-picker-item[draggable=true]{cursor:grab}.level-picker-item[data-dragging=true]{opacity:.45}.level-picker-item[data-drag-target=true]{background:#f4f1ff;border-color:#6757d9}.level-picker-item>a{position:relative}.level-drag-handle{color:#8176bb;font-size:1rem;font-style:normal;position:absolute;top:50%;right:.8rem;transform:translateY(-50%)}.level-reorder-status{color:#6d629f;align-self:center;font-size:.6rem;font-weight:850}.curriculum-admin .program-level-create-trigger{text-align:left;width:100%;min-height:auto;box-shadow:none;color:inherit;background:#faf9ff;border:1px dashed #cfc8ee;border-radius:14px;align-items:center;gap:.7rem;padding:.75rem .9rem;display:flex}.program-level-create-trigger>span{color:#fff;background:#6757d9;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:1rem;font-weight:900;display:grid}.program-level-create-trigger>div{gap:.12rem;display:grid}.program-level-create-trigger strong{color:#3f376f;font-size:.68rem}.program-level-create-trigger small{color:#827b9e;font-size:.57rem}.curriculum-admin .program-level-create-trigger:hover{background:#f7f5ff;border-color:#a99de3}.program-level-create-dialog{background:0 0;border:0;border-radius:18px;width:min(500px,100vw - 2rem);max-width:none;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 24px 70px #2b235447}.program-level-create-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#231c3e94}.program-level-create-dialog>section{background:#fff;border:1px solid #e4e0f2;border-radius:18px;overflow:hidden}.program-level-create-dialog header{background:#f8f6ff;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.program-level-create-dialog header span{color:#7669bf;letter-spacing:.12em;font-size:.55rem;font-weight:900}.program-level-create-dialog header h2{color:#332d58;margin:.28rem 0 .2rem;font-size:1rem}.program-level-create-dialog header p{color:#77718d;margin:0;font-size:.63rem}.curriculum-admin .program-level-create-dialog header button{width:30px;min-height:30px;box-shadow:none;color:#665f78;background:#fff;border:1px solid #ded9ec;border-radius:50%;flex:none;padding:0;font-size:1rem}.program-level-create-dialog form{gap:.9rem;padding:1.25rem;display:grid}.program-level-create-dialog form>p{color:#b34444;margin:0;font-size:.62rem}.program-level-create-dialog footer{justify-content:flex-end;gap:.6rem;margin-top:.2rem;display:flex}.curriculum-admin .program-level-create-dialog footer button{width:auto;min-height:36px;box-shadow:none;padding:.55rem .8rem;font-size:.6rem}.curriculum-admin .program-level-create-dialog footer button:first-child{color:#6f687e;background:#fff;border:1px solid #ddd9e8}.level-picker a b{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.level-picker a span,.level-picker a small{text-overflow:clip;white-space:nowrap;white-space:normal;min-width:0;overflow:visible}.level-picker a span{font-size:.82rem;line-height:1.3}.level-picker a small{font-size:.62rem;line-height:1.35}.level-picker a small[data-warning]{color:#9b6819;background:#fff1cf;border-radius:999px;width:max-content;max-width:100%;padding:.22rem .45rem;font-weight:900}.level-picker-item{background:#fff;border:2px solid #0000;border-radius:16px;display:grid;overflow:hidden;box-shadow:0 5px 18px #1f3a5212}.level-picker-item>a{box-shadow:none;border:0;border-radius:0}.level-picker-item:has(>a[aria-current=page]){background:#f8f7ff;border-color:#6757d9}.level-picker-item>a[aria-current=page]{border-color:#0000}.level-picker-item:has(>.catalog-item-actions[data-menu]){position:relative;overflow:visible}.level-picker-item:has(>.catalog-item-actions[data-menu])>a{border-radius:14px;padding-right:3.2rem}.catalog-item-actions{align-items:center;gap:.4rem;display:flex}.level-picker-item>.catalog-item-actions[data-menu]{z-index:3;opacity:0;pointer-events:none;transition:opacity .14s;position:absolute;top:.65rem;right:.65rem}.level-picker-item:hover>.catalog-item-actions[data-menu]{opacity:1;pointer-events:auto}.level-picker-item:has(.catalog-actions-menu>summary:focus-visible)>.catalog-item-actions[data-menu]{opacity:1;pointer-events:auto}.level-picker-item:has(.catalog-actions-menu[open])>.catalog-item-actions[data-menu]{opacity:1;pointer-events:auto}.level-picker-item:has(>.catalog-item-actions[data-menu]) .level-drag-handle{top:auto;bottom:.55rem;transform:none}.catalog-actions-menu{position:relative}.catalog-actions-menu>summary{cursor:pointer;color:#5f55a2;letter-spacing:.08em;background:#fffffff0;border:1px solid #d8d3ee;border-radius:10px;place-items:center;width:32px;height:32px;font-size:.72rem;list-style:none;display:grid;box-shadow:0 4px 12px #2f265b1f}.catalog-actions-menu>summary::-webkit-details-marker{display:none}.catalog-actions-menu>summary:hover,.catalog-actions-menu>summary:focus-visible,.catalog-actions-menu[open]>summary{background:#f6f3ff;border-color:#a99fe0;outline:none}.catalog-actions-menu-popover{background:#fff;border:1px solid #ddd8ed;border-radius:12px;width:max-content;min-width:180px;padding:.35rem;display:grid;position:absolute;top:calc(100% + .4rem);right:0;overflow:hidden;box-shadow:0 12px 30px #2a224f33}.curriculum-admin .catalog-actions-menu-popover>button{width:100%;min-height:34px;box-shadow:none;color:#504879;text-align:left;background:0 0;border:0;border-radius:8px;padding:.55rem .7rem;font-size:.62rem;font-weight:800}.curriculum-admin .catalog-actions-menu-popover>button:hover,.curriculum-admin .catalog-actions-menu-popover>button:focus-visible{background:#f4f1ff;outline:none}.curriculum-admin .catalog-actions-menu-popover>button[data-danger]{color:#ad4656;background:0 0}.curriculum-admin .catalog-actions-menu-popover>button[data-danger]:hover,.curriculum-admin .catalog-actions-menu-popover>button[data-danger]:focus-visible{background:#fff0f2}.level-picker-item>.catalog-item-actions:not([data-menu]){justify-content:flex-start;padding:0 .9rem .7rem 4.75rem}.curriculum-admin .catalog-item-actions>button{width:auto;min-height:auto;box-shadow:none;color:#6158a4;text-underline-offset:3px;background:0 0;border:0;border-radius:0;padding:.1rem 0;font-size:.6rem;-webkit-text-decoration:underline #bbb5d8;text-decoration:underline #bbb5d8}.curriculum-admin .catalog-item-actions>button[data-danger]{color:#b44f5e;background:0 0;margin-left:.5rem;text-decoration-color:#dfb2b8}.curriculum-admin .catalog-item-actions[data-kind=niveau]>button{color:#625b8b;text-underline-offset:3px;background:0 0;border:0;border-radius:0;min-height:auto;padding:.1rem 0;font-size:.6rem;-webkit-text-decoration:underline #bbb5d8;text-decoration:underline #bbb5d8}.curriculum-admin .catalog-item-actions[data-kind=niveau]>button[data-danger]{color:#ad5360;margin-left:.5rem;text-decoration-color:#dfb2b8}@media (hover:none){.level-picker-item>.catalog-item-actions[data-menu],.offering-calendar li>.offering-period-actions{opacity:1;pointer-events:auto}}.program-create-dialog{width:min(620px,100vw - 2rem);max-height:calc(100dvh - 2rem);overflow:hidden}.program-create-dialog>section{flex-direction:column;width:100%;max-height:calc(100dvh - 2rem);display:flex}.program-create-dialog header{padding:1.25rem 1.35rem}.program-create-dialog header span{font-size:.78rem}.program-create-dialog header h2{margin-top:.25rem;font-size:1.5rem}.program-create-dialog header p{margin-top:.35rem;font-size:.94rem;line-height:1.55}.program-create-dialog form{overscroll-behavior:contain;gap:1rem;min-height:0;padding:1.35rem;overflow-y:auto}.curriculum-admin .program-create-dialog label{color:#3d3853;gap:.5rem;font-weight:900;font-size:1.05rem!important}.curriculum-admin .program-create-dialog label small{color:#898398;margin-left:.35rem;font-weight:700;font-size:.72rem!important}.curriculum-admin .program-create-dialog input,.curriculum-admin .program-create-dialog textarea{min-height:50px;padding:.8rem .9rem;font-size:1rem!important}.curriculum-admin .program-create-dialog input::placeholder,.curriculum-admin .program-create-dialog textarea::placeholder{color:#8b8995;opacity:1;font-size:.94rem;font-weight:500}.program-create-dialog textarea{min-height:110px}.program-create-dialog form>p{font-size:.82rem;line-height:1.5}.program-create-dialog footer button{min-height:46px;padding:.7rem 1.05rem;font-size:.88rem}@media (max-height:650px){.program-create-dialog,.program-create-dialog>section{max-height:calc(100dvh - 1rem)}.program-create-dialog header,.program-create-dialog form{padding:1rem 1.2rem}}.catalog-action-dialog{background:0 0;border:0;border-radius:18px;width:min(520px,100vw - 2rem);max-width:none;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 24px 70px #2b235447}.catalog-action-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#231c3e94}.catalog-action-dialog>section{background:#fff;border-radius:18px;overflow:hidden}.catalog-action-dialog header{background:#f8f6ff;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.catalog-action-dialog header small{color:#7568bb;letter-spacing:.12em;font-size:.53rem;font-weight:900}.catalog-action-dialog header h2{color:#332d58;margin:.25rem 0 0;font-size:1rem}.curriculum-admin .catalog-action-dialog header button{width:30px;min-height:30px;box-shadow:none;color:#665f78;background:#fff;border:1px solid #ded9ec;border-radius:50%;padding:0;font-size:1rem}.catalog-action-dialog form,.catalog-delete-body{gap:.9rem;padding:1.2rem;display:grid}.catalog-action-dialog textarea{resize:vertical;min-height:90px;font:inherit;border:1px solid #d9e3e9;border-radius:9px;padding:.62rem;font-size:.6rem}.catalog-action-dialog [role=alert]{color:#b34444;margin:0;font-size:.6rem}.catalog-action-dialog footer{justify-content:flex-end;gap:.6rem;display:flex}.curriculum-admin .catalog-action-dialog footer button{width:auto;min-height:36px;box-shadow:none;padding:.55rem .8rem;font-size:.6rem}.curriculum-admin .catalog-action-dialog footer button:first-child{color:#6f687e;background:#fff;border:1px solid #ddd9e8}.catalog-delete-body>p{color:#6f687e;margin:0;font-size:.68rem;line-height:1.6}.curriculum-admin .catalog-delete-dialog footer button[data-danger]{color:#fff;background:#bd4454}.curriculum-workspace-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:.8rem 0 1rem;display:grid}.curriculum-workspace-tabs>a{color:#5f7182;background:#fff;border:1px solid #dce3ed;border-radius:14px;gap:.2rem;padding:.8rem .95rem;display:grid}.curriculum-workspace-tabs>a span{font-size:.82rem;font-weight:950}.curriculum-workspace-tabs>a small{color:#8794a2;font-size:.66rem;font-weight:700}.curriculum-workspace-tabs>a[aria-current=page]{color:#5145aa;background:#f3f0ff;border-color:#6757d9;box-shadow:0 5px 14px #4536971a}.level-session-warning{background:#fff7df;border:1px solid #ebcf8b;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex}.level-session-warning>div{gap:.2rem;display:grid}.level-session-warning strong{color:#815513;font-size:.76rem}.level-session-warning span{color:#8e744a;font-size:.66rem;line-height:1.45}.level-session-warning>a{color:#513b12;background:#e9b743;border-radius:10px;flex:none;padding:.62rem .75rem;font-size:.68rem;font-weight:950}.level-session-panel{background:#fff;border:1px solid #dde4ed;border-radius:19px;gap:.9rem;padding:1rem;display:grid}.level-session-panel>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.level-session-panel>header>div{gap:.2rem;display:grid}.level-session-panel>header span{color:#6757d9;letter-spacing:.1em;font-size:.62rem;font-weight:950}.level-session-panel>header h3{color:#294b60;font-size:1.05rem}.level-session-panel>header p,.level-session-empty p{color:#7a8c99;font-size:.72rem;line-height:1.5}.level-session-panel>header .session-create-trigger{color:#5a4db4;background:#f4f1ff;border-color:#bcb3ec;width:auto;min-width:max-content;font-size:.74rem}.level-session-panel .program-offering-card>header span{font-size:.64rem}.level-session-panel .program-offering-card>header h3{font-size:1rem}.level-session-panel .program-offering-card>header p{font-size:.72rem;line-height:1.5}.level-session-panel .program-offering-card>header>strong{font-size:.64rem}.level-session-panel .session-edition-actions>button{font-size:.74rem}.level-session-panel .offering-calendar>header span{font-size:.62rem}.level-session-panel .offering-calendar>header strong{font-size:.74rem}.level-session-panel .offering-calendar li strong{font-size:.68rem}.level-session-panel .offering-calendar li small{font-size:.6rem}.level-session-panel .period-create-trigger,.level-session-panel .periods-complete-badge,.level-session-panel .period-reference-required{font-size:.7rem}.level-session-list{gap:.8rem;display:grid}.level-session-empty{text-align:center;background:#fafbfe;border:2px dashed #d9dfeb;border-radius:15px;padding:1.3rem}.level-session-empty strong{color:#526879;font-size:.82rem}.level-session-empty p{margin-top:.25rem}.session-level-context{background:#f7f5ff;border:1px solid #d9d4ef;border-radius:12px;gap:.25rem;padding:.75rem .85rem;display:grid}.session-level-context>span{color:#7669bf;letter-spacing:.09em;font-size:.5rem;font-weight:950}.session-level-context>strong{color:#41396d;font-size:.7rem}@media (max-width:600px){.curriculum-workspace-tabs{grid-template-columns:1fr}.level-session-panel>header{flex-direction:column;align-items:stretch}.level-session-panel>header .session-create-trigger{width:100%}.level-session-warning{flex-direction:column;align-items:stretch}.level-session-warning>a{text-align:center}.level-picker>header{flex-direction:column;align-items:stretch}.pedagogy-catalog-create>summary{text-align:center}.pedagogy-catalog-create>form{width:100%;margin-top:.5rem;position:static}}.curriculum-title h2{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.general-curriculum-body{padding:1rem}@media (max-width:600px){.general-curriculum-card{margin:.75rem}.general-curriculum-card>header{align-items:flex-start}.general-curriculum-body{padding:.75rem}}.calendar-program-list{gap:1.25rem;display:grid}.calendar-program-card{background:#fff;border:1px solid #d9e3e9;border-radius:22px;box-shadow:0 10px 28px #1f3b4f12}.calendar-program-card>header{background:linear-gradient(125deg,#f0f6fa,#fff 65%);border-radius:22px 22px 0 0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:1.15rem 1.25rem;display:grid}.calendar-program-card>header small{color:#4087a0;letter-spacing:.1em;font-size:.7rem;font-weight:950}.calendar-program-card>header h2{color:#294b60;margin:.18rem 0;font-size:1.2rem}.calendar-program-card>header p{color:#748893;font-size:.8rem}.calendar-program-card>header .session-create-trigger{background:#fff;border-color:#aec8d4;width:auto;min-width:max-content}.calendar-program-summary{justify-items:end;gap:.3rem;display:grid}.calendar-program-summary span,.calendar-program-summary strong{border-radius:999px;padding:.38rem .62rem;font-size:.72rem}.calendar-program-summary span{color:#627987;background:#edf3f5}.calendar-program-summary strong{color:#2c7c67;background:#e9f5f1}.calendar-program-empty{text-align:center;background:#f9fbfc;border:2px dashed #d7e2e7;border-radius:15px;margin:1rem;padding:1.4rem}.calendar-program-empty strong{color:#486678;font-size:.9rem}.calendar-program-empty p{color:#7b909c;margin-top:.25rem;font-size:.78rem}.calendar-session-list{background:#f4f7f9;border-top:1px solid #e5ecef;gap:1rem;padding:1rem;display:grid}.calendar-session-card{background:#fff;border:1px solid #d8e3e8;border-radius:18px;box-shadow:0 5px 16px #253d4c0f}.calendar-session-card>header{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.8rem;padding:1rem 1.1rem;display:grid}.calendar-session-identity>span{color:#6154bd;background:#ece9ff;border-radius:999px;padding:.25rem .5rem;font-size:.7rem;font-weight:950;display:inline-flex}.calendar-session-identity h3{color:#294b60;margin:.35rem 0 .15rem;font-size:1.02rem}.calendar-session-identity p{color:#6f8490;font-size:.8rem;font-weight:750}.calendar-session-card>header>strong{color:#647986;background:#eef2f4;border-radius:999px;padding:.42rem .65rem;font-size:.7rem}.calendar-session-card>header>strong[data-status=UPCOMING]{color:#8a641e;background:#fff3d9}.calendar-session-card>header>strong[data-status=IN_PROGRESS],.calendar-session-card>header>strong[data-status=REGISTRATION_OPEN]{color:#27765e;background:#e5f5ee}.calendar-session-card>header>strong[data-status=CANCELLED]{color:#a94450;background:#fff0f1}.calendar-session-card>header>strong[data-status=COMPLETED]{color:#6257a0;background:#eceaf8}.calendar-session-card>header .session-edition-actions{margin:0}.calendar-session-card>header .session-edition-actions>button{min-height:36px;padding:.55rem .7rem;font-size:.72rem}.calendar-timeline{background:#fbfcfd;border-top:1px solid #e7edef;border-bottom:1px solid #e7edef;padding:.85rem 1.1rem 1rem}.calendar-timeline-scale{color:#6f8490;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:.45rem;font-size:.68rem;font-weight:800;display:grid}.calendar-timeline-scale span{color:#80939d;letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:950}.calendar-timeline-scale time:last-child{text-align:right}.calendar-timeline-track{background:repeating-linear-gradient(90deg,#0000 0 calc(12.5% - 1px),#e8eef1 calc(12.5% - 1px) 12.5%),#f6f9fa;border:1px solid #d8e3e8;border-radius:13px;height:74px;position:relative;overflow:hidden}.calendar-timeline-period{top:11px;left:var(--timeline-left);width:var(--timeline-width);background:var(--timeline-color);color:#fff;min-width:12px;height:50px;box-shadow:0 4px 10px color-mix(in srgb, var(--timeline-color) 28%, transparent);border:2px solid #fff;border-radius:10px;align-items:center;padding:0 .55rem;display:flex;position:absolute;overflow:hidden}.calendar-timeline-period strong{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.calendar-timeline-empty{color:#8798a1;place-items:center;font-size:.74rem;font-weight:800;display:grid;position:absolute;inset:0}.calendar-period-details{border-top:0;border-radius:0 0 18px 18px;padding:.9rem 1.1rem 1rem}.calendar-period-details>header{align-items:flex-start}.calendar-period-details>header>div{min-width:135px;padding-top:.2rem}.calendar-period-details>header span{font-size:.66rem}.calendar-period-details>header strong{font-size:.78rem}.calendar-period-details ul{flex:1;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));display:grid}.calendar-period-details li{min-width:0}.calendar-period-details li strong{font-size:.76rem}.calendar-period-details li small{font-size:.68rem}@media (max-width:900px){.calendar-program-card>header{grid-template-columns:auto minmax(0,1fr)}.calendar-program-summary{grid-column:1/-1;grid-template-columns:repeat(2,1fr);justify-items:stretch}.calendar-program-summary span,.calendar-program-summary strong{text-align:center}.calendar-program-card>header .session-create-trigger{grid-column:1/-1;width:100%}}.session-actions-trigger,.period-actions-trigger:not(.is-timeline){cursor:pointer;color:#55717f;width:30px;height:30px;font:inherit;background:#fff;border:1px solid #d3dfe4;border-radius:8px;place-items:center;font-size:.6rem;display:grid}.period-actions-trigger:not(.is-timeline){width:26px;height:26px;box-shadow:0 3px 9px #2944541f}.session-actions-trigger:hover,.session-actions-trigger:focus-visible,.period-actions-trigger:not(.is-timeline):hover,.period-actions-trigger:not(.is-timeline):focus-visible{background:#eef4f6;border-color:#9eb6c2;outline:none}.calendar-period-action .period-actions-trigger.is-timeline{cursor:pointer;background:var(--calendar-color);color:#fff;width:100%;height:100%;font:inherit;text-align:left;box-shadow:0 5px 12px color-mix(in srgb, var(--calendar-color) 28%, transparent);border:2px solid #fff;border-radius:10px;flex-direction:column;justify-content:center;padding:0 .55rem;display:flex;overflow:hidden}.calendar-period-action .period-actions-trigger.is-timeline:hover,.calendar-period-action .period-actions-trigger.is-timeline:focus-visible{filter:brightness(1.07);outline:3px solid color-mix(in srgb, var(--calendar-color) 18%, transparent)}.calendar-period-action .period-actions-trigger.is-timeline span{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:.69rem;font-weight:950;overflow:hidden}.calendar-period-action .period-actions-trigger.is-timeline small{opacity:.82;text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:.1rem;font-size:.55rem;overflow:hidden}.calendar-floating-actions,.session-actions-popover.calendar-floating-actions,.period-actions-popover.calendar-floating-actions{z-index:10000;background:#fff;border:1px solid #d7e1e6;border-radius:10px;width:140px;margin:0;padding:.3rem;position:fixed;inset:auto;overflow:hidden;box-shadow:0 14px 34px #233a4847}@media (max-width:700px){.calendar-session-card>header{grid-template-columns:1fr auto}.calendar-session-card>header .session-edition-actions{grid-column:1/-1}.calendar-period-details>header{flex-direction:column}.calendar-period-details ul{grid-template-columns:1fr;width:100%}.calendar-timeline-scale span{display:none}.calendar-timeline-scale{grid-template-columns:1fr 1fr}}.calendar-admin .program-page-heading{margin-bottom:1rem}.calendar-program-list{gap:1rem}.calendar-program-card{border-radius:18px;overflow:visible;box-shadow:0 8px 24px #1f3b4f0f}.calendar-program-card>header{border-bottom:1px solid #d9e3e9;border-radius:18px 18px 0 0;grid-template-columns:auto minmax(0,1fr) auto auto;padding:.85rem 1.1rem}.calendar-program-card>header h2{margin:.1rem 0 0;font-size:1.02rem}.calendar-program-count{color:#587684;background:#edf4f6;border-radius:999px;padding:.4rem .65rem;font-size:.7rem;font-weight:850}.calendar-program-card>header .session-create-trigger{min-height:38px;padding:.55rem .75rem;font-size:.7rem}.calendar-matrix-scroll{border-radius:0 0 18px 18px;overflow-x:auto}.calendar-matrix{background:#fff;min-width:920px}.calendar-month-row,.calendar-matrix-row{grid-template-columns:275px minmax(680px,1fr);display:grid}.calendar-month-row{z-index:8;background:#f8fafb;border-bottom:1px solid #dce6ea;min-height:48px;position:sticky;top:0}.calendar-corner-label{color:#718894;letter-spacing:.08em;text-transform:uppercase;border-right:1px solid #dce6ea;align-items:center;padding:0 1rem;font-size:.62rem;font-weight:950;display:flex}.calendar-month-scale{grid-template-columns:repeat(var(--calendar-months), minmax(0, 1fr));display:grid}.calendar-month-scale>span{color:#55717f;text-transform:capitalize;border-right:1px solid #dce6ea;place-items:center;font-size:.66rem;font-weight:900;display:grid}.calendar-matrix-row{border-bottom:1px solid #e1e9ed;min-height:116px;position:relative}.calendar-matrix-row:last-child{border-bottom:0}.calendar-row-identity{background:#fff;border-right:1px solid #dce6ea;grid-template-columns:minmax(0,1fr) auto auto;align-content:center;align-items:center;gap:.35rem .45rem;padding:.75rem .8rem .65rem 1rem;display:grid;position:relative}.calendar-row-identity>div:first-child{grid-column:1/-1;gap:.12rem;min-width:0;display:grid}.calendar-row-identity>div:first-child>span{color:#6758c2;text-transform:uppercase;font-size:.68rem;font-weight:950}.calendar-row-identity>div:first-child>strong{color:#2e5064;font-size:.78rem}.calendar-row-identity>div:first-child>small{color:#7a8f99;font-size:.65rem;font-weight:750}.calendar-lifecycle{color:#647986;white-space:nowrap;background:#edf2f4;border-radius:999px;grid-area:2/2;padding:.3rem .48rem;font-size:.58rem;font-weight:900}.calendar-lifecycle[data-status=UPCOMING]{color:#8a641e;background:#fff3d9}.calendar-lifecycle[data-status=IN_PROGRESS]{color:#27765e;background:#e5f5ee}.calendar-lifecycle[data-status=COMPLETED]{color:#6257a0;background:#eceaf8}.calendar-lifecycle[data-status=ARCHIVED],.level-session-panel .program-offering-card>header>strong[data-status=ARCHIVED]{color:#647984;background:#edf1f2}.calendar-row-track{grid-template-columns:repeat(var(--calendar-months), minmax(0, 1fr));background:#fbfcfd;display:grid;position:relative;overflow:visible}.calendar-month-column{border-right:1px solid #e3eaee}.calendar-session-window,.calendar-no-periods{left:var(--calendar-left);width:var(--calendar-width);position:absolute}.calendar-session-window{background:#edf3f5;border:1px solid #c9d9e0;border-radius:12px;height:70px;top:21px}.calendar-no-periods{color:#718792;border:1px dashed #bacbd3;border-radius:12px;place-items:center;height:70px;font-size:.68rem;font-weight:850;display:grid;top:21px}.calendar-period-action{z-index:4;top:27px;left:var(--calendar-left);width:var(--calendar-width);min-width:34px;height:58px;position:absolute}.calendar-period-action .period-actions-popover{z-index:20}.calendar-row-identity>.session-edition-actions{grid-area:2/3}.session-actions-popover{z-index:30;background:#fff;border:1px solid #d7e1e6;border-radius:10px;width:135px;padding:.3rem;display:grid;position:absolute;top:calc(100% + .3rem);right:0;box-shadow:0 10px 26px #233a4833}.session-actions-popover button{color:#405f70;min-height:32px;font:inherit;text-align:left;background:0 0;border:0;border-radius:7px;padding:.5rem .6rem;font-size:.62rem;font-weight:850}.session-actions-popover button:hover{background:#eff5f7}.session-actions-popover button[data-danger]{color:#ad4656}.session-actions-popover button[data-danger]:hover{background:#fff0f2}.calendar-row-add{grid-area:2/1;min-width:0}.calendar-row-add .period-create-trigger[data-compact]{cursor:pointer;color:#fff;background:#28677f;border:1px solid #28677f;border-radius:8px;justify-content:center;align-items:center;width:auto;min-height:30px;margin:0;padding:.4rem .62rem;font-size:.62rem;font-weight:950;display:inline-flex;box-shadow:0 3px 8px #28677f2e}.calendar-row-add .period-create-trigger[data-compact]:hover,.calendar-row-add .period-create-trigger[data-compact]:focus-visible{background:#1f5368;border-color:#1f5368;outline:none}.calendar-row-add .periods-complete-badge[data-compact],.calendar-row-add .period-reference-required[data-compact]{background:0 0;border:0;margin:0;padding:0;font-size:.58rem}.calendar-row-add .period-reference-required[data-compact]{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.calendar-row-add .periods-complete-badge[data-compact]>span{width:14px;height:14px}.calendar-row-add .period-reference-required[data-compact]>a{color:#765b12;background:#f5d675;border:1px solid #d2b45e;border-radius:8px;justify-content:center;align-items:center;min-height:28px;margin-left:0;padding:.35rem .58rem;font-weight:950;line-height:1;text-decoration:none;display:inline-flex;box-shadow:0 3px 8px #765b1226}.calendar-row-add .period-reference-required[data-compact]>a:hover,.calendar-row-add .period-reference-required[data-compact]>a:focus-visible{background:#ebc64f;border-color:#b58f25;outline:none}.calendar-today-line{z-index:6;top:0;bottom:0;left:var(--calendar-left);pointer-events:none;background:#ee546c;width:2px;position:absolute}.calendar-today-line:before{content:"";background:#ee546c;border-radius:50%;width:10px;height:10px;position:absolute;top:7px;left:-4px}.calendar-today-line b{color:#c63e55;white-space:nowrap;background:#fff0f2;border-radius:5px;padding:.18rem .3rem;font-size:.5rem;position:absolute;top:5px;left:8px}.calendar-matrix-row.is-missing{min-height:88px}.calendar-matrix-row.is-missing .calendar-row-identity{background:#fffaf0;grid-template-columns:minmax(0,1fr) auto}.calendar-matrix-row.is-missing .session-create-trigger{width:auto;margin:0;padding:.45rem .55rem;font-size:.6rem}.calendar-missing-message{color:#8b7327;border:1px dashed #d9c98e;border-radius:10px;place-items:center;font-size:.67rem;font-weight:850;display:grid;position:absolute;inset:16px 12px}@media (max-width:900px){.calendar-program-card>header{grid-template-columns:auto minmax(0,1fr) auto}.calendar-program-card>header .session-create-trigger{grid-column:auto;width:auto}.calendar-program-count{display:none}}.calendar-period-action .calendar-period-label{background:var(--calendar-color);color:#fff;width:100%;height:100%;box-shadow:0 5px 12px color-mix(in srgb, var(--calendar-color) 28%, transparent);border:2px solid #fff;border-radius:10px;flex-direction:column;justify-content:center;padding:0 2.35rem 0 .55rem;display:flex;overflow:hidden}.calendar-period-action .calendar-period-label span,.calendar-period-action .calendar-period-label small{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.calendar-period-action .calendar-period-label span{font-size:.69rem;font-weight:950}.calendar-period-action .calendar-period-label small{opacity:.82;margin-top:.1rem;font-size:.55rem}.calendar-period-action:hover .calendar-period-label,.calendar-period-action:focus-within .calendar-period-label{filter:brightness(1.07);outline:3px solid color-mix(in srgb, var(--calendar-color) 18%, transparent)}.calendar-period-action .period-actions-trigger.is-timeline{z-index:2;cursor:pointer;color:#fff;width:28px;height:28px;font:inherit;letter-spacing:.04em;opacity:0;pointer-events:none;background:#182b3dd1;border:1px solid #ffffffc7;border-radius:8px;place-items:center;padding:0;font-size:.62rem;transition:opacity .14s,background .14s;display:grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%);box-shadow:0 3px 9px #182b3d3d}.calendar-period-action:hover .period-actions-trigger.is-timeline,.calendar-period-action:focus-within .period-actions-trigger.is-timeline{opacity:1;pointer-events:auto}.calendar-period-action .period-actions-trigger.is-timeline:hover,.calendar-period-action .period-actions-trigger.is-timeline:focus-visible{background:#182b3df5;outline:2px solid #fff}.calendar-row-identity>.session-edition-actions,.level-session-panel .program-offering-card>header>.session-edition-actions{opacity:0;pointer-events:none;margin:0;transition:opacity .14s}.level-session-panel .program-offering-card>header:hover>.session-edition-actions,.level-session-panel .program-offering-card>header:focus-within>.session-edition-actions{opacity:1;pointer-events:auto}.calendar-row-identity:hover:not(:has(.calendar-row-add:hover))>.session-edition-actions{opacity:1;pointer-events:auto}.calendar-row-identity:focus-within:not(:has(.calendar-row-add:focus-within))>.session-edition-actions{opacity:1;pointer-events:auto}.offering-calendar li:focus-within>.offering-period-actions{opacity:1;pointer-events:auto}.session-edition-actions>.session-actions-trigger,.level-session-panel .session-edition-actions>.session-actions-trigger{border-radius:8px;flex:0 0 30px;place-items:center;width:30px;min-width:30px;height:30px;min-height:30px;padding:0;font-size:.6rem;line-height:1;display:grid}.session-actions-trigger>span,.period-actions-trigger>span,.calendar-period-action .period-actions-trigger.is-timeline>span{width:auto;font-size:.6rem;line-height:1;display:block;overflow:visible}.level-session-panel .program-offering-card>header{align-items:center;gap:.6rem}.level-session-panel .program-offering-card>header>div:first-child{flex:1;min-width:0}.level-session-panel .program-offering-card>header>strong,.level-session-panel .program-offering-card>header>.session-edition-actions{flex:none;align-self:center}@media (hover:none){.calendar-period-action .period-actions-trigger.is-timeline,.calendar-row-identity>.session-edition-actions,.level-session-panel .program-offering-card>header>.session-edition-actions{opacity:1;pointer-events:auto}}.curriculum-admin .catalog-actions-menu-popover>button,.curriculum-admin .catalog-item-actions>button,.catalog-action-dialog button,.catalog-delete-dialog footer button{cursor:pointer}.catalog-action-dialog button:disabled,.catalog-delete-dialog footer button:disabled{cursor:progress}.catalog-delete-summary{color:#4f4878;background:#f7f5ff;border-left:3px solid #d8d3ee;padding:.55rem .7rem;font-size:.78rem;line-height:1.5}.catalog-delete-dialog [role=alert]{color:#a54250;background:#fff0f2;border:1px solid #efc5ca;border-radius:10px;padding:.6rem .75rem;font-size:.78rem;font-weight:800;line-height:1.45}
.enrollment-public-page{width:min(900px,100% - 2rem);margin:3rem auto;padding-bottom:4rem}.enrollment-public-page>header{text-align:center;margin-bottom:1.5rem}.enrollment-public-page>header p{color:#287f91;font-weight:900}.enrollment-public-page>header h1{color:#294d5e;margin:.3rem 0;font-size:clamp(1.7rem,4vw,2.7rem)}.enrollment-public-page>header span{color:#617a86}.enrollment-public-form,.enrollment-public-success{background:#fff;border:1px solid #dbe7e9;border-radius:22px;gap:1rem;padding:clamp(1rem,3vw,2rem);display:grid;box-shadow:0 18px 48px #274a581a}.enrollment-public-form fieldset,.campaign-form fieldset,.enrollment-validation-dialog fieldset{border:1px solid #dce6e9;border-radius:14px;gap:.65rem;padding:1rem;display:grid}.enrollment-public-form legend,.campaign-form legend,.enrollment-validation-dialog legend{color:#345766;padding:0 .4rem;font-weight:950}.enrollment-public-form label,.campaign-form>label,.enrollment-fields label{color:#4b6774;gap:.35rem;font-size:.75rem;font-weight:850;display:grid}.enrollment-public-form input:not([type=checkbox]),.enrollment-public-form select,.enrollment-public-form textarea,.campaign-form input:not([type=checkbox]),.campaign-form select,.campaign-form textarea,.enrollment-validation-dialog input:not([type=checkbox]),.enrollment-validation-dialog select{box-sizing:border-box;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cedde1;border-radius:10px;padding:.65rem .75rem;display:block}.enrollment-public-form textarea,.campaign-form textarea{resize:vertical}.enrollment-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.enrollment-fields .wide{grid-column:1/-1}.enrollment-group-choice{cursor:pointer;background:#f9fbfb;border:1px solid #dee7e9;border-radius:11px;align-items:center;gap:.65rem;padding:.7rem;display:flex!important}.enrollment-group-choice:has(input:checked){background:#edf8f4;border-color:#65ad98}.enrollment-group-choice input{accent-color:#288b74;width:18px;height:18px}.enrollment-group-choice span{display:grid}.enrollment-group-choice small{color:#788d96}.enrollment-public-form button,.campaign-form>button{color:#fff;min-height:46px;font:inherit;background:#287f91;border:0;border-radius:11px;font-weight:950}.enrollment-public-form em{color:#a6424d;font-size:.6rem}.form-error{color:#9f3e49;background:#fff0f2;border-radius:10px;padding:.75rem;font-weight:850}.enrollment-admin-section{gap:.7rem;margin-bottom:1.2rem;display:grid}.enrollment-admin-section>details{background:#fff;border:1px solid #dbe5e8;border-radius:15px}.enrollment-admin-section>details>summary{cursor:pointer;color:#364c66;justify-content:space-between;gap:1rem;padding:1rem;font-size:.72rem;display:flex}.campaign-form{border-top:1px solid #e4ebed;gap:1rem;padding:1rem;display:grid}.campaign-field-choice{border-bottom:1px solid #edf1f2;grid-template-columns:1fr auto;gap:.5rem;padding:.4rem;display:grid}.campaign-field-choice label{color:#506b77;align-items:center;gap:.4rem;font-size:.68rem;display:flex}.enrollment-validation-dialog{border:0;border-radius:20px;width:min(650px,100vw - 2rem);max-width:none;max-height:calc(100vh - 2rem);margin:auto;padding:0;position:fixed;inset:0}.enrollment-validation-dialog>.credential-reveal{margin:1.2rem}.enrollment-validation-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a273199}.enrollment-validation-dialog>form{gap:1rem;padding:1.2rem;display:grid}.enrollment-validation-dialog header,.enrollment-validation-dialog footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.enrollment-validation-dialog header button{border:0;border-radius:9px;width:36px;height:36px;font-size:1.2rem}.enrollment-validation-dialog footer{border-top:1px solid #e4ebed;justify-content:flex-end;padding-top:1rem}.enrollment-validation-dialog footer button{border:0;border-radius:10px;min-height:42px;padding:.6rem .8rem;font-weight:900}.account-existing{color:#286c58;background:#eef9f5;border:1px solid #b9dfd1;border-radius:12px;padding:.8rem}.application-status-form{gap:.6rem;margin:.8rem 0;display:flex}.application-list article dl{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.55rem;display:grid}.application-list article dl>div{background:#f5f8f9;border-radius:10px;padding:.65rem}.application-list article dt{color:#778b94;font-size:.58rem}.application-list article dd{color:#3b5967;margin:.15rem 0 0;font-size:.68rem;font-weight:900}.application-list article a+a{margin-left:.6rem}@media (max-width:650px){.enrollment-fields{grid-template-columns:1fr}.enrollment-admin-section>details>summary{flex-direction:column}}.account-activation-link{color:#286c58;background:#eef9f5;border:1px solid #b9dfd1;border-radius:12px;margin:.8rem 0;padding:.8rem}.account-activation-link p{margin:.25rem 0;font-size:.65rem}.account-activation-link a{overflow-wrap:anywhere;color:#176b75;font-size:.65rem;font-weight:850;display:block}.account-activation-parent{color:#594d91;background:#f5f2ff;border-color:#cfc7ec}.account-activation-parent a{color:#6253a5}.application-payment-summary{background:#f3fbf7;border:1px solid #b9dfd1;border-radius:14px;gap:.55rem;margin:.8rem 0;padding:.85rem;display:grid}.application-payment-summary>header{align-items:center;gap:.65rem;display:flex}.application-payment-summary>header>span{color:#217159;background:#d9f1e6;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:950;display:grid}.application-payment-summary>header>div{display:grid}.application-payment-summary>header small{color:#317763;letter-spacing:.08em;font-size:.55rem;font-weight:950}.application-payment-summary>header strong{color:#1f5f4e;font-size:1rem}.application-payment-summary>div{border-top:1px solid #dcece5;gap:.22rem;padding-top:.5rem;display:grid}.application-payment-summary>div>strong{color:#365c51;font-size:.67rem}.application-payment-summary>div>span,.application-payment-summary>p{color:#647c74;justify-content:space-between;gap:.8rem;font-size:.62rem;display:flex}.application-payment-summary b{color:#235f4e}.account-creation-notice ul{gap:.35rem;margin:.55rem 0 0;padding-left:1.1rem;display:grid}.account-creation-notice li{font-size:.64rem;line-height:1.45}.application-program-registration{color:#456b61;background:#f3faf7;border:1px solid #cce4df;border-radius:11px;padding:.75rem;font-size:.76rem;line-height:1.55}.program-level-picker>p,.builder-help{color:#71868f;margin:0;font-size:.68rem;line-height:1.5}.program-level-picker>section{background:#fff;border:1px solid #dce6e8;border-radius:13px;overflow:hidden}.program-level-picker>section>header{color:#345766;background:#f1f6f7;justify-content:space-between;align-items:center;padding:.75rem .85rem;display:flex}.program-level-picker>section>header span{color:#7a8e96;font-size:.6rem}.program-level-picker>section>div{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;padding:.75rem;display:grid}.program-level-picker>section label{color:#4a6673;cursor:pointer;border:1px solid #dce5e7;border-radius:10px;align-items:center;gap:.55rem;padding:.65rem;font-size:.7rem;font-weight:900;display:flex}.program-level-picker>section label:has(input:checked){color:#28745f;background:#edf8f4;border-color:#61ab95}.program-level-picker input,.form-builder input[type=checkbox]{accent-color:#288b74;width:17px;height:17px}.form-builder{gap:1rem;display:grid}.builder-core-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.55rem;display:grid}.builder-core-grid article{background:#fff;border:1px solid #dce5e7;border-radius:11px;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem;display:flex}.builder-core-grid article>label{color:#425f6d;align-items:center;gap:.45rem;font-size:.68rem;display:flex}.builder-required{white-space:nowrap;color:#6e838c!important;align-items:center!important;gap:.4rem!important;font-size:.61rem!important;display:flex!important}.builder-rows{gap:.6rem;display:grid}.builder-rows article{background:#fff;border:1px solid #dce5e7;border-radius:12px;grid-template-columns:minmax(180px,1fr) minmax(145px,.55fr) auto auto;align-items:end;gap:.6rem;padding:.75rem;display:grid}.builder-rows article label{color:#55707c;gap:.3rem;font-size:.63rem;font-weight:900;display:grid}.builder-rows article button{color:#a04450;background:#fff0f2;border:0;border-radius:9px;min-height:40px;padding:.5rem .7rem;font-size:.61rem;font-weight:900}.builder-add{color:#28735f;background:#eef9f5;border:1px dashed #60a995;border-radius:10px;width:max-content;min-height:40px;padding:.55rem .8rem;font-size:.65rem;font-weight:950}.public-level-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.55rem;display:grid}@media (max-width:700px){.builder-rows article{grid-template-columns:1fr}.builder-rows article button{width:100%}}.campaign-create-row{justify-content:flex-end;display:flex}.campaign-dialog-trigger{color:#fff;min-height:42px;font:inherit;background:#287f91;border:0;border-radius:10px;padding:.65rem .9rem;font-size:.67rem;font-weight:950}.campaign-card{background:#fff;border:1px solid #dbe5e8;border-radius:15px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.campaign-card>div{grid-template-columns:auto 1fr;align-items:center;gap:.3rem .65rem;display:grid}.campaign-card>div>span{color:#627983;background:#edf2f3;border-radius:99px;grid-row:1/3;padding:.35rem .55rem;font-size:.57rem;font-weight:950}.campaign-card>div>span[data-status=OPEN]{color:#28755f;background:#e8f7f1}.campaign-card>div>span[data-status=DRAFT]{color:#8a6420;background:#fff4db}.campaign-card>div>span[data-status=EXPIRED]{color:#9a5a1f;background:#fdeee0}.campaign-card>div>span[data-status=CLOSED]{color:#9a3f4d;background:#fdecee}.campaign-card>div>span[data-status=ARCHIVED]{color:#5c6b74;background:#eef0f2}.campaign-card>div strong{color:#345563;font-size:.78rem}.campaign-card>div small{color:#7b8f97;font-size:.6rem}.campaign-card nav{align-items:center;gap:.55rem;display:flex;position:relative}.campaign-card nav>a{color:#287383;font-size:.64rem;font-weight:900}.campaign-card .catalog-actions-menu{z-index:1;position:relative}.campaign-card .catalog-actions-menu[open]{z-index:60}.campaign-card .catalog-actions-menu-popover{z-index:60;gap:.1rem;min-width:180px;padding:.3rem;display:grid}.campaign-card .catalog-actions-menu-popover>button{all:unset;box-sizing:border-box;color:#425a67;width:100%;min-height:32px;font:inherit;cursor:pointer;text-align:left;border-radius:8px;padding:.5rem .6rem;font-size:.64rem;font-weight:800;display:block}.campaign-card .catalog-actions-menu-popover>button:hover,.campaign-card .catalog-actions-menu-popover>button:focus-visible{background:#f4f7f8;outline:none}.campaign-card .catalog-actions-menu-popover>button.delete{color:#ad4656}.campaign-dialog{background:#fff;border:0;border-radius:22px;width:min(900px,100vw - 2rem);max-width:none;height:min(92vh,900px);max-height:none;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 28px 90px #1a28324d}.campaign-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1926309e}.campaign-dialog>form{grid-template-rows:auto minmax(0,1fr) auto auto;height:100%;display:grid}.campaign-dialog>form>header{border-bottom:1px solid #e4ebed;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.campaign-dialog>form>header p{color:#6558ba;text-transform:uppercase;font-size:.58rem;font-weight:950}.campaign-dialog>form>header h2{color:#345563;margin-top:.15rem;font-size:1rem}.campaign-dialog>form>header button{color:#58717d;background:#edf2f3;border:0;border-radius:9px;place-items:center;width:36px;height:36px;font-size:1.15rem;display:grid}.campaign-dialog-body{padding:0 1.2rem;overflow:auto}.campaign-form input[aria-invalid=true],.campaign-form select[aria-invalid=true]{background:#fff6f6;border-color:#c94f4f}.field-error-text{font-weight:800;color:#a13f4c!important}.campaign-dialog .campaign-form{border:0;padding:1.1rem 0}.campaign-dialog>form>.form-error{margin:0 1.2rem}.campaign-dialog>form>footer{border-top:1px solid #e4ebed;justify-content:flex-end;gap:.65rem;padding:1rem 1.2rem;display:flex}.campaign-dialog>form>footer button{min-height:43px;font:inherit;border:0;border-radius:10px;padding:.65rem .9rem;font-size:.67rem;font-weight:950}.campaign-dialog>form>footer button:first-child{color:#58717d;background:#edf2f3}.campaign-dialog>form>footer button:last-child{color:#fff;background:#288b74}.campaign-dialog>form>footer button:disabled{opacity:.6}@media (max-width:650px){.campaign-card{flex-direction:column;align-items:stretch}.campaign-card nav{justify-content:space-between}.campaign-dialog{width:calc(100vw - 1rem);height:calc(100vh - 1rem)}}.application-list>h2,.application-list>.crud-empty{grid-column:1/-1}.application-list>.crud-empty{color:#71868f;text-align:center;background:#f8fbfb;border:2px dashed #d7e3e6;border-radius:14px;width:100%;min-height:130px;display:block}.campaign-form .enrollment-fields textarea[name=description]{resize:none}.campaign-card nav form{margin:0}.campaign-publish{color:#fff;min-height:42px;font:inherit;background:#288b74;border:0;border-radius:10px;padding:.65rem .9rem;font-size:.67rem;font-weight:950}.publish-campaign-dialog{background:0 0;border:0;border-radius:20px;width:min(560px,100vw - 2rem);max-width:none;margin:auto;padding:0;position:fixed;inset:0}.publish-campaign-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1926309e}.publish-campaign-dialog>section{background:#fff;border-radius:20px;padding:1.2rem}.publish-campaign-dialog header{align-items:center;gap:.8rem;display:flex}.publish-campaign-dialog header>span{color:#28775f;background:#e9f7f2;border-radius:14px;flex:none;place-items:center;width:46px;height:46px;font-size:1.1rem;font-weight:950;display:grid}.publish-campaign-dialog header p{color:#288b74;text-transform:uppercase;font-size:.58rem;font-weight:950}.publish-campaign-dialog h2{color:#345563;margin-top:.15rem;font-size:1rem}.publish-campaign-dialog>section>p{color:#607985;margin-top:1rem;font-size:.72rem;line-height:1.6}.publish-url{background:#f0f9f6;border:1px solid #cfe5dc;border-radius:12px;gap:.3rem;margin-top:1rem;padding:.8rem;display:grid}.publish-url small{color:#668078;font-size:.58rem;font-weight:900}.publish-url a{overflow-wrap:anywhere;color:#176f77;font-size:.68rem;font-weight:900}.publish-campaign-dialog footer{border-top:1px solid #e5ebed;justify-content:flex-end;gap:.65rem;margin-top:1rem;padding-top:1rem;display:flex}.publish-campaign-dialog footer button{min-height:43px;font:inherit;border:0;border-radius:10px;padding:.65rem .9rem;font-size:.67rem;font-weight:950}.publish-campaign-dialog footer button:first-child{color:#58717d;background:#edf2f3}.publish-campaign-dialog footer button:last-child{color:#fff;background:#288b74}.publish-campaign-dialog footer button:disabled{opacity:.6}.campaign-visibility-trigger{color:#fff;min-height:42px;font:inherit;background:#288b74;border:0;border-radius:10px;padding:.65rem .9rem;font-size:.67rem;font-weight:950}.campaign-visibility-trigger.deactivate{color:#a3414d;background:#fff2f3;border:1px solid #e1b8bd}.campaign-visibility-trigger.reactivate{background:#287f91}.campaign-visibility-trigger.delete{color:#a3414d;background:#fff2f3;border:1px solid #e1b8bd}.publish-campaign-dialog.deactivate header>span,.publish-campaign-dialog.delete header>span{color:#a3414d;background:#fff0f2}.publish-campaign-dialog.deactivate header p,.publish-campaign-dialog.delete header p{color:#a3414d}.publish-campaign-dialog.deactivate footer button:last-child,.publish-campaign-dialog.delete footer button:last-child{background:#a3414d}.publish-campaign-dialog.deactivate .publish-url,.publish-campaign-dialog.delete .publish-url{background:#fff7f8;border-color:#ead7da}.publish-url span{overflow-wrap:anywhere;color:#176f77;font-size:.68rem;font-weight:900}.public-enrollment-shell{color:#294d5e;background:#f4f8f8;min-height:100vh}.public-enrollment-brand{background:#fff;border-bottom:1px solid #dbe6e8;align-items:center;min-height:64px;padding:0 max(1rem,50vw - 450px);display:flex;box-shadow:0 3px 14px #2544510a}.public-enrollment-brand span{color:#315a69;font-size:.82rem;font-weight:950}.public-enrollment-footer{text-align:center;color:#7a8e96;padding:1.5rem;font-size:.62rem}.public-enrollment-shell .enrollment-public-page{margin-top:2.2rem}.public-enrollment-shell .enrollment-public-form{font-family:inherit}.application-validate-trigger{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#288b74;border:0;border-radius:11px;justify-content:center;align-items:center;margin-top:.9rem;padding:.7rem 1rem;font-size:.7rem;font-weight:950;display:inline-flex;box-shadow:0 7px 16px #288b7433}.application-validate-trigger:hover{background:#21775f;transform:translateY(-1px)}.application-list>article.dossier-card{box-shadow:none;background:#fff;border:1px solid #dbe5e8;border-radius:15px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.dossier-card>div{flex-direction:column;align-items:flex-start;gap:.3rem;min-width:0;display:flex}.dossier-card>div i[data-status]{letter-spacing:.01em;border-radius:999px;width:max-content;padding:.32rem .6rem;font-size:.62rem;font-style:normal;font-weight:900;display:inline-flex}.dossier-card>div strong{color:#294d5e;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.dossier-card>div small{color:#7a8e98;font-size:.62rem}.dossier-card nav{flex:none;align-items:center;gap:.55rem;display:flex}.dossier-card nav .application-validate-trigger{margin-top:0}.application-detail-summary{gap:.8rem;margin:1rem 0;display:grid}.application-detail-summary>dl{gap:.5rem;display:grid}.application-detail-summary>dl>div{background:#f7f9f9;border-radius:10px;padding:.65rem}.application-detail-summary dt{color:#84949b;text-transform:uppercase;font-size:.5rem;font-weight:900}.application-detail-summary dd{color:#304f5d;margin-top:.25rem;font-size:.66rem;font-weight:800}@media (min-width:600px){.application-detail-summary>dl{grid-template-columns:1fr 1fr}}.application-reject-trigger{color:#a13f4c;min-height:44px;font:inherit;cursor:pointer;background:#fff7f8;border:1px solid #edc8cd;border-radius:11px;justify-content:center;align-items:center;margin:.9rem 0 0 .45rem;padding:.7rem 1rem;font-size:.7rem;font-weight:950;display:inline-flex}.enrollment-validation-dialog footer:has(.application-reject-trigger){flex-wrap:wrap;justify-content:space-between}.enrollment-validation-dialog footer .application-reject-trigger{min-height:42px;margin:0;padding:.6rem .8rem;font-size:.68rem;color:#a13f4c!important;background:#fff7f8!important;border:1px solid #edc8cd!important}.enrollment-validation-dialog-footer-actions{flex-wrap:wrap;gap:1rem;display:flex}.enrollment-validation-dialog-footer-actions button:last-child{color:#fff;background:#288b74}.application-rejection-dialog{border:0;border-radius:20px;width:min(500px,100vw - 2rem);max-width:none;margin:auto;padding:0;position:fixed;inset:0}.application-rejection-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a273199}.application-rejection-dialog form{gap:1rem;padding:1.2rem;display:grid}.application-rejection-dialog header,.application-rejection-dialog footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.application-rejection-dialog header p{color:#a13f4c;margin:0;font-size:.7rem;font-weight:900}.application-rejection-dialog header h2{color:#633740;margin:.15rem 0 0;font-size:1.05rem}.application-rejection-dialog header>button{color:#9d4d57;background:#fff1f2;border:0;border-radius:9px;width:36px;height:36px;font-size:1.2rem}.application-rejection-dialog form>p{color:#6b5860;margin:0;font-size:.78rem;line-height:1.5}.application-rejection-dialog footer{border-top:1px solid #f0e2e4;justify-content:flex-end;padding-top:1rem}.application-rejection-dialog footer button{border:0;border-radius:10px;min-height:42px;padding:.6rem .8rem;font-weight:900}.application-rejection-dialog footer button:last-child{color:#fff;background:#a64652}.status-pending{color:#936417;background:#fff2d8;border-radius:99px;padding:.35rem .55rem;font-size:.54rem;font-weight:900;display:inline-flex}.group-selection-help{color:#6d838c;margin:0;font-size:.65rem}.group-selection-error{color:#925e21;background:#fff3e3;border-radius:9px;padding:.65rem;font-size:.64rem;font-weight:850}.enrollment-validation-dialog footer button:disabled{cursor:not-allowed;opacity:.65;background:#aab9b4!important}.enrollment-validation-dialog input[aria-invalid=true]{background:#fff6f6;border-color:#c94f4f}.enrollment-validation-dialog input[aria-invalid=true]:focus{box-shadow:0 0 0 3px #c94f4f26}.account-creation-notice{color:#315f51;background:#eef8f4;border:1px solid #cce3da;border-radius:13px;padding:.85rem}.account-creation-notice strong{font-size:.72rem}.account-creation-notice p{margin-top:.3rem;font-size:.64rem;line-height:1.55}.enrollment-validation-dialog fieldset legend small{color:#6e858d;font-size:.58rem;font-weight:750}.group-selection-neutral{color:#667d87;background:#f1f5f6;border-radius:9px;padding:.65rem;font-size:.64rem}.enrollment-validation-dialog>form{font-size:.9rem}.enrollment-validation-dialog header p{font-size:.78rem;font-weight:900}.enrollment-validation-dialog header h2{font-size:1.35rem}.enrollment-validation-dialog fieldset{gap:.8rem;padding:1.1rem}.enrollment-validation-dialog legend{font-size:.98rem}.enrollment-validation-dialog .enrollment-fields label{font-size:.88rem}.enrollment-validation-dialog input:not([type=checkbox]),.enrollment-validation-dialog select{font-size:.9rem}.enrollment-validation-dialog .account-creation-notice{padding:1rem}.enrollment-validation-dialog .account-creation-notice strong{font-size:.9rem}.enrollment-validation-dialog .account-creation-notice p,.enrollment-validation-dialog .account-existing{font-size:.82rem;line-height:1.55}.enrollment-validation-dialog .group-selection-help,.enrollment-validation-dialog .group-selection-neutral{font-size:.8rem}.enrollment-validation-dialog .enrollment-group-choice{padding:.8rem}.enrollment-validation-dialog .enrollment-group-choice span{font-size:.88rem}.enrollment-validation-dialog fieldset legend small{font-size:.72rem}.enrollment-validation-dialog footer button{font-size:.86rem}.enrollment-confirmation-page{background:radial-gradient(circle at 12% 12%,#f2bf4d2b,#0000 22rem),radial-gradient(circle at 88% 85%,#4aad8f29,#0000 24rem),linear-gradient(145deg,#f4f9f8,#eef5f6);place-items:center;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.enrollment-confirmation-card{text-align:center;background:#fffffff5;border:1px solid #b7d3cfcc;border-radius:30px;width:min(760px,100%);padding:clamp(1.35rem,5vw,3.2rem);position:relative;overflow:hidden;box-shadow:0 28px 80px #1e4c4c21}.enrollment-confirmation-card:before{content:"";border:34px solid #287f9112;border-radius:50%;width:220px;height:220px;position:absolute;top:-85px;right:-75px}.enrollment-confirmation-mark{background:#e5f7f0;border-radius:50%;place-items:center;width:82px;height:82px;margin:0 auto 1.1rem;display:grid;position:relative;box-shadow:0 0 0 10px #f2fbf8}.enrollment-confirmation-mark span{color:#fff;background:linear-gradient(135deg,#2e9a79,#55b99b);border-radius:50%;place-items:center;width:54px;height:54px;font-size:1.6rem;font-weight:950;display:grid;box-shadow:0 7px 16px #2e9a7940}.enrollment-confirmation-school{color:#287f91;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:950}.enrollment-confirmation-card>h1{color:#244d5b;letter-spacing:-.035em;max-width:610px;margin:.55rem auto 0;font-size:clamp(1.75rem,5vw,2.8rem);line-height:1.12}.enrollment-confirmation-lead{color:#637d85;max-width:620px;margin:1rem auto 0;font-size:.92rem;line-height:1.7}.enrollment-confirmation-reference{background:#f2faf7;border:1px dashed #b9d8d0;border-radius:17px;gap:.32rem;margin:1.6rem 0;padding:1.05rem;display:grid}.enrollment-confirmation-reference span{color:#538076;letter-spacing:.11em;font-size:.62rem;font-weight:950}.enrollment-confirmation-reference strong{overflow-wrap:anywhere;color:#286d5b;font-size:1rem}.enrollment-confirmation-reference small{color:#789089;font-size:.68rem}.enrollment-confirmation-next{text-align:left}.enrollment-confirmation-next h2{color:#315866;font-size:1rem}.enrollment-confirmation-next ol{gap:.65rem;margin-top:.8rem;list-style:none;display:grid}.enrollment-confirmation-next li{background:#f7fafb;border-radius:15px;align-items:flex-start;gap:.8rem;padding:.85rem;display:flex}.enrollment-confirmation-next li>span{color:#28778b;background:#e4f1f4;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:950;display:grid}.enrollment-confirmation-next li div{gap:.18rem;display:grid}.enrollment-confirmation-next li strong{color:#365c68;font-size:.8rem}.enrollment-confirmation-next li p{color:#72868d;font-size:.7rem;line-height:1.5}.enrollment-confirmation-note{color:#806526;background:#fff7df;border-radius:12px;margin-top:1rem;padding:.75rem;font-size:.72rem;font-weight:850}.enrollment-confirmation-card>a{color:#fff;background:#285b6c;border-radius:12px;justify-content:center;align-items:center;min-height:46px;margin-top:1.2rem;padding:.7rem 1.1rem;font-size:.76rem;font-weight:950;display:inline-flex;box-shadow:0 6px 14px #285b6c33}@media (max-width:560px){.enrollment-confirmation-card{border-radius:22px}.enrollment-confirmation-next li{padding:.75rem}.enrollment-confirmation-card>h1{font-size:1.65rem}}.enrollment-plan-option{color:#345766;cursor:pointer;background:#f9fbfb;border:1px solid #dee7e9;border-radius:11px;align-items:flex-start;gap:.65rem;padding:.8rem;font-size:.88rem;font-weight:850;display:flex!important}.enrollment-plan-option:has(input:checked){background:#edf8f4;border-color:#65ad98}.enrollment-plan-option input{accent-color:#288b74;flex:none;width:18px;height:18px;margin-top:.1rem}.enrollment-plan-option span{gap:.2rem;display:grid}.enrollment-plan-option small{color:#6f858e;font-size:.76rem;font-weight:700;line-height:1.45}.application-rejection-refund{color:#633740;cursor:pointer;background:#fffafb;border:1px solid #f0e2e4;border-radius:12px;align-items:center;gap:.6rem;padding:.75rem .85rem;font-size:.8rem;font-weight:800;display:flex}.application-rejection-refund input{accent-color:#a64652;width:18px;height:18px}
