:root{color:#243330;font-synthesis:none;--ink:#243330;--muted:#697773;--line:#dfe7e3;--lilac:#34766d;--lilac-dark:#285e57;--wash:#f3f6f4;--white:#fff;--shadow:0 16px 50px #23413b12;background:#f3f6f4;font-family:Avenir,Avenir Next,Inter,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}.icon{flex:none;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.24rem;font-weight:750;display:flex}.brand-mark{color:#fff;background:var(--lilac);border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.sidebar{z-index:4;border-right:1px solid var(--line);background:#fff;flex-direction:column;width:236px;padding:24px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar>.brand{padding:0 10px 30px}.sidebar nav{gap:5px;display:grid}.nav-item{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:13px;padding:11px 13px;font-weight:650;display:flex}.nav-item:hover,.nav-item:focus-visible{color:var(--ink);background:#f7f5fa}.nav-item.active{color:var(--lilac-dark);background:#eee9f4}.sidebar-bottom{border-top:1px solid var(--line);gap:5px;margin-top:auto;padding-top:18px;display:grid}.workspace{min-height:100vh;margin-left:236px}.topbar{z-index:3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f3f8e0;border-bottom:1px solid #ded8e5cc;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.mobile-brand{display:none}.family-control,.user-menu{align-items:center;gap:10px;display:flex}.family-avatar,.user-avatar{border-radius:50%;place-items:center;font-weight:800;display:grid}.family-avatar{color:#614d80;background:#e6ddf2;width:34px;height:34px}.user-avatar{color:#594866;background:#ecdfe5;width:36px;height:36px}.family-name{font-weight:700}.family-control select{max-width:210px;color:var(--ink);background:0 0;border:0;padding:8px 30px 8px 9px;font-weight:700}.user-name{font-size:.92rem;font-weight:650}.logout-button,.text-button{color:var(--lilac-dark);cursor:pointer;background:0 0;border:0;font-weight:700}.logout-button{padding:8px}.content{width:min(1180px,100%);margin:0 auto;padding:42px 42px 110px}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px;display:flex}.eyebrow,.kicker,.card-label{color:var(--lilac);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.page-heading h1,.unavailable h1{letter-spacing:-.045em;margin:7px 0 4px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}.lead,.muted{color:var(--muted);margin:0;line-height:1.55}.child-filter{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.child-filter button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.86rem;font-weight:700;display:flex}.child-filter button span{border-radius:50%;width:8px;height:8px}.child-filter button.selected{color:var(--lilac-dark);background:#eee9f4;border-color:#9b89b5}.coverage-notice{color:#625a49;background:#fbf8ed;border:1px solid #e5d9bd;border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding:14px 18px;font-size:.83rem;display:flex}.coverage-notice div{gap:9px;display:flex}.coverage-notice strong{color:#554b38;white-space:nowrap}.coverage-notice small{white-space:nowrap;color:#81755f}.today-grid{grid-template-columns:minmax(0,1.55fr) minmax(250px,.75fr);gap:18px;display:grid}.day-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px}.main-card{min-height:470px;padding:25px}.compact-card{min-height:226px;padding:23px}.side-stack{gap:18px;display:grid}.card-heading{justify-content:space-between;align-items:flex-start;display:flex}.day-card h2{letter-spacing:-.025em;margin:5px 0 18px;font-size:1.35rem}.status-pill{color:#6e6375;background:#f3f0f5;border-radius:999px;padding:6px 9px;font-size:.7rem;font-weight:800}.empty-state{text-align:center;align-content:center;place-items:center;min-height:335px;padding:30px;display:grid}.empty-icon{width:54px;height:54px;color:var(--lilac);background:#eee9f4;border-radius:17px;place-items:center;margin-bottom:10px;display:grid}.empty-state h3{margin:8px 0 6px;font-size:1.08rem}.empty-state p{max-width:440px;color:var(--muted);margin:0 0 18px;font-size:.9rem;line-height:1.55}.secondary-button{color:var(--lilac-dark);cursor:pointer;background:#fff;border:1px solid #d6ccdf;border-radius:10px;padding:9px 13px;font-weight:750}.card-link{color:var(--lilac-dark);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin-top:28px;padding:0;font-size:.88rem;font-weight:800;display:flex}.metric{align-items:baseline;gap:9px;margin:27px 0 40px;display:flex}.metric strong{letter-spacing:-.05em;font-size:2.8rem}.metric span{color:var(--muted);font-size:.9rem}.skeletons{gap:12px;margin-top:35px;display:grid}.skeletons i{background:linear-gradient(90deg,#f3f0f5,#faf9fb,#f3f0f5) 0 0/200% 100%;border-radius:12px;height:72px;animation:1.4s infinite shimmer}.inline-error{color:#8a3547;background:#fbeef1;border-radius:12px;margin-top:25px;padding:18px}.unavailable{text-align:center;align-content:center;place-items:center;min-height:65vh;display:grid}.unavailable h1{margin:7px}.unavailable>p:last-child{max-width:510px;color:var(--muted);line-height:1.6}.bottom-nav{display:none}.login-page{grid-template-columns:minmax(370px,.95fr) minmax(420px,1.05fr);min-height:100vh;display:grid}.login-story{color:#fff;background:#6e5a8c;flex-direction:column;min-height:100vh;padding:42px clamp(36px,6vw,90px);display:flex;position:relative;overflow:hidden}.login-story:before,.login-story:after{content:"";border:1px solid #ffffff1f;border-radius:50%;position:absolute}.login-story:before{width:620px;height:620px;bottom:-20%;right:-25%}.login-story:after{width:350px;height:350px;bottom:4%;right:-4%}.brand--light{z-index:1;position:relative}.brand--light .brand-mark{color:#725e90;background:#fff}.login-copy{z-index:1;margin:auto 0;position:relative}.login-copy .kicker{color:#e6ddf1}.login-copy h1{letter-spacing:-.06em;margin:14px 0 24px;font-size:clamp(3rem,6vw,5.5rem);line-height:.95}.login-copy>p:last-child{color:#eae4f0;max-width:470px;margin:0;font-size:1.05rem;line-height:1.65}.privacy-note{z-index:1;color:#dbd2e5;margin:0;font-size:.78rem;position:relative}.login-panel{background:#f8f7fa;place-items:center;padding:36px;display:grid}.login-form{width:min(400px,100%);padding:20px}.brand--mobile{display:none}.login-form h2{letter-spacing:-.045em;margin:9px 0 5px;font-size:2.15rem}.login-form>.muted{margin-bottom:31px}.login-form label{color:#4c4654;gap:7px;margin:17px 0;font-size:.86rem;font-weight:750;display:grid}.login-form input{width:100%;height:48px;color:var(--ink);background:#fff;border:1px solid #dcd6e2;border-radius:11px;outline:none;padding:0 14px}.login-form input:focus{border-color:#8975a5;box-shadow:0 0 0 3px #7b679d1f}.primary-button{color:#fff;cursor:pointer;background:#6e5a8c;border:0;border-radius:11px;width:100%;height:49px;margin-top:9px;font-weight:800}.primary-button:disabled{opacity:.6}.text-button{margin:17px auto;display:block}.form-error{color:#853d4c;background:#f9ebee;border-radius:9px;padding:11px;font-size:.84rem}.loading-page{text-align:center;align-content:center;place-items:center;min-height:100vh;padding:28px;display:grid}.loading-page p{color:var(--muted)}.loading-mark{color:#fff;background:var(--lilac);border-radius:18px;place-items:center;width:58px;height:58px;animation:1.5s infinite pulse;display:grid}@keyframes shimmer{to{background-position:-200% 0}}@keyframes pulse{50%{opacity:.78;transform:scale(.94)}}@media (width<=900px){.sidebar{width:206px}.workspace{margin-left:206px}.content{padding-inline:28px}.today-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:.85fr 1.15fr}.login-story{padding-inline:38px}.login-copy h1{font-size:3.2rem}}@media (width<=700px){.sidebar{display:none}.workspace{margin-left:0}.topbar{background:#ffffffeb;height:64px;padding:0 17px}.mobile-brand{display:flex}.mobile-brand .brand-mark{border-radius:10px;width:31px;height:31px}.family-control{margin-left:auto}.family-avatar,.family-name{display:none}.family-control select{max-width:126px;font-size:.8rem}.user-menu{display:none}.content{padding:30px 17px 100px}.page-heading{display:block}.page-heading h1{font-size:2.25rem}.child-filter{flex-wrap:nowrap;justify-content:flex-start;margin-top:22px;padding-bottom:3px;overflow-x:auto}.child-filter button{white-space:nowrap}.coverage-notice{padding:13px 14px;display:block}.coverage-notice div{display:block}.coverage-notice strong{margin-bottom:4px;display:block}.coverage-notice small{margin-top:7px;display:block}.today-grid{display:block}.side-stack{grid-template-columns:1fr;margin-top:14px;display:grid}.main-card{min-height:390px;padding:19px}.empty-state{min-height:280px;padding:15px}.compact-card{min-height:190px}.bottom-nav{z-index:5;height:72px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav button{color:#827a8d;background:0 0;border:0;align-content:center;place-items:center;gap:3px;font-size:.67rem;font-weight:750;display:grid}.bottom-nav button.active{color:var(--lilac-dark)}.login-page{background:#f8f7fa;display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:26px 18px}.brand--mobile{margin-bottom:55px;display:flex}.login-form{padding:0}.login-form h2{font-size:2rem}}@media (width<=360px){.content,.topbar{padding-inline:13px}.mobile-brand>span:last-child{display:none}.page-heading h1{font-size:2rem}.coverage-notice{font-size:.78rem}.main-card{padding:16px}.status-pill{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.skeletons i,.loading-mark{animation:none}}.demo-banner{z-index:4;text-align:center;color:#4f4260;letter-spacing:.04em;background:#e3daed;border-bottom:1px solid #d1c4df;padding:7px 16px;font-size:.72rem;font-weight:800;position:relative}.demo-button{color:#5a4775;cursor:pointer;background:#fff;border:1px solid #8975a5;border-radius:11px;width:100%;height:49px;margin-top:10px;font-weight:800}.calendar-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.calendar-heading h1{letter-spacing:-.045em;margin:7px 0 4px;font-size:clamp(2rem,4vw,3.35rem);line-height:1.04}.calendar-controls{align-items:center;gap:10px;display:flex}.segmented{border:1px solid var(--line);background:#fff;border-radius:11px;padding:3px;display:flex}.segmented button,.date-step button{cursor:pointer;background:0 0;border:0}.segmented button{color:var(--muted);border-radius:8px;padding:7px 11px;font-size:.82rem;font-weight:750}.segmented button.selected{color:var(--lilac-dark);background:#eee9f4}.date-step{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;height:39px;display:flex;overflow:hidden}.date-step button{height:100%;color:var(--lilac-dark);padding:0 10px;font-weight:800}.date-step input{border:0;border-inline:1px solid var(--line);min-width:132px;height:100%;color:var(--ink);background:#fff;padding:0 8px}.calendar-filters{gap:7px;margin-bottom:14px;padding-bottom:2px;display:flex;overflow:auto}.calendar-filters button{white-space:nowrap;border:1px solid var(--line);color:#8b8493;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:.83rem;font-weight:750;display:flex}.calendar-filters button span{filter:grayscale();opacity:.45;border-radius:50%;width:9px;height:9px}.calendar-filters button.selected span{filter:none;opacity:1}.calendar-coverage{margin-bottom:14px}.calendar-loading{border:1px solid var(--line);min-height:340px;color:var(--muted);background:#fff;border-radius:18px;place-items:center;display:grid}.calendar-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;overflow:hidden}.date-assessments{border-bottom:1px solid var(--line);color:var(--muted);background:#faf8fc;gap:9px;padding:12px 15px;font-size:.78rem;display:flex;overflow:auto}.date-assessments>span{white-space:nowrap;background:#eee9f4;border-radius:9px;padding:7px 10px}.date-assessments small{color:#82778d;margin-left:5px}.calendar-scroll{max-height:66vh;overflow:auto}.rail-grid{background:#fff;align-items:start;display:grid}.rail-corner,.rail-child{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;height:52px;padding:16px;position:sticky;top:0}.rail-corner{z-index:3;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;left:0}.rail-child{border-left:1px solid var(--line);align-items:center;gap:8px;font-weight:800;display:flex}.rail-child i{border-radius:50%;width:9px;height:9px}.time-axis{z-index:1;background:#fff;position:sticky;left:0}.time-axis span{color:#8a8391;font-variant-numeric:tabular-nums;font-size:.7rem;position:absolute;right:13px;transform:translateY(-7px)}.child-lane{border-left:1px solid var(--line);background:linear-gradient(#fff,#fdfcfe);position:relative}.child-lane>i{background:#eeeaf1;height:1px;position:absolute;left:0;right:0}.calendar-event{z-index:1;color:#4f3d66;text-align:left;cursor:pointer;background:#ece6f3;border:1px solid #cfc2dd;border-radius:9px;flex-direction:column;align-items:flex-start;min-height:32px;padding:7px 8px;display:flex;position:absolute;overflow:hidden;box-shadow:0 3px 9px #41325314}.calendar-event:hover,.calendar-event:focus-visible{z-index:2;outline-offset:1px;outline:2px solid #836fa1}.calendar-event strong{text-overflow:ellipsis;max-width:100%;font-size:.77rem;line-height:1.2;display:block;overflow:hidden}.calendar-event span{text-overflow:ellipsis;white-space:nowrap;color:#6d5d7e;max-width:100%;margin-top:3px;font-size:.65rem;display:block;overflow:hidden}.calendar-event em{text-transform:uppercase;letter-spacing:.06em;margin-top:auto;padding-top:3px;font-size:.6rem;font-style:normal;font-weight:800}.calendar-event.kind-football{color:#285957;background:#dff0ee;border-color:#a8d0cc}.calendar-event.kind-optional{color:#744d43;background:#f7e8e1;border-color:#dfb7a9}.calendar-event.uncertain{background:repeating-linear-gradient(135deg,#f1edf5,#f1edf5 7px,#e9e3ef 7px 14px);border-style:dashed}.week-grid{grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;padding-bottom:8px;display:grid;overflow:auto}.week-day{border:1px solid var(--line);background:#fff;border-radius:15px;min-height:420px;overflow:hidden}.week-day>header{background:#eee9f4;justify-content:space-between;align-items:baseline;padding:13px;display:flex;position:sticky;top:0}.week-day>header span{text-transform:uppercase;font-size:.68rem;font-weight:800}.week-day>header strong{font-size:.76rem}.week-child{border-top:1px solid var(--line);padding:11px}.week-child h3{align-items:center;gap:6px;margin:0 0 7px;font-size:.76rem;display:flex}.week-child h3 i{border-radius:50%;width:7px;height:7px}.week-child button{color:#554668;text-align:left;cursor:pointer;background:#f3eff6;border:0;border-radius:7px;grid-template-columns:37px 1fr;gap:5px;width:100%;margin:4px 0;padding:6px;display:grid}.week-child button time{font-size:.65rem;font-weight:800}.week-child button span{font-size:.69rem;line-height:1.25}.week-child small{color:#958d9d;font-size:.68rem}.dialog-backdrop{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#271f305c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.event-dialog{border:1px solid var(--line);background:#fff;border-radius:19px;width:min(470px,100%);padding:27px;position:relative;box-shadow:0 24px 70px #231b2c3b}.event-dialog h2{letter-spacing:-.03em;margin:7px 35px 22px 0;font-size:1.65rem}.dialog-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:#f1eef4;border:0;border-radius:50%;font-size:1.35rem;position:absolute;top:15px;right:15px}.event-dialog dl{gap:13px;margin:0;display:grid}.event-dialog dl div{grid-template-columns:70px 1fr;gap:12px;display:grid}.event-dialog dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:800}.event-dialog dd{margin:0;line-height:1.4}.dialog-actions{gap:8px;margin-top:23px;display:flex}.dialog-actions button{color:var(--lilac-dark);cursor:pointer;background:#f1edf5;border:1px solid #cabed7;border-radius:9px;padding:9px 12px;font-weight:750}.today-events{margin-top:8px;display:grid}.today-events button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:46px 9px 1fr;align-items:center;gap:11px;padding:13px 4px;display:grid}.today-events time{color:var(--lilac-dark);font-size:.79rem;font-weight:800}.today-events>button>i{border-radius:5px;width:9px;height:35px}.today-events span{gap:3px;display:grid}.today-events strong{font-size:.88rem}.today-events small{color:var(--muted)}.task-row{border-bottom:1px solid var(--line);gap:4px;margin:0;padding:10px 0;font-size:.84rem;font-weight:700;display:grid}.task-row small{color:var(--muted);font-weight:500}@media (width<=900px){.calendar-heading{display:block}.calendar-controls{justify-content:space-between;margin-top:19px}.calendar-scroll{max-height:62vh}}@media (width<=700px){.calendar-heading h1{font-size:2.18rem}.calendar-controls{flex-direction:column;align-items:stretch}.segmented{align-self:flex-start}.date-step{width:100%}.date-step input{flex:1}.calendar-coverage span{display:block}.date-assessments small{display:none}.calendar-scroll{max-height:59vh}.dialog-actions{flex-direction:column}.event-dialog{padding:23px}.today-events button{grid-template-columns:43px 8px 1fr}}@media (width<=360px){.calendar-heading h1{font-size:1.86rem}.calendar-filters button{padding-inline:9px}.date-assessments{padding-inline:10px}}.date-field{width:100%;position:relative}.date-field-trigger{border:1px solid var(--line);width:100%;min-height:43px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.date-field-trigger span{font-variant-numeric:tabular-nums}.date-field-trigger i{color:var(--lilac-dark);font-size:1rem;font-style:normal}.date-field.open .date-field-trigger{border-color:#8f79aa;box-shadow:0 0 0 3px #8f79aa21}.date-field .month-picker{z-index:31;top:calc(100% + 7px);left:0}.date-field-required{pointer-events:none;opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.modal-form input[placeholder=hh\:mm]{font-variant-numeric:tabular-nums;letter-spacing:.05em}.school-tabs{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffb8;border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0 20px;padding:5px;display:grid}.school-tabs button{color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;gap:3px;padding:13px 16px;display:grid}.school-tabs button span{font-size:.93rem;font-weight:850}.school-tabs button small{font-size:.69rem}.school-tabs button.selected{color:#fff;background:linear-gradient(135deg,#745d94,#5d477c);box-shadow:0 7px 18px #59417738}.school-area-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:19px;padding:22px}.school-area-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:17px;display:flex}.school-area-heading h2{margin:3px 0 5px;font-size:1.5rem}.school-area-heading p:last-child{color:var(--muted);margin:0;font-size:.85rem}.school-area-heading>span{min-width:42px;height:42px;color:var(--lilac-dark);background:#eee9f4;border-radius:50%;place-items:center;font-weight:850;display:grid}.school-filterbar{justify-content:space-between;align-items:flex-end;gap:16px;margin:17px 0;display:flex}.school-filterbar>label{min-width:220px;color:var(--muted);gap:5px;font-size:.72rem;font-weight:800;display:grid}.school-filterbar select{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:40px;padding:0 10px}.filter-pills{gap:7px;margin:17px 0;display:flex;overflow:auto}.filter-pills button{border:1px solid var(--line);color:var(--muted);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;padding:8px 12px;font-size:.79rem;font-weight:800}.filter-pills button.selected{color:var(--lilac-dark);background:#eee9f4;border-color:#8f79aa}.summary-feed{display:grid}.summary-feed .summary-row{padding:17px 2px}.summary-feed .summary-row header{align-items:flex-start}.summary-feed .summary-row header>div{gap:3px;display:grid}.summary-feed .summary-row header small{color:var(--muted);font-size:.72rem;font-weight:500}.summary-accompaniment{color:#6d6274;background:#faf8fc;border-left:3px solid #c9bad8;padding:10px 12px;font-size:.82rem}.attendance-note{color:#665b6f;background:#f4f1f6;border-radius:11px;justify-content:space-between;gap:14px;margin-top:18px;padding:13px 15px;font-size:.78rem;display:flex}.attendance-note span{color:var(--muted)}.teacher-card-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:11px;margin-top:16px;display:grid}.teacher-card-grid>article{border:1px solid var(--line);background:#fdfcfe;border-radius:14px;gap:12px;padding:16px;display:grid}.teacher-card-grid article>header{align-items:center;gap:11px;display:flex}.teacher-card-grid article>header>div:last-child{gap:4px;display:grid}.teacher-avatar{color:#fff;background:linear-gradient(145deg,#806aa1,#5d477c);border-radius:12px;flex:none;place-items:center;width:39px;height:39px;font-size:.72rem;font-weight:900;display:grid}.shared-teacher{color:#35625b;text-transform:uppercase;letter-spacing:.04em;background:#dff1ec;border-radius:999px;width:max-content;padding:3px 7px;font-size:.62rem;font-weight:850}.teacher-card-grid p{color:var(--muted);margin:0;font-size:.79rem;line-height:1.45}.teacher-card-grid footer{flex-wrap:wrap;gap:5px;display:flex}.teacher-card-grid footer span{color:#655474;background:#eee9f4;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:800}.calendar-toolbar-actions{align-items:center;gap:9px;display:flex}.assessment-toggle{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;padding:9px 12px;font-weight:800}.assessment-toggle b{background:#eee9f4;border-radius:999px;place-items:center;min-width:19px;height:19px;margin-left:5px;font-size:.68rem;display:inline-grid}.calendar-week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0 0 13px;display:grid}.calendar-week-strip button{border:1px solid var(--line);min-width:0;min-height:57px;color:var(--muted);text-align:center;cursor:pointer;background:#fff;border-radius:11px;place-content:center;gap:1px;display:grid;position:relative}.calendar-week-strip button span{text-transform:uppercase;font-size:.64rem;font-weight:850}.calendar-week-strip button strong{font-variant-numeric:tabular-nums;font-size:.95rem}.calendar-week-strip button small{font-size:.52rem;position:absolute;bottom:4px;right:5px}.calendar-week-strip button.selected{color:#fff;background:#66507f;border-color:#66507f}.calendar-gap{z-index:0;color:#8b8290;background:repeating-linear-gradient(135deg,#f2eff5bf,#f2eff5bf 6px,#f9f7fabf 6px 12px);border-block:1px dashed #ddd4e3;place-items:center;font-size:.61rem;font-weight:750;display:grid;position:absolute;left:4px;right:4px}.now-line{z-index:4;pointer-events:none;background:#ea5d67;height:2px;position:absolute;left:0;right:0}.now-line i{background:#ea5d67;border-radius:50%;width:9px;height:9px;position:absolute;top:-4px;left:-4px}.time-axis .now-time{z-index:4;color:#fff;font-variant-numeric:tabular-nums;background:#e65460;border-radius:5px;padding:2px 5px;font-size:.62rem;position:absolute;right:8px;transform:translateY(-50%)}.lesson-summary-badge{color:#3d665e;vertical-align:middle;text-transform:uppercase;letter-spacing:.03em;background:#d7efe8;border-radius:999px;margin-left:6px;padding:2px 5px;font-size:.52rem;font-weight:900;display:inline-flex}.lesson-summary-dot{background:#3e8b7b;border-radius:50%;width:7px;height:7px;margin-left:5px;display:inline-block}.lesson-summary-detail{background:#f0f8f5;border:1px solid #c9dfd8;border-radius:13px;gap:8px;margin-top:20px;padding:15px;display:grid}.lesson-summary-detail header{justify-content:space-between;align-items:center;gap:10px;display:flex}.lesson-summary-detail header span{color:#714c2f;background:#f8e7cf;border-radius:999px;padding:4px 7px;font-size:.64rem;font-weight:850}.lesson-summary-detail p,.lesson-summary-detail small,.lesson-summary-detail footer{margin:0;line-height:1.5}.lesson-summary-detail small,.lesson-summary-detail footer{color:var(--muted)}.lesson-summary-detail mark{color:#6f4f32;background:#fff2dd;border-radius:8px;padding:8px}.week-assessments,.mobile-assessments{border-bottom:1px solid var(--line);background:#faf4fd;gap:5px;padding:9px;display:grid}.week-assessments span,.mobile-assessments span{color:#634873;background:#efe4f4;border-radius:7px;gap:2px;padding:7px;font-size:.66rem;display:grid}.week-assessments b,.mobile-assessments b{font-size:.61rem}.mobile-assessments{border:1px solid var(--line);border-radius:12px;margin-bottom:9px}@media (width<=700px){.school-tabs{grid-template-columns:1fr}.school-tabs button{grid-template-columns:1fr auto;align-items:center}.school-tabs button small{grid-area:1/2}.school-filterbar{flex-direction:column;align-items:stretch}.school-filterbar>label{min-width:0}.attendance-note{flex-direction:column}.calendar-toolbar-actions{grid-template-columns:1fr auto;align-items:stretch;width:100%;display:grid}.assessment-toggle{text-align:left}.calendar-week-strip{gap:3px}.calendar-week-strip button{min-height:51px;padding-inline:0}.calendar-week-strip button small{display:none}.date-field .month-picker{width:min(330px,100vw - 28px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}.management-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;display:grid}.management-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:24px}.management-card h2{margin:0 0 7px;font-size:1.25rem}.management-card h3{margin:18px 0 10px}.management-card textarea{color:#3a3343;resize:vertical;background:#faf9fb;border:1px solid #dcd6e2;border-radius:11px;width:100%;min-height:340px;margin:18px 0 2px;padding:14px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.review-card>p{line-height:1.5}.source-badge{color:#57456f;text-transform:uppercase;letter-spacing:.06em;background:#eee9f4;border-radius:7px;margin-right:6px;padding:4px 7px;font-size:.68rem;font-weight:850;display:inline-block}.diff-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin:22px 0;display:grid}.diff-grid div{border:1px solid var(--line);border-radius:10px;place-items:center;padding:12px 6px;display:grid}.diff-grid dt{color:var(--muted);font-size:.68rem;font-weight:750}.diff-grid dd{margin:4px 0 0;font-size:1.45rem;font-weight:850}.management-card hr{border:0;border-top:1px solid var(--line);margin:25px 0 0}.proposal-list{display:grid}.proposal-list>div{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:5px 8px;padding:10px 0;display:grid}.proposal-list>div small{color:var(--muted);grid-column:2}.compact-form{gap:9px;margin:16px 0 20px;display:grid}.compact-form>div{grid-template-columns:1fr 1fr;gap:9px;display:grid}.compact-form input,.compact-form select{width:100%;height:43px;color:var(--ink);background:#fff;border:1px solid #dcd6e2;border-radius:9px;padding:0 11px}.compact-form .primary-button{margin:0}.record-list{display:grid}.record-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:18px 1fr;gap:9px;width:100%;padding:11px 0;display:grid}.record-list>button>i{border:2px solid #ad9cbd;border-radius:6px;width:17px;height:17px;margin-top:2px}.record-list>button>span{gap:3px;display:grid}.record-list small{color:var(--muted)}.record-list>button.done{opacity:.55}.record-list>button.done>i{background:#7b679d;box-shadow:inset 0 0 0 3px #fff}.record-list>button.done strong{text-decoration:line-through}.mobile-day-agenda{display:none}.mobile-day-agenda article{border:1px solid var(--line);background:#fff;border-radius:15px;margin-bottom:12px;padding:15px}.mobile-day-agenda h2{align-items:center;gap:8px;margin:0 0 7px;font-size:1rem;display:flex}.mobile-day-agenda h2 i{border-radius:50%;width:9px;height:9px}.mobile-day-agenda button{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:48px 1fr;gap:10px;width:100%;padding:11px 0;display:grid}.mobile-day-agenda time,.mobile-day-agenda button>span{gap:3px;display:grid}.mobile-day-agenda time{font-weight:800}.mobile-day-agenda small{color:var(--muted);font-size:.7rem}.mobile-day-agenda p{color:var(--muted);font-size:.82rem}@media (width<=900px){.management-grid{grid-template-columns:1fr}.management-card textarea{min-height:290px}}@media (width<=700px){.management-card{padding:18px}.management-card textarea{min-height:260px}.diff-grid{grid-template-columns:1fr 1fr}.compact-form>div{grid-template-columns:1fr}.desktop-day-rail{display:none}.mobile-day-agenda{display:block}}.calendar-heading{align-items:flex-start;margin-bottom:18px}.calendar-heading h1{font-size:clamp(2rem,3vw,2.8rem)}.calendar-workbench{isolation:isolate;background:#ffffffb8;border:1px solid #ded8e5;border-radius:22px;padding:14px;position:relative;box-shadow:0 20px 60px #392d4912}.calendar-toolbar{z-index:5;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:2px 2px 13px;display:flex;position:relative}.date-navigation{align-items:center;gap:7px;min-width:0;display:flex}.round-control,.today-control,.calendar-date-trigger{cursor:pointer;background:#fff;border:1px solid #dcd5e4;min-height:42px}.round-control{width:42px;color:var(--lilac-dark);border-radius:13px;flex:none;place-items:center;font-size:1.55rem;line-height:1;display:grid}.today-control{color:var(--lilac-dark);border-radius:12px;padding:0 14px;font-size:.84rem;font-weight:800}.calendar-date-control{min-width:0;position:relative}.calendar-date-trigger{text-align:left;border-radius:12px;min-width:230px;padding:6px 38px 6px 13px;display:grid;position:relative}.calendar-date-trigger span{color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.2}.calendar-date-trigger strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.9rem;line-height:1.2;overflow:hidden}.calendar-date-trigger i{color:var(--lilac);font-size:1rem;font-style:normal;position:absolute;top:10px;right:13px}.round-control:hover,.today-control:hover,.calendar-date-trigger:hover,.round-control:focus-visible,.today-control:focus-visible,.calendar-date-trigger:focus-visible{outline-offset:1px;border-color:#a895bf;outline:3px solid #7b679d24}.view-switch{background:#f7f4f9;flex:none}.view-switch button{min-width:68px;min-height:36px}.calendar-filters{margin:12px 1px}.calendar-panel{box-shadow:none;border-radius:15px}.month-picker{z-index:10;background:#fff;border:1px solid #d7cede;border-radius:17px;width:310px;padding:13px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 24px 70px #2d223938}.month-picker header{grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:8px;display:grid}.month-picker header strong{text-align:center;text-transform:capitalize}.month-picker header button{height:36px;color:var(--lilac-dark);cursor:pointer;background:#f4f0f7;border:0;border-radius:10px;font-size:1.35rem}.month-weekdays,.month-days{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.month-weekdays span{color:#81798a;text-align:center;padding:5px 0;font-size:.68rem;font-weight:800}.month-days button{aspect-ratio:1;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;font-size:.8rem;display:grid}.month-days button:hover,.month-days button:focus-visible{outline-offset:0;background:#f4eff8;outline:2px solid #a38bbd}.month-days button.outside{color:#b8b1bf}.month-days button.today{box-shadow:inset 0 0 0 1px #9b87b4}.month-days button.selected{color:#fff;background:var(--lilac-dark);box-shadow:none;font-weight:800}.month-picker footer{border-top:1px solid var(--line);justify-content:space-between;margin-top:10px;padding-top:10px;display:flex}.month-picker footer button{color:var(--lilac-dark);cursor:pointer;background:0 0;border:0;font-size:.75rem;font-weight:800}.calendar-scroll{max-height:68vh}.time-axis span{color:#756d7e;font-size:.75rem;font-weight:650;right:15px}.child-lane{background:linear-gradient(90deg,#fff,#fdfcfe)}.calendar-event{border-radius:10px;min-height:38px;padding:6px 10px;box-shadow:0 4px 12px #41325312}.calendar-event strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:calc(100% - 18px);font-size:.875rem;line-height:1.18;display:-webkit-box;overflow:hidden}.calendar-event span{color:#675773;margin-top:3px;font-size:.75rem;line-height:1.15}.calendar-event em{color:currentColor;background:#ffffffa3;border-radius:50%;place-items:center;width:17px;height:17px;padding:0;font-size:.68rem;font-style:normal;font-weight:900;display:grid;position:absolute;top:6px;right:7px}.calendar-event.event-compact{justify-content:center;padding-block:4px}.calendar-event.event-compact strong{text-overflow:ellipsis;white-space:nowrap;line-height:1.05;display:block;overflow:hidden}.calendar-event.event-compact span{margin-top:2px;font-size:.72rem;line-height:1}.calendar-event.event-medium strong{-webkit-line-clamp:1}.mobile-day-agenda article{border-radius:18px;box-shadow:0 10px 35px #392d490d}.mobile-day-agenda button{cursor:pointer;min-height:58px}.mobile-day-agenda button strong{font-size:.9rem;line-height:1.3}.mobile-day-agenda small{font-size:.75rem}@media (width<=900px){.calendar-toolbar{align-items:flex-start}.date-navigation{flex-wrap:wrap}.view-switch{margin-left:auto}}@media (width<=700px){.calendar-workbench{border-radius:18px;margin-inline:-3px;padding:11px}.calendar-toolbar{grid-template-columns:1fr auto;display:grid}.date-navigation{grid-column:1/-1;grid-template-columns:42px 1fr 42px;width:100%;display:grid}.today-control{display:none}.calendar-date-control{min-width:0}.calendar-date-trigger{width:100%;min-width:0}.view-switch{grid-column:1/-1;margin:2px 0 0}.calendar-filters{margin-block:10px}.month-picker{width:min(310px,100vw - 56px);left:50%;transform:translate(-50%)}.mobile-day-agenda{margin-top:2px}}@media (width<=360px){.calendar-date-trigger strong{font-size:.82rem}.calendar-date-trigger span{font-size:.68rem}.calendar-workbench{padding:9px}.month-picker{width:calc(100vw - 42px)}}.preparation-board{grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:18px;margin-bottom:18px;display:grid}.recurring-card{padding:23px}.recurring-card h2{margin:5px 0 18px;font-size:1.28rem}.preparation-occurrences{gap:8px;display:grid}.preparation-occurrences button{text-align:left;cursor:pointer;background:#faf8fc;border:1px solid #e2dce7;border-radius:13px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:64px;padding:10px 12px;display:grid}.preparation-occurrences button>i,.record-list button>i{border:2px solid #a08cb5;border-radius:5px;width:16px;height:16px}.preparation-occurrences button span{gap:3px;display:grid}.preparation-occurrences button small{color:var(--muted);font-size:.75rem}.preparation-occurrences button>b{color:var(--lilac-dark);font-size:.72rem}.preparation-occurrences button.done{opacity:.65}.preparation-occurrences button.done strong{text-decoration:line-through}.preparation-occurrences button.done>i{background:#638f79;border-color:#638f79;box-shadow:inset 0 0 0 3px #fff}.validity-label{color:var(--muted);gap:7px;font-size:.75rem;font-weight:800;display:grid}.validity-label>div{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.validity-label span{font-weight:600}.rule-list{border-top:1px solid var(--line);margin-top:18px;display:grid}.rule-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 1px;display:flex}.rule-list span{gap:3px;display:grid}.rule-list small,.rule-list b{color:var(--muted);font-size:.72rem}.rule-list b{flex:none;font-weight:650}.compact-form label input{width:100%}@media (width<=980px){.preparation-board{grid-template-columns:1fr}}@media (width<=700px){.recurring-card{padding:18px}.preparation-occurrences button{grid-template-columns:18px minmax(0,1fr)}.preparation-occurrences button>b{grid-column:2}.rule-list>div{flex-direction:column;align-items:flex-start}.validity-label>div{grid-template-columns:1fr}.validity-label span{display:none}}.import-start-grid{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;display:grid}.upload-card h2,.import-start-grid h2{margin:5px 0 16px}.file-drop{min-height:132px;color:var(--lilac-dark);text-align:center;cursor:pointer;background:#f8f5fa;border:1.5px dashed #ad9cbd;border-radius:16px;align-content:center;place-items:center;gap:5px;padding:20px;display:grid}.file-drop input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.file-drop strong{font-size:1rem}.file-drop span{color:var(--muted);font-size:.75rem;font-weight:500}.import-start-grid details summary,.candidate-details summary{color:var(--lilac-dark);cursor:pointer;padding:9px 0;font-weight:800}.import-start-grid details textarea{min-height:220px;margin-block:10px}.pdf-history{margin-bottom:18px}.pdf-history>h2{margin:0 0 10px;font-size:1rem}.pdf-history>div{gap:9px;padding:2px 2px 8px;display:flex;overflow:auto}.pdf-history button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:14px;gap:4px;min-width:245px;padding:13px;display:grid}.pdf-history button.selected{border-color:#9b87b4;box-shadow:0 0 0 3px #7b679d1f}.pdf-history button small{color:var(--muted);font-size:.72rem}.import-status{color:#655b6e;text-transform:uppercase;letter-spacing:.05em;background:#f0edf3;border-radius:999px;width:max-content;padding:4px 7px;font-size:.65rem;font-weight:850}.import-status.status-needs_review{color:#7a571c;background:#fff1d6}.import-status.status-published{color:#27674f;background:#e3f3eb}.import-status.status-failed{color:#923f4c;background:#f9e7ea}.import-review-workspace{grid-template-columns:minmax(320px,.9fr) minmax(440px,1.1fr);gap:18px;margin-bottom:18px;display:grid}.document-preview{border:1px solid var(--line);min-height:650px;box-shadow:var(--shadow);background:#eeeaf1;border-radius:18px;display:grid;overflow:hidden}.document-preview iframe{background:#fff;border:0;width:100%;height:100%;min-height:650px}.document-preview>div{color:var(--muted);text-align:center;place-self:center;padding:30px}.review-card textarea{min-height:310px}.review-actions{flex-wrap:wrap;gap:8px;margin-top:17px;display:flex}.candidate-details{margin:14px 0}.candidate-details p{border-top:1px solid var(--line);gap:3px;margin:0;padding:8px 0;display:grid}.candidate-details p b{font-size:.72rem}.candidate-details p span{font-size:.78rem}.candidate-details p small{color:var(--muted);font-size:.68rem}.import-log{padding:22px}.import-log h2{margin-top:0}.proposal-list button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;width:100%;padding:10px 0;display:grid}@media (width<=980px){.import-review-workspace{grid-template-columns:1fr}.document-preview,.document-preview iframe{min-height:520px}}@media (width<=700px){.import-start-grid{grid-template-columns:1fr}.import-review-workspace{flex-direction:column;display:flex}.document-preview,.document-preview iframe{min-height:410px}.review-actions{display:grid}.proposal-list button{grid-template-columns:auto 1fr}.proposal-list button small{grid-column:2}}.action-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.compact-action{white-space:nowrap;width:auto;min-width:150px;padding-inline:20px}.focus-card,.plan-card,.school-documents,.review-summary-card,.admin-table-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:20px}.focus-card{margin-bottom:18px;padding:24px}.focus-card-heading,.section-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.focus-card h2,.section-title h2{margin:4px 0 0}.friendly-empty{color:var(--muted);text-align:center;margin:0;padding:16px}.friendly-empty.large{border:1px dashed var(--line);border-radius:16px;width:100%;padding:34px}.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.plan-card{min-height:320px;padding:22px}.plan-card>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.plan-card h2{margin:4px 0 0}.plan-card>header>button,.routine-list>div>button,.text-action{color:var(--lilac-dark);cursor:pointer;background:0 0;border:0;font-weight:800}.routine-list,.assessment-list{display:grid}.routine-list>div,.assessment-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.routine-list>div:first-child,.assessment-list>div:first-child{border-top:0}.routine-list span,.assessment-list span{gap:3px;min-width:0;display:grid}.routine-list small,.assessment-list small,.assessment-list time{color:var(--muted);font-size:.75rem}.routine-list .paused{opacity:.55}.assessment-list>div{justify-content:flex-start}.assessment-list time{flex:none;width:76px;font-weight:800}.app-dialog-backdrop{z-index:80;padding:20px;overflow:auto}.app-dialog{background:#fff;border:1px solid #d8d0df;border-radius:24px;width:min(620px,100%);margin:auto;box-shadow:0 30px 100px #2b203747}.app-dialog-wide{width:min(900px,100%)}.app-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px 16px;display:flex}.app-dialog>header h2{margin:0}.app-dialog>header button{width:38px;height:38px;color:var(--lilac-dark);cursor:pointer;background:#f3eff6;border:0;border-radius:50%;place-items:center;font-size:1.5rem;display:grid}.app-dialog-body{padding:24px}.creation-choices{gap:10px;display:grid}.creation-choices button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#faf8fc;border-radius:15px;gap:5px;padding:18px;display:grid}.creation-choices button:hover,.creation-choices button:focus-visible{border-color:#9b87b4;outline:3px solid #7b679d1f}.creation-choices strong{font-size:1rem}.creation-choices span{color:var(--muted)}.modal-form{gap:17px;display:grid}.modal-form label{color:#5e5667;gap:7px;font-size:.82rem;font-weight:800;display:grid}.modal-form input,.modal-form select{width:100%;min-height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d9d3df;border-radius:11px;padding:10px 12px}.modal-form fieldset{border:1px solid var(--line);border-radius:14px;margin:0;padding:15px}.modal-form legend{color:#5e5667;padding:0 6px;font-size:.82rem;font-weight:800}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-hint{color:var(--muted);margin:0;font-size:.78rem}.readonly-context{background:#f5f1f7;border-radius:13px;justify-content:space-between;padding:13px 15px;display:flex}.readonly-context span{color:var(--muted)}.switch-row{align-items:center;gap:10px;display:flex!important}.switch-row input{width:20px;height:20px;min-height:0}.school-summary{gap:10px;margin-bottom:18px;display:flex;overflow:auto}.school-summary article{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:11px;min-width:250px;padding:13px 16px;display:flex}.school-summary i{color:#fff;background:#5f8f77;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid}.school-summary span{gap:2px;display:grid}.school-summary small{color:var(--muted)}.school-documents{margin-bottom:18px;padding:22px}.section-title>span{width:34px;height:34px;color:var(--lilac-dark);background:#f1edf4;border-radius:50%;place-items:center;font-weight:800;display:grid}.document-cards{gap:10px;display:flex;overflow:auto}.document-cards>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#faf9fb;border-radius:15px;gap:5px;min-width:235px;padding:15px;display:grid}.document-cards>button.selected{border-color:#9b87b4;box-shadow:0 0 0 3px #7b679d1f}.document-cards small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.family-review{margin-bottom:18px;display:grid}.family-review.with-original{grid-template-columns:minmax(330px,.9fr) minmax(440px,1.1fr);gap:18px}.review-summary-card{padding:24px}.review-summary-card>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.review-summary-card h2{margin:4px 0 0}.human-diff{gap:9px;margin:18px 0;display:flex}.human-diff span{background:#f5f1f7;border-radius:12px;align-items:baseline;gap:6px;padding:10px 13px;display:flex}.human-diff strong{font-size:1.25rem}.activity-preview{border-block:1px solid var(--line);display:grid}.activity-preview>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:11px 2px;display:flex}.activity-preview>div:first-child{border-top:0}.activity-preview span{gap:2px;display:grid}.activity-preview small,.activity-preview time{color:var(--muted);font-size:.75rem}.plain-warning{color:#6e5731;background:#fff8e9;border-radius:12px;padding:12px 14px}.technical-details,.history-fold{margin-top:18px}.technical-details summary,.history-fold summary{color:var(--muted);cursor:pointer;padding:12px 0;font-weight:750}.technical-details textarea{border:1px solid var(--line);border-radius:12px;width:100%;min-height:220px;margin:12px 0;padding:12px;font:12px/1.4 monospace}.review-placeholder{border:1px dashed var(--line);min-height:180px;color:var(--muted);text-align:center;border-radius:18px;align-content:center;place-items:center;padding:30px;display:grid}.review-placeholder p{margin-bottom:0}.history-fold{border:1px solid var(--line);background:#fff;border-radius:16px;padding:0 20px}.history-fold .proposal-list{padding-bottom:15px}.history-fold .proposal-list button{grid-template-columns:1fr auto}.admin-source-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.admin-source-grid article{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:50px 1fr auto;align-items:center;gap:14px;padding:22px;display:grid}.source-logo{color:#fff;background:var(--lilac-dark);border-radius:14px;place-items:center;width:46px;height:46px;font-size:1.2rem;font-weight:900;display:grid}.admin-source-grid h2,.admin-source-grid p{margin:0}.admin-source-grid p{color:var(--muted)}.admin-source-grid b{color:#7a571c;background:#fff1d6;border-radius:999px;padding:7px 9px;font-size:.72rem}.admin-metrics{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0;display:grid}.admin-metrics article{border:1px solid var(--line);background:#fff;border-radius:16px;gap:4px;padding:18px;display:grid}.admin-metrics strong{font-size:1.45rem}.admin-metrics span{color:var(--muted)}.admin-table-card{padding:22px}.admin-table-card>div>article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.admin-table-card span{display:grid}.admin-table-card small{color:var(--muted)}.profile-state{background:#eeeaf1;border-radius:999px;padding:5px 8px;font-size:.7rem}.profile-state.active{color:#27674f;background:#e3f3eb}@media (width<=1050px){.plan-grid{grid-template-columns:1fr 1fr}.plan-card:last-child{grid-column:1/-1}.family-review.with-original{grid-template-columns:1fr}.document-preview,.document-preview iframe{min-height:520px}}@media (width<=700px){.action-heading{flex-direction:column;align-items:stretch}.compact-action{width:100%}.plan-grid,.admin-source-grid,.admin-metrics{grid-template-columns:1fr}.plan-card:last-child{grid-column:auto}.focus-card,.plan-card,.school-documents,.review-summary-card{padding:18px}.form-row{grid-template-columns:1fr}.app-dialog-backdrop{padding:10px}.app-dialog{border-radius:20px}.app-dialog>header,.app-dialog-body{padding:18px}.admin-source-grid article{grid-template-columns:46px 1fr}.admin-source-grid b{grid-column:2;width:max-content}.human-diff{flex-direction:column;align-items:flex-start}}.mfa-secret{overflow-wrap:anywhere;letter-spacing:.06em;background:#f5f1f7;border-radius:10px;padding:12px;font-size:.9rem;display:block}.modal-form details code{white-space:pre-wrap;display:block}.mfa-setup{width:min(620px,100%)!important}.mfa-email-note{color:#355b4c;background:#e7f2ec;border-radius:12px;gap:3px;margin:18px 0;padding:13px 15px;display:grid}.mfa-email-note span{font-size:.84rem;line-height:1.45}.mfa-steps{color:var(--muted);gap:9px;margin:3px 0 8px;padding-left:22px;line-height:1.45;display:grid}.mfa-enrolment{gap:13px;display:grid}.mfa-enrolment>div{border:1px solid var(--line);border-radius:14px;gap:8px;padding:16px 16px 16px 52px;display:grid;position:relative}.mfa-enrolment p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.45}.mfa-enrolment img{border-radius:10px;width:220px;max-width:100%;margin:4px auto}.step-number{color:#fff;background:#725d8c;border-radius:50%;place-items:center;width:25px;height:25px;font-weight:900;display:grid;position:absolute;top:14px;left:15px}.recovery-codes{background:#f5f1f7;border-radius:10px;padding:12px;font-size:.8rem;line-height:1.55}.login-mail-note{color:var(--muted);text-align:center;margin:4px 0 0;font-size:.75rem;line-height:1.45}.invitation-page .login-form label small{color:var(--muted);font-size:.72rem;font-weight:500}.invitation-page .login-form>.muted strong{color:var(--ink)}.invitation-invalid{align-self:center}.invitation-invalid .muted,.school-sources{margin-top:18px}.school-sources>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.school-sources>header p{max-width:680px;color:var(--muted);margin:.45rem 0 0}.source-form{border-top:1px solid var(--line);max-width:720px;margin-top:18px;padding-top:18px}.source-connections{margin-top:15px;display:grid}.source-connections>article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 0;display:grid}.source-connections>article>div:nth-child(2){gap:3px;display:grid}.source-connections span,.source-connections small{color:var(--muted);font-size:.78rem}.source-mark{color:#fff;background:#725d8c;border-radius:11px;place-items:center;width:38px;height:38px;font-weight:950;display:grid}.source-actions{gap:7px;display:flex}.source-error{color:#9b4652!important}.operator-shell{color:#27303a;background:#f4f5f7;grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.operator-sidebar{color:#eaf0f5;background:#202833;flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.operator-brand{align-items:center;gap:11px;padding:0 10px 24px;display:flex}.operator-brand>span{color:#17201d;background:#86a89a;border-radius:11px;place-items:center;width:38px;height:38px;font-weight:950;display:grid}.operator-brand div{display:grid}.operator-brand small{color:#aebbc6}.operator-sidebar nav{gap:4px;display:grid}.operator-sidebar button{min-height:43px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 13px;font-weight:720}.operator-sidebar nav button.active,.operator-sidebar button:hover{background:#33404d}.operator-account{border-top:1px solid #3b4652;gap:7px;margin-top:auto;padding:16px 8px 0;display:grid}.operator-account span{color:#bfc9d1;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.operator-main{min-width:0;padding:28px clamp(18px,4vw,52px) 50px}.operator-topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.operator-topbar h1{margin:4px 0 0}.operator-secure{color:#27674f;background:#dceee6;border-radius:999px;padding:7px 10px;font-size:.75rem;font-weight:850}.operator-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px;display:grid}.operator-metrics article{background:#fff;border:1px solid #dce1e5;border-radius:15px;gap:4px;padding:19px;display:grid;box-shadow:0 7px 24px #222b340d}.operator-metrics strong{font-size:1.75rem}.operator-metrics span{color:#66727d}.operator-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.status-list{margin:0;display:grid}.status-list div{border-top:1px solid var(--line);justify-content:space-between;gap:18px;padding:12px 0;display:flex}.status-list div:first-child{border-top:0}.status-list dd{color:var(--muted);text-align:right;margin:0}.status-list dd.good{color:#27674f}.compact-list{display:grid}.compact-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:11px 0;display:flex}.compact-list>div:first-child{border-top:0}.compact-list>div>span{gap:3px;min-width:0;display:grid}.compact-list b,.compact-list time{color:var(--muted);flex:none;font-size:.72rem}.family-admin-list{display:grid}.family-admin-list button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:18px;width:100%;padding:13px 10px;display:flex}.family-admin-list button.selected{background:#eef2f3;border-radius:11px}.family-admin-list span{gap:3px;display:grid}.family-admin-list b{color:#52616c}.family-diagnostics{margin-top:18px}.family-diagnostics>header{justify-content:space-between;align-items:flex-start;display:flex}.diagnostic-metrics{flex-wrap:wrap;gap:8px;margin:17px 0;display:flex!important}.diagnostic-metrics span{background:#eef2f3;border-radius:10px;padding:9px 11px;display:block}.support-request-form{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 150px auto;align-items:end;gap:10px;margin-top:18px;padding-top:18px;display:grid}.support-request-form label{color:var(--muted);gap:6px;font-size:.78rem;font-weight:800;display:grid}.support-request-form input,.support-request-form select{border:1px solid var(--line);border-radius:10px;min-height:43px;padding:9px 10px}.support-active{background:#e4f1eb;border-radius:13px;align-items:center;gap:15px;margin-top:18px;padding:14px;display:flex!important}.support-active span{color:#52665c;margin-right:auto}.invitation-result{background:#eef2f3;border-radius:12px;gap:8px;padding:13px;display:grid!important}.invitation-result input{font-size:.75rem}.operator-login{background:#202833;place-items:center;min-height:100vh;padding:20px;display:grid}.operator-login>section{background:#fff;border-radius:20px;width:min(520px,100%);padding:30px}.support-workspace{background:var(--page);min-height:100vh;padding:20px clamp(18px,4vw,54px) 50px}.support-banner{color:#fff;background:#725d8c;justify-content:space-between;align-items:center;gap:20px;margin:-20px calc(-1*clamp(18px,4vw,54px)) 25px;padding:13px clamp(18px,4vw,54px);display:flex}.support-banner div{gap:3px;display:grid}.support-banner span{opacity:.9;font-size:.78rem}.support-banner button{color:#fff;background:0 0;border:1px solid #ffffff80;border-radius:9px;padding:9px 12px}.support-request-list{display:grid}.support-request-list>article{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;display:flex}.support-request-list>article>div:first-child{gap:3px;display:grid}.support-request-list p{margin:0}.support-request-list small{color:var(--muted)}.row-actions{gap:8px;display:flex}.plain-list{color:var(--muted);gap:9px;padding-left:20px;display:grid}.empty-inline{color:var(--muted);background:#f7f5f8;border-radius:12px;padding:18px}.activity-editor{width:min(620px,100vw - 24px);max-height:calc(100vh - 30px);overflow:auto}.modal-form textarea{width:100%;min-height:88px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border:1px solid #d9d3df;border-radius:11px;padding:10px 12px}.weekday-checks{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.weekday-checks label{place-items:center;gap:5px;display:grid}.weekday-checks input{width:18px;height:18px;min-height:0}.manual-event-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:16px;display:flex}.danger-button{color:#943f4d;min-height:42px;font:inherit;cursor:pointer;background:#fff4f5;border:1px solid #e2bcc3;border-radius:10px;padding:9px 13px;font-weight:800}@media (width<=900px){.operator-shell{grid-template-columns:1fr}.operator-sidebar{height:auto;position:static}.operator-sidebar nav{display:flex;overflow:auto}.operator-account{align-items:center;margin-top:14px;display:flex}.operator-account span{margin-left:auto}.operator-main{padding-top:22px}.operator-metrics{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.operator-grid,.settings-grid{grid-template-columns:1fr}.operator-metrics{grid-template-columns:1fr 1fr}.operator-topbar{align-items:flex-start}.support-request-form{grid-template-columns:1fr}.support-active,.support-banner,.support-request-list>article{flex-direction:column;align-items:stretch}.weekday-checks{grid-template-columns:repeat(4,1fr)}.calendar-heading>.primary-button{width:100%;margin-top:14px}.row-actions{flex-wrap:wrap}}.calendar-workbench{background:#fff;border:0;padding:18px;box-shadow:0 18px 54px #392d4914}.calendar-panel{box-shadow:none;background:#fbfafc;border:0;border-radius:16px}.rail-grid{background:#fbfafc}.child-lane{border-color:#eeeaf1}.calendar-event{border-radius:12px;box-shadow:0 3px 10px #41325314;border:0!important;border-left:4px solid #5b477447!important}.calendar-event.uncertain{border-left-style:dashed!important}.week-day{background:#fff;border:0;box-shadow:0 4px 18px #392d490f}.date-assessments .weduc-event,.week-assessments .weduc-event,.mobile-assessments .weduc-event{color:#285957;background:#e1f1ed}.week-assessments .weduc-event small,.mobile-assessments .weduc-event small{color:#66817b;font-size:.58rem}.date-assessments .weduc-event small:last-child{border-left:1px solid #aac9c1;margin-left:8px;padding-left:8px}.event-notices-moved{color:#65746f;margin-top:8px;font-size:.78rem;display:block}.event-update-summary{color:#526d66;background:#edf7f4;border:1px solid #c8ddd7;border-radius:12px;align-items:center;gap:9px;margin:-2px 0 13px;padding:10px 12px;font-size:.74rem;display:flex;overflow:auto}.event-update-summary>strong{white-space:nowrap;color:#315b51}.event-update-summary>span{white-space:nowrap;border-left:1px solid #c8ddd7;padding-left:9px}.event-update-summary b{color:#315b51}.school-live-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;margin:18px 0;display:grid}.school-live-card{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:20px;padding:22px}.summary-row{border-top:1px solid var(--line);padding:14px 0}.summary-row header{justify-content:space-between;gap:12px;display:flex}.summary-row header time,.summary-row small{color:var(--muted);font-size:.75rem}.summary-row p{margin:7px 0;line-height:1.45}.summary-row mark{color:#73551c;background:#fff0c8;border-radius:8px;margin:2px 0 7px;padding:5px 8px;font-size:.75rem;font-weight:800;display:inline-block}.teacher-list p{border-top:1px solid var(--line);gap:3px;margin:0;padding:11px 0;display:grid}.teacher-list small,.coverage-note{color:var(--muted);font-size:.78rem}.coverage-note{background:#f6f3f8;border-radius:11px;margin-top:15px;padding:11px}.inbox-shell{min-height:560px;box-shadow:var(--shadow);background:#fff;border-radius:21px;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);display:grid;overflow:hidden}.inbox-list{border-right:1px solid var(--line);min-width:0}.inbox-list>header{border-bottom:1px solid var(--line);gap:4px;padding:18px;display:grid}.inbox-list>header small,.message-meta{color:var(--muted);font-size:.77rem}.inbox-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;gap:12px;width:100%;padding:15px 18px;display:flex}.inbox-list>button.unread strong:before{content:"";background:#725d8c;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.inbox-list>button span{gap:4px;min-width:0;display:grid}.inbox-list>button strong,.inbox-list>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inbox-list>button small,.inbox-list>button time{color:var(--muted);font-size:.72rem}.inbox-message{min-width:0;padding:28px}.inbox-message h2{margin:6px 0 4px}.message-body{white-space:pre-wrap;margin:25px 0;line-height:1.6}@media (width<=850px){.school-live-grid,.inbox-shell{grid-template-columns:1fr}.inbox-list{border-right:0;border-bottom:1px solid var(--line);max-height:380px;overflow:auto}}body,.workspace{background:#f6f5f3}.brand-mark,.loading-mark,.primary-button{background:linear-gradient(145deg,#3d8177,#285e57)}.brand-mark{box-shadow:0 7px 18px #285e5733}.login-story{background:linear-gradient(150deg,#244d4b,#183b3f)}.login-story:before,.login-story:after{border-color:#f0b54c33}.nav-item.active,.segmented button.selected,.child-filter button.selected,.calendar-filters button.selected{color:#245a53;background:#e5f0ed;border-color:#a7c7c0}.tone-card{background:#fbf5e9;border-color:#eadfca}.demo-banner{color:#43554f;background:#eaf2ef;border-color:#d8e4df}.calendar-workbench{background:#fff;border:1px solid #e0e8e4;box-shadow:0 20px 60px #23413b12}.calendar-week-strip button.today{border-color:#79a9a0}.calendar-week-strip button.selected{color:#fff;background:#285e57;border-color:#285e57;box-shadow:0 7px 18px #285e572e}.assessment-toggle.selected{color:#245a53;background:#e8f2ef;border-color:#9fc5bc}.assessment-toggle b{background:#e2eeeb}.round-control:hover,.today-control:hover,.calendar-date-trigger:hover,.round-control:focus-visible,.today-control:focus-visible,.calendar-date-trigger:focus-visible{border-color:#7aa99f;outline-color:#34766d29}.calendar-day-context{background:#f7f9f8;border:1px solid #e1e8e5;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin:-2px 0 12px;padding:10px 13px;font-size:.78rem;display:flex}.calendar-day-context strong{text-transform:capitalize}.calendar-day-context span{color:var(--muted)}.rail-corner,.rail-child{height:88px;padding:14px 15px}.rail-child{grid-template-columns:34px minmax(0,1fr);align-content:center;gap:3px 10px;display:grid}.rail-child>i{color:#fff;border-radius:50%;grid-row:1/3;place-items:center;width:32px;height:32px;font-size:.73rem;font-style:normal;font-weight:900;display:grid}.rail-child>span{gap:1px;display:grid}.rail-child>span strong{font-size:.9rem}.rail-child>span small{color:var(--muted);font-size:.7rem}.rail-child>em{color:#687671;grid-column:2;font-size:.67rem;font-style:normal;line-height:1.25}.calendar-gap{color:#685f50;background:repeating-linear-gradient(135deg,#f5f2eb,#f5f2eb 6px,#fbfaf7 6px 12px);border-color:#ded8ca;align-content:center;gap:2px;font-size:.68rem}.calendar-gap small{color:inherit;font-size:.6rem;font-weight:600}.calendar-gap.free_time{color:#6b6b70;background:#f5f5f6;border-color:#dedee1}.child-lane{isolation:isolate;background:#fff}.child-lane>i{background:#ededf0}.calendar-panel,.rail-grid{background:#fff}.rail-corner,.rail-child{background:#fafafa;border-color:#e6e6e9}.rail-grid{min-width:max(720px,calc(88px + var(--child-count) * 280px));grid-template-columns:88px repeat(var(--child-count),minmax(0,1fr))}.calendar-gap.short-gap{z-index:3;pointer-events:none;background:0 0;border:0;overflow:visible}.calendar-gap.short-gap:before{content:"";border-top:1px dashed #b7aa90;position:absolute;top:50%;left:0;right:0}.calendar-gap.short-gap>span{color:#6b5125;white-space:nowrap;pointer-events:auto;background:#fff7e6;border:1px solid #d4c5a8;border-radius:5px;height:18px;padding:0 8px;font-size:11px;line-height:16px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar-event:hover,.calendar-event:focus-visible{outline-color:var(--event-accent,#5e626a)}.calendar-filters button.selected{color:#454952;background:#f0f1f3;border-color:#c8cbd1}.calendar-event{box-shadow:0 4px 12px #23413b14;color:var(--event-accent,#285e57)!important;border-left-color:var(--event-accent,#39756d)!important;background:var(--event-wash,#eef3f2)!important}.calendar-event span{color:color-mix(in srgb,var(--event-accent,#285e57) 76%,#39423f)}.calendar-event.kind-football{color:#24664d!important;background:#e4f3eb!important;border-left-color:#3b8b68!important}.calendar-event.kind-optional{color:#86581b!important;background:#fff3df!important;border-left-color:#c88a35!important}.calendar-event.uncertain{background:repeating-linear-gradient(135deg,var(--event-wash,#f4f0f7),var(--event-wash,#f4f0f7) 8px,#fff 8px,#fff 14px)!important;border-left-style:dashed!important}.choice-panel{background:#fff8eb;border:1px solid #ead9b9;border-radius:13px;margin-top:18px;padding:14px}.choice-panel>p{color:#6d5c3e;margin:0;font-size:.82rem;line-height:1.45}.choice-panel .dialog-actions{margin-top:11px}.choice-panel .dialog-actions button:first-child{color:#245a53;background:#e8f2ef;border-color:#a7c7c0}.choice-panel .dialog-actions button:last-child{color:#765528;background:#fff;border-color:#dec79f}.mobile-child-heading{align-items:center;gap:10px;margin-bottom:7px;display:flex}.mobile-child-heading>i{color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.72rem;font-style:normal;font-weight:900;display:grid}.mobile-child-heading>span{gap:2px;display:grid}.mobile-child-heading h2{margin:0}.mobile-child-heading small{color:var(--muted);font-size:.69rem}.mobile-day-agenda button{grid-template-columns:48px minmax(0,1fr) auto}.agenda-choice{color:#7a571c;background:#fff1d6;border-radius:50%;align-self:center;place-items:center;width:20px;height:20px;font-size:.7rem;font-style:normal;font-weight:900;display:grid}.source-connections>article.editing{align-items:start;padding:18px 0}.source-identity{gap:3px;display:grid}.source-identity small b{color:var(--ink)}.source-inline-edit{grid-template-columns:1fr 1fr;gap:12px;display:grid}.source-inline-edit label{color:var(--muted);gap:6px;font-size:.75rem;font-weight:800;display:grid}.source-inline-edit input,.source-inline-edit select{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:43px;padding:9px 11px}.source-inline-edit .form-hint,.source-inline-edit .row-actions,.source-inline-edit .form-error{grid-column:1/-1}.source-actions{flex-wrap:wrap;justify-content:flex-end}.source-actions .secondary-button,.source-actions .danger-button{min-height:39px;padding:7px 10px;font-size:.76rem}.document-published-list{margin-top:13px;display:grid}.document-published-row{border-top:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center!important;padding:14px 0!important;display:grid!important}.document-published-row>i{color:#245a53;background:#e4f0ed;border-radius:12px;place-items:center;width:40px;height:40px;font-size:.72rem;font-style:normal;font-weight:900;display:grid}.document-published-row>span{gap:2px;min-width:0;display:grid}.document-published-row>span>b{color:#40514c;font-size:.79rem}.document-published-row>span>small:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.document-published-row>em{font-style:normal}.inbox-list>button.selected{background:#eaf2ef}.inbox-list>button.unread strong:before{background:#34766d}.topbar{background:#f7f9f8e6;border-color:#dfe7e3}.family-avatar{color:#245a53;background:#dfece8}.user-avatar{color:#745b37;background:#f2e7d5}.nav-item:hover,.nav-item:focus-visible{background:#f1f5f3}.status-pill,.empty-icon,.school-area-heading>span,.section-title>span{color:#285e57;background:#e5f0ed}.secondary-button{border-color:#bfd2cc}.school-tabs button.selected{background:linear-gradient(135deg,#3d8177,#285e57);box-shadow:0 7px 18px #285e5733}.school-tabs button.selected small{color:#dcece8}.filter-pills button.selected{background:#e7f1ee;border-color:#8ab4aa}.summary-accompaniment{color:#526d66;background:#f3f8f6;border-color:#9dc1b8}.attendance-note{color:#52645e;background:#f1f5f3}.teacher-avatar,.source-mark,.source-logo,.step-number{background:linear-gradient(145deg,#43867b,#285e57)}.teacher-card-grid footer span{color:#315f57;background:#e7f1ee}.support-banner{background:#2e6b63}.dialog-close,.app-dialog>header button{background:#edf3f1}.readonly-context,.human-diff span,.mfa-secret,.recovery-codes{background:#f1f5f3}@media (width<=700px){.calendar-day-context{flex-direction:column;align-items:flex-start;gap:3px}.source-connections>article{grid-template-columns:auto minmax(0,1fr)}.source-connections .source-actions{grid-column:2;justify-content:flex-start}.source-inline-edit{grid-template-columns:1fr}.source-inline-edit .form-hint,.source-inline-edit .row-actions,.source-inline-edit .form-error{grid-column:1}.document-published-row{grid-template-columns:38px minmax(0,1fr)}.document-published-row>em{grid-column:2;width:max-content}.desktop-day-rail{display:block}.rail-grid{grid-template-columns:34px repeat(var(--child-count),minmax(0,1fr));--event-inset:3px;min-width:0}.rail-grid.many-children{min-width:calc(34px + var(--child-count) * 126px)}.calendar-scroll{overscroll-behavior:contain;max-height:68vh}.rail-corner,.rail-child{height:80px;padding:8px 5px}.rail-corner{letter-spacing:0;padding-inline:2px;font-size:8px}.rail-child{grid-template-columns:minmax(0,1fr);align-content:start;gap:3px}.rail-child>i{display:none}.rail-child>span{min-width:0}.rail-child>span strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.rail-child>span small{font-size:9px}.rail-child>em{-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1;font-size:9px;line-height:1.2;display:-webkit-box;overflow:hidden}.time-axis span{font-size:9px;right:3px}.time-axis .now-time{padding:2px;font-size:9px;right:0}.calendar-event{border-radius:7px;padding:5px 4px;border-left-width:2px!important}.calendar-event strong,.calendar-event.event-medium strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:10.5px;line-height:1.2;display:-webkit-box}.calendar-event:has(em) strong{max-width:calc(100% - 12px)}.calendar-event.event-compact strong{white-space:nowrap;line-height:1.1;display:block}.calendar-event span,.calendar-event.event-compact span{font-size:9px;line-height:1.15}.calendar-event em{width:13px;height:13px;font-size:9px;top:4px;right:3px}.calendar-event .lesson-summary-badge{margin-left:2px;padding:1px 2px;font-size:7px}.calendar-gap{text-align:center;font-size:9px;left:2px;right:2px}.calendar-gap small{font-size:8px}.calendar-gap.short-gap>span{height:16px;padding:0 3px;font-size:9px;line-height:14px;right:2px}.date-assessments{gap:5px;padding:7px;font-size:10px}.date-assessments>span{padding:5px 7px}}
