@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.270md_-rr62el.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0lsanbtneewqp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_5d7b8159-module__u5BHXW__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_5d7b8159-module__u5BHXW__variable{--font-dm-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0v2ipp7s07_p9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.44ks8kcggj012.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.1ii7211jqpzi_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_a21890a9-module__SV0OwW__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_a21890a9-module__SV0OwW__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
:root{--navy:#071c2c;--navy-soft:#102d42;--teal:#2dd4a8;--teal-dark:#087f68;--paper:#f7faf9;--surface:#fff;--ink:#10212d;--muted:#5b6b76;--line:#dce6e3;--danger:#b42318;--shadow:0 18px 45px #071c2c1f;--radius:1rem}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{min-width:0;font-size:17px;line-height:1.55;font-family:var(--font-dm-sans,sans-serif), sans-serif;margin:0}button,input,select{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.app-shell{background:var(--paper);min-height:100vh}.app-header{background:var(--navy);color:var(--surface);z-index:10;padding:.85rem max(1rem,50vw - 39rem);position:sticky;top:0}.app-header__row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--surface);font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.02em;font-weight:700;text-decoration:none}.brand span{color:var(--teal)}.mobile-nav summary{cursor:pointer;border:1px solid var(--teal);border-radius:.6rem;padding:.6rem .75rem;list-style:none}.mobile-nav summary>span{line-height:1.1;display:grid}.mobile-nav summary small{color:var(--teal);margin-top:.2rem;font-size:.68rem;font-weight:700}.nav-list{gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.nav-list a,.nav-sign-out{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:.6rem;min-height:46px;padding:.65rem .85rem;text-decoration:none;display:block}.nav-list a:hover,.nav-list a:focus-visible{background:var(--navy-soft);outline:2px solid var(--teal)}.nav-list a[aria-current=page]{background:var(--surface);color:var(--navy);font-weight:700}.nav-sign-out{color:#c8d4db}.nav-sign-out:hover,.nav-sign-out:focus-visible{background:var(--navy-soft);color:var(--surface);outline:2px solid var(--teal)}.mobile-nav{display:none}.skip-link{z-index:100;background:var(--surface);color:var(--navy);border-radius:.5rem;padding:.75rem 1rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.page{width:min(78rem,100%);margin-inline:auto;padding:clamp(1rem,3vw,2.5rem)}h1,h2,h3{font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.035em}.eyebrow{color:var(--teal-dark);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.grid{gap:1rem;display:grid}.two-column{grid-template-columns:minmax(17rem,.7fr) minmax(0,1.3fr);align-items:start}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.15rem}.button{background:var(--teal);color:var(--navy);cursor:pointer;border:0;border-radius:.65rem;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.button--secondary{background:var(--surface);border:1px solid var(--line)}.button--danger{background:var(--danger);color:var(--surface)}.button:disabled{cursor:wait;opacity:.65}.field{gap:.35rem;display:grid}.input,.select{background:var(--surface);border:1px solid var(--line);border-radius:.6rem;width:100%;min-height:48px;padding:.7rem .8rem;font-size:1rem}.input:focus,.select:focus{border-color:var(--teal-dark);outline:3px solid #2dd4a840}:is(.input:user-invalid,.select:user-invalid,.input[aria-invalid=true]){border-color:var(--danger)}:is(.input:user-invalid:focus,.select:user-invalid:focus,.input[aria-invalid=true]:focus){outline-color:#b4231833}.field:has(.input:user-invalid,.select:user-invalid,.input[aria-invalid=true])>:first-child{color:var(--danger)}.data-list{border-collapse:collapse;width:100%}.data-list th,.data-list td{border-bottom:1px solid var(--line);text-align:left;padding:.75rem}.data-list th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#f0f5f3;font-size:.78rem}.data-list tbody tr:nth-child(2n){background:#fafcfb}.data-list tbody tr:hover{background:#eef9f5}.data-list tbody tr:last-child td{border-bottom:0}.data-list th{white-space:nowrap}.data-list td{overflow-wrap:break-word}.data-list td[data-label=Email]{overflow-wrap:anywhere}.dialog{border-radius:var(--radius);box-shadow:var(--shadow);border:0;width:calc(100% - 2rem);max-width:34rem}.dialog::backdrop{background:#071c2ca6}.confirmation-dialog{color:var(--ink);padding:1.5rem}.confirmation-dialog h2{margin-bottom:.5rem}.confirmation-dialog p{color:var(--muted)}.dialog-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.5rem;font-size:1.75rem;line-height:1;position:absolute;top:.5rem;right:.75rem}.dialog-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.toast{background:var(--navy);color:var(--surface);border-radius:.65rem;padding:.75rem 1rem}.mfa-qr{background:var(--surface);border:1px solid var(--line);border-radius:.75rem;max-width:100%;height:auto;padding:.5rem}.state{border:1px dashed var(--line);border-radius:var(--radius);text-align:center;overflow-wrap:anywhere;padding:2rem}.state--error{border-color:var(--danger);color:var(--danger)}.recovery-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.page-heading h1{margin-bottom:0}.page-intro{color:var(--muted);margin:0 0 1.5rem}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.9rem;display:flex}.breadcrumb a{color:var(--teal-dark);padding-block:.5rem}.view-switch{background:#e8efed;border-radius:.75rem;gap:.25rem;margin-bottom:1.5rem;padding:.3rem;display:inline-flex}.view-switch a{border-radius:.55rem;min-height:44px;padding:.55rem .85rem;text-decoration:none}.view-switch a[aria-current=page]{background:var(--surface);font-weight:700;box-shadow:0 2px 8px #071c2c1a}.calendar{gap:.65rem;display:grid}.calendar-toolbar{grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;display:grid}.calendar-toolbar h2{text-align:center;margin:0}.calendar-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.calendar-weekdays span{color:var(--muted);text-align:center;text-transform:uppercase;padding:.35rem .6rem;font-size:.8rem;font-weight:700}.calendar-grid{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calendar-day{background:var(--surface);min-width:0;min-height:9.5rem;padding:.65rem}.calendar-day--outside{color:var(--muted);background:#f0f5f3}.calendar-day--today{box-shadow:inset 0 0 0 3px var(--teal-dark)}.calendar-day h3{align-items:baseline;gap:.45rem;margin:0 0 .55rem;display:flex}.calendar-day h3>span{justify-content:center;align-items:center;min-width:2rem;min-height:2rem;font-size:1rem;display:inline-flex}.calendar-day h3 small{color:var(--muted);font-family:var(--font-dm-sans), sans-serif;letter-spacing:0;font-size:.9rem;display:none}.calendar-lessons{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.calendar-lessons li{border-left:3px solid var(--teal-dark);background:#e5f8f2;border-radius:.4rem;min-width:0;padding:.4rem .45rem;font-size:.78rem;line-height:1.3;display:grid}.calendar-lessons time{font-weight:700}.calendar-lessons span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-empty{color:var(--muted);font-size:.8rem;display:none}.student-search{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:end;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.student-search .field{flex:1}.diary-days{gap:1.5rem;display:grid}.diary-day{gap:.65rem;display:grid}.diary-day__heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.diary-day__heading h2{margin:0}.diary-day__heading span{color:var(--muted)}.diary-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.diary-entry{grid-template-columns:7rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.15rem;display:grid}.diary-entry+.diary-entry{border-top:1px solid var(--line)}.diary-entry__time{border-right:1px solid var(--line);padding-right:1rem;display:grid}.diary-entry__time strong{font-family:var(--font-space-grotesk), sans-serif;font-size:1.15rem}.diary-entry__time span,.diary-entry__meta{color:var(--muted);font-size:.875rem}.diary-entry__main{gap:.25rem;display:grid}.diary-entry__main h3,.diary-entry__main p{margin:0}.diary-entry__summary{place-items:flex-end end;gap:.5rem;display:grid}.status{color:var(--navy-soft);text-transform:capitalize;background:#edf3f1;border-radius:999px;padding:.3rem .6rem;font-size:.75rem;font-weight:700}.status--confirmed,.status--completed{color:#09634f;background:#dff8ef}.status--cancelled,.status--no_show{color:var(--danger);background:#fee4e2}.status--positive{color:#09634f;background:#dff8ef}.status--negative{color:var(--danger);background:#fee4e2}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.tool-group+.tool-group{margin-top:2rem}.tool-group>h2{margin-bottom:.75rem;font-size:1.35rem}.tool-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);gap:.4rem;min-height:10rem;padding:1.25rem;text-decoration:none;display:grid}.tool-card:hover,.tool-card:focus-visible{border-color:var(--teal-dark);outline:3px solid #2dd4a840;transform:translateY(-2px)}.tool-card span{font-family:var(--font-space-grotesk), sans-serif;font-size:1.25rem;font-weight:700}.tool-card small{color:var(--muted);font-size:.95rem}.tool-card strong{color:var(--teal-dark);align-self:end}.disclosure{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.disclosure>summary{cursor:pointer;gap:.15rem;min-height:54px;padding:1rem 1.15rem;list-style-position:inside;display:grid}.disclosure>summary span{font-family:var(--font-space-grotesk), sans-serif;font-size:1.15rem;font-weight:700}.disclosure>summary small{color:var(--muted);margin-left:1.25rem}.disclosure__content{border-top:1px solid var(--line);padding:1.15rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-actions,.advanced-options{grid-column:1/-1}.advanced-options{border:1px solid var(--line);border-radius:.75rem;padding:.75rem}.advanced-options summary{cursor:pointer;font-weight:700}.notice{border-left:4px solid var(--teal-dark);background:#e9faf5;border-radius:.4rem;padding:.75rem 1rem}.text-link{color:var(--teal-dark);min-height:44px;padding:.5rem;font-weight:700}.text-button{cursor:pointer;font:inherit;background:0 0;border:0;min-height:44px;padding:.5rem;font-weight:700;text-decoration:underline}.text-button--danger{color:var(--danger)}.text-button:disabled{cursor:not-allowed;opacity:.55}.action-row{flex-wrap:wrap;gap:.75rem;display:flex}.checkbox-field{align-items:center;gap:.65rem;min-height:48px;display:flex}.checkbox-field input{width:1.25rem;height:1.25rem}.danger-zone{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.danger-zone p{color:var(--muted);margin:.2rem 0 0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@media (max-width:700px){.two-column{grid-template-columns:1fr}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav[open] .nav-list{background:var(--navy);border:1px solid var(--navy-soft);border-radius:.75rem;min-width:13rem;padding:.5rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0}.data-list,.data-list tbody,.data-list tr,.data-list td{display:block}.data-list thead{display:none}.data-list tr{background:var(--surface);border:1px solid var(--line);border-radius:.75rem;margin-bottom:.75rem;padding:.5rem}.data-list tbody tr:nth-child(2n),.data-list tbody tr:hover{background:var(--surface)}.data-list td{border:0;grid-template-columns:minmax(6rem,38%) 1fr;padding:.35rem;display:grid}.data-list th{white-space:normal}.data-list td,.data-list td *{overflow-wrap:anywhere;min-width:0}.credential{grid-template-columns:1fr}.data-list td:before{content:attr(data-label);color:var(--muted);font-weight:700}.page-heading{align-items:stretch;display:grid}.tool-grid,.form-grid{grid-template-columns:1fr}.form-actions,.advanced-options{grid-column:auto}.diary-entry{grid-template-columns:5.5rem minmax(0,1fr);align-items:start}.diary-entry__summary{grid-column:1/-1;grid-template-columns:auto 1fr;place-items:center start;padding-left:6.5rem}.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-toolbar h2{grid-area:1/1/auto/-1}.calendar-weekdays{display:none}.calendar-grid{background:0 0;border:0;grid-template-columns:1fr;gap:.65rem;display:grid;overflow:visible}.calendar-day{border:1px solid var(--line);border-radius:.75rem;min-height:0;padding:.75rem}.calendar-day--outside{display:none}.calendar-day h3{margin-bottom:.35rem}.calendar-day h3 small{display:inline}.calendar-lessons{padding-left:2.45rem}.calendar-lessons li{grid-template-columns:4.5rem minmax(0,1fr);font-size:.9rem}.calendar-day:has(.calendar-empty){padding-block:.5rem}.calendar-day:has(.calendar-empty) h3{margin-bottom:0}.student-search{grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.student-search .field{grid-column:1/-1}.danger-zone{align-items:stretch;display:grid}}.credential{grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:1rem 0;display:grid}.credential dt{color:var(--muted);font-weight:700}.credential dd{overflow-wrap:anywhere;min-width:0;margin:0}.credential code{background:var(--paper);border:1px solid var(--line);letter-spacing:.06em;border-radius:.4rem;padding:.3rem .5rem;font-size:1.15rem}@media (max-width:700px){.credential{grid-template-columns:1fr}}.sign-in{max-width:30rem;margin:3rem auto}.notice--error{border-left-color:var(--danger);background:#fdf1f0}.password-field{gap:.5rem;display:flex}.password-field .input{flex:1;min-width:0}.form-help{color:var(--muted);font-size:.9rem}.form-help:empty{display:none}.directory-search{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.directory-search .field{flex:10rem;min-width:0}.directory-search .field:first-child{flex-basis:16rem}.copy-control{align-content:start;gap:.35rem;max-width:22rem;display:grid}.pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.student-search .field{min-width:0}.password-field__toggle{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:.6rem;min-height:48px;padding:0 .9rem;font-weight:700}.sharing-bar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-top:1rem;padding:.5rem .9rem;display:flex}.sharing-bar .checkbox-field{flex:none;min-height:40px;margin:0}.sharing-bar__note{color:var(--muted);flex:18rem;min-width:0;margin:0;font-size:.85rem}.sharing-bar .button{flex:none;min-height:40px;padding:.4rem 1rem}.cal-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin:1rem 0;display:flex}.cal-toolbar__range{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.diary-date-jump{flex-wrap:wrap;align-items:end;gap:.5rem;margin-bottom:1rem;display:flex}.diary-date-jump .field{min-width:0}.cal-toolbar__range strong{font-family:var(--font-space-grotesk), sans-serif;text-align:center;min-width:12rem;font-size:1.05rem}.cal-filter{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:.45rem;min-height:44px;padding:.4rem .9rem;text-decoration:none;display:inline-flex}.chip--on{border-color:var(--teal-dark);box-shadow:inset 0 0 0 1px var(--teal-dark);font-weight:700}.chip__dot{background:var(--event-colour,var(--teal-dark));border-radius:50%;width:.7rem;height:.7rem}.cal-scroll{overflow-x:auto}.cal-grid{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:3.6rem repeat(var(--day-count), minmax(7.5rem, 1fr));min-width:100%;display:grid;overflow:hidden}.cal-corner{background:var(--surface);border-bottom:1px solid var(--line);z-index:3;position:sticky;top:0}.cal-dayhead{background:var(--surface);border-bottom:1px solid var(--line);border-left:1px solid var(--line);z-index:3;justify-items:center;gap:.1rem;padding:.5rem .25rem;text-decoration:none;display:grid;position:sticky;top:0}.cal-dayhead span{color:var(--muted);text-transform:uppercase;font-size:.8rem}.cal-dayhead strong{font-family:var(--font-space-grotesk), sans-serif;font-size:1.15rem}.cal-dayhead--today strong{background:var(--teal);border-radius:999px;padding:.1rem .55rem}.cal-hours{grid-auto-rows:2.1rem;display:grid}.cal-hour{color:var(--muted);text-align:right;padding-right:.4rem;font-size:.75rem;transform:translateY(-.5em)}.cal-day{border-left:1px solid var(--line);grid-template-columns:1fr;grid-auto-rows:2.1rem;display:grid;position:relative}.cal-slot{border-bottom:1px dashed #eef3f1;grid-column:1;text-decoration:none}.cal-slot--hour{border-bottom-color:var(--line);border-bottom-style:solid}.cal-slot:hover,.cal-slot:focus-visible{background:#eefaf6}.cal-event{background:var(--event-colour,var(--teal-dark));color:#fff;margin-left:calc(var(--event-column) / var(--event-columns) * 100%);width:calc(100% / var(--event-columns) - 2px);z-index:2;border-radius:.45rem;grid-column:1;padding:.2rem .35rem;font-size:.78rem;line-height:1.25;text-decoration:none;display:block;position:relative;overflow:hidden}.cal-event strong{opacity:.9;font-size:.72rem;display:block}.cal-event span{font-weight:700;display:block}.cal-event small{opacity:.85;display:block}.cal-event:hover,.cal-event:focus-visible{filter:brightness(1.1);outline:2px solid var(--navy)}.cal-event--completed{opacity:.65}.cal-event--held{background-image:repeating-linear-gradient(45deg,#ffffff2e 0 6px,#0000 6px 12px)}.cal-month{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.cal-month__weekdays{border-bottom:1px solid var(--line);color:var(--muted);text-align:center;grid-template-columns:repeat(7,1fr);font-size:.8rem;display:grid}.cal-month__weekdays span{padding:.45rem 0}.cal-month__grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-month__day{border-bottom:1px solid var(--line);border-left:1px solid var(--line);align-content:start;gap:.25rem;min-width:0;min-height:6.5rem;padding:.35rem;display:grid}.cal-month__day--outside{color:var(--muted);background:#fafcfb}.cal-month__day--today{box-shadow:inset 0 0 0 2px var(--teal)}.cal-month__date{font-weight:700;text-decoration:none}.cal-month__lessons{gap:.15rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}.cal-month__lessons li{min-width:0}.cal-month__lessons a{border-left:4px solid var(--event-colour,var(--teal-dark));background:var(--paper);text-overflow:ellipsis;white-space:nowrap;border-radius:.25rem;padding:.1rem .3rem;font-size:.72rem;text-decoration:none;display:block;overflow:hidden}.cal-month__lessons em{font-style:normal;font-weight:700}@media (max-width:62rem){.two-column{grid-template-columns:1fr}}@media (max-width:52rem){.cal-grid{grid-template-columns:3rem repeat(var(--day-count), minmax(6rem, 1fr))}.cal-month__day{padding:.2rem;font-size:.9rem}.cal-month__lessons a{padding:.1rem .15rem;font-size:.62rem}.cal-toolbar__range strong{min-width:8rem;font-size:.95rem}.cal-month__day{min-height:4.75rem}}
