:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#19343a;--ink:#19343a;--muted:#64757a;--paper:#fbfaf5;--brand:#176b62;--brand-dark:#104f4a;--accent:#e9b949;--accent-soft:#fff4d5;--parent:#8c3d68;--parent-soft:#f4e8ef;--border:#d8dfda;--focus:#8c3d68;background:#fbfaf5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:20rem;margin:0;line-height:1.55}.site-nav{justify-content:space-between;align-items:center;gap:1rem;max-width:60rem;margin:0 auto;padding:1rem 1.25rem;display:flex}.site-nav a{color:var(--ink);text-decoration:none}.site-nav__brand{letter-spacing:-.02em;font-weight:700}.site-nav__links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;display:flex}.site-nav__links a:hover,.site-nav__links a:focus-visible{color:var(--brand-dark);text-underline-offset:.2rem;text-decoration:underline}.landing-page{max-width:68rem}.landing-hero{max-width:48rem;padding:clamp(3rem,10vw,7rem) 0}.landing-hero h1{max-width:12ch;font-size:clamp(3rem,8vw,5.6rem)}.landing-hero>p:not(.eyebrow){color:var(--muted);max-width:38rem;font-size:clamp(1.15rem,2vw,1.4rem)}.landing-steps{border-top:1px solid var(--border);padding-top:2rem}main{max-width:60rem;margin:0 auto;padding:2.5rem 1.25rem 5rem}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:.22rem solid var(--focus);outline-offset:.2rem}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;font-size:clamp(2.15rem,6vw,3.5rem);font-weight:500;line-height:1.02}h2,h3{letter-spacing:-.025em;font-weight:500}.eyebrow{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:500}.today-header,.lesson-header{margin-bottom:2rem}.today-header>p:last-child,.lesson-header>p:last-child{color:var(--muted);max-width:38rem;font-size:1.1rem}.session-grid{gap:1.25rem;display:grid}.session-card,.stage-card,.source-card,.completion-card,.error-card{background:var(--paper);border:1px solid var(--border);border-radius:1.1rem;padding:clamp(1.25rem,4vw,2rem);box-shadow:0 .5rem 1.5rem #19343a12}.session-card__meta,.stage-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.9rem;display:flex}.status{color:var(--brand-dark);background:#e7f2ee;border-radius:99rem;padding:.3rem .7rem;font-weight:750}.status--awaiting_review{background:var(--accent-soft);color:#735400}.button{background:var(--brand);border:.13rem solid var(--brand);color:#fff;cursor:pointer;border-radius:.6rem;justify-content:center;align-items:center;min-height:2.9rem;padding:.55rem 1rem;font-weight:500;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.button:disabled{cursor:wait;opacity:.55}.button--secondary{color:var(--brand-dark);background:0 0}.button--secondary:hover:not(:disabled){border-color:var(--brand);color:var(--brand-dark);background:#e7f2ee}.page-shell{max-width:60rem}.intro-copy,.household-intro,.account-summary{max-width:48rem}.account-summary p:last-of-type{margin-bottom:1.25rem}.account-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;display:flex}.account-actions p,.inline-form{margin:0}.page-shell form.lesson-card>input:not([type=hidden]),.page-shell form.lesson-card>button,.page-shell form.lesson-card>.form-row{margin-top:.75rem}.form-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.form-row>input{min-width:min(18rem,100%)}.learner-actions{align-items:flex-start}.learner-actions>form{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.learner-actions>form:last-child{flex-basis:100%}.learner-pin-help{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1.25rem}.learner-pin-help p{color:var(--muted);max-width:48rem;font-size:.95rem}.page-shell>.lesson-card,.page-shell>form.lesson-card,.page-shell>details.lesson-card,.page-shell>.button-row+.lesson-card,.page-shell>.button-row+details.lesson-card,.page-shell>form:not(.lesson-card)+.lesson-card,.page-shell>section.lesson-card+.lesson-card,.page-shell>details.lesson-card+.lesson-card,.page-shell>details.lesson-card+details.lesson-card{margin-top:1.25rem}.page-shell .button:not(.button--secondary){background:var(--parent);border-color:var(--parent)}.page-shell .button:not(.button--secondary):hover:not(:disabled){background:#713052;border-color:#713052}.lesson-card{background:var(--paper);border:1px solid var(--border);border-radius:1.1rem;padding:clamp(1.25rem,4vw,2rem);box-shadow:0 .5rem 1.5rem #19343a12}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.programme-progress{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.25rem}.programme-progress h2{margin-bottom:.35rem}.programme-progress p{color:var(--muted);margin-bottom:0}.lesson-layout{max-width:52rem;margin:0 auto;padding:1.5rem 1.25rem 5rem}.back-link{color:var(--brand-dark);margin-bottom:1.75rem;font-weight:750;display:inline-block}.source-card{margin-bottom:1.25rem}.source-card p,.source-material{font-family:Georgia,serif;font-size:1.08rem;line-height:1.75}.question-prompt{margin:1.5rem 0;font-size:clamp(1.2rem,3vw,1.5rem);font-weight:750}.field{gap:.45rem;margin-bottom:1.25rem;font-weight:500;display:grid}.field input,.field select,.field textarea{color:var(--ink);background:#fff;border:1px solid #9aaba9;border-radius:.5rem;padding:.75rem}.field small{color:var(--muted);font-weight:500}.field--compact{max-width:22rem}.choice-group{border:0;margin:0 0 1.25rem;padding:0}.choice-group legend{margin-bottom:.5rem;font-weight:750}.choice{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:.7rem;align-items:flex-start;gap:.75rem;margin-bottom:.6rem;padding:.8rem;display:flex}.choice input{width:1.25rem;height:1.25rem;margin:.1rem 0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hint,.guidance-panel,.feedback,.save-message{border-left:.35rem solid var(--accent);border-radius:.45rem;margin:1.25rem 0;padding:1rem 1rem .1rem}.action-error{color:#5c1010;background:#fff0f0;border:2px solid #a61b1b;border-left-width:.35rem;border-radius:.45rem;margin:1.25rem 0;padding:1rem;font-weight:600}.guidance-panel{background:var(--accent-soft)}.teaching-opening__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}.teaching-opening__grid .guidance-panel{margin:0}.guidance-panel--ai{border-left-color:var(--brand);background:#eef7f4;grid-column:1/-1}.teaching-opening h3{margin-top:1.25rem;font-size:1rem}.feedback{border-left-color:var(--brand);background:#e7f2ee}.feedback--await_review{border-left-color:var(--accent);background:#fff7df}.save-message{background:var(--parent-soft);border-left-color:var(--parent);padding-bottom:1rem}.version-count{color:var(--muted);margin-top:1rem;font-size:.9rem}.saved-versions{margin:1rem 0}.link-button{color:var(--brand);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.saved-versions__list{gap:.75rem;margin-top:.75rem;display:grid}.saved-version{background:var(--parent-soft);border-left:.25rem solid var(--parent);border-radius:.35rem;padding:.75rem}.saved-version p{margin:0 0 .5rem}.saved-version__response{white-space:pre-wrap}.completion-card,.error-card{max-width:38rem;margin:4rem auto}@media (min-width:44rem){.session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:no-preference){.button,.session-card{transition:background-color .12s,border-color .12s,transform .12s}.session-card:hover{transform:translateY(-.15rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.programme-calendar{border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.programme-calendar__heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1rem 2rem;display:flex}.programme-calendar__heading>p{color:var(--muted);max-width:34rem}.programme-calendar__legend{flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 2rem;display:flex}.calendar-key,.programme-day__status{color:var(--ink);background:#eef1ef;border-radius:99rem;padding:.28rem .65rem;font-size:.78rem;font-weight:700}.calendar-key--complete,.programme-day--complete .programme-day__status{color:var(--brand-dark);background:#dcefe7}.calendar-key--awaiting_review,.programme-day--awaiting_review .programme-day__status{background:var(--accent-soft);color:#735400}.calendar-key--in_progress,.programme-day--in_progress .programme-day__status,.calendar-key--available,.programme-day--available .programme-day__status{color:#214d6b;background:#dce9f4}.calendar-key--blocked,.programme-day--blocked .programme-day__status{color:#713052;background:#f4e8ef}.calendar-key--future,.programme-day--future .programme-day__status{color:var(--muted)}.programme-week{margin-top:2rem}.programme-week__days{grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.programme-day{border:1px solid var(--border);border-radius:.85rem;min-width:0;padding:1rem}.programme-day--blocked,.programme-day--awaiting_review{border-color:var(--parent)}.programme-day__heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.6rem;display:flex}.programme-day__heading strong,.programme-day__heading span{display:block}.programme-day__heading>div>span,.programme-day__date,.programme-day__sessions small{color:var(--muted);font-size:.82rem}.programme-day__date{margin:.75rem 0}.programme-day__sessions{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.programme-day__sessions li{border-top:1px solid var(--border);gap:.15rem;padding-top:.65rem;display:grid}.programme-day__sessions a,.programme-progress a{color:var(--brand-dark);font-weight:700}.delegation-roles{border:none;flex-direction:column;gap:0;margin:1rem 0;padding:0;display:flex}.delegation-role{border:1px solid var(--border);cursor:pointer;border-bottom:none;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;transition:background-color .15s;display:flex}.delegation-role:first-of-type{border-radius:.5rem .5rem 0 0}.delegation-role:last-of-type{border-bottom:1px solid var(--border);border-radius:0 0 .5rem .5rem}.delegation-role:hover{background-color:var(--accent-soft)}.delegation-role input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--brand);flex-shrink:0;margin-top:.2rem}.delegation-role--nested{border-top:1px dashed var(--border);border-bottom:1px solid var(--border);border-radius:0;margin-left:2rem}.delegation-role__content{flex-direction:column;gap:.125rem;display:flex}.delegation-role__content strong{font-size:.95rem}.delegation-role__content .supporting-text{color:var(--muted);margin:0;font-size:.8rem}.delegation-presets{margin:1rem 0}.delegation-presets .button-row{flex-wrap:wrap;gap:.5rem}.button--active{background-color:var(--brand);color:#fff;border-color:var(--brand)}.button--small{padding:.3rem .6rem;font-size:.8rem}.delegation-disclosure{background-color:#fef9e7;border:1px solid #f5d76e;border-radius:.5rem;margin:1rem 0;padding:.75rem 1rem;font-size:.85rem}.delegation-blockers{background-color:#fdecea;border:1px solid #e57373;border-radius:.5rem;margin:1rem 0;padding:.75rem 1rem;font-size:.85rem}.delegation-blockers ul{margin:.5rem 0 0;padding-left:1.25rem}.delegation-strip{background-color:var(--accent-soft);border:1px solid var(--border);border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.625rem 1rem;display:flex}.delegation-strip__label{margin:0;font-size:.875rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.feedback-queue{flex-direction:column;gap:1rem;display:flex}.feedback-card__context{margin-bottom:.75rem}.feedback-card__prompt,.feedback-card__response,.feedback-card__score{margin:.25rem 0;font-size:.875rem}.feedback-card__response{color:var(--muted);font-style:italic}.feedback-card__draft{background-color:var(--accent-soft);border-radius:.375rem;margin-bottom:.75rem;padding:.75rem 1rem}.feedback-card__text{border-left:3px solid var(--brand);margin:.25rem 0;padding-left:.75rem;font-style:italic}.feedback-card__editor{border:1px solid var(--border);resize:vertical;border-radius:.25rem;width:100%;padding:.5rem;font-family:inherit;font-size:.875rem}.feedback-card--decided{opacity:.6}.feedback-card .button-row{flex-wrap:wrap;gap:.5rem}.feedback-card .button-row form{gap:.5rem;display:inline-flex}.feedback--ai{border-left-color:var(--brand);background-color:color-mix(in srgb, var(--brand) 4%, var(--paper))}.feedback__ai-badge{text-transform:uppercase;letter-spacing:.04em;background-color:var(--brand);color:#fff;vertical-align:middle;border-radius:.25rem;margin-left:.5rem;padding:.125rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}.feedback__text{line-height:1.5}.feedback--ai .feedback__text{font-size:.95rem}.review-badges{flex-wrap:wrap;gap:.375rem;margin-bottom:.375rem;display:flex}.review-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:.25rem;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.review-badge--ai{color:#155724;background-color:#d4edda}.review-badge--tutor{color:#0c5460;background-color:#d1ecf1}.stage-introduction{background-color:color-mix(in srgb, var(--brand) 5%, var(--paper));border:1px solid color-mix(in srgb, var(--brand) 20%, var(--border));text-align:center;border-radius:.75rem;margin-bottom:1rem;padding:1.25rem 1.5rem}.stage-introduction--fallback{background-color:var(--paper);border-color:var(--border)}.stage-introduction__loading{color:var(--muted);margin:0;font-style:italic}.stage-introduction__text{color:var(--ink);margin:0 0 1rem;font-size:1.05rem;line-height:1.6}.stage-introduction__cursor{background-color:var(--brand);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.stage-introduction .button{margin-top:.5rem}.tutor-panel{--tutor-inset:1rem;border:1px solid var(--border);background-color:var(--paper);border-radius:.75rem;flex-direction:column;height:100%;min-height:300px;max-height:80vh;display:flex;overflow:hidden}.tutor-panel__header{min-height:3rem;padding:.625rem var(--tutor-inset);border-bottom:1px solid var(--border);background-color:color-mix(in srgb, var(--brand) 5%, var(--paper));align-items:center;gap:.5rem;display:flex}.tutor-panel__title{flex:1;margin:0;font-size:.95rem}.tutor-panel__turns{color:var(--muted);font-size:.7rem}.tutor-panel__close{cursor:pointer;color:var(--muted);background:0 0;border:none;place-items:center;min-width:2rem;min-height:2rem;padding:.25rem;font-size:1.25rem;line-height:1;display:inline-grid}.tutor-panel__question-ref{border-bottom:1px solid var(--border);background-color:color-mix(in srgb, var(--accent) 8%, var(--paper));padding:.5rem 1rem;display:none}.tutor-panel__thread{min-width:0;padding:.75rem var(--tutor-inset);flex-direction:column;flex:1;gap:.5rem;display:flex;overflow-y:auto}.tutor-panel__empty{color:var(--muted);text-align:left;margin:1.25rem 0 0;font-size:.85rem;font-style:italic;line-height:1.5}.tutor-msg{border-radius:.5rem;max-width:85%;padding:.5rem .75rem;font-size:.875rem;line-height:1.4}.tutor-msg--learner{background-color:color-mix(in srgb, var(--brand) 12%, var(--paper));border-bottom-right-radius:.125rem;align-self:flex-end}.tutor-msg--tutor{background-color:var(--accent-soft);border-bottom-left-radius:.125rem;align-self:flex-start}.tutor-msg--system{color:var(--muted);align-self:center;padding:.25rem;font-size:.8rem;font-style:italic}.tutor-msg__trigger{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:.125rem;font-size:.65rem;display:block}.tutor-msg__text{margin:0}.tutor-panel__input{padding:.75rem var(--tutor-inset) 1rem;border-top:1px solid var(--border);background-color:var(--paper);flex:none}.tutor-panel__textarea{box-sizing:border-box;border:1px solid var(--border);resize:none;outline-offset:.2rem;border-radius:.375rem;width:100%;min-width:0;margin:0 0 .625rem;padding:.5rem;font-family:inherit;font-size:.85rem;display:block}.tutor-panel__limit{color:var(--muted);margin:0;font-size:.8rem;font-style:italic}@media (min-width:768px){.lesson-layout--with-tutor{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) clamp(320px,28vw,360px);gap:1rem;display:grid}.lesson-layout--with-tutor .lesson-header,.lesson-layout--with-tutor .source-card{grid-column:1/-1}.lesson-layout--with-tutor .stage-card{grid-column:1;min-width:0}.lesson-layout--with-tutor .tutor-panel{grid-area:2/2;max-height:calc(100vh - 2rem);position:sticky;top:1rem}.lesson-layout--with-tutor:has(.source-card) .tutor-panel{grid-row:3}}@media (max-width:767px){.teaching-opening__grid{grid-template-columns:1fr}.tutor-panel{z-index:1000;border-radius:0;max-height:100dvh;position:fixed;inset:0}.tutor-panel--closed{display:none}.tutor-panel__question-ref{display:block}}.tutor-fab{display:none}@media (max-width:767px){.tutor-fab{z-index:900;background-color:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.25rem;font-weight:700;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 2px 8px #0003}.tutor-fab:active{transform:scale(.95)}}@media (min-width:768px){.tutor-fab{display:none!important}}.ai-rationale-card{background-color:color-mix(in srgb, var(--brand) 5%, var(--paper));border:1px solid color-mix(in srgb, var(--brand) 20%, var(--border));border-radius:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.ai-rationale-card p{margin:.25rem 0;font-size:.875rem;line-height:1.5}.delegation-role__help{margin-top:.25rem}.delegation-role__help summary{color:var(--brand-dark,var(--brand));cursor:pointer;font-size:.75rem;text-decoration:underline}.delegation-role__help p{color:var(--muted);margin:.25rem 0 0;font-size:.8rem;line-height:1.4}
@page{size:A4;margin:14mm}.print-pack{color:#111;background:#fff;max-width:190mm;margin:0 auto;font-family:Arial,sans-serif;font-size:11pt;line-height:1.45}.print-large{font-size:14pt;line-height:1.6}.print-page{break-after:page;break-inside:avoid;padding:4mm 0}.print-section{break-inside:avoid;margin-block:6mm}.print-source{white-space:pre-wrap;border:1px solid #555;padding:4mm}.print-working-space{background-image:repeating-linear-gradient(#0000,#0000 8mm,#aaa 8.2mm);min-height:32mm}.print-hint-bank{border-left:3px solid #555;padding-left:4mm}.screen-only{display:block}@media print{body{background:#fff}.screen-only{display:none!important}.print-pack{max-width:none}}
