.student-finance>.ds-page-header{margin-bottom:var(--ds-space-6)}.student-finance .person-inline-list{gap:var(--ds-space-8)}.student-finance .person-agreement-group,.student-finance .person-agreement{gap:var(--ds-space-6)}.student-finance .person-agreement>header{justify-content:space-between;align-items:start;gap:var(--ds-space-4);display:flex}.student-finance .person-agreement h3{font-size:var(--ds-title)}.student-finance .person-agreement header p{color:var(--ds-muted);margin-top:var(--ds-space-2);font-size:var(--ds-support)}.person-agreement-body{gap:var(--ds-space-8);grid-template-columns:minmax(240px,.85fr) minmax(0,1.5fr);align-items:start;display:grid}.student-finance .person-agreement .ds-facts{gap:var(--ds-space-3);grid-template-columns:minmax(0,1fr)}.student-finance .person-agreement .ds-facts dd{margin:0}.student-finance .person-agreement>.ds-facts{max-width:360px}.person-agreement-terms{border-top:1px solid var(--ds-line);padding-top:var(--ds-space-4)}.person-agreement-terms h4{font-size:var(--ds-body);margin:0 0 var(--ds-space-3)}.person-agreement-terms p{max-width:65ch;font-size:var(--ds-support);margin:0;line-height:1.6}.person-agreement-actions{gap:var(--ds-space-3);flex-wrap:wrap;display:flex}.person-agreement-actions>p,.person-agreement-actions>label{flex-basis:100%}.student-finance .person-agreement label{align-items:start;gap:var(--ds-space-3);max-width:70ch;line-height:1.5;display:flex}.student-finance .person-agreement label input{width:20px;height:20px;accent-color:var(--ds-wood);flex:none;margin-top:2px}.student-finance .person-payment-group{margin:0}.student-finance .person-payment-overview{gap:var(--ds-space-8);display:grid}.student-finance .person-payment{grid-template-columns:minmax(0, 1fr) var(--ds-status-width) 96px;gap:var(--ds-space-3) var(--ds-space-6);min-height:0}.student-finance .person-payment-description{align-items:baseline;gap:var(--ds-space-1) var(--ds-space-4);flex-wrap:wrap;grid-area:1/1;display:flex}.student-finance .person-payment-description>p{flex-basis:100%;margin:0}.student-finance .person-payment-description>p:first-of-type{flex-basis:auto}.person-payment-description p{margin-top:var(--ds-space-1)}.student-finance .person-payment-amount{font-variant-numeric:tabular-nums;grid-area:1/3;align-self:center}.student-finance .person-payment-status{grid-area:1/2}.student-finance .person-payment-actions{align-items:center;gap:var(--ds-space-4);flex-flow:wrap;flex-basis:auto;display:flex}.student-finance .person-payment-timing{gap:0 var(--ds-space-4);flex-wrap:wrap;display:flex}.student-finance .ds-status{white-space:nowrap;justify-self:start}.student-finance .person-payment-manual{grid-column:1/-1;justify-self:start}.student-finance .person-payment-credit{grid-template-columns:minmax(0, 1fr) var(--ds-status-width) 96px}.student-finance .person-payment-credit-amount{font-variant-numeric:tabular-nums;grid-area:1/3}.student-finance .person-payment-credit>.ds-status{grid-area:1/2}@media (max-width:1100px){.person-agreement-body{gap:var(--ds-space-6);grid-template-columns:minmax(0,1fr)}.student-finance .person-payment,.student-finance .person-payment-credit{gap:var(--ds-space-2) var(--ds-space-4);grid-template-columns:minmax(0,1fr) auto}.student-finance .person-payment-description{grid-column:1/-1}.student-finance .person-payment-status{grid-area:2/1}.student-finance .person-payment-credit>div{grid-column:1/-1}.student-finance .person-payment-credit>.ds-status{grid-area:2/1}.student-finance .person-payment-credit-amount,.student-finance .person-payment-amount{grid-area:2/2}}@media (max-width:850px){.student-finance>.ds-page-header,.student-finance .ds-page-actions{display:none}.student-finance .person-agreement>header{flex-wrap:wrap}}
.lesson-booking-calendar{gap:var(--ds-space-4);grid-template-columns:minmax(0,1fr);display:grid}.lesson-booking-times>p{margin:0 0 var(--ds-space-4);font-size:var(--ds-support);color:var(--ds-muted)}.lesson-booking-slots{gap:var(--ds-space-2);border:0;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;display:grid}.lesson-booking-slot{min-height:var(--ds-control-height);box-sizing:border-box;align-items:center;gap:var(--ds-space-2);padding:var(--ds-space-2);border:1px solid var(--ds-line);border-radius:var(--ds-control-radius);cursor:pointer;display:flex}.lesson-booking-slot:has(input:checked){background:var(--ds-sidebar)}.lesson-booking-slot input{accent-color:var(--ds-ink)}.lesson-booking-slot>span{gap:var(--ds-space-1);font-size:var(--ds-support);display:grid}.lesson-booking-slot small{font-size:var(--ds-caption)}.person-booking-dialog:has(.lesson-booking-calendar){width:min(620px,100vw - 40px)}.lesson-booking-content{height:min(55vh,480px);overflow-y:auto}@media (max-width:650px){.lesson-booking-calendar{grid-template-columns:minmax(0,1fr)}}.lesson-booking-footer{justify-content:space-between;align-items:center;gap:var(--ds-space-4);margin-top:var(--ds-space-6);padding-top:var(--ds-space-4);border-top:1px solid var(--ds-line);display:flex}.lesson-booking-footer>.ds-button{flex-shrink:0;margin-left:auto}.lesson-booking-summary{gap:var(--ds-space-1);font-size:var(--ds-support);margin:0;line-height:1.4;display:grid}.lesson-booking-summary-when{gap:var(--ds-space-1) var(--ds-space-3);flex-wrap:wrap;display:flex}.lesson-booking-summary strong{font-weight:700}@media (max-width:480px){.lesson-booking-slots{row-gap:var(--ds-space-1);grid-template-columns:repeat(2,minmax(0,1fr))}}.lesson-booking-summary-details{font-size:var(--ds-caption);color:var(--ds-muted)}@media (max-width:720px){.person-booking-dialog.lesson-booking-dialog{width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:max(var(--ds-space-4), env(safe-area-inset-top)) max(var(--ds-space-4), env(safe-area-inset-right)) max(var(--ds-space-4), env(safe-area-inset-bottom)) max(var(--ds-space-4), env(safe-area-inset-left));border:0;border-radius:0;flex-direction:column;margin:0;display:flex;overflow:hidden}.lesson-booking-dialog>.lesson-booking-introduction,.lesson-booking-dialog>.lesson-booking-footer{flex-shrink:0}.lesson-booking-dialog>.lesson-booking-content{overscroll-behavior:contain;flex:1;height:auto;min-height:0}}.lesson-booking-introduction,.lesson-booking-content>p{color:var(--ds-muted)}
