:root{--highlight:#318df6;--clash:#f28c28;--blocked:#ffe4e4;--orange:#f28c28;--pastel-yellow:#fff9e0;--red:#d31616;--black:#151b24;--black-09:#263141e6;--black-08:#263141cc;--black-07:#263141b3;--black-06:#26314199;--black-05:#26314180;--black-04:#26314166;--black-03:#2631414d;--black-02:#26314133;--black-01:#2631411a;--black-005:#2631410d;--pastel-blue:#f0f4f9;--pastel-blue-darker:#cbd8ff;--deep-green:#24be9a;--pastel-green:#d9f2df;--pastel-orange:#fde6cf;--br:.4rem}body{background-color:var(--black);color:#fff;min-height:100vh;margin:0;font-family:Satoshi,system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3,h4{margin:0;padding:0;font-weight:900}h1{font-size:clamp(1.85rem,5vw,2.5rem)}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--highlight);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.panel{color:#1c2430;border-top:5px solid var(--highlight);background-color:#fff;border-radius:.4rem;margin:0 2rem 2rem 0;padding:1.5rem}.cta{background-color:var(--black);color:#fff;cursor:pointer;outline:2px solid var(--black);border:0;border-radius:100vw;width:fit-content;padding:.5rem 1rem .5rem .75rem;font-size:1.25rem;font-weight:900;transition:all .2s;display:block;box-shadow:-1px 1px 0 1px #0d1113}.cta:hover{background-color:var(--highlight);transform:translateY(-2px);box-shadow:1px 5px 0 1px #0d1113}.mini-cta{border:solid 1px var(--highlight);background-color:unset;color:var(--highlight);cursor:pointer;border-radius:100vw;padding:.25rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s}.mini-cta:hover{background-color:var(--highlight);color:#fff}.button-confirm{background-color:var(--deep-green);border:solid 1px var(--deep-green);color:#fff;cursor:pointer;border-radius:.25rem;padding:.5rem .75rem;font-size:.95rem;font-weight:500;transition:all .2s}.button-confirm:hover{transform:translateY(-3px)}.button-cancel{border:solid 1px var(--black-03);border-radius:var(--br);cursor:pointer;color:var(--black-09);background-color:#fff;padding:.5rem .75rem;font-size:.95rem;font-weight:450;transition:all .2s}.button-cancel:hover{background-color:var(--black-09);color:#fff}.date-picker{cursor:pointer}.date-picker:invalid::-webkit-datetime-edit{opacity:0}.teacher-availability section~section{border-top:solid 1px var(--black-01);margin-top:2rem;padding-top:2rem}.teacher-availability h2{margin-bottom:.5rem;font-weight:700}.availability-subheading{margin:1.5rem 0 .5rem;font-weight:700}.teacher-availability{--windows-list-width:25rem;--windows-gap:4rem;--windows-card-width:26rem}.availability-layout{align-items:start;gap:var(--windows-gap);display:grid}.availability-layout-windows{grid-template-columns:minmax(0, var(--windows-list-width)) minmax(0, var(--windows-card-width))}.availability-layout-blocked{grid-template-columns:minmax(0, 1fr) minmax(0, var(--windows-card-width))}.availability-windows .page-note{max-width:calc(var(--windows-list-width) + var(--windows-gap) + var(--windows-card-width));font-size:1rem;line-height:1.5}@media not (min-width:900px){.availability-layout{grid-template-columns:minmax(0,1fr)}}.availability-card{border-radius:var(--br);background-color:var(--pastel-blue);padding:1.5rem}.availability-card .availability-subheading{margin-top:0}.availability-add-block .form-field{flex:8rem}.availability-add-block .availability-reason{flex-basis:100%}.blocked-range:not(.blocked-range-editing) td:first-child:before{content:"";aspect-ratio:1;background-color:var(--red);vertical-align:middle;border-radius:50%;width:.5rem;margin-right:.5rem;display:inline-block}.availability-add-window .form-field{flex:5.5rem}.availability-add-window .window-day-field{flex-basis:9.5rem}.page-note{max-width:51rem}.page-note,.lessons-in-blocks-empty,.window-list-empty,.blocked-list-empty{color:var(--black-06);margin:0 0 1rem;font-size:.9rem}.lessons-in-blocks-empty i{color:var(--deep-green)}.availability-link{color:var(--highlight);font-weight:500;text-decoration:none}.availability-link:hover{text-decoration:underline}.window-list{grid-template-columns:7rem max-content 1fr;margin:0;display:grid}.window-day{grid-column:1/-1;grid-template-columns:subgrid;border-bottom:solid 1px var(--black-01);align-items:center;gap:.5rem;padding-block:.5rem;display:grid}.window-day dd{grid-column:2}.window-day-name{grid-area:1/1;align-items:center;gap:.5rem;font-weight:500;display:flex}.window-day-name:before{content:"";aspect-ratio:1;background-color:var(--deep-green);border-radius:50%;width:.5rem}.window-day dd{margin:0}.window{background-color:#fff;border-radius:100vw;align-items:center;gap:.25rem;padding:.25rem .5rem .25rem .75rem;font-size:.9rem;display:flex}.window-times{font-variant-numeric:tabular-nums;flex:1;margin-right:.25rem}.window-times i{color:var(--highlight)}.window-delete-form,.blocked-delete-form,.blocked-edit-form{display:inline}.window.window-editing{border-radius:var(--br);grid-column:2/-1;padding:.75rem;display:block}.availability-fields,.window-edit-form{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.teacher-availability .form-field{gap:.25rem;margin:0;font-size:.9rem;display:grid}.availability-reason{flex:14rem}.teacher-availability :is(input[type=text],input[type=date],select){box-sizing:border-box;border:solid 1px var(--black-02);border-radius:var(--br);background-color:#fff;width:100%;padding:.65rem}.add-window-form .button-confirm,.add-blocked-form .button-confirm{margin-top:1rem}.availability-buttons,.blocked-edit-form{gap:.5rem;display:flex}.add-blocked-kind{border:0;max-width:28rem;margin:0 0 1rem;padding:0}.add-blocked-kind legend{padding:0 0 .25rem;font-weight:500}.blocked-table{border-collapse:collapse;width:100%;font-size:.95rem}.blocked-table th,.blocked-table td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--black-01);padding-block:.5rem;padding-inline-end:2rem}.blocked-table th{font-weight:525}.blocked-table th:last-child,.blocked-table td:last-child{text-align:right;white-space:nowrap;padding-inline-end:0}.blocked-reason{color:var(--black-06)}.teacher-availability .form-result p,.schedule-form .form-result p,.teacher-settings .form-result p{margin:0}.teacher-availability .form-result-success:not(:empty),.schedule-form .form-result-success:not(:empty),.teacher-settings .form-result-success:not(:empty),.settings-result-success,.get-paid-ready{background-color:var(--pastel-green);border:1px dashed #b4dcb4;border-radius:.25rem;width:fit-content;margin-block:.5rem;padding:.5rem;font-size:.9rem}.teacher-availability .form-result-error:not(:empty),.schedule-form .form-result-error:not(:empty),.teacher-settings .form-result-error:not(:empty),.settings-result-error{color:var(--red);margin-block:.5rem;font-size:.9rem}.add-blocked-warning{border-radius:var(--br);background-color:var(--pastel-yellow);margin-top:1rem;padding:.75rem}.add-blocked-warning p{margin:0 0 .5rem}.add-blocked-warning i{color:var(--orange)}.add-blocked-warning-list,.lessons-in-blocks-list{margin:0;padding:0;list-style:none}.lesson-in-block{border-bottom:solid 1px var(--black-01);align-items:center;gap:1rem;padding-block:.5rem;display:flex}.lesson-in-block-pupil{align-items:center;gap:.5rem;width:10rem;display:flex}.lesson-in-block-name,.add-blocked-warning-pupil{text-transform:capitalize;font-weight:500}.teacher-settings section~section{border-top:solid 1px var(--black-01);margin-top:2rem;padding-top:2rem}.teacher-settings h2{margin-bottom:1rem;font-weight:700}.get-paid-body{max-width:40rem}.get-paid-ready{margin:0 0 2rem}.get-paid-ready i{color:var(--deep-green)}.profile-header{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.profile-photo-button{aspect-ratio:1;cursor:pointer;background:0 0;border:0;border-radius:50%;width:6rem;padding:0;display:block;position:relative}.profile-photo-button img{width:100%;height:100%;display:block}.profile-photo-overlay{background-color:var(--black-05);color:#fff;opacity:0;border-radius:50%;place-items:center;font-size:1.25rem;transition:opacity .2s;display:grid;position:absolute;inset:0}.profile-photo-button:hover .profile-photo-overlay,.profile-photo-button:focus-visible .profile-photo-overlay{opacity:1}.profile-photo-button:hover .icon-tooltip,.profile-photo-button:focus-visible .icon-tooltip{opacity:1;visibility:visible;transform:translate(var(--tooltip-x), 0)}.profile-photo-none{background-color:var(--black-005);width:100%;height:100%;color:var(--black-06);text-align:center;border-radius:50%;place-items:center;font-size:.8rem;display:grid}.profile-photo .form-result{margin-top:.5rem}.profile-details{flex:16rem}.settings-row{flex-wrap:wrap;align-items:end;gap:.75rem;max-width:40rem;margin-bottom:1rem;display:flex}.teacher-settings .form-field{flex:12rem;gap:.25rem;margin:0;font-size:.9rem;display:grid}.teacher-settings .form-field label i{text-align:center;width:1.25em;color:var(--highlight)}.teacher-settings :is(input[type=text],input[type=password]){box-sizing:border-box;border:solid 1px var(--black-02);border-radius:var(--br);background-color:#fff;width:100%;padding:.65rem}.settings-auto-approve{cursor:pointer;align-items:center;gap:.5rem;padding-block:.65rem;display:flex}.settings-auto-approve input{width:1.1rem;height:1.1rem;accent-color:var(--highlight)}.settings-result{margin:0 0 1rem}.photo-crop-actions{gap:.5rem;display:flex}.families-table{border-collapse:collapse;width:100%;font-size:.95rem}.families-table th,.families-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--black-01);padding-block:.5rem;padding-inline-end:2rem}.families-table th:last-child,.families-table td:last-child{padding-inline-end:0}@media not (min-width:700px){.families-table-scroll{overflow-x:auto}}.families-table thead th{z-index:1;background-color:var(--pastel-blue);position:sticky;top:0}.families-table .families-select,.families-table thead th:first-child{padding-inline-end:1rem}.families-table th{font-weight:525}.families-table a,.families-table .families-name-button{color:var(--highlight);text-decoration:none;font-weight:500!important}.families-table a:hover,.families-table .families-name-button:hover{text-decoration:underline}.families-manage button{background-color:unset;color:var(--highlight);border:none;font-weight:500}.families-manage button:hover{cursor:pointer;text-decoration:underline}.families-sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.families-sort i{font-size:.75em}.families-title-row{align-items:center;display:flex}.families-title-row .cta{margin-left:auto}dialog{border-radius:var(--br);background-color:var(--pastel-blue);box-shadow:0 4px 20px var(--black-05);opacity:0;transition:opacity .2s, translate .2s, overlay .2s allow-discrete, display .2s allow-discrete;border:none;padding:1.5rem;translate:0 1rem}dialog[open]{opacity:1;translate:0}@starting-style{dialog[open]{opacity:0;translate:0 1rem}}dialog::backdrop{opacity:0;transition:opacity .2s, overlay .2s allow-discrete, display .2s allow-discrete}dialog[open]::backdrop{opacity:1}@starting-style{dialog[open]::backdrop{opacity:0}}.add-student-dialog{width:min(650px,100% - 2rem);max-width:none;max-height:calc(100dvh - 2rem);margin:auto;overflow-y:auto}.add-student-dialog::backdrop{background-color:var(--black-02)}.add-student-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.add-student-steps{gap:1rem;margin:1rem 0 0;padding:0;font-size:.9rem;list-style:none;display:flex}.add-student-step{color:var(--black-06);align-items:center;gap:.375rem;display:flex}.add-student-step.is-current{color:var(--black);font-weight:700}.add-student-step-number{aspect-ratio:1;background-color:var(--black-01);border-radius:50%;place-items:center;width:1.5rem;font-size:.75rem;font-weight:700;display:inline-grid}.add-student-step.is-current .add-student-step-number{background-color:var(--highlight);color:#fff}.add-student-step.is-done .add-student-step-number{background-color:var(--deep-green);color:#fff}.add-student-dialog h3{border-top:solid 1px var(--black-01);margin:1rem 0 .5rem;padding-top:1rem;font-weight:700}.add-student-dialog h3:focus{outline:none}.add-student-done h3 i{color:var(--deep-green)}.add-student-dialog fieldset{border:0;gap:.25rem;margin:0 0 1rem;padding:0;display:grid}.add-student-dialog legend{padding:0 0 .25rem;font-weight:500}.choice-boxes{border:0;grid-template-columns:1fr 1fr;gap:.5rem;min-inline-size:0;padding:0;display:grid}.choice-boxes legend{grid-column:1/-1}.choice-boxes>label{border:solid 1px var(--black-02);border-radius:var(--br);color:var(--black-08);cursor:pointer;background-color:#fff;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:border-color .2s,color .2s;display:flex;position:relative}.choice-boxes>label:hover{border-color:var(--highlight)}.choice-boxes>label>input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.choice-boxes>label:has(>input:checked){border-color:var(--highlight);box-shadow:inset 0 0 0 1px var(--highlight);color:var(--highlight);font-weight:500}.choice-boxes>label:has(>input:focus-visible){outline:2px solid var(--highlight);outline-offset:2px}.add-student-dialog .form-field{gap:.25rem;margin:0 0 .75rem;display:grid}.add-student-dialog .form-field label i{text-align:center;width:1.25em;color:var(--highlight)}.add-student-dialog :is(input[type=text],input[type=email],input[type=tel],select){box-sizing:border-box;border:solid 1px var(--black-02);border-radius:var(--br);background-color:#fff;width:100%;padding:.65rem}.add-student-dialog .child-name-row-popup{margin:.25rem 0}.add-student-note{color:var(--black-06);margin:0 0 .75rem;font-size:.9rem}.add-student-error{margin:0}.add-student-error:not(:empty){margin-bottom:1rem}.add-student-error i{color:var(--red)}.add-student-existing{border-radius:var(--br);background-color:var(--pastel-yellow);margin-bottom:1rem;padding:.75rem}.add-student-existing h4{margin:0 0 .5rem;font-weight:700}.add-student-success{background-color:var(--pastel-green);border:1px dashed #b4dcb4;border-radius:.25rem;width:fit-content;padding:.5rem;font-size:.9rem}.add-student-done h4{margin:1rem 0 .5rem;font-weight:700}.add-student-next{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.add-student-next a.mini-cta{text-decoration:none;display:inline-block}.add-student-next .mini-cta:disabled{opacity:.5;cursor:not-allowed}.add-student-next .mini-cta:disabled:hover{background-color:unset;color:var(--highlight)}#add-student-invoicing-soon{color:var(--black-06);font-size:.85rem}.add-student-dialog .dialog-footer{border-top:solid 1px var(--black-01);flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.add-student-confirm{position:relative}.add-student-tick-hint{z-index:1;background-color:var(--black);color:#fff;border-radius:.3rem;width:max-content;max-width:100%;padding:.4rem .6rem;font-size:.875rem;position:absolute;top:calc(100% + .5rem);left:0}.add-student-tick-hint:before{content:"";border:.4rem solid #0000;border-bottom-color:var(--black);position:absolute;bottom:100%;left:.2rem}.book-lessons{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4rem;display:grid}.book-lessons-day h3{margin-bottom:.5rem;font-weight:700}.book-lessons-form{border-radius:var(--br);background-color:var(--pastel-blue);padding:1.5rem}.book-lessons-day-note{color:var(--black-06);font-size:.9rem}.schedule-form{gap:1rem;display:grid}.schedule-form .form-field{gap:.25rem;margin:0;display:grid}.schedule-form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.schedule-form :is(.form-field label,legend) i{text-align:center;width:1.25em;color:var(--highlight)}.schedule-form legend{padding:0 0 .25rem;font-weight:500}.schedule-form :is(input[type=text],input[type=date],input[type=number],select){box-sizing:border-box;border:solid 1px var(--black-02);border-radius:var(--br);background-color:#fff;width:100%;padding:.65rem}.schedule-duration{grid-template-columns:repeat(4,1fr)}.schedule-duration>:not(label,legend){grid-column:1/-1}.schedule-duration-custom{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.schedule-duration-custom select{width:auto}.schedule-duration-error:not(:empty){color:var(--red);font-size:.9rem}.schedule-preview{border-radius:var(--br);background-color:#fff;margin:0;padding:.75rem;font-size:.9rem}.schedule-preview i{color:var(--highlight);margin-right:.25rem}.schedule-conflict-warning:empty{display:none}.schedule-conflict-warning{border-radius:var(--br);background-color:var(--pastel-yellow);padding:.75rem;font-size:.9rem}.schedule-conflict-warning p{margin:0}.schedule-conflict-list{margin:.5rem 0 0;padding-left:1.25rem}.schedule-book,.schedule-conflict-actions{justify-self:start}.schedule-conflict-actions{flex-wrap:wrap;gap:.5rem;margin:0;display:flex}.schedule-double-booked h2,.schedule-skipped h2{margin:0 0 .25rem;font-size:1rem;font-weight:700}.schedule-double-booked-list,.schedule-skipped-list{margin:0;padding-left:1.25rem;font-size:.9rem}@media (max-width:900px){.book-lessons{grid-template-columns:minmax(0,1fr);gap:2rem}}.families-toolbar{gap:2.5rem;display:flex}.families-search-box{display:inline-block;position:relative}.families-search-box i{pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.families-search-box input{border-radius:100vw;padding-left:2.25rem}.families-person{align-items:center;gap:.5rem;display:flex}.families-name-text{text-transform:capitalize}.families-name-button{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.week-lesson-dialog{width:min(22rem,100% - 2rem);margin:auto;overflow:visible}.week-lesson-dialog::backdrop{background-color:var(--black-02)}.week-lesson-dialog-header,.week-lesson-details,.week-lesson-family{border-bottom:solid 1px var(--black-01);padding-block:.75rem}.week-lesson-dialog-heading{align-items:center;gap:.5rem;display:flex}.week-lesson-details{gap:.5rem;margin:0;padding-inline:0;list-style:none;display:grid}.week-lesson-details i{text-align:center;width:1.25em;margin-right:.25rem}.week-lesson-family-heading{margin-bottom:.5rem;font-size:.9rem;font-weight:700}.week-lesson-family-link{width:fit-content;color:var(--highlight);align-items:center;gap:.5rem;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.week-lesson-family-link:hover .week-lesson-family-name{text-decoration:underline}.week-lesson-actions{gap:.5rem;padding-top:.75rem;display:flex}.week-lesson-close{margin-left:auto}.week-lesson-action{color:var(--black-05);cursor:pointer;background:0 0;border:0;padding:.125rem;transition:color .2s;position:relative}.week-lesson-action:hover{color:var(--highlight)}.week-lesson-delete:hover,.week-lesson-close:hover{color:var(--red)}.icon-tooltip{--tooltip-x:-50%;z-index:2;background-color:var(--black);color:#fff;pointer-events:none;opacity:0;visibility:hidden;width:max-content;transform:translate(var(--tooltip-x), .375rem);border:0;border-radius:.25rem;padding:.5rem;font-size:.8rem;font-weight:450;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:calc(100% + .375rem);left:50%}.icon-tooltip:before{content:"";border:.3rem solid #0000;border-bottom-color:var(--black);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.week-lesson-close .icon-tooltip{--tooltip-x:0;left:auto;right:0}.week-lesson-close .icon-tooltip:before{left:auto;right:.3rem;transform:none}.week-lesson-action:hover .icon-tooltip,.week-lesson-action:focus-visible .icon-tooltip,.child-name-remove-icon:hover .icon-tooltip,.child-name-remove-icon:focus-visible .icon-tooltip{opacity:1;visibility:visible;transform:translate(var(--tooltip-x), 0)}.week-lesson-panel .lesson-change-form,.week-lesson-panel .lesson-cancel{gap:.5rem;display:grid}.week-lesson-panel .lesson-change-form{grid-template-columns:repeat(2,minmax(0,1fr))}.week-lesson-panel .lesson-change-date,.week-lesson-panel .lesson-change-review{grid-column:1/-1}.week-lesson-panel .lesson-change-review{border-radius:var(--br);background-color:var(--highlight);color:#fff;cursor:pointer;border:0;margin-top:1rem;padding:.5rem;font-weight:500}.week-lesson-panel .lesson-change-review:disabled{opacity:.5;cursor:not-allowed}.week-lesson-panel .lesson-cancel-open{border:2px solid var(--red);border-radius:var(--br);cursor:pointer;padding:.5rem}.week-lesson-panel .lesson-cancel-open-one{background-color:var(--red);color:#fff}.week-lesson-panel .lesson-cancel-open-series{color:var(--red);background-color:#0000}.week-lesson-panel .lesson-change-form label,.week-lesson-panel .lesson-change-form select{min-width:0}.week-lesson-panel .lesson-change-form label{display:grid}.families-pupil-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.initials-circle{aspect-ratio:1;width:1.75rem;color:var(--black);border-radius:50%;flex-shrink:0;place-items:center;font-size:.7rem;font-weight:700;display:inline-grid}.initials-colour-0{background-color:#f9c9c9}.initials-colour-1{background-color:#fbd6b8}.initials-colour-2{background-color:#fbe8aa}.initials-colour-3{background-color:#e2efb3}.initials-colour-4{background-color:#c7e9c5}.initials-colour-5{background-color:#bae5dc}.initials-colour-6{background-color:#c0e1f3}.initials-colour-7{background-color:#c9d4f6}.initials-colour-8{background-color:#dacbf4}.initials-colour-9{background-color:#f0c8eb}.initials-colour-10{background-color:#f6c7d9}.initials-colour-11{background-color:#e6d8c6}.status-pill{border-radius:100vw;align-items:center;gap:.375rem;padding:.25rem .5rem;font-size:.8rem;font-weight:500;display:inline-flex}.status-pill-active:before,.status-pill-inactive:before{content:"";aspect-ratio:1;border-radius:50%;width:.5rem}.status-pill-active{background-color:var(--pastel-green)}.status-pill-active:before{background-color:var(--deep-green)}.status-pill-inactive{background-color:var(--pastel-orange)}.status-pill-inactive:before{background-color:var(--orange)}.move-requests{border-top:solid 1px var(--black-01);padding-top:1.5rem}.move-requests-table{border-collapse:collapse}.move-requests-table :is(th,td):not(:last-child){padding-right:1rem}.move-requests-table th{color:var(--black-08);text-align:left;padding-bottom:.5rem;font-size:.85rem;font-weight:600}.move-request-person{align-items:center;gap:.5rem;display:flex}.move-request-form{gap:.5rem;display:flex}.move-request-form button{font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500}.move-request-approve{color:var(--deep-green)}.move-request-decline{color:var(--red)}.family-account{color:var(--black-08);align-items:center;gap:.5rem;display:flex}.family-sign-out button{color:var(--highlight);cursor:pointer;background:0 0;border:0;padding:0}.family-sign-out button:hover{text-decoration:underline}.student{border-bottom:1px solid var(--black-02);padding-bottom:2rem}.student:nth-child(2){border-top:solid 1px var(--black-02);margin-top:2rem}.student+.student{border-top:0}.student-heading{align-items:center;gap:.5rem;margin:2rem 0 .75rem;display:flex}.lesson-list{flex-wrap:wrap;gap:.5rem;display:flex}.lesson{box-sizing:border-box;background-color:var(--pastel-blue);border-radius:var(--br);align-content:start;gap:.25rem;width:11rem;max-width:100%;padding:1rem;display:grid;position:relative}.lesson-when{gap:.25rem;display:grid}.lesson-when i{text-align:center;width:1.25em}.lesson-move,.payments-mark-paid,.payments-mark-all{color:var(--highlight);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.lesson-move:after{content:"";position:absolute;inset:0}.lesson:hover .lesson-move{text-decoration:underline}.family-payments-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.family-payments{padding-top:2rem}.family-payments-tab{cursor:pointer;text-transform:capitalize;border:0;border-radius:100vw;padding:.5rem 1rem;font-size:.85rem;font-weight:500}.family-payments-tab-outstanding{color:var(--orange);background-color:var(--pastel-orange)}.family-payments-tab-paid{color:var(--deep-green);background-color:var(--pastel-green)}.family-payments-tab-refunded{color:var(--highlight);background-color:var(--pastel-blue)}.family-payments-tab-all{color:#fff;background-color:var(--black-09)}.payments-lessons{margin:0;padding:0;list-style:none}.payments-mark-paid:hover,.payments-mark-all:hover{text-decoration:underline}.payments-mark-paid:disabled,.payments-mark-all:disabled{opacity:.5;cursor:not-allowed}.payments-family{border-bottom:1px solid var(--black-01);padding-bottom:2rem}.payments-family-name,.payments-lesson-student{align-items:center;gap:.5rem;display:flex}.payments-select{cursor:pointer;margin:0;position:absolute;top:.75rem;right:.75rem}.payments-history-open{color:var(--black-05);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.payments-history-open:hover{text-decoration:underline}.payments-title-row{align-items:center;display:flex}.payments-title-row .cta{margin-left:auto}.payments-all-dialog{box-sizing:border-box;width:min(24rem,100% - 2rem);max-width:none;margin:auto;overflow:hidden}.payments-all-dialog-chosen{width:min(48rem,100% - 2rem);height:min(34rem,100dvh - 2rem)}.payments-all-dialog::backdrop{background-color:var(--black-02)}.payments-all-choose{gap:.25rem;display:grid}.manage-family-dialog{max-width:30rem;max-height:80vh}.manage-family-dialog>section>h3{margin-bottom:.5rem}.manage-family-dialog>section~section>h3{border-top:solid 1px var(--black-01);margin-top:1rem;padding-top:1rem}.manage-family-header{align-items:center;gap:.5rem;display:flex}.manage-family-status{margin:0 0 0 auto}.manage-family-status:not(:empty){color:var(--black-08);background-color:#dbf8db;border:1px dashed #b4dcb4;border-radius:.25rem;padding:.5rem;font-size:.9rem;font-weight:450}.manage-family-heading{text-transform:capitalize;align-items:center;gap:.5rem;display:flex}.manage-pupil-list{grid-template-columns:auto auto auto 1fr auto auto;gap:.5rem;display:grid}.manage-pupil,.manage-pupil-row{grid-column:1/-1;grid-template-columns:subgrid;align-items:center;display:grid}.manage-pupil{row-gap:.25rem}.manage-pupil-row>.manage-family-edit-form{grid-column:2/5}.manage-pupil-row .manage-family-edit-input{flex:1;width:0}.manage-pupil-row>.status-pill{grid-column:5;justify-self:start}.manage-pupil-row>.manage-pupil-toggle{background-color:unset;color:var(--highlight);text-align:right;cursor:pointer;border:none;grid-column:6;padding:0;font-size:.8rem;text-decoration:underline}.manage-pupil-row>.manage-pupil-toggle:hover{text-decoration:none}.manage-family-add-children-open{margin-top:.75rem}.mini-modal{background-color:#fff;width:20rem;overflow:visible}.mini-modal fieldset{border:0;margin:0;padding:0 0 1rem;display:grid}.mini-modal legend{padding:.5rem 0}.mini-modal h3{font-weight:700}.child-name-row-popup{align-items:center;gap:.5rem;margin:.5em 0;display:flex}.child-name-row-popup input{box-sizing:border-box;border:solid 1px var(--black-02);border-radius:var(--br);flex:1;min-width:0;padding:.65rem}.child-name-remove-icon{color:var(--black-05);cursor:pointer;background:0 0;border:0;padding:.125rem;transition:color .2s;position:relative}.child-name-remove-icon:hover{color:var(--red)}.mini-modal .mini-cta{margin-top:.5rem}.mini-modal-error{margin:0}.mini-modal-error i{color:var(--red)}.mini-modal-error:not(:empty){background-color:var(--blocked);color:var(--black-08);border-radius:var(--br);margin:0 0 1rem;padding:1rem;font-size:.9rem;font-weight:450}.mini-modal-name{text-transform:capitalize}.manage-pupil-leaving-question{color:var(--black-06);margin:0;padding-block:.5rem;display:block}.manage-pupil-leaving-count{color:var(--black);font-weight:450}.manage-family-fields{gap:.25rem;margin:0;display:grid}.manage-family-field{align-items:center;gap:.5rem;display:flex}.manage-family-field dt{text-align:center;width:1.25em;color:var(--highlight)}.manage-family-field dd{margin:0}.manage-family-field-value{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.manage-family-edit-text{text-transform:capitalize}.manage-family-edit-form{align-items:center;gap:.5rem;display:flex}.manage-family-edit-input{border:0;border-bottom:solid 1px var(--highlight);color:inherit;text-transform:capitalize;background:0 0;padding:0}.manage-family-edit-input[aria-invalid=true]{border-bottom-color:var(--red)}.manage-family-edit-error{color:var(--red);flex-basis:100%;grid-column:1/-1;margin:0;font-size:.85rem}.icon-button{color:var(--black-05);cursor:pointer;background:0 0;border:0;padding:.125rem;transition:color .2s;position:relative}.icon-button:hover{color:var(--highlight)}.icon-button-danger:hover{color:var(--red)}.icon-button:disabled{cursor:not-allowed;opacity:.5}.icon-button:hover .icon-tooltip,.icon-button:focus-visible .icon-tooltip{opacity:1;visibility:visible;transform:translate(var(--tooltip-x), 0)}.manage-family-edit-form .icon-button[type=submit]:hover{color:var(--deep-green)}.manage-family-edit-form .icon-button[type=button]:hover{color:var(--red)}.manage-family-payments-open{color:var(--highlight);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.manage-family-payments-open:hover{text-decoration:underline}.payments-history-dialog{box-sizing:border-box;width:min(48rem,100% - 2rem);max-width:none;height:min(34rem,100dvh - 2rem);margin:auto;overflow:hidden}.payments-history-dialog::backdrop{background-color:var(--black-02)}.payments-history-body{flex-direction:column;gap:1rem;height:100%;display:flex}.payments-history-header{align-items:center;gap:1rem;display:flex}.payments-history-heading{align-items:center;gap:.5rem;display:flex}.payments-history-close{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:.25rem}.payments-history-scroll{flex:1;min-height:0;overflow-y:auto}.payments-status{align-items:center;gap:.4rem;display:inline-flex}.payments-status:before{content:"";aspect-ratio:1;border-radius:50%;width:.5rem}.payments-status-paid:before{background-color:var(--deep-green)}.payments-status-unpaid:before{background-color:var(--orange)}.move-lesson-dialog{width:min(40rem,100% - 2rem);max-width:none;max-height:calc(100dvh - 2rem);margin:auto;overflow-y:auto}.move-lesson-dialog::backdrop{background-color:var(--black-02)}.move-lesson-heading{align-items:center;gap:.5rem;padding-right:2rem;display:flex}.move-lesson-form{position:relative}.move-lesson-close{color:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem;position:absolute;top:0;right:0}.move-lesson-day{border:0;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;display:flex}.move-lesson-day legend{color:var(--black-08);margin:1rem 0 .25rem;padding:0;font-size:.9rem;font-weight:500;display:block}.move-lesson-day+.move-lesson-day{margin-top:1rem}.move-lesson-current{border-bottom:1px solid var(--black-02);padding-bottom:1rem}.move-lesson-current i{color:var(--highlight)}.move-lesson-slot{border-radius:var(--br);color:inherit;cursor:pointer;background-color:#fff;border:none;align-items:center;gap:.25rem;padding:.5rem;font-size:.9rem;transition:all .2s;display:inline-flex}.move-lesson-slot:hover{background-color:var(--highlight);color:#fff}.move-lesson-slot i{color:var(--highlight);transition:color .2s}.move-lesson-slot:hover i{color:#fff}.move-lesson-summary{gap:.25rem;margin:1rem 0;display:grid}.move-lesson-summary div{gap:.5rem;display:flex}.move-lesson-summary dd{margin:0}.move-lesson-message-label{margin-bottom:.25rem;display:block}.move-lesson-message{box-sizing:border-box;resize:vertical;width:100%}.move-lesson-actions{gap:.5rem;margin-top:1rem;display:flex}.loader-wrap{place-items:center;padding-block:3rem;display:grid}.loader{--color-1:var(--highlight);--size:1.5px;width:calc(48 * var(--size));height:calc(48 * var(--size));border-top:calc(3 * var(--size)) solid var(--color-1);border-right:calc(3 * var(--size)) solid transparent;box-sizing:border-box;border-radius:50%;animation:1s linear infinite rotation;display:inline-block}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
