.install-guidance{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem var(--space-page);border-block-end:1px solid var(--border);background:var(--surface)}.install-guidance__copy{display:grid;gap:.375rem;min-inline-size:0;flex:1 1 12rem}.install-guidance__copy h2{margin:0;font-size:.9375rem;font-weight:750;line-height:1.25}.install-guidance__copy p{margin:0;color:var(--text-muted);font-size:.8125rem;line-height:1.35}.install-guidance__copy ol{margin:0;padding-inline-start:1.25rem;color:var(--text);font-size:.8125rem;line-height:1.4}.install-guidance__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex:0 1 auto}.install-guidance__dismiss{flex:0 0 auto;min-block-size:2.75rem;min-inline-size:2.75rem;padding-block:.375rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);cursor:pointer;font:inherit;font-size:.8125rem;font-weight:700}.install-guidance__dismiss:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}@media(max-width:23.4375rem){.install-guidance,.install-guidance__actions{flex-direction:column;align-items:stretch}}.admin-console{padding-block:1.5rem 3rem}.admin-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-block-end:1.25rem}.admin-page-header__title{margin:0;font-size:1.5rem;line-height:1.25}.admin-page-header__help,.admin-card__help{margin:.35rem 0 0;color:var(--text-muted);font-size:.9375rem;max-width:40rem}.admin-card{padding:1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.admin-filters.admin-card{margin-block:1rem}.admin-empty{display:grid;gap:.75rem;justify-items:start;margin-block:1rem}.admin-empty p{margin:0;color:var(--text-muted)}.admin-directory-wrap{margin-block:1rem;padding:0;overflow:hidden}.admin-directory-wrap .admin-directory{margin:0}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-end:1.25rem}.admin-tabs__tab{min-block-size:2.75rem;padding-inline:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-muted);font:inherit;font-weight:700;cursor:pointer}.admin-tabs__tab:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.admin-tabs__tab--active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.admin-control{min-block-size:2.75rem;padding-block:.5rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit}.admin-control:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.admin-role-control{display:inline-flex;align-items:center}.admin-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-block:1rem}.admin-filters input[type=search],.admin-filters input[type=date],.admin-filters .admin-control{min-inline-size:10rem}.admin-filters label{color:var(--text-muted);font-size:.8125rem;font-weight:700}.admin-notice{margin-block:.75rem;color:var(--accent)}.admin-directory{display:block;overflow-x:auto;width:100%;border-collapse:collapse;white-space:nowrap}.admin-directory th,.admin-directory td{padding:.6rem .75rem;text-align:start;border-block-end:1px solid var(--border);background:var(--surface)}.admin-directory thead th{color:var(--text-muted);font-size:.8125rem;font-weight:700}.admin-directory__sticky{position:sticky;inset-inline-start:0;z-index:1;box-shadow:.25rem 0 .5rem color-mix(in srgb,var(--bg) 35%,transparent)}.admin-actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-actions button,.admin-actions select,.admin-filters select,.admin-filters input[type=search],.admin-add-teacher button,.admin-field input{min-block-size:2.75rem}.admin-add-teacher{margin-block-end:2rem;padding-block-end:1.5rem;border-block-end:1px solid var(--border)}.admin-add-teacher__fields{display:grid;gap:.75rem;margin-block:1rem;max-width:28rem}.admin-field{display:grid;gap:.35rem}.admin-field span{color:var(--text-muted);font-size:.875rem;font-weight:600}.admin-field input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface);color:var(--text)}.admin-add-teacher__result,.admin-invite-share{margin-block-start:1rem;display:grid;gap:.75rem}.admin-invite-float{position:fixed;inset-inline:1rem;inset-block-end:1rem;z-index:35;max-width:28rem;margin-inline:auto;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised, var(--surface))}.admin-confirm{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:color-mix(in srgb,var(--bg) 55%,transparent)}.admin-confirm__panel{width:min(100%,24rem);padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius-md, .5rem);background:var(--surface-raised, var(--surface));color:var(--text);display:grid;gap:.75rem}.admin-confirm__panel h2{margin:0;font-size:1.125rem}.admin-confirm__panel p{margin:0;color:var(--text-muted)}.admin-detail{position:fixed;inset:0;z-index:30;display:flex;justify-content:flex-end;background:color-mix(in srgb,var(--bg) 55%,transparent)}.admin-detail__panel{display:flex;flex-direction:column;gap:1rem;width:min(100%,28rem);max-width:100%;height:100%;padding:1.25rem;border-inline-start:1px solid var(--border);background:var(--surface-raised, var(--surface));color:var(--text);overflow-y:auto}.admin-detail__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.admin-detail__header h2{margin:0;font-size:1.25rem;line-height:1.3}.admin-detail__fields{display:grid;gap:.75rem;margin:0}.admin-detail__fields>div{display:grid;gap:.2rem}.admin-detail__fields dt{color:var(--text-muted);font-size:.8125rem;font-weight:700}.admin-detail__fields dd{margin:0}.admin-detail__actions{margin-block-start:auto;padding-block-start:.5rem}.admin-detail__role{display:grid;gap:.35rem;min-inline-size:10rem}.admin-detail__role span{color:var(--text-muted);font-size:.8125rem;font-weight:700}.admin-directory__open{appearance:none;margin:0;padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-weight:700;text-align:start;text-decoration:underline;text-underline-offset:.15em;cursor:pointer;min-block-size:2.75rem}.admin-directory__row--selected th,.admin-directory__row--selected td,.admin-directory__row--selected .admin-directory__sticky{background:var(--accent-soft, color-mix(in srgb, var(--accent) 12%, transparent))}.admin-directory__open:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.admin-add-teacher.admin-card{border-block-end:0;margin-block-end:1.5rem;padding-block-end:1rem}@media(max-width:40rem){.admin-detail{justify-content:stretch}.admin-detail__panel{width:100%;border-inline-start:0}.admin-page-header{flex-direction:column;align-items:stretch}}@media(prefers-reduced-motion:reduce){.btn,.admin-tabs__tab{transition:none}}.admin-teaching-enable{display:grid;gap:.75rem;justify-items:start;margin-block:1rem 0}.admin-teaching-enable p{margin:0;font-size:.9375rem;max-width:40rem;line-height:1.45}.admin-teaching-enable p:not(.admin-notice):not(.admin-teaching-enable__title){color:var(--text-muted)}.admin-teaching-enable__title{margin:0;font-size:1.0625rem;font-weight:700;line-height:1.3;color:var(--text)}.admin-stats{display:grid;gap:1rem}.admin-stats-summary{margin:0;font-weight:600}.admin-stats-legend{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:0;padding:0;list-style:none;color:var(--text-muted);font-size:.875rem}.admin-stats-legend__scheduled:before,.admin-stats-legend__completed:before,.admin-stats-legend__cancelled:before{content:"";display:inline-block;width:.75rem;height:.75rem;margin-inline-end:.35rem;border-radius:.125rem;vertical-align:middle}.admin-stats-legend__scheduled:before{background:var(--accent)}.admin-stats-legend__completed:before{background:var(--accent-strong)}.admin-stats-legend__cancelled:before{background:var(--warn)}.admin-stats-bars{display:flex;align-items:flex-end;gap:.2rem;height:12rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow-x:auto}.admin-stats-bar{display:flex;flex-direction:column-reverse;flex:1 0 .5rem;min-width:.4rem;max-width:1.25rem;min-height:0;max-height:100%}.admin-stats-bar__segment{display:block;width:100%;min-height:.15rem}.admin-stats-bar__segment--scheduled{background:var(--accent)}.admin-stats-bar__segment--completed{background:var(--accent-strong)}.admin-stats-bar__segment--cancelled{background:var(--warn)}.teacher-tab-bar{position:fixed;z-index:15;inset-block-end:0;inset-inline:0;border-block-start:1px solid var(--border);background:var(--bg);padding-block-end:env(safe-area-inset-bottom,0px)}.teacher-tab-bar ul{display:flex;align-items:stretch;margin:0;padding:0;list-style:none}.teacher-tab-bar li{flex:1;min-inline-size:0}.teacher-tab-bar__link{display:inline-flex;align-items:center;justify-content:center;inline-size:100%;min-block-size:3.5rem;padding-inline:.25rem;border:0;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.8125rem;font-weight:700;text-decoration:none;overflow:hidden;white-space:nowrap}.teacher-tab-bar__link[aria-current]{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 .1875rem 0 var(--accent)}.teacher-tab-bar__link:focus-visible{outline:.1875rem solid var(--focus);outline-offset:-.1875rem}@media(min-width:64rem){.teacher-tab-bar{display:none}}.teacher-more-backdrop{position:fixed;z-index:30;inset:0;display:grid;align-items:end;background:color-mix(in srgb,var(--bg) 70%,transparent)}.teacher-more-sheet{max-block-size:min(90dvh,48rem);overflow-y:auto;padding:1rem;padding-block-end:calc(1rem + env(safe-area-inset-bottom,0px));border-block-start:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);box-shadow:0 -1rem 3rem var(--shadow)}.teacher-more-sheet__header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.teacher-more-sheet__header h2{margin:0}.teacher-more-sheet__links{display:grid;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none}.teacher-more-sheet__link{display:flex;align-items:center;min-block-size:2.75rem;padding-inline:.875rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-weight:700;text-decoration:none}.teacher-more-sheet__link[aria-current=page]{border-color:var(--accent);background:var(--accent-soft)}.teacher-more-sheet__link:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.teacher-more-sheet__controls{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem;margin-block-start:1rem;padding-block-start:1rem;border-block-start:1px solid var(--border)}.out-of-range-warning{margin:0;padding-block:.5rem;padding-inline:.75rem;border:1px solid var(--warn);border-radius:var(--radius-sm);background:var(--surface);color:var(--warn);font-weight:700;line-height:1.4}.day-inventory{display:grid;margin:0;padding:.375rem .625rem;list-style:none}.day-inventory__open,.day-inventory__quiet,.day-inventory__break{display:flex;align-items:center;min-block-size:2.75rem;padding-inline:.75rem;font:inherit;text-align:inherit}.day-inventory__open{border:1px dashed var(--event-available);border-radius:var(--radius-sm);background:var(--event-available-wash);color:var(--event-available);cursor:pointer}.day-inventory__open--static{cursor:default}.day-inventory__open-full,.day-inventory__open-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-inventory__open-time,.day-inventory__open-glyph{display:none}.day-inventory__open-glyph{font-weight:800}button.day-inventory__open:hover{border-style:solid}button.day-inventory__open{appearance:none;inline-size:100%}.day-inventory__open:focus-visible{outline:.125rem solid var(--focus);outline-offset:.125rem}.day-inventory__quiet,.day-inventory__break{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none}.day-inventory__quiet[href]{cursor:pointer}.day-inventory__quiet[href]:focus-visible{outline:.125rem solid var(--focus);outline-offset:.125rem}.day-view{min-inline-size:0}.day-view__heading{margin:0;padding:clamp(1rem,4vw,1.5rem);border-block-end:1px solid var(--border);font-size:clamp(1.4rem,5vw,2rem)}.day-view__heading button{display:block;inline-size:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:inherit}.day-view__heading button:focus-visible{outline:.125rem solid var(--focus);outline-offset:.125rem}.day-timeline{display:grid;margin:0;padding:0;list-style:none}.day-timeline__row{position:relative;min-inline-size:0;padding:.875rem 1rem .875rem 1.5rem;border-block-end:1px solid var(--border)}.day-timeline__row:before{position:absolute;inset-block:0;inset-inline-start:.625rem;inline-size:.125rem;background:var(--border-strong);content:""}.timeline-commitment,.timeline-gap{display:grid;min-inline-size:0;gap:.5rem}.event-chip{padding-block:.375rem;padding-inline:.625rem;border-inline-start:.25rem solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised)}.event-chip--lesson{border-inline-start-color:var(--event-lesson);background:var(--event-lesson-fill)}.event-chip--online{border-inline-start-color:var(--event-online);background:var(--event-online-fill)}.event-chip--school{border-inline-start-color:var(--event-school);background-color:var(--event-school-fill)}.event-chip--personal{border-inline-start-color:var(--event-personal);background-color:var(--event-busy-fill)}.event-chip--hatch{background-image:repeating-linear-gradient(-45deg,transparent 0 .22rem,var(--event-busy-hatch) .22rem .4rem)}.event-chip--personal .event-chip__title{color:var(--text-muted)}.event-chip__icon{margin-inline-start:.375rem}.event-chip__parking{margin-inline-start:.375rem;color:var(--danger);font-weight:800}button.event-chip,button.timeline-gap{display:grid;appearance:none;inline-size:100%;min-block-size:2.75rem;margin:0;cursor:pointer;font:inherit;text-align:start;color:inherit}button.event-chip:disabled,button.timeline-gap:disabled{cursor:not-allowed}.event-chip__title{font-weight:750}.timeline-time{color:var(--text-muted);font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:680}.timeline-travel{display:flex;min-inline-size:0;flex-wrap:wrap;align-items:center;gap:.5rem;color:var(--text-muted)}.timeline-travel__distance,.timeline-travel__provenance{font-size:.8125rem}.timeline-travel__provenance{color:var(--text-muted);font-style:italic}.timeline-travel__route{flex-basis:100%;overflow-wrap:anywhere;color:var(--text);font-size:.875rem}.timeline-gap{padding-inline-start:.75rem;border-inline-start:.25rem solid var(--accent)}.timeline-gap--open{padding-block:.375rem;padding-inline-end:.375rem;border:1px dashed var(--event-available);border-inline-start:.25rem dashed var(--event-available);border-radius:var(--radius-sm);background:var(--event-available-wash)}.calendar-layer--overlap{display:grid;isolation:isolate}.calendar-layer__wash,.calendar-layer--overlap>.event-chip{grid-area:1 / 1}.calendar-layer__wash{z-index:0;border-radius:var(--radius-sm);background:var(--event-available-wash);pointer-events:none}.calendar-layer--overlap>.event-chip{z-index:1}.calendar-layer__cue{color:var(--event-available);font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:700}.timeline-gap--break{min-block-size:.25rem;padding:0;border-inline-start:.25rem solid var(--border)}.day-timeline__row:has(.timeline-gap--break){padding-block:.125rem}.timeline-travel__arrival{flex-basis:100%;color:var(--text-muted);font-size:.8125rem;font-variant-numeric:tabular-nums}.timeline-gap__framing{margin:0;color:var(--text-muted);font-size:.875rem;line-height:1.35}.timeline-gap--freed{border-inline-start-color:var(--warn);animation:calendar-freed-pulse 2.4s ease-in-out infinite;box-shadow:inset 0 0 0 0 transparent}.timeline-travel .timeline-parking{flex-basis:100%}.timeline-parking{margin:0;color:var(--text-muted);font-size:.8125rem;line-height:1.35;overflow-wrap:anywhere}@keyframes calendar-freed-pulse{0%,to{box-shadow:inset 0 0 0 0 transparent,0 0 0 0 transparent}50%{box-shadow:inset 0 0 0 .125rem var(--accent-soft),0 0 .75rem var(--glow)}}@media(prefers-reduced-motion:reduce){.timeline-gap--freed{animation:none;box-shadow:inset .25rem 0 0 0 var(--warn)}}@media(min-width:46rem){.timeline-travel__route{flex-basis:auto}}.travel-chip{display:inline-flex;max-inline-size:100%;align-items:center;flex-wrap:wrap;gap:.375rem;padding:.125rem 0;border:0;background:transparent;color:var(--text-muted);font-size:.875rem;line-height:1.2;text-align:start}.travel-chip__caption{display:inline-flex;max-inline-size:100%;flex-wrap:wrap;align-items:center;gap:inherit}.travel-chip__caption>*{white-space:nowrap}.day-column__block--travel .travel-chip__caption{background:var(--travel-label-ground);color:var(--travel-label-text)}.day-column__block--travel .travel-chip .travel-chip__separator{color:var(--text-muted)}.day-column__block--travel .travel-chip .travel-chip__warning,.travel-chip[data-tight=true]{color:var(--danger)}.travel-chip[data-altitude=week]{gap:.5rem}.travel-chip__leave{font-variant-numeric:tabular-nums;font-weight:760}.travel-chip__minutes{font-variant-numeric:tabular-nums}.travel-chip__separator{color:var(--text-muted)}.travel-chip__walk{font-variant-numeric:tabular-nums}.travel-chip__warning{color:var(--danger);font-size:1rem;font-weight:800}button.travel-chip{min-block-size:2.75rem;cursor:pointer;font:inherit;font-size:.875rem}button.travel-chip .travel-chip__leave{text-decoration:underline;text-underline-offset:.2em}button.travel-chip:focus-visible{outline:.125rem solid var(--focus);outline-offset:-.125rem}.load-bar{display:grid;min-inline-size:0;gap:.375rem;color:var(--text);font-size:.875rem}.load-bar__labels{display:flex;min-inline-size:0;align-items:baseline;justify-content:space-between;gap:.75rem}.load-bar__heaviest{color:var(--warn);font-size:.75rem}.load-bar__meter{inline-size:100%;block-size:.5rem;border:0;border-radius:999rem;background:var(--surface-raised);color:var(--accent);accent-color:var(--accent)}.load-bar__meter::-webkit-meter-bar{border:1px solid var(--border);border-radius:999rem;background:var(--surface-raised)}.load-bar__meter::-webkit-meter-optimum-value{border-radius:999rem;background:var(--accent)}.load-bar__meter::-moz-meter-bar{border-radius:999rem;background:var(--accent)}.load-bar[data-heaviest=true] .load-bar__meter{color:var(--warn);accent-color:var(--warn)}.load-bar[data-heaviest=true] .load-bar__meter::-webkit-meter-optimum-value{background:var(--warn)}.load-bar[data-heaviest=true] .load-bar__meter::-moz-meter-bar{background:var(--warn)}.calendar-toolbar button,.calendar-view-switch button,.week-day__select{min-inline-size:2.75rem;min-block-size:2.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;font-weight:700}.day-view--column{min-inline-size:0}.day-view__facts{display:none;margin:0;padding:0 1rem 1rem;color:var(--text-muted);font-size:.875rem}.day-column{display:grid;grid-template-columns:3.25rem .45rem minmax(0,1fr);max-block-size:min(70vh,48rem);overflow-x:hidden;overflow-y:auto;padding-block-end:1rem;touch-action:pan-y;isolation:isolate}.day-column--embed{display:grid;grid-template-columns:.45rem minmax(0,1fr);max-block-size:none;overflow:visible;padding-block-end:0}.day-column--embed .event-chip{grid-template-rows:auto minmax(0,1fr);overflow:hidden;row-gap:.125rem;padding-block:.125rem}.day-column--embed .event-chip__title{font-size:.9375rem;line-height:1.1}.day-column--embed .day-timeline--column .event-chip__title{display:-webkit-box;min-block-size:1.03125rem;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;white-space:normal}@container calendar-block (block-size >= 3.25rem){.day-column--embed .day-timeline--column .event-chip__title{-webkit-line-clamp:2}}.day-column--embed .timeline-time{font-size:.8125rem;line-height:1}@container calendar-block (block-size < 2.25rem){.day-column--embed .timeline-time{display:none}}.day-column__gutter,.day-column__rail,.day-column__canvas{position:relative;min-block-size:var(--column-height)}.day-column__hour{position:absolute;inset-inline:.25rem auto;color:var(--text-muted);font-size:.6875rem;font-variant-numeric:tabular-nums;line-height:1;transform:translateY(-50%)}.day-column__gridline{position:absolute;inset-inline:0;border-block-start:1px solid var(--border);pointer-events:none}.day-column__rail-seg{position:absolute;inset-inline:.1rem;border-inline-start:.15rem dashed var(--event-available);background:var(--event-available-wash);pointer-events:none}.day-column__now{position:absolute;z-index:30;inset-inline:0;border-block-start:.125rem solid var(--accent);pointer-events:none}.day-column__now:before{position:absolute;inset-block-start:-.3rem;inset-inline-start:0;inline-size:.5rem;block-size:.5rem;border-radius:50%;background:var(--accent);content:""}.day-timeline--column{position:relative;min-block-size:var(--column-height)}.day-timeline--column .day-timeline__row{position:absolute;box-sizing:border-box;min-block-size:2.75rem;padding-block:0;padding-inline:.5rem;border-block-end:0;container:calendar-block / size}.day-timeline--column .day-timeline__row:before{content:none}.day-timeline--column .event-chip,.day-timeline--column .timeline-gap,.day-timeline--column .timeline-travel,.day-timeline--column .day-inventory__open,.day-timeline--column .day-inventory__break{block-size:100%;overflow:hidden}.day-timeline--column .day-inventory__open,.day-timeline--column .day-inventory__break{padding-inline:.375rem}.day-timeline--column .timeline-time,.day-timeline--column .event-chip__title,.day-timeline--column .timeline-gap__framing{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container calendar-block (inline-size < 16rem){.day-inventory__open-full{display:none}.day-inventory__open-time{display:inline}.timeline-gap__framing{display:none}}@container calendar-block (inline-size < 4.5rem){.day-inventory__open-time{display:none}.day-inventory__open-glyph{display:inline}.event-chip__icon,.event-chip__parking,.travel-chip__leave,.travel-chip__minutes,.travel-chip__walk,.travel-chip__separator{display:none}}@container calendar-block (inline-size < 2.5rem){.timeline-time{display:none}.day-column:not(.day-column--embed) .event-chip__title{display:none}}.day-column__block--travel{pointer-events:none}.day-column__block--travel .timeline-travel{position:relative;overflow:hidden;pointer-events:auto;block-size:min(100%,var(--column-tap-height, var(--column-raw-height, 100%)));background:transparent}.day-column__block--travel .timeline-travel:before{position:absolute;inset-block-start:0;inset-inline-start:0;inline-size:.28rem;block-size:var(--column-raw-height, 100%);background-image:repeating-linear-gradient(-45deg,transparent 0 .22rem,var(--border-strong) .22rem .4rem);content:"";pointer-events:none}.day-column__block--travel[data-tight=true] .timeline-travel:before{background-image:repeating-linear-gradient(-45deg,transparent 0 .22rem,var(--danger) .22rem .4rem)}.day-column__block--travel .travel-chip{box-sizing:border-box;min-block-size:0;block-size:100%;inline-size:100%;align-content:flex-start;align-items:flex-start;padding-inline-start:.5rem}.day-column__block--travel .travel-chip__caption{max-block-size:var(--column-raw-height, 100%);overflow:hidden}.day-column__block--travel .travel-chip[data-display=glyph]{padding-block:0}.day-column__block--travel .travel-chip[data-display=glyph] .travel-chip__glyph{display:inline-flex;gap:.25rem;font-size:.75rem;line-height:1;pointer-events:none;white-space:nowrap}.day-column__block--travel .travel-chip[data-display=glyph] .travel-chip__warning{font-size:.75rem}@media(min-width:64rem){.day-view--column{display:grid;grid-template-columns:minmax(0,40rem) minmax(10rem,1fr);justify-content:center;max-inline-size:56rem;margin-inline:auto;column-gap:1.5rem}.day-view--column .day-view__heading,.day-view--column .day-column,.day-view--column .day-inventory{grid-column:1}.day-view__facts{display:block;grid-column:2;grid-row:2;align-self:start;padding-block-start:1rem}}.chip-sheet__origin{margin:0;color:var(--text);font-size:.9375rem;font-weight:700}.chip-sheet__explainer{margin:0;color:var(--text-muted);font-size:.8125rem;line-height:1.4}.chip-sheet__slivers{margin:0;padding-inline-start:1.25rem;color:var(--text-muted);font-size:.875rem;line-height:1.35}.travel-sheet__when{margin:0;color:var(--text);font-size:.9375rem}.travel-sheet__when strong{font-variant-numeric:tabular-nums}.travel-sheet__tight{margin:0;padding:.5rem .625rem;border-inline-start:.1875rem solid var(--danger);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--danger);font-size:.875rem;line-height:1.4}.travel-sheet__facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.25rem .75rem;margin:0}.travel-sheet__facts dt{color:var(--text-muted);font-size:.875rem;font-weight:750}.travel-sheet__facts dd{margin:0;color:var(--text);font-size:.875rem;overflow-wrap:anywhere}.travel-sheet__targets,.travel-sheet__unavailable{margin:0;color:var(--text-muted);font-size:.8125rem}.teacher-bootstrap{max-inline-size:38rem;padding:clamp(1.25rem,5vw,2.5rem);border-block:1px solid var(--border);background:var(--surface);color:var(--text)}.teacher-bootstrap h2,.teacher-bootstrap p{margin-block:0 1rem}.teacher-calendar{min-inline-size:0;overflow:visible;border-block:1px solid var(--border-strong);background:var(--surface);box-shadow:0 1.25rem 3.5rem var(--shadow)}.calendar-state,.calendar-notice,.calendar-empty--week{margin:0;padding:.875rem 1rem;border-block-end:1px solid var(--border);color:var(--text-muted);font-size:.9375rem}.calendar-state--error{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--warn)}.calendar-notice{color:var(--accent)}.calendar-state--notice{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem}.calendar-state__actions{display:flex;gap:.5rem}.calendar-fab{position:sticky;z-index:2;inset-block-end:.75rem;display:flex;justify-content:flex-end;margin-block-start:.5rem;padding:0 .875rem .875rem;pointer-events:none}.calendar-fab .kebab-menu{pointer-events:auto}.calendar-fab__control{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-inline-size:2.75rem;min-block-size:2.75rem;padding-inline:1.25rem;border:1px solid var(--accent-strong);border-radius:var(--radius-md);background:var(--accent);box-shadow:0 .5rem 1.5rem var(--shadow);color:var(--on-accent);cursor:pointer;font:inherit;font-weight:750;text-decoration:none}.calendar-fab__control:disabled,.calendar-fab__control[aria-disabled=true]{cursor:not-allowed;opacity:.55}.calendar-empty{margin:0;padding:1.25rem 1rem;color:var(--text-muted);font-size:.9375rem}.calendar-week-skeleton{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-inline-size:0}.calendar-week-skeleton__day{display:flex;flex-direction:column;gap:.5rem;min-inline-size:0;padding:.75rem .875rem;border-block-end:1px solid var(--border);background:var(--surface)}.calendar-week-skeleton__day:last-child{border-block-end:0}.calendar-week-skeleton__header,.calendar-week-skeleton__bar{border-radius:var(--radius-sm);background:var(--surface-raised)}.calendar-week-skeleton__header{min-block-size:2.75rem}.calendar-week-skeleton__bar{min-block-size:2.75rem;animation:calendar-skeleton-pulse 1.2s ease-in-out infinite}@keyframes calendar-skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.calendar-week-skeleton__bar{animation:none}}.calendar-day-skeleton__column{grid-column:1;block-size:43rem;max-block-size:min(70vh,48rem);background:repeating-linear-gradient(to bottom,var(--border) 0 .0625rem,transparent .0625rem 3rem);animation:calendar-skeleton-pulse 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.calendar-day-skeleton__column{animation:none}}.calendar-week-skeleton__gutter{display:none}@media(min-width:64rem){.calendar-week-skeleton{grid-template-columns:3.25rem repeat(7,minmax(0,1fr))}.calendar-week-skeleton__gutter{display:block;min-block-size:42rem;background:repeating-linear-gradient(to bottom,transparent 0 2.9375rem,var(--border) 2.9375rem 3rem)}.calendar-week-skeleton__day{border-block-end:0;border-inline-end:1px solid var(--border)}.calendar-week-skeleton__day:last-child{border-inline-end:0}.calendar-week-skeleton__bar{min-block-size:6rem}}.windowed-list__search{display:flex;flex-direction:column;gap:.25rem;min-inline-size:0}.windowed-list__search input{min-block-size:2.75rem;inline-size:100%;padding-inline:.75rem;border:.0625rem solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.windowed-list__search input:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.windowed-list__more{display:flex;justify-content:center;padding-block:.5rem}.searchable-picker{display:flex;flex-direction:column;gap:.5rem;min-inline-size:0}.searchable-picker__search{display:flex;flex-direction:column;gap:.25rem}.searchable-picker__search input{min-block-size:2.75rem;inline-size:100%;padding-inline:.75rem;border:.0625rem solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.searchable-picker__search input:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.searchable-picker__status{margin:0;color:var(--text-muted)}.searchable-picker__group{display:flex;flex-direction:column;gap:.375rem;min-inline-size:0}.searchable-picker__heading{margin:0;color:var(--text-muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.searchable-picker__list{display:flex;flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none}.searchable-picker__scroller{max-block-size:16.5rem;overflow:auto}.searchable-picker__option{display:flex;flex-direction:column;justify-content:center;gap:.125rem;inline-size:100%;min-block-size:2.75rem;padding-block:.5rem;padding-inline:.75rem;border:.0625rem solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text);text-align:start;font:inherit;transition:background-color var(--motion-fast) ease}.searchable-picker__option[aria-selected=true]{border-color:var(--accent);background:var(--accent-soft)}.searchable-picker__option[data-active=true]{outline:.1875rem solid var(--focus);outline-offset:-.1875rem}.searchable-picker__option:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.searchable-picker__note{color:var(--text-muted);font-size:.8125rem}.searchable-picker__option:disabled{cursor:not-allowed;opacity:.58}@media(prefers-reduced-motion:reduce){.searchable-picker__option{transition:none}}.pin-confirm{display:grid;gap:.875rem}.pin-confirm__preview{position:relative;overflow:hidden;min-block-size:15rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:linear-gradient(var(--accent-soft) 1px,transparent 1px),linear-gradient(90deg,var(--accent-soft) 1px,transparent 1px),var(--surface-raised);background-size:2rem 2rem;cursor:crosshair;touch-action:none}.pin-confirm__preview--map{min-block-size:0;aspect-ratio:8 / 5;background:var(--surface-raised);background-size:100% 100%}.pin-confirm__preview--map .pin-confirm__grid{display:none}.pin-confirm__grid{position:absolute;inset:12%;border:1px dashed var(--border-strong);border-radius:50%;pointer-events:none}.pin-confirm__pin{position:absolute;display:grid;inline-size:2.75rem;block-size:2.75rem;transform:translate(-50%,-50%) rotate(-45deg);place-items:center;border:0;border-radius:50% 50% 50% 0;background:var(--accent);box-shadow:0 .625rem 1.5rem var(--shadow);color:var(--on-accent);cursor:grab}.pin-confirm__pin>span{inline-size:.75rem;block-size:.75rem;border-radius:50%;background:var(--on-accent)}.pin-confirm__axis-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.pin-confirm__axis{display:grid;min-block-size:2.75rem;padding:.5rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);cursor:ew-resize}.pin-confirm__axis:first-child{cursor:ns-resize}.pin-confirm__axis>span{color:var(--text-muted);font-size:.75rem;font-weight:700}.pin-confirm__axis>strong{font-variant-numeric:tabular-nums}.pin-confirm__axis:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.25rem}.pin-confirm__axis[aria-disabled=true]{cursor:not-allowed;opacity:.58}.pin-confirm__details{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;color:var(--text-muted);font-size:.875rem}.pin-confirm__details output{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.pin-confirm__details a{min-block-size:2.75rem;color:var(--accent);font-weight:700;line-height:2.75rem}.pin-confirm__help{flex-basis:100%;margin:0;line-height:1.5}.busy-sheet__header,.busy-sheet__actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.busy-field-help{margin:0;color:var(--text-muted);line-height:1.5}.busy-sheet__header h2,.busy-sheet__header p{margin:0}.busy-sheet-backdrop{position:fixed;z-index:50;inset:0;display:grid;align-items:end;background:var(--shadow)}.busy-sheet{max-block-size:92dvh;overflow-y:auto;padding:1rem;border:1px solid var(--border-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);box-shadow:0 1rem 3rem var(--shadow)}.busy-sheet__header{position:sticky;z-index:1;inset-block-start:-1rem;margin:-1rem -1rem 1rem;padding:1rem;border-block-end:1px solid var(--border);background:var(--surface)}.busy-sheet__header p{color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.busy-sheet__header h2{margin-block-start:.25rem}.busy-sheet__close{min-block-size:2.75rem;min-inline-size:2.75rem;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:1.5rem;font-weight:750}.busy-sheet__close:disabled{cursor:not-allowed;opacity:.55}.busy-sheet__close:focus-visible,.busy-field input:focus-visible,.busy-field select:focus-visible,.busy-choice-row input:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.busy-form,.busy-fieldset,.busy-field-grid,.busy-location-new{display:grid;gap:1rem}.busy-fieldset{min-inline-size:0;margin:0;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md)}.busy-fieldset legend{padding-inline:.35rem;color:var(--accent);font-weight:800}.busy-field{display:grid;gap:.4rem;min-inline-size:0;font-size:.875rem;font-weight:750}.busy-field input,.busy-field select{min-block-size:2.75rem;inline-size:100%;min-inline-size:0;padding-inline:.75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.busy-choice-row{display:flex;flex-wrap:wrap;gap:.75rem}.busy-choice-row label{display:flex;min-block-size:2.75rem;align-items:center;gap:.5rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm)}.busy-field-help{grid-column:1 / -1;font-size:.8125rem}.busy-sheet__actions{position:sticky;inset-block-end:-1rem;justify-content:flex-end;margin:0 -1rem -1rem;padding:1rem;border-block-start:1px solid var(--border);background:var(--surface)}.busy-feedback{margin:0}.busy-feedback[role=alert]{color:var(--warn)}@media(min-width:46rem){.busy-sheet-backdrop{justify-items:end;align-items:stretch}.busy-sheet{inline-size:min(42rem,92vw);max-block-size:100dvh;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}:root[dir=rtl] .busy-sheet{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.busy-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.busy-feedback--warn{color:var(--warn)}.cancel-backdrop{position:fixed;z-index:40;inset:0;display:grid;align-items:end;background:color-mix(in srgb,var(--bg) 70%,transparent)}.cancel-sheet{max-block-size:min(90dvh,48rem);overflow-y:auto;padding:1rem;border-block-start:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);box-shadow:0 -1rem 3rem var(--shadow)}.cancel-sheet__header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.cancel-sheet__header h2{margin:0}.cancel-sheet__fact{margin-block:.75rem 0;color:var(--text)}.cancel-actions,.cancel-form,.cancel-reschedule,.cancel-edit{display:grid;gap:.75rem;margin-block-start:1rem}.cancel-actions__guidance{grid-column:1 / -1;margin:0;color:var(--text-muted)}.cancel-edit h3,.cancel-edit p{margin:0}.cancel-edit fieldset{display:grid;gap:.75rem;padding:0;border:0}.cancel-edit label{display:grid;gap:.375rem}.cancel-edit input,.cancel-edit select{min-block-size:3rem;inline-size:100%;padding:.625rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.cancel-edit .cancel-edit__check{display:flex;align-items:center;gap:.625rem}.cancel-edit__check input{inline-size:1.25rem;min-block-size:1.25rem}.cancel-edit__actions{display:grid;gap:.75rem}.cancel-fit{display:grid;gap:.5rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.cancel-fit p{margin:0;color:var(--text-muted)}.cancel-fit__also{color:var(--warn)}.cancel-misses{display:grid;gap:.5rem}.cancel-misses__title{margin:0;font-size:1rem;color:var(--text-muted)}.cancel-miss{display:grid;gap:.5rem;padding:.75rem 1rem;border:1px dashed var(--border);border-radius:var(--radius-sm)}.cancel-miss__reason{color:var(--text-muted)}.cancel-miss__confirm{display:grid;gap:.5rem}.cancel-miss__confirm p{margin:0;color:var(--warn)}.cancel-form fieldset{display:flex;gap:1rem}.cancel-form label{display:grid;gap:.375rem}.cancel-form textarea{min-block-size:6rem;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}@media(min-width:46rem){.cancel-backdrop{place-items:center;padding:2rem}.cancel-sheet{inline-size:min(42rem,100%);border:1px solid var(--border-strong);border-radius:var(--radius-md)}.cancel-actions,.cancel-edit fieldset,.cancel-edit__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.cancel-fit--row,.cancel-miss--row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.cancel-fit--row strong,.cancel-miss--row strong{grid-column:1}.cancel-fit--row .cancel-fit__meta,.cancel-miss--row .cancel-miss__reason,.cancel-fit--row .cancel-fit__also{grid-column:1;color:var(--text-muted);font-size:.875rem}.cancel-fit--row>.btn,.cancel-miss--row>.btn{grid-column:2;grid-row:1 / span 3;padding-block:.375rem;padding-inline:.75rem;font-weight:650}.cancel-miss--row .cancel-miss__confirm{grid-column:1 / -1}.fill-gap-search{display:grid;gap:.375rem}.fill-gap-search__label{font-size:.75rem;font-weight:700;color:var(--text-muted)}.fill-gap-search input{min-block-size:2.75rem;padding-inline:.75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.fill-gap-sheet{display:flex;flex-direction:column}.fill-gap-sheet .cancel-reschedule{overflow-y:auto;min-block-size:0}.teacher-empty{display:grid;justify-items:start;gap:1rem;max-inline-size:28rem;padding:clamp(1.25rem,4vw,1.75rem);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.teacher-empty__message{margin:0;color:var(--text-muted);line-height:1.5}.availability-page,.availability-week,.availability-list,.availability-row,.availability-fields{display:grid;gap:1rem}.availability-day{display:grid;align-content:start;gap:.5rem}.availability-page{min-inline-size:0;padding-block-end:3rem}.availability-panel,.availability-notice{min-inline-size:0;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1rem 2.5rem var(--shadow)}.availability-panel__header{margin-block-end:1rem}.availability-panel__header--actions,.availability-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:.75rem}.availability-panel__header h2,.availability-panel__header p,.availability-empty,.availability-feedback,.availability-notice p{margin:0}.availability-panel__header h2{font-size:clamp(1.25rem,4vw,1.75rem)}.availability-panel__header p,.availability-empty,.availability-notice{color:var(--text-muted);line-height:1.5}.availability-day{min-inline-size:0;margin:0;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md)}.availability-day__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.availability-day__header h3{margin:0;color:var(--accent);font-size:.9375rem;font-weight:800}.availability-day__add{min-block-size:2.75rem;min-inline-size:2.75rem;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);cursor:pointer;font:inherit;font-size:1rem;font-weight:800}.availability-day__add:hover:not(:disabled){border-color:var(--border-strong)}.availability-day__add:disabled{cursor:not-allowed;opacity:.55}.availability-chip{display:grid;min-block-size:2.75rem;align-content:center;gap:.125rem;min-inline-size:0;padding:.375rem .625rem;border:1px dashed var(--event-available);border-inline-start:.25rem dashed var(--event-available);border-radius:var(--radius-sm);background:var(--event-available-wash);color:var(--text);cursor:pointer;font:inherit;text-align:start}.availability-chip:hover:not(:disabled){background:var(--surface)}.availability-chip:disabled{cursor:not-allowed;opacity:.55}.availability-chip[data-active=false]{border-style:dotted;color:var(--text-muted)}.availability-chip[data-dirty=true]{border-inline-start-color:var(--warn)}.availability-chip__time{font-variant-numeric:tabular-nums;font-weight:750}.availability-chip__base,.availability-chip__tag{color:var(--text-muted);font-size:.75rem}.availability-day__add:focus-visible,.availability-chip:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.availability-row{min-inline-size:0;gap:.75rem;padding:.75rem;border:1px solid var(--border);border-inline-start:.25rem solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-raised)}.availability-panel--compact{padding:clamp(.875rem,2.5vw,1.25rem);box-shadow:none}.availability-panel--compact .availability-list,.availability-panel--compact .availability-fields{gap:.75rem}.availability-panel--compact .availability-panel__header h2{font-size:clamp(1.05rem,3vw,1.35rem)}.availability-row--dirty{border-inline-start-color:var(--warn)}.availability-field{display:grid;gap:.4rem;min-inline-size:0;font-size:.875rem;font-weight:750}.availability-field input,.availability-field select{min-block-size:2.75rem;inline-size:100%;min-inline-size:0;padding-inline:.75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.availability-toggle{display:flex;min-block-size:2.75rem;align-items:center;gap:.6rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-weight:750}.availability-toggle input{inline-size:1.25rem;block-size:1.25rem}.availability-field input:disabled,.availability-field select:disabled,.availability-toggle:has(input:disabled){cursor:not-allowed;opacity:.55}.availability-field input:focus-visible,.availability-field select:focus-visible,.availability-toggle:focus-within{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.availability-feedback[role=alert],.availability-notice--error{color:var(--warn)}.availability-guidance{color:var(--text-muted);margin:0}.sick-day__content,.sick-day__preview,.sick-day__checklist{display:grid;gap:.75rem}.sick-day__preview,.sick-day__checklist{margin:0;padding:0;list-style:none}.sick-day__preview li,.sick-day__checklist li{display:flex;min-block-size:2.75rem;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised)}.sick-day__preview li span,.sick-day__checklist li a{margin-inline-start:auto}.sick-day__checklist li a{color:var(--accent);font-weight:800}.sick-day__checklist li a:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}@media(min-width:46rem){.availability-week{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.availability-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.availability-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;align-items:start}}.busy-page{display:grid;gap:1rem;min-inline-size:0;padding-block-end:3rem}.busy-page__toolbar,.busy-card__title,.busy-card__actions,.busy-exception{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.busy-page__toolbar{align-items:flex-end;flex-wrap:wrap;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.busy-page__toolbar p,.busy-panel__header p,.busy-notice,.busy-empty,.busy-location-address{margin:0;color:var(--text-muted);line-height:1.5}.busy-board{display:grid;gap:1rem}.busy-panel{min-inline-size:0;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1rem 2.5rem var(--shadow)}.busy-panel__header{margin-block-end:1rem}.busy-panel__header h2,.busy-card h3{margin:0}.busy-panel__header h2{font-size:clamp(1.25rem,4vw,1.75rem);letter-spacing:-.025em}.busy-panel__header p{margin-block-start:.35rem}.busy-card-list{display:grid;gap:.75rem}.busy-card{display:grid;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised)}.busy-card{border-inline-start:.25rem solid var(--event-personal);background-color:var(--event-busy-fill);background-image:repeating-linear-gradient(-45deg,transparent 0 .22rem,var(--event-busy-hatch) .22rem .4rem)}.busy-card[data-type=SCHOOL]{border-inline-start-color:var(--event-school)}.busy-card__next{margin:0;color:var(--text-muted);font-variant-numeric:tabular-nums}.busy-skip{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.75rem;padding-block-start:.75rem;border-block-start:1px solid var(--border)}.busy-skip__field{display:grid;gap:.35rem;font-size:.8125rem;font-weight:750}.busy-skip__field input{min-block-size:2.75rem;padding-inline:.75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.busy-skip__field input:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.busy-skip__hint{flex-basis:100%;margin:0;color:var(--text-muted);font-size:.8125rem;font-weight:500}.busy-skip__error{flex-basis:100%;margin:0;color:var(--warn);font-size:.8125rem}.busy-card__skipped ul{display:grid;gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none}.busy-card__title h3{min-inline-size:0;overflow-wrap:anywhere}.busy-card__title span{flex:none;padding:.25rem .55rem;border-radius:999rem;background:var(--accent-soft);color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.busy-card__time{margin:0;color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.busy-card__actions{justify-content:flex-start;flex-wrap:wrap}.busy-exception{padding-block-start:.75rem;border-block-start:1px solid var(--border);color:var(--text-muted);font-variant-numeric:tabular-nums}.busy-notice,.busy-empty{padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised)}.busy-notice--error{color:var(--warn)}.busy-board{max-inline-size:56rem}.month-view{max-inline-size:100%;min-inline-size:0}.month-view:focus-visible{outline:.1875rem solid var(--focus);outline-offset:-.1875rem}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;min-inline-size:0}.month-grid__weekday{padding:.35rem .15rem;color:var(--text-muted);font-size:.75rem;text-align:center}.month-cell{position:relative;min-block-size:2.75rem;min-inline-size:0;border-block-end:1px solid var(--border);border-inline-end:1px solid var(--border);background:var(--surface)}.month-cell[data-in-month=false]{opacity:.45}.month-cell[data-window=true] .month-cell__hit{background:var(--event-available-wash)}.month-cell[data-today=true],.month-cell[data-selected=true]{box-shadow:inset 0 0 0 .125rem var(--accent)}.month-cell__hit{display:flex;flex-direction:column;align-items:stretch;gap:.2rem;inline-size:100%;min-block-size:2.75rem;padding:.35rem .3rem .45rem;border:0;background:transparent;color:inherit;font:inherit;text-align:start}.month-cell__hit:focus-visible{outline:.125rem solid var(--focus);outline-offset:-.2rem}.month-cell__numeral{font-variant-numeric:tabular-nums;font-size:.875rem}.month-cell__drive{position:absolute;inset-block-start:.2rem;inset-inline-end:.2rem;color:var(--text-muted);font-size:.625rem;line-height:1}.month-cell__dots{display:flex;gap:.2rem;min-block-size:.4rem}.month-cell__dot{inline-size:.4rem;block-size:.4rem;border-radius:50%;background:var(--event-lesson)}.month-cell__dot[data-kind=online]{background:var(--event-online)}.month-cell__dot[data-kind=freed]{background:var(--warn)}.month-cell__chips{display:flex;flex-direction:column;gap:.15rem;min-inline-size:0}.month-cell__chip{overflow:hidden;padding:.05rem .25rem;border-inline-start:.15rem solid var(--event-lesson);background:var(--event-lesson-fill);color:var(--text);font-size:.6875rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.month-cell__chip[data-kind=online]{border-inline-start-color:var(--event-online);background:var(--event-online-fill)}.month-cell__chip[data-kind=freed]{border-inline-start-color:var(--warn);background:color-mix(in srgb,var(--warn) 16%,transparent)}.month-cell__chip[data-kind=school]{border-inline-start-color:var(--event-school);background:var(--event-school-fill)}.month-cell__chip[data-kind=busy]{border-inline-start-color:var(--event-personal);background:var(--event-busy-fill)}.month-cell__load{display:block;block-size:.15rem;inline-size:calc(var(--month-load) * 100%);margin-block-start:auto;background:var(--border-strong)}.month-cell[data-heaviest=true] .month-cell__load{background:var(--warn)}.month-cell__more{inline-size:100%;min-block-size:2.75rem;padding:.15rem .3rem;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:.6875rem;text-align:start}.month-cell__more:focus-visible{outline:.125rem solid var(--focus);outline-offset:-.2rem}.month-view__agenda{margin-block-start:.75rem}.month-view__open-day{margin:.5rem .75rem 0}@media(min-width:64rem){.month-cell{min-block-size:6.5rem}.month-view__agenda,.month-view__open-day{display:none}}.calendar-month-skeleton{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0}.calendar-month-skeleton__cell{min-block-size:2.75rem;border-block-end:1px solid var(--border);background:var(--surface-raised)}@media(prefers-reduced-motion:reduce){.calendar-month-skeleton__cell{animation:none}}.week-view{max-inline-size:100%;min-inline-size:0;overflow:visible}.week-view:focus-visible{outline:.1875rem solid var(--focus);outline-offset:-.1875rem}.week-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-inline-size:0}.week-day{display:flex;flex-direction:column;min-inline-size:0;border-block-end:0;border-inline-end:0;background:var(--surface)}.week-day .day-timeline__row{padding:.375rem .625rem .375rem 1.125rem}.week-day .timeline-commitment,.week-day .timeline-gap,.week-day .timeline-travel{gap:.25rem;font-size:.875rem}.week-day button.event-chip,.week-day button.timeline-gap{min-block-size:2.75rem;padding-block:.25rem}.week-day__header{position:sticky;z-index:1;inset-block-start:calc(var(--offline-banner-height, 0px) + var(--calendar-sticky-top, 0px));display:grid;gap:.5rem;min-block-size:2.75rem;padding:.75rem .875rem;border-block-end:1px solid var(--border);background:var(--surface-raised)}.week-day[data-today=true] .week-day__header{box-shadow:inset 0 0 0 .125rem var(--accent)}.week-day__body{min-inline-size:0;overflow-x:clip}@media(min-width:64rem){.week-grid:not(.week-grid--time){grid-template-columns:repeat(7,minmax(0,1fr))}.week-day{border-inline-end:1px solid var(--border)}.week-day[data-selected=true]{box-shadow:inset 0 0 0 .125rem var(--accent)}.week-day__header{inset-block-start:0;padding:.625rem .5rem;gap:.375rem}.week-day:last-child{border-inline-end:0}}.week-day__header h3{margin:0;min-inline-size:0;flex:1}.week-day__title{display:flex;min-inline-size:0;align-items:center;gap:.375rem}.week-day__select{inline-size:100%;padding-inline:.75rem;text-align:start}.week-day__select:focus-visible{outline:.125rem solid var(--focus);outline-offset:.125rem}.week-day__select[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.week-view--grid{max-inline-size:100%;min-inline-size:0;overflow:visible}.week-grid.week-grid--time{display:grid;grid-template-columns:3.25rem repeat(7,minmax(0,1fr));gap:0;max-inline-size:100%;min-inline-size:0}.week-grid__gutter{display:flex;flex-direction:column;min-inline-size:0}.week-grid__gutter-head,.week-view--grid .week-day__header{box-sizing:border-box;block-size:4.75rem;min-block-size:4.75rem;overflow:hidden}.week-view--grid .week-day__header{position:static;inset-block-start:auto;padding:.5rem .35rem;gap:.25rem}.week-grid__gutter-hours,.week-view--grid .week-day__body--column{position:relative;min-block-size:var(--week-column-height)}.week-grid__hour{position:absolute;inset-inline:.2rem auto;color:var(--text-muted);font-size:.6875rem;font-variant-numeric:tabular-nums;line-height:1;transform:translateY(-50%)}.week-view--grid .week-day{min-inline-size:0;border-inline-end:1px solid var(--border)}.week-view--grid .week-day:last-child{border-inline-end:0}.week-view--grid .week-day[data-today=true] .week-day__body{background:var(--accent-soft)}.week-view--grid .week-day[data-selected=true]{box-shadow:inset 0 0 0 .125rem var(--accent)}.week-view--grid .week-day__select{padding-inline:.25rem;font-size:.8125rem}.week-view--grid .day-timeline--column .day-timeline__row{padding-block:0;padding-inline:.15rem}.week-quiet-column{position:relative;min-block-size:var(--column-height, var(--week-column-height));background-color:var(--surface);background-image:repeating-linear-gradient(-45deg,transparent 0 .35rem,var(--border) .35rem .5rem)}.week-quiet-column__copy{position:absolute;z-index:2;inset:0;display:grid;place-items:center;margin:0;padding:.5rem;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:.75rem;line-height:1.3;text-align:center;min-block-size:2.75rem}.week-quiet-column__copy:focus-visible{outline:.125rem solid var(--focus);outline-offset:-.25rem}.day-view--week-column{min-inline-size:0}.up-next{display:flex;flex-direction:column;gap:.25rem;margin-block-end:.75rem;padding:.625rem .75rem;border:.0625rem solid var(--border);border-inline-start:.1875rem solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-raised)}.up-next[data-urgent=true]{border-inline-start-color:var(--danger)}.up-next__lead{margin:0;color:var(--text);font-size:.9375rem}.up-next__countdown{font-variant-numeric:tabular-nums}.up-next[data-urgent=true] .up-next__countdown{color:var(--danger)}.up-next__detail{margin:0;color:var(--text-muted);font-size:.875rem;font-variant-numeric:tabular-nums}.up-next__tight{margin:0;color:var(--danger);font-size:.875rem}.up-next__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-start:.25rem}.up-next__navigation-placeholder{visibility:hidden;pointer-events:none}.up-next__announce{position:absolute;width:.0625rem;height:.0625rem;margin:-.0625rem;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.up-next__provenance{margin:0;color:var(--text-muted);font-size:.75rem}.calendar-legend{color:var(--text-muted);font-size:.875rem}.calendar-legend__list{display:flex;flex-wrap:wrap;gap:.625rem .75rem;margin:1rem 0 0;padding:0;overflow-x:clip;list-style:none}.calendar-legend__item{display:flex;align-items:center;gap:.5rem;min-inline-size:0;max-inline-size:100%}.calendar-legend__swatch{flex:none;inline-size:1.5rem;block-size:1.5rem;border-radius:.25rem}.calendar-legend__swatch--lesson{background:var(--event-lesson-fill);box-shadow:inset .2rem 0 0 var(--event-lesson)}.calendar-legend__swatch--online{background:var(--event-online-fill);box-shadow:inset .2rem 0 0 var(--event-online)}.calendar-legend__swatch--school,.calendar-legend__swatch--personal{background-color:var(--event-busy-fill);background-image:repeating-linear-gradient(-45deg,transparent 0 .18rem,var(--event-busy-hatch) .18rem .32rem)}.calendar-legend__swatch--school{box-shadow:inset .2rem 0 0 var(--event-school)}.calendar-legend__swatch--personal{box-shadow:inset .2rem 0 0 var(--event-personal)}.calendar-legend__swatch--available{border:1px dashed var(--event-available);background:var(--event-available-wash)}.calendar-legend__swatch--freed{background:var(--warn)}.calendar-legend__symbol{flex:none;min-inline-size:1rem;color:var(--text);font-weight:800;text-align:center}.calendar-filter-chip{display:flex;justify-content:flex-start;padding-block:.25rem;padding-inline:.875rem}.calendar-filter-chip__name,.calendar-filter-chip__clear{min-block-size:2.75rem;border:1px solid var(--accent);background:var(--accent-soft);color:var(--text)}.calendar-filter-chip__name{padding-inline:.875rem .5rem;border-start-start-radius:var(--radius-sm);border-end-start-radius:var(--radius-sm);border-inline-end:0}.calendar-filter-chip__clear{min-inline-size:2.75rem;padding-inline:.5rem;border-start-end-radius:var(--radius-sm);border-end-end-radius:var(--radius-sm);font-size:1.125rem;line-height:1}.calendar-student-filter-sheet .searchable-picker{margin-block-start:1rem}.kebab-menu{position:relative;display:inline-flex}.kebab-menu__trigger{display:inline-flex;min-inline-size:2.75rem;min-block-size:2.75rem;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;font-size:1.125rem;font-weight:800;line-height:1}.kebab-menu__trigger:disabled{cursor:not-allowed;opacity:.55}.kebab-menu__trigger:focus-visible,.kebab-menu__item:focus-visible{outline:.125rem solid var(--focus);outline-offset:.125rem}.kebab-menu__list{position:fixed;z-index:30;display:grid;min-inline-size:13rem;max-inline-size:min(18rem,90vw);padding:.25rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:0 .75rem 2rem var(--shadow)}.kebab-menu__item{min-block-size:2.75rem;padding:.5rem .75rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font:inherit;text-align:start}.kebab-menu__item:disabled{color:var(--text-muted);cursor:not-allowed}.kebab-menu__item:hover:not(:disabled){background:var(--surface)}.calendar-toolbar{position:relative;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding:.875rem;border-block-end:1px solid var(--border);background:var(--surface-raised)}.calendar-toolbar__weeks,.calendar-toolbar__week-actions,.calendar-view-switch{display:inline-flex;align-items:center;gap:.375rem}.calendar-toolbar__title,.calendar-toolbar__title-hit{min-inline-size:0;margin:0}.calendar-toolbar .calendar-toolbar__title-button{max-inline-size:100%;padding-inline:.25rem;overflow:hidden;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-overflow:ellipsis;white-space:nowrap}.calendar-toolbar__date{position:absolute;inline-size:1px;block-size:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.calendar-toolbar button{padding-inline:.875rem}.calendar-view-switch{padding:.25rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.calendar-view-switch button{border:0;background:transparent}.calendar-view-switch button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}@media(max-width:63.999rem){.calendar-toolbar{position:sticky;z-index:6;inset-block-start:var(--offline-banner-height, 0px);flex-wrap:nowrap;gap:.25rem;block-size:var(--calendar-sticky-top, 3.625rem);padding:.25rem .5rem}.calendar-toolbar__title-hit{position:relative;flex:1;min-inline-size:0;overflow:hidden}.calendar-toolbar__title{margin:0;overflow:hidden;font-size:1.0625rem;font-weight:730;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.calendar-toolbar__title-hit .calendar-toolbar__title-button{position:absolute;inset:0;max-inline-size:none;padding:0}.calendar-toolbar button{padding-inline:.5rem;white-space:nowrap}.calendar-view-switch{padding:.125rem}}.teacher-onboarding{display:grid;gap:.625rem;margin-block-end:.875rem;padding:.75rem .875rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 .5rem 1.25rem var(--shadow)}.teacher-onboarding[data-collapsed=true]{justify-items:start;margin-block-end:.625rem;padding:0;border-color:transparent;background:transparent;box-shadow:none}.teacher-onboarding[data-collapsed=true] .teacher-onboarding__heading{position:absolute;overflow:hidden;clip-path:inset(50%);inline-size:1px;block-size:1px;white-space:nowrap}.teacher-onboarding[data-collapsed=true] .teacher-onboarding__toggle{border-radius:999rem;background:var(--surface);box-shadow:0 .25rem .75rem var(--shadow)}.teacher-onboarding__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.teacher-onboarding__heading,.teacher-onboarding__heading p,.teacher-onboarding__heading h2,.teacher-onboarding ol{margin:0}.teacher-onboarding__heading{display:grid;gap:.25rem;min-inline-size:0}.teacher-onboarding__heading>p:first-child{color:var(--accent);font-size:.6875rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.teacher-onboarding__heading h2{font-size:1rem;font-weight:750;letter-spacing:-.02em;line-height:1.2}.teacher-onboarding__progress{color:var(--text-muted);font-size:.8125rem;font-weight:650}.teacher-onboarding__body{color:var(--text-muted);font-size:.8125rem;line-height:1.35}.teacher-onboarding__actions{display:flex;flex:0 0 auto;align-items:center;gap:.375rem}.teacher-onboarding__toggle,.teacher-onboarding__dismiss{flex:0 0 auto;min-block-size:2.75rem;min-inline-size:2.75rem;padding-block:.375rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);cursor:pointer;font:inherit;font-size:.8125rem;font-weight:700}.teacher-onboarding__toggle{display:inline-flex;align-items:center;gap:.25rem}.teacher-onboarding__dismiss{padding-inline:.5rem;color:var(--text-muted);font-size:1rem}.teacher-onboarding__toggle:hover,.teacher-onboarding__dismiss:hover{border-color:var(--border-strong);color:var(--text)}.teacher-onboarding__toggle:focus-visible,.teacher-onboarding__dismiss:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.teacher-setup-checklist{gap:.875rem}.teacher-setup-checklist>p{margin:0}.teacher-setup-checklist ol{display:grid;gap:.375rem;margin:0;padding:0;list-style:none}.teacher-setup-checklist li{display:flex;min-block-size:2.75rem;align-items:center;gap:.5rem;padding:.375rem .625rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:.875rem}.teacher-setup-checklist li[data-complete=true]{color:var(--text-muted)}.teacher-setup-checklist a{color:var(--accent);font-weight:750}.teacher-setup-checklist__note{margin:0;color:var(--text-muted);font-size:.8125rem}.teacher-setup-checklist__actions{display:grid;justify-items:start;gap:.5rem}.teacher-setup-checklist__actions p{margin:0}.teacher-onboarding ol{display:grid;gap:.375rem;padding:0;list-style:none}.teacher-onboarding li{display:flex;min-block-size:2.75rem;align-items:center;gap:.5rem;padding:.375rem .625rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);font-size:.875rem}.teacher-onboarding li[data-complete=true]{color:var(--text-muted)}.teacher-onboarding a{display:flex;min-block-size:2.75rem;align-items:center;color:var(--accent);font-weight:750}.teacher-onboarding a:focus-visible,.teacher-onboarding button:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.parking-point__body,.parking-point__hint{margin:0;color:var(--text-muted);font-size:.875rem;line-height:1.4}.parking-point__actions{display:flex;flex-wrap:wrap;gap:.5rem}.settings-page{display:grid;gap:clamp(1rem,3vw,1.5rem);min-inline-size:0;padding-block-end:3rem}.settings-card,.settings-location{display:grid;gap:1.25rem;padding:clamp(1.25rem,4vw,2rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1rem 2.5rem var(--shadow)}.settings-location--school{border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:none}.settings-card__intro{display:grid;gap:.35rem}.settings-card__intro>p{margin:0;color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.settings-card__intro h2{margin:0;font-size:clamp(1.35rem,4vw,2rem);letter-spacing:-.025em;line-height:1.1}.settings-card__intro>span,.settings-empty p,.settings-notice,.settings-load-error p{margin:0;color:var(--text-muted);line-height:1.55}.settings-defaults__form{display:grid;gap:1rem}.settings-defaults__form label,.settings-field{display:grid;gap:.45rem;color:var(--text);font-size:.875rem;font-weight:700}.settings-defaults__form input,.settings-defaults__form select,.settings-field input{min-block-size:2.75rem;inline-size:100%;padding-inline:.875rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.settings-defaults__form input:focus-visible,.settings-defaults__form select:focus-visible,.settings-field input:focus-visible,.settings-empty a:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.settings-defaults__form small{color:var(--text-muted);font-weight:500}.settings-ical__actions{display:flex;flex-wrap:wrap;gap:.75rem}.settings-usage__value{margin:0;font-size:1.25rem;font-weight:750;letter-spacing:-.02em}.settings-feedback,.settings-geocode-address{margin:0;line-height:1.5}.settings-feedback[role=alert]{color:var(--warn)}.settings-feedback[role=status],.settings-geocode-address{color:var(--text-muted)}.settings-notice,.settings-load-error{padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised)}.settings-load-error{display:grid;gap:.875rem}.settings-empty{display:grid;gap:.75rem;justify-items:start}.settings-empty a{min-block-size:2.75rem;color:var(--accent);font-weight:750;line-height:2.75rem}@media(min-width:46rem){.settings-defaults__form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end}.settings-defaults__hint{order:1;grid-column:1 / -1}.settings-defaults__form>.btn{order:2}}.settings-location-list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.settings-location-row{display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding:.875rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised)}.settings-location-row__identity{display:grid;gap:.2rem;min-inline-size:0}.settings-location-row__label{display:flex;align-items:center;gap:.4rem;margin:0;font-weight:750;overflow-wrap:anywhere}.settings-location-row__star{color:var(--accent)}.settings-location-row__address,.settings-location-row__parking{margin:0;color:var(--text-muted);font-size:.8125rem;overflow-wrap:anywhere}.settings-location-row__side{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.settings-location-row__badge{padding:.25rem .55rem;border-radius:999rem;background:var(--accent-soft);color:var(--event-school);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.settings-location-row__blocked{flex-basis:100%;color:var(--warn);font-size:.8125rem}.settings-location-row__blocked p,.settings-location-row__blocked ul{margin:0}.settings-location-row__blocked ul{padding-inline-start:1.1rem}.settings-locations__home-setup{margin-block-start:1rem}.settings-locations__add{display:grid;gap:.75rem;margin-block-start:1rem}.settings-locations__add>button{justify-self:start}.settings-locations__schools{margin-block-start:1rem}.student-card__declared{position:relative;display:grid;gap:.25rem;font-size:.875rem;color:var(--text-muted)}.student-card__declared p{margin:0}.student-card__declared-week{color:var(--text)}.student-card__declared-age--stale{color:var(--color-caution)}.student-card__declared a{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.75rem;min-inline-size:2.75rem}.student-profile{display:grid;gap:1.25rem}.students-notice{margin:0;padding:.875rem 1rem;border:1px solid var(--warn);border-radius:var(--radius-sm);background:var(--surface)}.student-field{display:grid;gap:.375rem;color:var(--text);font-weight:700}.student-field input,.student-field select,.student-field textarea{min-block-size:2.75rem;inline-size:100%;padding:.75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit}.student-field textarea{min-block-size:7rem;resize:vertical}.student-field input:focus-visible,.student-field select:focus-visible,.student-field textarea:focus-visible,.student-button:focus-visible,.student-login__actions button:focus-visible,.student-card__edit:focus-visible,.student-card__name:focus-visible,.student-find-slot:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.student-button,.student-login__actions button{min-block-size:2.75rem;padding:.75rem 1rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font:inherit;font-weight:800;cursor:pointer}.student-button--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.student-button--danger{border-color:var(--warn);justify-self:start}.student-button:disabled,.student-login__actions button:disabled{cursor:not-allowed;opacity:.55}.student-form,.student-login,.student-calendar,.student-history{display:grid;gap:1rem;padding:clamp(1rem,4vw,1.5rem);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 1rem 2.5rem var(--shadow)}.student-form h2,.student-login h2,.student-calendar h2,.student-history h2{margin:0}.student-login__help{margin:.35rem 0 0;color:var(--text-muted);font-weight:500}.student-form__grid{display:grid;gap:.875rem}.student-form__section{display:grid;gap:.875rem;min-inline-size:0;margin:0;padding:0;border:0}.student-form__section legend{margin-block-end:.5rem;font-weight:800}.student-profile__guardian,.student-card__guardian{display:flex;flex-wrap:wrap;gap:.35rem .75rem;min-inline-size:0;max-inline-size:100%;overflow-wrap:anywhere;color:var(--text-muted);font-size:.9rem}.student-profile__guardian span:first-child,.student-card__guardian span:first-child{font-weight:700}.student-manual-pin{display:grid;gap:.875rem;min-inline-size:0;margin:0;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-sm)}.student-manual-pin legend{padding-inline:.375rem;font-weight:800}.student-manual-pin p{margin:0;color:var(--text-muted)}.student-profile__header{display:grid;gap:1rem;padding-block-end:1rem;border-block-end:1px solid var(--border)}.student-profile__header h2{margin-block:.5rem 0;font-size:clamp(1.5rem,7vw,2.5rem)}.student-profile__header>div>a{display:inline-flex;align-items:center;min-block-size:2.75rem;color:var(--accent);font-weight:700}.student-login__actions{display:grid;gap:.625rem;padding:.875rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft)}.student-login__actions p{grid-column:1 / -1}.student-profile__edit,.student-profile__archive{justify-self:start}.student-archive-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.875rem 1rem;border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--surface)}.student-archive-confirm p{flex-basis:100%;margin:0}.student-archive-status{margin:0;color:var(--text-muted)}.student-archive-status:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.student-history ol{display:grid;gap:.75rem;margin:0;padding-inline-start:1.5rem}.student-history li{padding:.75rem;border-block-end:1px solid var(--border)}.student-history li strong,.student-history li span{display:block}.student-history li span{margin-block-start:.25rem;color:var(--text-muted)}@media(min-width:48rem){.student-form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile__header{grid-template-columns:minmax(0,1fr) auto;align-items:end}.student-login__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.students-workspace{display:grid;gap:1.25rem;min-inline-size:0}.students-toolbar{display:grid;gap:.875rem}.students-search{min-inline-size:0}.students-sort{min-inline-size:min(100%,10rem)}.students-drive-status{margin:0;color:var(--text-muted)}.students-drive-status--fallback{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border:1px solid var(--warn);border-radius:var(--radius-sm);background:var(--surface)}.students-drive-status--fallback p{margin:0}.students-grid{display:grid;gap:1rem;margin:0;padding:0;list-style:none}.student-card{position:relative;display:grid;gap:.875rem;padding:1.125rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.student-card:hover,.student-card:focus-within{border-color:var(--accent)}.student-card__name:after{content:"";position:absolute;inset:0;border-radius:var(--radius-md)}.student-card__identity-meta{position:relative;display:inline-flex;align-items:center;gap:.625rem}.student-card .student-card__edit,.student-card__drive,.student-card .student-find-slot{position:relative}.student-card__identity,.student-card__next{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;min-inline-size:0}.student-card__identity a{display:inline-flex;align-items:center;min-block-size:2.75rem;color:var(--text);font-size:1.125rem;font-weight:900;text-decoration-color:var(--accent);text-underline-offset:.25rem}.student-card__identity span,.student-card__next span,.student-card__location span{color:var(--text-muted)}.student-card__location{display:grid;gap:.25rem}.student-card__chips{display:flex;flex-wrap:wrap;gap:.5rem}.student-card__chips span{padding:.3rem .625rem;border:1px solid var(--border);border-radius:999rem;background:var(--accent-soft);color:var(--text);font-size:.875rem}.student-card__drive{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;color:var(--text-muted)}.student-card__drive strong{color:var(--text)}.student-card__drive span{padding-inline-start:.5rem;border-inline-start:1px solid var(--border)}.student-find-slot{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.75rem;padding:.75rem 1rem;border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);font-weight:900;text-decoration:none}.students-empty{padding:2rem;border-block:1px solid var(--border);color:var(--text-muted);text-align:center}@media(min-width:48rem){.students-toolbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:end}.students-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.quick-book{display:flex;flex-direction:column;gap:.75rem}.quick-book__picker{display:flex;flex-direction:column;gap:.5rem}.quick-book__picker-head{position:sticky;inset-block-start:0;z-index:1;display:flex;flex-direction:column;gap:.5rem;background:var(--bg);padding-block:.25rem}.quick-book__search{display:flex;flex-direction:column;gap:.25rem}.quick-book__section-label{margin:0;color:var(--text-muted);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.quick-book__students{display:flex;flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none}.quick-book__student{display:flex;flex-direction:column;gap:.125rem;inline-size:100%;min-block-size:2.75rem;padding-block:.5rem;padding-inline:.75rem;border:.0625rem solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text);text-align:start}.quick-book__student-note{color:var(--text-muted);font-size:.8125rem}.quick-book__hero,.quick-book__alternate{display:flex;flex-direction:column;gap:.25rem;padding-block:.75rem;padding-inline:.75rem .5rem;border:.0625rem solid var(--border-strong);border-inline-start:.25rem solid var(--event-lesson);border-radius:var(--radius-md);background:var(--surface-raised)}.quick-book__hero--online{border-inline-start-color:var(--event-online)}.quick-book__hero-when,.quick-book__hero-cost{font-size:1.125rem;font-weight:750;font-variant-numeric:tabular-nums}.quick-book__hero-why{color:var(--text-muted);font-size:.875rem}.quick-book__alternate{inline-size:100%;min-block-size:2.75rem;padding-block:.5rem;padding-inline:.625rem .375rem;color:var(--text);font:inherit;text-align:start;cursor:pointer}.quick-book__alternate:disabled{cursor:not-allowed;opacity:.55}.quick-book__alternate .quick-book__hero-when,.quick-book__alternate .quick-book__hero-cost{font-size:1rem}.quick-book__alternates{display:flex;flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none}.quick-book__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.quick-book__weekly{display:inline-flex;align-items:center;gap:.375rem;min-block-size:2.75rem;padding-inline:.5rem}.suggest-wizard{display:grid;gap:1rem;max-width:48rem}.suggest-step,.suggest-route-check{display:grid;gap:1rem;min-width:0}.suggest-step fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:.75rem;padding:.75rem}.suggest-choice{align-items:center;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;gap:.625rem;padding:.75rem}.suggest-time-fields,.suggest-actions{display:flex;flex-wrap:wrap;gap:.75rem}.suggest-place,.suggest-place-manual{display:grid;gap:.75rem}.suggest-place-help{color:var(--text);margin:0;opacity:.85}.suggest-time-fields label{display:grid;flex:1 1 10rem;gap:.375rem}.suggest-button{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);min-height:2.75rem;padding:.625rem 1rem}.suggest-button--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.suggest-button:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.suggest-button:disabled{opacity:.55}.suggest-notice,.suggest-student-preview,.suggestion-card__provenance{background:var(--accent-soft);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem}.suggestion-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 .5rem 1.5rem var(--shadow);display:grid;gap:.75rem;min-width:0;padding:1rem}.suggestion-card--best{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 .5rem 1.5rem var(--shadow)}.suggestion-card__best-badge{color:var(--accent-strong);font-size:.8125rem;font-weight:700;letter-spacing:.02em;margin:0;text-transform:uppercase}.suggest-alternatives{display:grid;gap:1rem;min-width:0}.suggest-alternatives-label{color:var(--text-muted);font-weight:700;margin:0}.suggestion-card__header{align-items:start;display:flex;gap:1rem;justify-content:space-between}.suggestion-card__header div{display:grid;gap:.25rem}.suggestion-card__added{background:var(--accent-soft);border-radius:var(--radius-sm);color:var(--accent-strong);font-weight:700;padding:.375rem .625rem;white-space:nowrap}.suggestion-card__route{display:grid;gap:.5rem;min-width:0;overflow:hidden}.suggestion-route-schematic{display:block;max-width:100%;height:auto;overflow:visible}.suggestion-route-schematic__edge{stroke:var(--border-strong);stroke-width:2;stroke-linecap:round}.suggestion-route-schematic__node{fill:var(--surface-raised);stroke:var(--border-strong);stroke-width:2}.suggestion-route-schematic__node--candidate{fill:var(--accent-soft);stroke:var(--accent)}.suggestion-route-schematic__label{fill:var(--text-muted);font-size:.625rem;font-weight:700}.suggestion-card__route-text{display:flex;flex-wrap:wrap;font-weight:700;gap:.25rem;margin:0;overflow-wrap:anywhere}.suggestion-card__stop{border-block-end:.125rem solid var(--accent)}.suggestion-card__legs{color:var(--text-muted);display:grid;gap:.5rem;margin:0;padding-inline-start:1.25rem}.suggestion-card__legs li{display:grid;gap:.25rem}.leg-nav-links{display:flex;flex-wrap:wrap;gap:.75rem}.leg-nav-links__link{color:var(--accent-strong);font-weight:600;min-height:2.75rem;text-decoration:underline}.leg-nav-links__link:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}@media(max-width:30rem){.suggestion-card__header{align-items:stretch;flex-direction:column}.suggestion-card__added{width:fit-content}.suggest-actions .suggest-button{flex:1 1 100%}}.teacher-header{display:grid;gap:.5rem;padding-block:.5rem;min-inline-size:0}.teacher-header .brand-name{font-size:1.0625rem;line-height:1.15}.teacher-header .shell-controls{gap:.375rem}.teacher-navigation{min-inline-size:0;max-inline-size:100%}.teacher-navigation ul{display:flex;flex-wrap:wrap;gap:.375rem;margin:0;padding:0;list-style:none}.teacher-navigation__link{display:inline-flex;align-items:center;min-block-size:2.75rem;padding-block:.25rem;padding-inline:.75rem;border:1px solid var(--border);border-radius:999rem;background:var(--surface);color:var(--text-muted);font-size:.875rem;font-weight:700;text-decoration:none;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}.teacher-navigation__link:hover{border-color:var(--border-strong);color:var(--text)}.teacher-navigation__link[aria-current=page]{border-color:var(--accent);background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.teacher-navigation__link:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.teacher-section-placeholder{max-inline-size:38rem;padding:clamp(1rem,4vw,2rem);border-block:1px solid var(--border);background:var(--surface);color:var(--text)}.teacher-section-placeholder p{margin-block:0 1rem}.teacher-main{min-inline-size:0;overflow-x:clip;padding-block:.75rem 1.25rem}.teacher-main--calendar{overflow:visible}.teacher-main:has(.week-view){overflow:visible}.teacher-title{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem;margin-block-end:.75rem}.teacher-title p{margin:0;color:var(--accent);font-size:.6875rem;font-weight:780;letter-spacing:.1em;text-transform:uppercase}.teacher-title h1{margin:0;font-size:clamp(1.25rem,5vw,1.75rem);font-weight:730;letter-spacing:-.03em;line-height:1.15}.app-shell{--calendar-sticky-top: 0px}.app-shell--tabbed{--calendar-sticky-top: 3.625rem;--teacher-tab-bar-block: calc(3.5rem + env(safe-area-inset-bottom, 0px)) }.app-shell--tabbed .teacher-main{padding-block-end:calc(1.25rem + var(--teacher-tab-bar-block))}.app-shell--tabbed .calendar-fab{inset-block-end:calc(.75rem + var(--teacher-tab-bar-block))}@media(min-width:64rem){.teacher-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding-block:.625rem}.teacher-header:has(.admin-surface-switcher){grid-template-columns:auto auto minmax(0,1fr) auto}.teacher-title h1{font-size:clamp(1.5rem,3vw,2rem)}}.student-header{display:grid;gap:1rem;padding-block:1rem}.student-navigation{min-inline-size:0;overflow-inline:auto}.student-navigation ul{display:flex;gap:.375rem;min-inline-size:max-content;margin:0;padding:0;list-style:none}.student-navigation a{display:inline-flex;align-items:center;min-block-size:2.75rem;padding-inline:.875rem;border-block-end:.1875rem solid transparent;color:var(--text-muted);font-weight:700;text-decoration:none}.student-navigation a[aria-current=page]{border-color:var(--accent);color:var(--text)}.student-main,.student-confirm-main{padding-block:clamp(1.5rem,6vw,4rem)}.student-page{display:grid;gap:1.5rem;min-inline-size:0}.student-confirm-card__top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.student-confirm-card__top .student-confirm-card__eyebrow{margin-block:0}.student-page__heading p,.student-confirm-card__eyebrow{margin-block:0 .5rem;color:var(--accent);font-size:.875rem;font-weight:760}.student-page__heading h1,.student-confirm-card h1{margin:0;font-size:clamp(2rem,9vw,3.5rem);line-height:1}.student-lesson-groups{display:grid;gap:1.25rem;min-inline-size:0}.student-history summary{cursor:pointer}.student-history summary h2{display:inline}.student-history[open] summary{margin-block-end:1rem}.student-lesson-group,.student-profile-card,.student-confirm-card,.student-empty,.student-status{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1rem 3rem var(--shadow)}.student-lesson-group,.student-profile-card,.student-confirm-card,.student-empty{min-inline-size:0;padding:clamp(1.25rem,5vw,2rem)}.student-page__heading,.student-teacher-name,.student-contact-actions{min-inline-size:0;overflow-wrap:anywhere}.student-lesson-group h2,.student-profile-card h2{margin-block:0 1rem}.student-lesson-list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.student-lesson-card{display:grid;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);min-inline-size:0}.student-lesson-card>div,.student-lesson-card dl,.student-profile-card dl{display:grid;gap:.5rem}.student-lesson-card span{color:var(--text-muted)}.student-lesson-card dl,.student-profile-card dl{margin:0}.student-lesson-card dl div,.student-profile-card dl div{display:grid;grid-template-columns:minmax(7rem,auto) minmax(0,1fr);gap:.75rem}.student-lesson-card dt,.student-profile-card dt{color:var(--text-muted)}.student-lesson-card dd,.student-profile-card dd{margin:0;min-inline-size:0;overflow-wrap:anywhere}.student-teacher-name{font-size:1.125rem;font-weight:700}.student-contact-actions{display:flex;flex-wrap:wrap;gap:.75rem}.student-contact-actions a,.student-sign-out,.student-primary-action,.student-correction-form button,.student-status button{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.75rem;padding-inline:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);cursor:pointer;font-weight:700;text-decoration:none}.student-sign-out{justify-self:start;background:transparent;color:var(--text)}.student-sign-out--secondary{background:transparent;color:var(--text)}.student-ical{display:grid;gap:1rem}.student-ical__intro p{margin-block:0 .5rem;line-height:1.5}.student-ical__guidance{color:var(--text-muted);font-size:.9375rem}.student-ical__actions{display:flex;flex-wrap:wrap;gap:.75rem}.student-ical-field{display:grid;gap:.5rem;font-weight:700}.student-ical-field input{min-block-size:2.75rem;inline-size:100%;padding-inline:.875rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font:inherit}.student-status-line{margin:0;color:var(--text-muted)}.student-load-error{display:grid;gap:.75rem;margin:0;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text)}.student-confirm-card{max-inline-size:38rem;margin-inline:auto}.student-confirm-card>p{line-height:1.5}.student-confirm-email{display:grid;gap:.25rem;padding:1rem;border-radius:var(--radius-sm);background:var(--surface-raised);overflow-wrap:anywhere}.student-correction-form{display:grid;gap:.75rem;margin-block-start:2rem}.student-correction-form label{font-weight:700}.student-correction-form input{min-block-size:2.75rem;inline-size:100%;padding-inline:.875rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font:inherit}.student-confirm-status{min-block-size:1.5rem;color:var(--text-muted)}.student-status{margin-block:clamp(1.5rem,6vw,4rem);padding:2rem}@media(min-width:48rem){.student-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.student-lesson-card{grid-template-columns:minmax(10rem,.6fr) minmax(0,1fr)}}.availability-link{display:grid;gap:1.25rem;inline-size:min(100%,48rem);margin-inline:auto;padding:var(--space-page);padding-block-end:3rem}.availability-link__controls{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem}.availability-link__header h1,.availability-link__header p,.availability-link__status,.availability-link__weekend{margin:0}.availability-link__header h1{font-size:clamp(1.75rem,7vw,2.75rem);letter-spacing:-.04em;line-height:1.1}:root[dir=rtl] .availability-link__header h1{letter-spacing:normal}.availability-link__header p,.availability-link__status,.availability-link__weekend{color:var(--text-muted);line-height:1.5}.availability-link__grid,.availability-link__away{display:grid;gap:1rem;min-inline-size:0;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.availability-link__grid h2,.availability-link__away h2{margin:0;font-size:1.05rem}.availability-link__days{display:grid;gap:1rem}.availability-link__day{display:grid;align-content:start;gap:.5rem;min-inline-size:0}.availability-link__day h3{margin:0;color:var(--accent);font-size:.875rem}.availability-link__hours{display:flex;flex-wrap:wrap;gap:.375rem}.availability-link__cell{display:inline-flex;align-items:center;justify-content:center;min-inline-size:2.75rem;min-block-size:2.75rem;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text)}.availability-link__cell[aria-pressed=true]{border-color:var(--event-available);background:var(--event-available-wash);color:var(--text)}.availability-link__cell:disabled,.availability-link__cell[aria-disabled=true]{opacity:.42}.availability-link__away-list,.availability-link__away-form{display:grid;gap:.75rem}.availability-link__away-item,.availability-link__away-fields{display:grid;gap:.5rem}.availability-link__away-item{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md)}.availability-link__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}@media(min-width:40rem){.availability-link__days{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));align-items:start}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-family);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-caution:var(--warn)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-1{top:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.zoom-16{zoom:16%}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color-scheme:dark;--bg:#16181d;--surface:#1d222b;--surface-raised:#252c37;--text:#f4f8fb;--text-muted:#aab7c4;--theme-color:#16181d;--accent:#33e6ff;--accent-strong:#13bdd8;--accent-soft:#33e6ff24;--on-accent:#071619;--border:#35404d;--border-strong:#526171;--warn:#ffd166;--focus:#b49aff;--shadow:#0000004d;--glow:#33e6ff2e;--event-lesson:#33e6ff;--event-online:#b49aff;--event-school:#6f9dff;--event-personal:#8aa0b4;--event-available:#3ddc97;--event-lesson-fill:var(--event-lesson)}@supports (color:color-mix(in lab,red,red)){:root{--event-lesson-fill:color-mix(in srgb, var(--event-lesson) 20%, var(--surface-raised))}}:root{--event-online-fill:var(--event-online)}@supports (color:color-mix(in lab,red,red)){:root{--event-online-fill:color-mix(in srgb, var(--event-online) 18%, var(--surface-raised))}}:root{--event-school-fill:var(--event-school)}@supports (color:color-mix(in lab,red,red)){:root{--event-school-fill:color-mix(in srgb, var(--event-school) 14%, transparent)}}:root{--event-busy-fill:var(--event-personal)}@supports (color:color-mix(in lab,red,red)){:root{--event-busy-fill:color-mix(in srgb, var(--event-personal) 16%, transparent)}}:root{--event-busy-hatch:var(--event-personal)}@supports (color:color-mix(in lab,red,red)){:root{--event-busy-hatch:color-mix(in srgb, var(--event-personal) 42%, transparent)}}:root{--event-available-wash:var(--event-available)}@supports (color:color-mix(in lab,red,red)){:root{--event-available-wash:color-mix(in srgb, var(--event-available) 18%, transparent)}}:root{--travel-label-ground:var(--surface);--travel-label-text:var(--text);--ok:#3ddc97;--danger:#ff6b6b;--font-family:Inter, "Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif;--radius-sm:.625rem;--radius-md:1rem;--radius-lg:1.5rem;--space-page:clamp(1rem, 4vw, 2.5rem);--content-width:72rem;--motion-fast:.16s}:root[data-theme=dark]{color-scheme:dark;--bg:#16181d;--surface:#1d222b;--surface-raised:#252c37;--text:#f4f8fb;--text-muted:#aab7c4;--theme-color:#16181d;--accent:#33e6ff;--accent-strong:#13bdd8;--accent-soft:#33e6ff24;--on-accent:#071619;--border:#35404d;--border-strong:#526171;--warn:#ffd166;--focus:#b49aff;--shadow:#0000004d;--glow:#33e6ff2e;--event-lesson:#33e6ff;--event-online:#b49aff;--event-school:#6f9dff;--event-personal:#8aa0b4;--event-available:#3ddc97;--ok:#3ddc97;--danger:#ff6b6b}:root[data-theme=light]{color-scheme:light;--bg:#f5f9fc;--surface:#fff;--surface-raised:#e8f0f5;--text:#10212c;--text-muted:#465c69;--theme-color:#f5f9fc;--accent:#00677d;--accent-strong:#004e5e;--accent-soft:#00677d1f;--on-accent:#fff;--border:#bdcdd6;--border-strong:#8297a4;--warn:#765000;--focus:#5932bd;--shadow:#1e364426;--glow:#00677d21;--event-lesson:#007f99;--event-online:#6c47d8;--event-school:#2b5fc4;--event-personal:#5c5a57;--event-available:#0e8a5f;--event-lesson-fill:var(--event-lesson)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=light]{--event-lesson-fill:color-mix(in srgb, var(--event-lesson) 24%, var(--surface-raised))}}:root[data-theme=light]{--event-available-wash:var(--event-available)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=light]{--event-available-wash:color-mix(in srgb, var(--event-available) 22%, transparent)}}:root[data-theme=light]{--event-busy-fill:var(--event-personal)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=light]{--event-busy-fill:color-mix(in srgb, var(--event-personal) 12%, transparent)}}:root[data-theme=light]{--ok:#0e8a5f;--danger:#b3261e}@media(prefers-color-scheme:light){:root:not([data-theme]){color-scheme:light;--bg:#f5f9fc;--surface:#fff;--surface-raised:#e8f0f5;--text:#10212c;--text-muted:#465c69;--theme-color:#f5f9fc;--accent:#00677d;--accent-strong:#004e5e;--accent-soft:#00677d1f;--on-accent:#fff;--border:#bdcdd6;--border-strong:#8297a4;--warn:#765000;--focus:#5932bd;--shadow:#1e364426;--glow:#00677d21;--event-lesson:#007f99;--event-online:#6c47d8;--event-school:#2b5fc4;--event-personal:#5c5a57;--event-available:#0e8a5f;--event-lesson-fill:var(--event-lesson)}@supports (color:color-mix(in lab,red,red)){:root:not([data-theme]){--event-lesson-fill:color-mix(in srgb, var(--event-lesson) 24%, var(--surface-raised))}}:root:not([data-theme]){--event-available-wash:var(--event-available)}@supports (color:color-mix(in lab,red,red)){:root:not([data-theme]){--event-available-wash:color-mix(in srgb, var(--event-available) 22%, transparent)}}:root:not([data-theme]){--event-busy-fill:var(--event-personal)}@supports (color:color-mix(in lab,red,red)){:root:not([data-theme]){--event-busy-fill:color-mix(in srgb, var(--event-personal) 12%, transparent)}}:root:not([data-theme]){--ok:#0e8a5f;--danger:#b3261e}}@media(prefers-reduced-motion:reduce){:root{--motion-fast:0s}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-block-size:2.75rem;min-inline-size:2.75rem;padding-block:.625rem;padding-inline:1rem;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font:inherit;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,opacity var(--motion-fast) ease}.btn:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn--primary:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--accent-strong);background:var(--accent-strong);color:var(--on-accent)}.btn--secondary{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.btn--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--surface-raised);color:var(--text)}.btn--danger{border-color:var(--danger);background:var(--surface);color:var(--danger)}.btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--surface-raised);color:var(--danger)}.btn--ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-soft);color:var(--text)}.btn--icon{padding-inline:0;font-size:1.125rem;font-weight:800}*{box-sizing:border-box}:root{--offline-banner-height: 0px}html{background:var(--bg);font-family:var(--font-family);text-rendering:optimizeLegibility}body{min-block-size:100dvh;margin:0;background:radial-gradient(circle at 50% -20%,var(--glow),transparent 42rem),var(--bg);color:var(--text)}button{font:inherit}button:disabled{cursor:not-allowed;opacity:.58}button:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.1875rem}.app-runtime{display:flex;flex-direction:column;min-block-size:100dvh}.app-runtime__main{display:flex;flex-direction:column;flex:1 1 auto}.app-shell{flex:1 1 auto;background:transparent;color:var(--text)}.shell-container{inline-size:min(100%,var(--content-width));margin-inline:auto;padding-inline:var(--space-page)}.shell-header{border-block-end:1px solid var(--border);background:var(--bg)}.shell-header__inner{display:flex;flex-direction:column;gap:1rem;padding-block:1rem}.brand-lockup{display:flex;align-items:center;gap:.875rem;min-inline-size:0}.brand-mark{inline-size:2.75rem;block-size:2.75rem;flex:0 0 auto;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--accent);filter:drop-shadow(0 0 .75rem var(--glow));fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.brand-name{margin:0;font-size:1.25rem;font-weight:760;letter-spacing:-.025em;line-height:1.1}.brand-tagline{margin:.25rem 0 0;color:var(--text-muted);font-size:.875rem;line-height:1.35}.shell-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem}.admin-surface-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;min-inline-size:0}.language-toggle{display:inline-flex;padding:.25rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.language-toggle button,.theme-toggle{min-block-size:2.75rem;border:0;border-radius:calc(var(--radius-sm) - .2rem);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,transform var(--motion-fast) ease}.sign-out{min-block-size:2.75rem;padding-inline:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font-size:.875rem;font-weight:650}.language-toggle button{min-inline-size:2.75rem;padding-inline:.75rem;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:700}.language-toggle button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.theme-toggle{display:inline-flex;align-items:center;gap:.625rem;padding-inline:.875rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.875rem;font-weight:650}.theme-toggle svg{inline-size:1.125rem;block-size:1.125rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.language-toggle button:hover,.theme-toggle:hover{background:var(--surface-raised);color:var(--text)}.language-toggle button[aria-pressed=true]:hover{background:var(--accent-strong);color:var(--on-accent)}.shell-main{padding-block:clamp(2.5rem,8vw,6rem)}.schedule-shell{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1.5rem 4rem var(--shadow)}.schedule-shell__header{padding:clamp(1.25rem,5vw,2.5rem);border-block-end:1px solid var(--border)}.schedule-shell__status{margin:0 0 .75rem;color:var(--accent);font-size:.875rem;font-weight:760;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}:root[dir=rtl] .schedule-shell__status{letter-spacing:normal;text-transform:none}.schedule-shell h2{max-inline-size:18ch;margin:0;font-size:clamp(1.75rem,8vw,3.75rem);font-weight:720;letter-spacing:-.045em;line-height:1}:root[dir=rtl] .schedule-shell h2{letter-spacing:normal}.schedule-placeholder{display:grid;min-block-size:18rem;place-items:center;gap:2rem;padding:clamp(1.5rem,6vw,4rem);text-align:center}.schedule-placeholder p{max-inline-size:34ch;margin:0;color:var(--text-muted);font-size:1rem;line-height:1.55}.schedule-placeholder__rail{display:grid;inline-size:min(100%,30rem);gap:1rem}.schedule-placeholder__rail span{display:block;block-size:.625rem;border-radius:999rem;background:var(--surface-raised)}.schedule-placeholder__rail span:nth-child(2){inline-size:76%;background:var(--accent-soft)}.schedule-placeholder__rail span:nth-child(3){inline-size:52%}.offline-banner{position:sticky;z-index:10;inset-block-start:0;display:flex;align-items:center;justify-content:center;gap:.75rem;min-block-size:3rem;padding:.75rem var(--space-page);border-block-end:1px solid var(--warn);background:var(--surface-raised);color:var(--text);font-size:.9375rem;font-weight:650;text-align:center}.offline-banner__pulse{inline-size:.625rem;block-size:.625rem;flex:0 0 auto;border-radius:50%;background:var(--warn);box-shadow:0 0 0 .375rem var(--accent-soft);animation:offline-pulse 1.8s ease-in-out infinite}@keyframes offline-pulse{50%{opacity:.5;transform:scale(.8)}}@media(min-width:46rem){.shell-header__inner{flex-direction:row;align-items:center;justify-content:space-between}.shell-controls{justify-content:flex-end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page,.status-page{display:grid;flex:1 1 auto;place-items:center;padding:var(--space-page)}.auth-card,.status-card,.role-card{inline-size:min(100%,34rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1.5rem 4rem var(--shadow)}.auth-card{padding:clamp(1.25rem,6vw,2.5rem)}.auth-card__controls{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-block-end:clamp(2rem,8vw,4rem)}.auth-card__header h1,.role-card h1,.status-card h1{margin:0;font-size:clamp(2rem,9vw,3.5rem);letter-spacing:-.045em;line-height:1}:root[dir=rtl] .auth-card__header h1,:root[dir=rtl] .role-card h1,:root[dir=rtl] .status-card h1{letter-spacing:normal}.auth-card__header>p:last-child,.role-card>p,.status-card>p{margin:1rem 0 0;color:var(--text-muted);line-height:1.55}.auth-card__eyebrow,.role-card__eyebrow{margin:0 0 .75rem;color:var(--accent);font-size:.875rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}:root[dir=rtl] .auth-card__eyebrow,:root[dir=rtl] .role-card__eyebrow{letter-spacing:normal;text-transform:none}.auth-form{display:grid;gap:.75rem;margin-block-start:2rem}.auth-form label{font-weight:700}.auth-form input{min-block-size:3rem;inline-size:100%;padding-inline:1rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);font:inherit}.auth-form input::placeholder{color:var(--text-muted)}.auth-form input:focus-visible{outline:.1875rem solid var(--focus);outline-offset:.125rem}.auth-form button,.status-card button{min-block-size:3rem;padding-inline:1.25rem;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);cursor:pointer;font-weight:760}.auth-status{min-block-size:3rem;margin:0;color:var(--text-muted);font-size:.9375rem;line-height:1.45}.status-card{padding:clamp(1.5rem,6vw,2.5rem)}p.status-card{color:var(--text-muted);line-height:1.55;text-align:center}.status-card button{margin-block-start:1.5rem}.role-card{padding:clamp(1.5rem,6vw,3rem)}.role-placeholder{min-block-size:12rem;margin-block-start:2rem;padding:1.5rem;border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-muted);line-height:1.55}
