.availability-week-editor-module__9mNrVq__editor{border:1px solid var(--line);border-radius:var(--radius);background:var(--background);gap:.85rem;min-width:0;margin-top:1rem;padding:1rem;scroll-margin-top:5.5rem;display:grid}.availability-week-editor-module__9mNrVq__editor>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.availability-week-editor-module__9mNrVq__editor h3,.availability-week-editor-module__9mNrVq__editor p{margin:0}.availability-week-editor-module__9mNrVq__editor h3{font-size:1rem}.availability-week-editor-module__9mNrVq__editor p{color:var(--muted);margin-top:.25rem;font-size:.76rem}.availability-week-editor-module__9mNrVq__legend{color:var(--muted);flex:none;gap:.75rem;font-size:.68rem;display:flex}.availability-week-editor-module__9mNrVq__legend span{align-items:center;gap:.35rem;display:inline-flex}.availability-week-editor-module__9mNrVq__legend span:before{content:"";border-radius:.2rem;width:.65rem;height:.65rem}.availability-week-editor-module__9mNrVq__allowed:before,.availability-week-editor-module__9mNrVq__allowedBlock{background:#65a8902e}.availability-week-editor-module__9mNrVq__overlayLesson:before,.availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayLesson{color:#1f6c3c;background:#e8f4ec}.availability-week-editor-module__9mNrVq__overlayProposal:before,.availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayProposal{color:#815413;background:#fbf0da}.availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayProposal{border:1px dashed #cf9a3d}.availability-week-editor-module__9mNrVq__overlayExternal:before,.availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayExternal{color:#655b61;background:#f1eef0}.availability-week-editor-module__9mNrVq__selected:before,.availability-week-editor-module__9mNrVq__window{background:var(--accent-soft)}.availability-week-editor-module__9mNrVq__window.availability-week-editor-module__9mNrVq__readOnly{grid-template-columns:minmax(0,1fr);padding-bottom:.28rem}.availability-week-editor-module__9mNrVq__scroller{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;min-width:0;max-height:38rem;overflow:auto}.availability-week-editor-module__9mNrVq__calendar{grid-template-columns:3.6rem repeat(7,minmax(7.5rem,1fr));grid-template-rows:3rem var(--calendar-height);min-width:58rem;display:grid}.availability-week-editor-module__9mNrVq__corner,.availability-week-editor-module__9mNrVq__dayHeader{z-index:5;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0}.availability-week-editor-module__9mNrVq__corner{z-index:7;left:0}.availability-week-editor-module__9mNrVq__dayHeader{border-left:1px solid var(--line);justify-content:center;align-items:center;gap:.35rem;font-size:.72rem;display:flex}.availability-week-editor-module__9mNrVq__dayHeader span{color:var(--muted);text-transform:capitalize}.availability-week-editor-module__9mNrVq__dayHeader.availability-week-editor-module__9mNrVq__today strong{background:var(--accent);width:1.5rem;height:1.5rem;color:var(--accent-contrast);border-radius:50%;place-items:center;display:grid}.availability-week-editor-module__9mNrVq__dayHeader.availability-week-editor-module__9mNrVq__today span{color:var(--accent);font-weight:750}.availability-week-editor-module__9mNrVq__times{z-index:4;background:var(--surface);grid-area:2/1;position:sticky;left:0}.availability-week-editor-module__9mNrVq__times time{color:var(--muted);font-size:.62rem;position:absolute;right:.45rem;transform:translateY(-50%)}.availability-week-editor-module__9mNrVq__times time:first-child{transform:translateY(.3rem)}.availability-week-editor-module__9mNrVq__times time:last-child{transform:translateY(-100%)}.availability-week-editor-module__9mNrVq__day{border-left:1px solid var(--line);cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;min-width:0;position:relative}.availability-week-editor-module__9mNrVq__day.availability-week-editor-module__9mNrVq__today{background:color-mix(in srgb, var(--accent) 5%, transparent)}.availability-week-editor-module__9mNrVq__day.availability-week-editor-module__9mNrVq__outside{background:color-mix(in srgb, var(--muted) 7%, transparent);cursor:default}.availability-week-editor-module__9mNrVq__dayHeader.availability-week-editor-module__9mNrVq__outside{color:var(--muted)}.availability-week-editor-module__9mNrVq__hourLine{border-top:1px solid color-mix(in srgb, var(--line) 60%, transparent);pointer-events:none;position:absolute;left:0;right:0}.availability-week-editor-module__9mNrVq__allowedBlock,.availability-week-editor-module__9mNrVq__window{border-radius:.45rem;min-height:.8rem;position:absolute;left:.25rem;right:.25rem}.availability-week-editor-module__9mNrVq__allowedBlock{pointer-events:none;border:1px dashed #438a7159}.availability-week-editor-module__9mNrVq__overlayEntry{z-index:1;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border-radius:.45rem;padding:.15rem .3rem;font-size:.6rem;font-weight:720;position:absolute;left:.25rem;right:.25rem;overflow:hidden}.availability-week-editor-module__9mNrVq__window{z-index:2;border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));color:var(--accent);cursor:default;grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:.15rem;padding:.28rem .35rem .8rem;font-size:.64rem;font-weight:760;display:grid;overflow:visible}.availability-week-editor-module__9mNrVq__window>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.availability-week-editor-module__9mNrVq__window form:first-of-type button{z-index:5;background:color-mix(in srgb, var(--surface) 75%, transparent);width:1.35rem;height:1.35rem;color:inherit;cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:-.5rem;right:-.35rem}.availability-week-editor-module__9mNrVq__window form:first-of-type svg{width:.75rem}.availability-week-editor-module__9mNrVq__resize{z-index:3;width:calc(100% - .4rem);height:.55rem;color:inherit;cursor:ns-resize;touch-action:none;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;bottom:0;left:.2rem;right:.2rem}.availability-week-editor-module__9mNrVq__resize svg{width:.9rem;height:.9rem}.availability-week-editor-module__9mNrVq__draft{opacity:.75;pointer-events:none;display:block}.availability-week-editor-module__9mNrVq__hiddenForm{display:none}.availability-week-editor-module__9mNrVq__saved{gap:.65rem;min-width:0;padding-top:.15rem;display:grid}.availability-week-editor-module__9mNrVq__saved>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.availability-week-editor-module__9mNrVq__saved h4,.availability-week-editor-module__9mNrVq__saved p{margin:0}.availability-week-editor-module__9mNrVq__saved h4{font-size:.86rem}.availability-week-editor-module__9mNrVq__saved>header p{color:var(--muted);margin-top:.2rem;font-size:.68rem}.availability-week-editor-module__9mNrVq__saved>header>span{background:var(--accent-soft);color:var(--accent);border-radius:999px;flex:none;padding:.35rem .55rem;font-size:.65rem;font-weight:760}.availability-week-editor-module__9mNrVq__savedScroller{gap:.4rem;min-width:0;max-height:11rem;padding:.15rem .2rem .15rem 0;display:grid;overflow-y:auto}.availability-week-editor-module__9mNrVq__savedScroller:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:2px;border-radius:.65rem}.availability-week-editor-module__9mNrVq__savedScroller article{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.7rem;min-width:0;padding:.6rem .7rem;display:grid}.availability-week-editor-module__9mNrVq__savedScroller article>div{gap:.15rem;min-width:0;display:grid}.availability-week-editor-module__9mNrVq__savedScroller strong,.availability-week-editor-module__9mNrVq__savedScroller small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.availability-week-editor-module__9mNrVq__savedScroller strong{text-transform:capitalize;font-size:.74rem}.availability-week-editor-module__9mNrVq__savedScroller small{color:var(--muted);font-size:.62rem}.availability-week-editor-module__9mNrVq__savedScroller article>span{font-size:.72rem;font-weight:760}.availability-week-editor-module__9mNrVq__savedScroller button{border:1px solid var(--line);background:var(--background);width:2rem;min-height:2rem;color:var(--muted);cursor:pointer;border-radius:.55rem;place-items:center;padding:0;display:grid}.availability-week-editor-module__9mNrVq__savedScroller button:hover{border-color:color-mix(in srgb, var(--danger) 40%, var(--line));color:var(--danger)}.availability-week-editor-module__9mNrVq__savedScroller button svg{width:.85rem}.availability-week-editor-module__9mNrVq__savedEmpty{border:1px dashed var(--line);color:var(--muted);border-radius:.7rem;padding:.75rem;font-size:.72rem}@media (max-width:48rem){.availability-week-editor-module__9mNrVq__editor{padding:.75rem}.availability-week-editor-module__9mNrVq__editor>header{flex-direction:column;align-items:flex-start}.availability-week-editor-module__9mNrVq__scroller{max-height:31rem}.availability-week-editor-module__9mNrVq__savedScroller article{grid-template-columns:minmax(0,1fr) auto}.availability-week-editor-module__9mNrVq__savedScroller article>span{grid-column:1}.availability-week-editor-module__9mNrVq__savedScroller article form{grid-area:1/2/span 2}}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayLesson:before{color:#a7e0ba;background:#213b2b}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayLesson{color:#a7e0ba;background:#213b2b}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayProposal:before{color:#e6c383;background:#3f351d}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayProposal{color:#e6c383;background:#3f351d}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayProposal{border-color:#e6c38373}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayExternal:before{color:#c9bfc4;background:#3a3438}:root[data-theme=dark] .availability-week-editor-module__9mNrVq__overlayEntry.availability-week-editor-module__9mNrVq__overlayExternal{color:#c9bfc4;background:#3a3438}.availability-week-editor-module__9mNrVq__movable{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.availability-week-editor-module__9mNrVq__movable:active{cursor:grabbing}.availability-week-editor-module__9mNrVq__closed{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--muted) 12%, transparent), color-mix(in srgb, var(--muted) 12%, transparent) 6px, transparent 6px, transparent 12px);border:1px dashed color-mix(in srgb, var(--muted) 55%, transparent);color:var(--muted);cursor:default}.availability-week-editor-module__9mNrVq__closed>span{text-decoration:line-through}.availability-week-editor-module__9mNrVq__savedToggle{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;justify-self:start;margin-top:.5rem;padding:.3rem .7rem;font-size:.72rem;font-weight:700}.availability-week-editor-module__9mNrVq__savedToggle:hover{color:var(--foreground);border-color:var(--line-strong)}.availability-week-editor-module__9mNrVq__savedToggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.student-availability-module__wtsICG__workspace{min-width:0}.student-availability-module__wtsICG__header{justify-content:space-between;align-items:end;gap:1rem;min-width:0;display:flex}.student-availability-module__wtsICG__header>div{min-width:0}.student-availability-module__wtsICG__header h2,.student-availability-module__wtsICG__header p,.student-availability-module__wtsICG__weekToolbar h3,.student-availability-module__wtsICG__weekToolbar p{margin:0}.student-availability-module__wtsICG__header>div>p:last-child,.student-availability-module__wtsICG__weekToolbar p{color:var(--muted);margin-top:.3rem;font-size:.78rem}.student-availability-module__wtsICG__monthControl{flex:none;align-items:center;gap:.45rem;display:flex}.student-availability-module__wtsICG__monthLabel{text-align:center;min-width:9rem;font-size:.72rem;font-weight:720}.student-availability-module__wtsICG__guidance{border:1px solid var(--line);background:var(--accent-soft);color:var(--muted);border-radius:.75rem;margin:1rem 0 0;padding:.8rem .9rem;font-size:.78rem}.student-availability-module__wtsICG__guidance a{color:var(--accent);font-weight:750}.student-availability-module__wtsICG__weekToolbar{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.student-availability-module__wtsICG__weekToolbar h3{font-size:.9rem}.student-availability-module__wtsICG__weekToolbar nav{flex:none;gap:.4rem;display:flex}.student-availability-module__wtsICG__weekToolbar nav .icon-button{border-color:var(--line);background:var(--surface);width:2.5rem;min-height:2.5rem;color:var(--foreground);text-decoration:none}.student-availability-module__wtsICG__weekToolbar nav [aria-disabled=true]{color:var(--muted);opacity:.5}.student-availability-module__wtsICG__manualForm{margin-top:1rem}@media (max-width:48rem){.student-availability-module__wtsICG__header{flex-direction:column;align-items:stretch}.student-availability-module__wtsICG__monthControl{justify-content:space-between;width:100%}}
.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list{border:1px solid var(--line);border-radius:.75rem;grid-template-columns:minmax(0,1fr);gap:0;margin-top:.75rem}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list>li{border-bottom:1px solid var(--line);padding:0;display:block}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list>li:last-child{border-bottom:0}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__row.teaching-team-module__-kqqJa__row{border-radius:0;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem .8rem;display:flex}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__row>span:first-child{gap:.15rem;min-width:0;display:grid}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list strong{color:var(--foreground);white-space:normal;font-size:.85rem;font-weight:700;overflow:visible}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list small{color:var(--muted);text-align:start;text-transform:none;letter-spacing:normal;margin-left:0;font-size:.72rem}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__list>li.teaching-team-module__-kqqJa__ended strong{color:var(--muted)}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__row>form{flex:none}.teaching-team-module__-kqqJa__team .teaching-team-module__-kqqJa__row .teaching-team-module__-kqqJa__button{white-space:nowrap}.teaching-team-module__-kqqJa__empty{margin-top:.75rem}.teaching-team-module__-kqqJa__form{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.teaching-team-module__-kqqJa__submit{place-self:end start}@media (max-width:48rem){.teaching-team-module__-kqqJa__submit{justify-self:stretch;width:100%}}
.library-module__fENpCW__layout{grid-template-columns:minmax(12rem,15rem) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.library-module__fENpCW__layoutInBackoffice{--library-outline-offset:var(--utility-bar-height)}.library-module__fENpCW__layout .page-back{margin-bottom:1.25rem}.library-module__fENpCW__outline{top:calc(var(--library-outline-offset,0px) + 1rem);max-height:calc(100dvh - var(--library-outline-offset,0px) - 2rem);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1rem;position:sticky;overflow-y:auto}.library-module__fENpCW__outline>strong{align-items:center;gap:.45rem;font-size:.76rem;display:flex}.library-module__fENpCW__outline>strong svg{width:.9rem;color:var(--accent)}.library-module__fENpCW__outline ol{gap:.2rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.library-module__fENpCW__outline a{color:var(--muted);border-radius:.45rem;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.4rem .45rem;font-size:.7rem;text-decoration:none;display:flex}.library-module__fENpCW__outline a>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-module__fENpCW__outline a>small{font-variant-numeric:tabular-nums;flex:none;font-size:.66rem}.library-module__fENpCW__outline a:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent);color:var(--foreground)}.library-module__fENpCW__outline a[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:650}.library-module__fENpCW__outlineSubsection a{padding-left:1.1rem}.library-module__fENpCW__outlineEmpty{color:var(--muted);margin:.75rem 0 0;font-size:.7rem}@media (max-width:64rem){.library-module__fENpCW__layout{grid-template-columns:1fr}.library-module__fENpCW__outline{align-items:center;gap:.5rem;max-height:none;padding:.65rem;display:flex;position:static;overflow-x:auto}.library-module__fENpCW__outline>strong{flex:none}.library-module__fENpCW__outline ol{flex:none;gap:.4rem;margin:0;display:flex}.library-module__fENpCW__outline a,.library-module__fENpCW__outlineSubsection a{border:1px solid var(--line);white-space:nowrap;max-width:12rem;padding:.4rem .55rem}}.library-module__fENpCW__shelves{flex-direction:column;gap:1.25rem;display:flex}.library-module__fENpCW__card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1.25rem}.library-module__fENpCW__pageHead{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.25rem;display:flex}.library-module__fENpCW__pageHead>div:first-child{min-width:0}.library-module__fENpCW__pageHead h1,.library-module__fENpCW__pageHead h2,.library-module__fENpCW__pageHead h3{overflow-wrap:anywhere;margin:.35rem 0 0}.library-module__fENpCW__pageHead h1{letter-spacing:-.05em;font-size:clamp(2rem,4vw,3.5rem);line-height:1.05}.library-module__fENpCW__head{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1rem;display:flex}.library-module__fENpCW__head h2,.library-module__fENpCW__head h3{overflow-wrap:anywhere;margin:0}.library-module__fENpCW__head>div:first-child{min-width:0}.library-module__fENpCW__count{color:var(--muted);margin:.3rem 0 0;font-size:.78rem}.library-module__fENpCW__lede{max-width:46rem;color:var(--muted);margin:.55rem 0 0}.library-module__fENpCW__description{color:var(--muted);margin:.4rem 0 0;font-size:.85rem}.library-module__fENpCW__shelfCard{position:relative}.library-module__fENpCW__shelfCard:hover,.library-module__fENpCW__shelfCard:focus-within{border-color:var(--accent)}.library-module__fENpCW__shelfTitle{align-items:center;gap:.5rem;display:flex}.library-module__fENpCW__shelfTitle svg{width:1.1rem;color:var(--muted);flex:none}.library-module__fENpCW__shelfTitle svg:last-child{opacity:.7;margin-left:-.15rem}.library-module__fENpCW__shelfLink{min-width:0;color:inherit;overflow-wrap:anywhere;text-decoration:none}.library-module__fENpCW__shelfLink:after{content:"";border-radius:var(--radius);position:absolute;inset:0}.library-module__fENpCW__shelfCard:hover .library-module__fENpCW__shelfLink,.library-module__fENpCW__shelfLink:focus-visible{text-decoration:underline}.library-module__fENpCW__shelfCard .library-module__fENpCW__subsections{z-index:1;position:relative}.library-module__fENpCW__subsections{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.library-module__fENpCW__subsections a{border:1px solid var(--line);height:100%;color:inherit;border-radius:.75rem;align-items:center;gap:.6rem;padding:.7rem .85rem;text-decoration:none;display:flex}.library-module__fENpCW__subsections a:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 45%, transparent)}.library-module__fENpCW__subsections svg{width:1.1rem;color:var(--muted);flex:none}.library-module__fENpCW__subsections strong{text-overflow:ellipsis;font-size:.86rem;display:block;overflow:hidden}.library-module__fENpCW__subsections small{color:var(--muted);font-size:.72rem;display:block}.library-module__fENpCW__subsectionsHeading{margin:1.75rem 0 0;font-size:.95rem}.library-module__fENpCW__items{flex-direction:column;gap:.85rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.library-module__fENpCW__card>:first-child{margin-top:0}.library-module__fENpCW__items>li{flex-wrap:wrap;align-items:start;gap:.85rem;display:flex}.library-module__fENpCW__itemIcon{background:var(--accent-soft);width:2.1rem;height:2.1rem;color:var(--muted);border-radius:.6rem;flex:none;justify-content:center;align-items:center;display:flex}.library-module__fENpCW__itemIcon svg{width:1.05rem}.library-module__fENpCW__itemBody{flex:14rem;min-width:0}.library-module__fENpCW__itemBody small,.library-module__fENpCW__itemBody p{color:var(--muted);margin:.2rem 0 0;display:block}.library-module__fENpCW__itemBody small{overflow-wrap:anywhere}.library-module__fENpCW__actions{flex-wrap:wrap;align-items:start;gap:.5rem;display:flex}.library-module__fENpCW__empty{color:var(--muted);margin:1rem 0 0}
.library-module__vgJ8pG__sectionEdit{border:1px solid var(--line);border-radius:.85rem;flex-wrap:wrap;align-items:end;gap:.75rem;margin:0 0 1.25rem;padding:1rem;display:flex}.library-module__vgJ8pG__sectionEdit label{flex-direction:column;flex:12rem;gap:.3rem;display:flex}.library-module__vgJ8pG__sectionEditHint{color:var(--muted);flex:100%;margin:0;font-size:.78rem}.library-module__vgJ8pG__sectionEditHint code{font-size:.78rem}.library-module__vgJ8pG__addItem{margin-top:1rem}.library-module__vgJ8pG__addItem>summary{border:1px solid var(--line);cursor:pointer;border-radius:999px;align-items:center;gap:.45rem;width:fit-content;max-width:100%;padding:.5rem .9rem;font-size:.82rem;font-weight:600;display:inline-flex}.library-module__vgJ8pG__addItem>summary:hover{border-color:var(--accent);color:var(--accent)}.library-module__vgJ8pG__addItem>summary svg{width:1rem;color:var(--accent);flex:none}.library-module__vgJ8pG__addItem[open]{border:1px solid var(--line);border-radius:.85rem;padding:.85rem}.library-module__vgJ8pG__addItem>form{padding:.85rem 0 0}
