.groupsSummary{grid-template-columns:repeat(4,minmax(0,1fr))}.groupsManagementList{display:grid;grid-gap:22px;gap:22px}.groupManagementCard{overflow:hidden;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:var(--shadow-soft)}.groupAttendanceSection,.groupCalendarSection,.groupMemberSection{padding:0 22px 22px}.groupCalendarSection{background:linear-gradient(180deg,#fbfbff,#fff)}.groupAttendanceSection,.groupCalendarSection{padding-top:20px;border-top:1px solid var(--border)}.groupAttendanceSection{background:#fcfcff}.groupAttendanceStandalone{padding-top:22px;border-top:0}.groupCalendarCurrent,.groupCalendarEditor{border:1px solid #dfe3f3;border-radius:14px;background:#fff}.groupCalendarCurrent{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px}.groupCalendarCurrent>div{display:grid;grid-gap:4px;gap:4px}.groupCalendarCurrent strong,.groupCalendarIntro strong{font-size:.78rem}.groupCalendarCurrent small,.groupCalendarCurrent span,.groupCalendarIntro span,.groupCalendarNote{color:var(--muted);font-size:.68rem;line-height:1.45}.groupCalendarWarning{padding:12px 14px;border:1px solid #efd39f;border-radius:12px;background:#fff8e8;color:#795119;font-size:.7rem;line-height:1.45}.groupCalendarEditor{padding:15px}.groupCalendarIntro{display:grid;grid-gap:4px;gap:4px;margin-bottom:13px}.groupCalendarFields{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));grid-gap:10px;gap:10px}.groupCalendarFields label{display:grid;grid-gap:5px;gap:5px}.groupCalendarFields label>span{color:var(--muted);font-size:.64rem;font-weight:780}.groupCalendarFields input,.groupCalendarFields select{width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text);font:inherit;font-size:.74rem}.groupCalendarFields input:disabled,.groupCalendarFields select:disabled{background:#f4f5f8;color:var(--muted)}.groupCalendarLocation{grid-column:1/-1}.groupCalendarActions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.groupCalendarNote{margin:10px 0 0}.groupSignupToolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:-2px 0 8px}.groupSignupToolbar>span{color:var(--muted);font-size:.68rem;font-weight:740}.groupAddMemberRow{display:grid;grid-template-columns:minmax(210px,1fr) minmax(150px,.7fr) 150px auto;grid-gap:10px;gap:10px;margin-bottom:8px}.groupAddMemberRow input,.groupAddMemberRow select,.groupMemberRow select{min-width:0;padding:10px 11px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text);font:inherit;font-size:.76rem}.groupSignupDate{min-height:42px}.groupAttendancePolicy,.groupBillingHint{margin:0 0 13px;color:var(--muted);font-size:.68rem;line-height:1.45}.groupAttendancePolicy{margin:12px 0 0}.groupMemberList{display:grid;grid-gap:7px;gap:7px}.groupMemberRow{display:grid;grid-template-columns:minmax(170px,1fr) 150px auto;grid-gap:10px;gap:10px;align-items:center;padding:10px 11px;border:1px solid #e6e9f2;border-radius:11px;background:#fbfbfd}.groupMemberRow strong,.groupStudentLink{min-width:0;overflow:hidden;font-size:.76rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.groupStudentLink{color:var(--text);text-decoration:none}.groupStudentLink:hover{color:var(--accent-dark);text-decoration:underline}.groupMemberRow>span{color:var(--muted);font-size:.7rem;font-weight:750}.textButton{padding:5px 0;border:0;background:transparent;color:var(--accent-dark);cursor:pointer;font:inherit;font-size:.7rem;font-weight:800}.textButton:disabled{cursor:wait;opacity:.55}.dangerTextButton{color:#a52d4e}.groupMemberEnded{opacity:.72}.groupEndedMembers{margin-top:12px}.groupEndedMembers summary{cursor:pointer;color:var(--muted);font-size:.7rem;font-weight:800}.groupEndedMembers[open] summary{margin-bottom:8px}.groupAttendanceTerms{display:grid;grid-gap:9px;gap:9px}.groupAttendanceTerm{overflow:hidden;border:1px solid #e0e3f0;border-radius:12px;background:#fff}.groupAttendanceTerm summary{display:grid;grid-template-columns:120px auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;padding:12px 14px;cursor:pointer;list-style-position:inside}.groupAttendanceTerm summary small,.groupAttendanceTerm summary span,.groupAttendanceTerm summary strong{font-size:.72rem}.groupAttendanceTerm summary span{color:var(--text-soft);font-weight:760}.groupAttendanceTerm summary strong{white-space:nowrap}.groupAttendanceTerm summary small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.groupAttendanceTerm[open] summary{border-bottom:1px solid var(--border);background:#f7f8ff}.groupAttendanceTable{display:grid}.groupAttendanceRow{display:grid;grid-template-columns:minmax(160px,.8fr) 130px minmax(360px,1.5fr);grid-gap:10px;gap:10px;align-items:center;padding:10px 14px;border-bottom:1px solid #eceef5}.groupAttendanceRow:last-child{border-bottom:0}.groupAttendanceRow>strong{min-width:0;overflow:hidden;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.attendanceCurrent{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:5px 8px;border-radius:999px;background:#f0f1f5;color:var(--muted);font-size:.64rem;font-weight:820}.attendance-PRESENT{background:#e7f7ee;color:#176b40}.attendance-ABSENT{background:#fdebed;color:#9d2946}.attendance-EXCUSED{background:#fff4dc;color:#8a5a00}.attendanceButtons{display:flex;flex-wrap:wrap;gap:6px}.attendanceButton{padding:6px 8px;border:1px solid #d9ddea;border-radius:8px;background:#fff;color:var(--text-soft);cursor:pointer;font:inherit;font-size:.64rem;font-weight:780}.attendanceButton:hover{border-color:#b8c0e8;background:#f7f8ff}.attendanceButtonActive{border-color:#8f9bef;background:#eef0ff;color:var(--accent-dark)}.attendanceButton:disabled{cursor:wait;opacity:.55}@media (max-width:1100px){.groupCalendarFields{grid-template-columns:repeat(3,minmax(140px,1fr))}.groupAddMemberRow{grid-template-columns:minmax(200px,1fr) minmax(150px,.8fr)}.groupAddMemberRow>.primaryButton{width:100%}}@media (max-width:900px){.groupCalendarFields,.groupsSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.groupAttendanceRow{grid-template-columns:minmax(140px,1fr) 130px}.attendanceButtons{grid-column:1/-1}}@media (max-width:620px){.groupsSummary{grid-template-columns:1fr}.groupAttendanceSection,.groupCalendarSection,.groupMemberSection{padding-right:16px;padding-left:16px}.groupCalendarCurrent{align-items:stretch;flex-direction:column}.groupCalendarCurrent .secondaryButton{width:100%;justify-content:center}.groupCalendarFields{grid-template-columns:1fr}.groupCalendarLocation{grid-column:auto}.groupCalendarActions{flex-direction:column-reverse}.groupCalendarActions .primaryButton,.groupCalendarActions .secondaryButton{width:100%;justify-content:center}.groupSignupToolbar{justify-content:flex-start}.groupAddMemberRow,.groupAttendanceRow,.groupAttendanceTerm summary,.groupMemberRow{grid-template-columns:1fr}.groupAttendanceRow>strong,.groupAttendanceTerm summary small,.groupMemberRow strong,.groupStudentLink{white-space:normal}.attendanceButtons{grid-column:auto}}.groupWorkspaceTabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--border);background:#f7f9fd}.groupWorkspaceTab{min-height:44px;padding:10px 14px;border:1px solid #d8deeb;border-radius:10px;background:#fff;color:#43506b;font:inherit;font-size:.88rem;font-weight:750;cursor:pointer}.groupWorkspaceTab:hover{border-color:#aeb6d8;background:#f1f3ff}.groupWorkspaceTabActive{background:#4843ba;border-color:#4843ba;color:#fff}.groupWorkspaceTabActive:hover{background:#39349a;color:#fff}.groupWorkspaceTab:focus-visible{outline:3px solid #9793e8;outline-offset:2px}@media (max-width:640px){.groupWorkspaceTabs{display:grid;grid-template-columns:1fr;padding:10px 12px}.groupWorkspaceTab{width:100%;text-align:left}}.groupOccurrenceActions{display:flex;flex-wrap:wrap;align-items:center;padding:12px 15px;border-top:1px solid #e5eaf3}.groupOccurrenceActions>button{min-height:44px}.groupOccurrenceConfirm{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%}.groupOccurrenceConfirm p{flex:1 1 100%;margin:0;color:#854c1f;font-size:.9rem;line-height:1.5}.groupOccurrenceConfirm button{min-height:44px}.groupMakeupQueue{display:grid;grid-gap:12px;gap:12px;padding:14px;margin:12px 0;border:1px solid #ead7ad;border-radius:12px;background:#fffaf1}.groupMakeupQueue h4{font-size:1rem;margin:0}.groupMakeupRow{display:grid;grid-gap:7px;gap:7px;padding:14px;border:1px solid #edddbe;border-radius:10px;background:#fff}.groupMakeupRowHeading{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between}.groupMakeupRowHeading span{color:#8b5b19;font-weight:750;font-size:.84rem}.groupMakeupRow small{color:#697587}.groupMakeupRow p{margin:0;line-height:1.45;color:#596578;font-size:.88rem}.groupMakeupForm{display:flex;align-items:end;flex-wrap:wrap;gap:10px}.groupMakeupForm label{display:grid;grid-gap:5px;gap:5px;font-size:.85rem;font-weight:700;color:#455166}.groupMakeupForm input{min-height:44px;padding:8px;border-radius:8px;border:1px solid #c9d1e0;font:inherit}.groupMakeupForm button{min-height:44px}.groupMakeupActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.groupMakeupActions button{min-height:44px}@media (max-width:620px){.groupMakeupQueue{padding:10px}.groupMakeupForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.groupMakeupForm label{min-width:0}.groupMakeupForm input{width:100%;min-width:0}.groupMakeupForm button{grid-column:1/-1}.groupOccurrenceActions>button,.groupOccurrenceConfirm button{width:100%}}.groupsHeroCompact{align-items:center;padding:22px 26px}.groupDashboardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));grid-gap:16px;gap:16px}.groupDashboardCard{display:grid;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}.groupDashboardCard>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 19px 15px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#fff,#f5f6ff)}.groupDashboardCard>header h2,.groupDashboardCard>header p{margin:0}.groupDashboardCard>header p{margin-bottom:4px;color:var(--accent-dark);font-size:.65rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.groupDashboardCard>header h2{font-size:1.04rem;line-height:1.25}.groupDashboardCard>header>span{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--accent-soft);color:var(--accent-dark);font-size:.86rem;font-weight:900}.groupDashboardCard dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 15px;gap:12px 15px;margin:0;padding:17px 19px}.groupDashboardCard dl div{min-width:0}.groupDashboardCard dt{margin-bottom:4px;color:var(--muted);font-size:.62rem;font-weight:780}.groupDashboardCard dd{margin:0;overflow:hidden;color:var(--text);font-size:.74rem;font-weight:760;line-height:1.4;text-overflow:ellipsis}.groupDashboardCard>footer{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:14px 19px 17px;border-top:1px solid var(--border)}.groupDashboardCard>footer a{min-height:44px;padding:0 11px;font-size:.67rem}.groupDetailHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:22px 25px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}.groupDetailHeader h1,.groupDetailHeader p{margin-top:0}.groupDetailHeader h1{margin-bottom:6px}.groupDetailHeader .lead{margin-bottom:0}.groupDetailActions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px;justify-content:flex-end}.groupDetailActions a{min-height:44px;white-space:nowrap}@media (max-width:620px){.groupDashboardCard dl{grid-template-columns:1fr}.groupDashboardCard>footer a{flex:1 1 auto;justify-content:center}.groupDetailHeader{flex-direction:column}.groupDetailActions{width:100%;justify-content:flex-start}.groupDetailActions a{flex:1 1 auto;justify-content:center}.groupDashboardGrid{gap:10px}.groupDashboardCard{border-radius:13px}.groupDashboardCard>header{padding:13px 14px 11px;gap:9px}.groupDashboardCard>header p{font-size:.68rem}.groupDashboardCard>header h2{font-size:1.06rem}.groupDashboardCard>header>span{width:34px;height:34px;border-radius:10px}.groupDashboardCard dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px;padding:12px 14px}.groupDashboardCard dl div:nth-child(3),.groupDashboardCard dl div:nth-child(5){grid-column:1/-1}.groupDashboardCard dt{font-size:.76rem;margin-bottom:3px}.groupDashboardCard dd{font-size:.88rem;line-height:1.35;overflow-wrap:anywhere}.groupDashboardCard>footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px;padding:11px 13px 13px}}@media (max-width:620px){.groupDashboardCard>footer :is(a,button){min-width:0;min-height:44px;width:100%;margin:0;padding:8px 9px;font-size:.82rem;line-height:1.2;white-space:normal;text-align:center;justify-content:center}.groupDashboardCard>footer button:last-child{grid-column:1/-1}}.settingsPageHeader{margin-bottom:18px}.settingsSectionNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.settingsSectionLink{display:grid;grid-gap:4px;gap:4px;padding:15px 17px;border:1px solid var(--border);border-radius:15px;background:rgba(255,255,255,.78);color:var(--text-soft);text-decoration:none;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.settingsSectionLink:hover{border-color:#bdc4d7;background:#fff}.settingsSectionLink strong{font-size:.86rem}.settingsSectionLink span{color:var(--muted);font-size:.7rem;line-height:1.35}.settingsSectionLinkActive{border-color:#cfd3fb;background:linear-gradient(135deg,#f4f5ff,#fff);box-shadow:var(--shadow-xs);color:var(--accent-dark)}.calendarSettingsInfo{display:flex;gap:7px 12px;flex-wrap:wrap;margin-bottom:16px;padding:12px 15px;border:1px solid #dfe3f2;border-radius:13px;background:rgba(250,251,255,.9);color:var(--muted);font-size:.74rem;line-height:1.45}.calendarSettingsInfo strong{color:var(--text-soft)}.calendarSettingsToolbar{position:-webkit-sticky;position:sticky;top:82px;z-index:18;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.calendarSettingsFilters,.calendarSettingsSummary{display:flex;align-items:center;gap:9px}.calendarSettingsFilters{flex:1 1 auto;min-width:0}.calendarSettingsFilters label:first-child{flex:1 1 300px;min-width:160px}.calendarSettingsFilters label:last-child{flex:0 0 165px}.calendarSettingsFilters input,.calendarSettingsFilters select{width:100%;min-height:40px;padding:8px 11px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text);font:inherit;font-size:.75rem}.calendarSettingsSummary{flex:0 0 auto}.calendarSettingsSummary>span:not(.changesBadge){color:var(--muted);font-size:.68rem;white-space:nowrap}.calendarSettingsSummary>span strong{color:var(--text);font-size:.82rem}.calendarSettingsSave{min-height:40px;white-space:nowrap}.calendarSettingsList{display:grid;grid-gap:10px;gap:10px}.calendarCompactCard{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-xs)}.calendarCompactCard:before{position:absolute;inset:0 auto 0 0;width:3px;background:#d9dde7;content:""}.calendarCompactCardActive:before{background:#2fac78}.calendarCompactCardError:before{background:var(--danger)}.calendarCompactHeader{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px 11px 18px;border-bottom:1px solid #edf0f5}.calendarCompactIdentity{display:flex;min-width:0;align-items:center;gap:10px}.calendarTeacherColorDot{width:12px;height:12px;flex:0 0 auto;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #d4d9e4}.calendarCompactIdentity>div{display:grid;min-width:0;grid-gap:3px;gap:3px}.calendarCompactIdentity span,.calendarCompactIdentity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendarCompactIdentity strong{font-size:.82rem}.calendarCompactIdentity span{color:var(--muted);font-size:.68rem}.calendarCompactSwitch{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;color:var(--text-soft);cursor:pointer;font-size:.68rem;font-weight:780}.calendarCompactFields{display:grid;grid-template-columns:minmax(220px,1fr) 190px;grid-gap:12px;gap:12px;padding:12px 16px 13px 18px}.calendarCompactFields label{display:grid;grid-gap:5px;gap:5px}.calendarCompactFields label>span:first-child{color:var(--muted);font-size:.65rem;font-weight:780}.calendarCompactFields .settingsInput{min-height:40px;padding:8px 10px;font-size:.76rem}.calendarColorPicker{display:flex;min-height:40px;align-items:center;gap:9px;padding:5px 9px;border:1px solid var(--border-strong);border-radius:10px;background:#fff}.calendarColorPicker input{width:42px;height:28px;padding:0;border:0;background:transparent;cursor:pointer}.calendarColorPicker strong{color:var(--text-soft);font-size:.7rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calendarTechnicalDetails{padding:0 16px 12px 18px}.calendarTechnicalDetails summary{width:-moz-fit-content;width:fit-content;cursor:pointer;color:var(--muted-light);font-size:.63rem;font-weight:740}.calendarTechnicalDetails code{display:block;margin-top:7px;overflow-wrap:anywhere;color:var(--muted);font-size:.62rem}.calendarSettingsEmpty{min-height:180px}.settingsImportCard{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);grid-gap:24px;gap:24px;align-items:start;padding:24px}.settingsImportIntro p:last-child{margin:10px 0 0;color:var(--muted);font-size:.78rem;line-height:1.55}.settingsImportCard .studentImportWidget{padding:0;border:0;background:transparent;box-shadow:none}@media (max-width:900px){.calendarSettingsToolbar{align-items:stretch;flex-direction:column}.calendarSettingsSummary{justify-content:space-between}.settingsImportCard{grid-template-columns:1fr}}@media (max-width:640px){.settingsSectionNav{grid-template-columns:1fr}.calendarSettingsToolbar{position:static}.calendarSettingsFilters,.calendarSettingsSummary{align-items:stretch;flex-direction:column}.calendarSettingsFilters label:first-child,.calendarSettingsFilters label:last-child{flex:none}.calendarSettingsSummary>span:not(.changesBadge){display:none}.calendarSettingsSave{width:100%}.calendarCompactHeader{align-items:flex-start;gap:12px}.calendarCompactSwitch{flex-direction:column;gap:4px;align-items:flex-end}.calendarCompactFields{grid-template-columns:minmax(0,1fr) 145px;gap:9px;padding-right:12px;padding-left:14px}.calendarCompactNameField{min-width:0}.calendarColorPicker strong{display:none}.calendarColorPicker{justify-content:center}.settingsImportCard{padding:18px}}@media (max-width:430px){.calendarCompactFields{grid-template-columns:1fr}.calendarColorPicker{justify-content:flex-start}.calendarColorPicker strong{display:block}}.appHeaderSimplified{width:min(1440px,calc(100% - 28px));gap:18px}.simplifiedNav{flex:0 0 auto}.navMenu{position:relative}.navMenu>summary{display:flex;list-style:none;align-items:center;gap:5px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.navMenu>summary::-webkit-details-marker{display:none}.navMenu[open]>summary{background:#fff;box-shadow:0 3px 10px rgba(31,39,75,.08);color:var(--accent-dark)}.navMenuPanel{position:absolute;top:calc(100% + 12px);left:50%;z-index:80;display:grid;width:310px;padding:8px;transform:translateX(-50%);border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(32,42,79,.16)}.navMenuPanel:before{position:absolute;top:-6px;left:calc(50% - 6px);width:12px;height:12px;transform:rotate(45deg);border-top:1px solid var(--border);border-left:1px solid var(--border);background:#fff;content:""}.navMenuPanel a{position:relative;z-index:1;display:flex;padding:12px 13px;border-radius:11px;flex-direction:column;text-decoration:none}.navMenuPanel a:hover{background:var(--surface-soft)}.navMenuPanel strong{font-size:.88rem}.navMenuPanel span{margin-top:3px;color:var(--muted);font-size:.75rem;line-height:1.35}.globalSearch{position:relative;width:min(360px,28vw);min-width:220px;margin-left:auto}.globalSearchField{display:flex;height:44px;align-items:center;gap:9px;padding:0 11px;border:1px solid var(--border-strong);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-xs);transition:border-color .16s ease,box-shadow .16s ease}.globalSearchField:focus-within{border-color:rgba(79,70,229,.48);box-shadow:0 0 0 4px rgba(79,70,229,.09)}.globalSearchField>span{color:var(--muted);font-size:1.1rem}.globalSearchField input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:.82rem}.globalSearchField input::-webkit-search-cancel-button{cursor:pointer}.globalSearchField kbd{flex:0 0 auto;padding:3px 6px;border:1px solid var(--border);border-bottom-color:var(--border-strong);border-radius:6px;background:var(--surface-soft);color:var(--muted);font-family:inherit;font-size:.62rem;font-weight:750;white-space:nowrap}.globalSearchPanel{position:absolute;top:calc(100% + 10px);right:0;z-index:90;width:min(520px,calc(100vw - 28px));max-height:min(650px,calc(100vh - 96px));overflow-y:auto;padding:9px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.99);box-shadow:0 28px 80px rgba(32,42,79,.19)}.globalSearchHint{display:flex;min-height:92px;align-items:center;justify-content:center;padding:18px;flex-direction:column;color:var(--muted);text-align:center}.globalSearchHint strong{color:var(--text)}.globalSearchHint span{margin-top:5px;font-size:.82rem;line-height:1.5}.globalSearchGroup+.globalSearchGroup{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.globalSearchGroup>p{margin:0;padding:5px 8px;color:var(--muted);font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.globalSearchResult{display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:11px;gap:11px;padding:10px 9px;border-radius:12px;text-decoration:none}.globalSearchResult:focus-visible,.globalSearchResult:hover{background:var(--surface-soft)}.globalSearchResult>span:last-child{display:flex;min-width:0;flex-direction:column}.globalSearchResult em,.globalSearchResult small,.globalSearchResult strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.globalSearchResult strong{font-size:.88rem}.globalSearchResult small{margin-top:2px;color:var(--text-soft);font-size:.76rem}.globalSearchResult em{margin-top:3px;color:var(--muted);font-size:.69rem;font-style:normal}.globalSearchType{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent-dark);font-size:.72rem;font-weight:900}.globalSearchType-payer{background:var(--mint-soft);color:var(--success)}.globalSearchType-trial{background:var(--warning-soft);color:var(--warning)}.globalSearchType-course{background:var(--pink-soft);color:#9d3e6a}.workQueue{margin-bottom:18px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:rgba(255,255,255,.96);box-shadow:var(--shadow-sm)}.workQueueHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 23px 17px;border-bottom:1px solid var(--border)}.workQueueHeader p{margin:0 0 5px;color:var(--accent);font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.workQueueHeader h2{font-size:1.25rem}.workQueueHeader>span{max-width:430px;color:var(--muted);font-size:.8rem;line-height:1.5;text-align:right}.workQueueGrid{display:grid;grid-gap:10px;gap:10px;padding:13px}.workQueueItem{display:grid;min-height:112px;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft);text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.workQueueItem:hover{transform:translateY(-1px);border-color:#c9cede;background:#fff;box-shadow:var(--shadow-xs)}.workQueueCount{display:grid;min-width:38px;height:38px;place-items:center;border-radius:11px;background:var(--warning-soft);color:var(--warning);font-size:1rem;font-weight:900}.workQueueItem-critical .workQueueCount{background:var(--danger-soft);color:var(--danger)}.workQueueItem-info .workQueueCount{background:var(--accent-soft);color:var(--accent-dark)}.workQueueItem>span:last-child{display:flex;min-width:0;flex-direction:column}.workQueueItem strong{font-size:.86rem;line-height:1.25}.workQueueItem small{margin-top:5px;color:var(--muted);font-size:.73rem;line-height:1.45}.workQueueEmpty{display:flex;min-height:110px;align-items:center;justify-content:center;padding:20px;color:var(--success);font-weight:800}@media (max-width:1180px){.appHeaderSimplified{flex-wrap:wrap;padding:10px 0}.brand{order:1}.globalSearch{order:2;width:min(420px,50vw)}.simplifiedNav{order:3;width:100%;justify-content:center}.workQueueGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.appHeaderInner.appHeaderSimplified{width:min(100% - 20px,720px);gap:10px}.brandLogo{max-width:64px}.globalSearch{width:calc(100% - 82px);min-width:0}.globalSearchField kbd{display:none}.simplifiedNav{justify-content:flex-start;overflow-x:auto;padding-bottom:4px;border:0;background:transparent;box-shadow:none;scrollbar-width:none}.simplifiedNav::-webkit-scrollbar{display:none}.navMenuPanel{position:fixed;top:118px;right:10px;left:10px;width:auto;transform:none}.navMenuPanel:before{display:none}.globalSearchPanel{position:fixed;top:68px;right:10px;left:10px;width:auto}.workQueueHeader{flex-direction:column}.workQueueHeader>span{text-align:left}.workQueueGrid{grid-template-columns:1fr}}.globalSearchHint button{margin-top:12px}.globalSearchResult small{font-size:.84rem}.globalSearchResult em{font-size:.78rem}.globalSearchGroup>p{font-size:.76rem}.navMenuPanel span{font-size:.82rem}.navMenuSection>p{font-size:.75rem}.globalSearchField input{font-size:.91rem}:where(summary,select,textarea,[role=button]):focus-visible{outline:3px solid rgba(79,70,229,.3);outline-offset:2px}@media (max-width:720px){.globalSearchField input{font-size:16px}}.workQueueMore{border-top:1px solid var(--border)}.workQueueMore>summary{min-height:44px;padding:12px 20px;color:var(--accent-dark);font-size:.9rem;font-weight:750;cursor:pointer}.workQueueMore .workQueueGrid{padding-top:4px}.workQueueItem:not(a){cursor:default}.workQueueItem:not(a):hover{transform:none;background:var(--surface-soft);box-shadow:none}.contextHelpDock{position:fixed;top:78px;right:22px;z-index:70}.contextHelp{position:relative}.contextHelp>summary{display:flex;min-height:38px;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-xs);color:var(--text-soft);cursor:pointer;font-size:.75rem;font-weight:800;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.contextHelp>summary::-webkit-details-marker{display:none}.contextHelp>summary:focus-visible,.contextHelp>summary:hover,.contextHelp[open]>summary{border-color:rgba(79,70,229,.34);background:#fff;color:var(--accent-dark)}.contextHelpSummary>span{display:grid;width:18px;height:18px;place-items:center;border:1px solid var(--border-strong);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:900}.contextHelpPanel{position:absolute;top:calc(100% + 10px);right:0;z-index:95;width:min(390px,calc(100vw - 28px));padding:18px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.99);box-shadow:0 24px 60px rgba(32,42,79,.17)}.contextHelpPanel:before{position:absolute;top:-6px;right:28px;width:12px;height:12px;transform:rotate(45deg);border-top:1px solid var(--border);border-left:1px solid var(--border);background:#fff;content:""}.contextHelpEyebrow{margin:0 0 4px;color:var(--accent-dark);font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.contextHelpTitle{display:block;color:var(--text);font-size:.98rem;line-height:1.35}.contextHelpGoal{margin:7px 0 13px;color:var(--text-soft);font-size:.8rem;line-height:1.52}.contextHelpPanel ol{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:21px;color:var(--text);font-size:.79rem;line-height:1.45}.contextHelpPanel li::marker{color:var(--accent-dark);font-weight:900}.contextHelpWarning{margin:14px 0 0;padding:10px 11px;border-radius:11px;background:var(--warning-soft);color:var(--text-soft);font-size:.75rem;line-height:1.45}.contextHelpWarning strong{color:var(--warning)}@media (max-width:760px){.contextHelpDock{top:auto;right:14px;bottom:14px}.contextHelpPanel{top:auto;right:0;bottom:calc(100% + 10px);max-height:min(70vh,560px);overflow-y:auto}.contextHelpPanel:before{top:auto;right:24px;bottom:-6px;transform:rotate(225deg)}}.dashboardShell{padding-top:12px}.dashboardHero:has(.integrationConnected){display:none}.dashboardHero{margin-bottom:10px}.dashboardControlGrid{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;margin-bottom:8px}.dashboardControlGrid>.syncCard{display:none}.workQueue{margin-bottom:8px;border-radius:14px;box-shadow:var(--shadow-xs)}.workQueueHeader{align-items:center;gap:10px;padding:8px 10px 5px;border-bottom:0}.workQueueHeader p,.workQueueHeader>span{display:none}.workQueueHeader h2{font-size:.82rem;letter-spacing:-.01em}.workQueueGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px 7px 7px}.workQueueItem{min-height:54px;align-items:center;gap:8px;padding:7px 9px;border-radius:10px;background:#fff}.workQueueCount{min-width:28px;width:28px;height:28px;border-radius:8px;font-size:.78rem}.workQueueItem strong{font-size:.73rem;line-height:1.22}.workQueueItem small{display:none}.workQueueEmpty{min-height:44px;padding:7px 10px 9px;font-size:.76rem}.calendarSummaryBar{min-height:0;gap:5px 12px;margin:6px 0 7px;padding:0 2px;font-size:.69rem}.schedulePanelHeader{padding:10px 12px 8px}.editableScheduleHint,.schedulePanelHeader .scheduleHint,.schedulePanelHeader .sectionEyebrow{display:none}.schedulePanelHeader h2{font-size:1rem}.schedulePanelHeader .panelMeta{gap:5px}.editableScheduleLegend .primaryButton,.schedulePanelHeader .primaryButton,.schedulePanelHeader .secondaryButton{min-height:34px;padding:0 11px;font-size:.74rem}.editableScheduleLegend{gap:9px;padding:7px 10px;font-size:.68rem}.editableScheduleLayout{grid-template-columns:188px minmax(0,1fr)}.calendarTeacherFilter{padding:10px 9px 12px;border-right-color:#e1e5f0;background:linear-gradient(180deg,#f9faff,#f5f7fc)}.calendarTeacherFilter header{margin-bottom:8px;padding:0 2px}.calendarTeacherFilter header span{color:#747b92;font-size:.61rem;letter-spacing:.07em}.calendarTeacherFilter header strong{padding:2px 6px;border-radius:999px;background:#fff;color:var(--muted);font-size:.65rem;box-shadow:0 1px 3px rgba(31,39,75,.07)}.calendarTeacherQuickSwitch{gap:4px;margin-bottom:8px;padding:3px;border:1px solid #e1e5f0;border-radius:10px;background:rgba(255,255,255,.8)}.calendarFilterQuickButton{min-height:31px;padding:0 7px;border-color:transparent;border-radius:7px;background:transparent;font-size:.68rem;box-shadow:none}.calendarFilterQuickButton:hover{background:#f3f4fa}.calendarFilterQuickButton span{min-width:18px;height:18px;border-radius:6px;font-size:.6rem}.calendarFilterQuickButtonActive{border-color:#d7dafe;background:#fff;color:var(--accent-dark);box-shadow:0 2px 7px rgba(79,70,229,.09)}.calendarTeacherFilterList{max-height:535px;gap:2px;padding-right:1px}.calendarTeacherFilterList label{gap:7px;padding:6px 7px;border:1px solid transparent;border-radius:9px}.calendarTeacherFilterList label:hover{background:rgba(255,255,255,.85)}.calendarTeacherFilterList label:has(input:checked){border-color:#e1e3fb;background:rgba(255,255,255,.96);box-shadow:0 1px 4px rgba(31,39,75,.05)}.calendarTeacherFilterList input{width:14px;height:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid #b9c0d1;border-radius:50%;background:#fff;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.calendarTeacherFilterList input:checked{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3px #fff}.calendarTeacherFilterList strong{font-size:.71rem;font-weight:760}.calendarTeacherFilterList label:has(input:checked) strong{color:#2f3560}.calendarTeacherFilterList small{font-size:.6rem}.editableScheduleWrapper .scheduleGrid{grid-template-columns:68px var(--teacher-columns)}.editableScheduleWrapper .scheduleAxis,.editableScheduleWrapper .scheduleCorner{width:68px;min-width:68px;max-width:68px}.editableScheduleWrapper .scheduleTeacherHeader{padding-top:7px;padding-bottom:7px}.editableScheduleWrapper .scheduleTeacherHeader strong{font-size:.76rem}.editableScheduleWrapper .scheduleTeacherHeader span{font-size:.61rem}.editableScheduleColumn .scheduleLesson{padding-right:6px;padding-left:6px;font-size:.68rem}.calendarSyncSettings{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:14px 0;padding:15px 17px;border:1px solid #dfe3f1;border-radius:14px;background:linear-gradient(135deg,#fff,#f7f8ff);box-shadow:var(--shadow-xs)}.calendarSyncSettings>div:first-child{display:flex;min-width:0;flex-direction:column;gap:4px}.calendarSyncSettings h2{font-size:1rem}.calendarSyncSettings span{max-width:760px;color:var(--muted);font-size:.77rem;line-height:1.45}.calendarSyncSettings .syncForm,.calendarSyncSettings form{flex:0 0 auto}.calendarSyncActions{display:flex;min-width:min(100%,360px);flex:0 1 460px;flex-wrap:wrap;justify-content:flex-end;gap:8px}.calendarSyncActions .syncWidget{width:auto;min-width:170px;flex:1 1 170px}.calendarSyncActions .syncButton,.calendarSyncActions .syncWidget form{width:100%}.calendarSyncActions .syncButton{white-space:nowrap}.appHeaderInner.appHeaderSimplified{gap:10px}.simplifiedNav{gap:2px;padding:3px;border-radius:12px}.simplifiedNav .navLink{padding-right:10px;padding-left:10px;font-size:.76rem;font-weight:760}.simplifiedNav .navLinkActive{box-shadow:0 2px 7px rgba(31,39,75,.08)}.navMenuPanel{width:292px}.navMenuPanel a{padding:10px 11px}.navMenuPanel strong{font-size:.82rem}.navMenuPanel span{font-size:.71rem}.globalSearch{width:min(320px,24vw);min-width:205px}.globalSearchField{height:40px}.googleLikeCalendar .editableScheduleLayout{grid-template-columns:196px minmax(0,1fr)}.googleLikeCalendar .calendarTeacherFilter{padding:10px 8px 12px;border-right:1px solid #dadce0}.googleLikeCalendar .calendarTeacherFilter header{margin:0 3px 8px;padding:0}.googleLikeCalendar .calendarTeacherFilterList{max-height:610px}.googleLikeCalendar .calendarTeacherFilterItem input{width:14px;height:14px;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;accent-color:var(--teacher-color,#1a73e8)}.googleLikeCalendar .scheduleViewport{container-type:inline-size}.googleLikeCalendar .scheduleGrid{grid-template-columns:64px var(--teacher-columns)}.googleLikeCalendar .scheduleAxis,.googleLikeCalendar .scheduleCorner{position:-webkit-sticky;position:sticky;left:0;width:64px;min-width:64px;max-width:64px;transform:none}.googleLikeCalendar .scheduleCorner{top:0}.googleLikeCalendar .scheduleTeacherHeader{min-height:42px;flex-direction:row;justify-content:flex-start;gap:7px;padding:5px 8px;text-align:left}.googleLikeCalendar .scheduleTeacherHeader strong{width:auto;min-width:0;flex:1 1 auto;margin:0;font-size:.72rem;line-height:1.2}.googleLikeCalendar .scheduleTeacherHeader .scheduleTeacherHeaderDot{display:block;width:9px;min-width:9px;max-width:9px;height:9px;flex:0 0 9px;margin:0;padding:0;border-radius:50%;background:var(--teacher-color,#1a73e8)}.googleLikeCalendar .scheduleTeacherHeader>span:last-child{width:auto;min-width:22px;max-width:none;height:20px;margin:0;padding:0 6px;overflow:visible;font-size:.58rem;line-height:20px;text-align:center}.googleLikeCalendar .scheduleLesson{padding:3px 5px;font-size:inherit}.googleLikeCalendar .scheduleLessonShort{justify-content:center;gap:0;padding-top:2px;padding-bottom:2px}.googleLikeCalendar .scheduleLessonShort .scheduleLessonMain{align-items:center;line-height:1}.googleLikeCalendar .scheduleLessonShort .scheduleLessonMain time{font-size:.55rem}.googleLikeCalendar .scheduleLessonShort .scheduleLessonMain strong{font-size:.68rem;line-height:1}.googleLikeCalendar .scheduleLessonShort .scheduleLessonDetails{display:none}.googleLikeCalendar .scheduleLessonMovedPlaceholder{border-left-color:var(--teacher-color,#7b82a8);background:repeating-linear-gradient(135deg,rgba(255,255,255,.72) 0,rgba(255,255,255,.72) 6px,transparent 6px,transparent 12px),var(--teacher-color-soft,#eef0f7);color:var(--teacher-color-text,#5f6368);opacity:.82}.googleLikeCalendar .scheduleLessonMovedPlaceholder:hover{opacity:.94}@media (max-width:1180px){.workQueueGrid{grid-template-columns:repeat(3,minmax(190px,1fr));overflow-x:auto}}@media (max-width:1000px){.googleLikeCalendar .editableScheduleLayout{grid-template-columns:1fr}.googleLikeCalendar .calendarTeacherFilter{border-right:0;border-bottom:1px solid #dadce0}}@media (max-width:900px){.editableScheduleLayout{grid-template-columns:1fr}.calendarTeacherFilter{border-right:0}.calendarSyncSettings{align-items:stretch;flex-direction:column}.calendarSyncActions{flex:1 1 auto;justify-content:stretch}.calendarSyncActions,.calendarSyncActions .syncWidget{min-width:0;width:100%}}@media (max-width:760px){.googleLikeCalendar{border-right:0;border-left:0;border-radius:0}.googleLikeCalendar .calendarTeacherFilter{padding:6px 8px 7px}.googleLikeCalendar .calendarTeacherFilter header{display:none}.googleLikeCalendar .calendarTeacherQuickSwitch{display:flex;gap:6px;margin:0 0 6px;padding:0;overflow-x:auto;border:0;background:transparent;scrollbar-width:none}.googleLikeCalendar .calendarTeacherFilterList::-webkit-scrollbar,.googleLikeCalendar .calendarTeacherQuickSwitch::-webkit-scrollbar{display:none}.googleLikeCalendar .calendarFilterQuickButton{min-height:30px;flex:0 0 auto;padding:0 10px;border:1px solid #dadce0;border-radius:16px;background:#fff;font-size:.68rem}.googleLikeCalendar .calendarFilterQuickButtonActive{border-color:#c6dafc;background:#e8f0fe;color:#1967d2;box-shadow:none}.googleLikeCalendar .calendarTeacherFilterList{display:flex;max-height:none;flex-direction:row;gap:6px;overflow-x:auto;overflow-y:hidden;padding:0 0 2px;scrollbar-width:none}.googleLikeCalendar .calendarTeacherFilterItem{min-width:max-content;flex:0 0 auto;grid-template-columns:14px 8px minmax(0,auto);gap:5px;padding:4px 8px;border:1px solid #dadce0;border-radius:17px;background:#fff}.googleLikeCalendar .calendarTeacherFilterItemVisible{border-color:#d2e3fc;background:#f8fbff}.googleLikeCalendar .calendarTeacherFocusButton{flex-direction:row;align-items:center;gap:4px;padding:0}.googleLikeCalendar .calendarTeacherFocusButton strong{width:auto;max-width:145px;font-size:.69rem}.googleLikeCalendar .calendarTeacherFocusButton small{font-size:.58rem;white-space:nowrap}.googleLikeCalendar .scheduleViewport{max-height:calc(100dvh - 210px);scroll-snap-type:x mandatory;scroll-padding-inline-start:48px}.googleLikeCalendar .scheduleGrid{grid-template-columns:48px repeat(var(--teacher-count),calc(100cqw - 48px))}.googleLikeCalendar .scheduleAxis,.googleLikeCalendar .scheduleCorner{left:0;width:48px;min-width:48px;max-width:48px;transform:none}.googleLikeCalendar .scheduleCorner{font-size:.5rem}.googleLikeCalendar .scheduleHourLabel{right:5px;font-size:.62rem}.googleLikeCalendar .scheduleTeacherColumn,.googleLikeCalendar .scheduleTeacherHeader{width:auto;min-width:0;max-width:none;scroll-snap-align:start;scroll-snap-stop:always}.googleLikeCalendar .scheduleTeacherHeader{min-height:46px;scroll-margin-inline-start:48px;padding:6px 8px}.googleLikeCalendar .scheduleTeacherHeader strong{font-size:.78rem;font-weight:650}.googleLikeCalendar .scheduleTeacherHeader>span:last-child{min-width:24px;height:22px;border-radius:11px;font-size:.62rem;line-height:22px}.googleLikeCalendar .editableScheduleColumn .scheduleLesson{padding:5px 7px;border-left-width:4px;border-radius:5px}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain{gap:0}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain time{display:none}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain strong{font-size:.77rem;line-height:1.12}.googleLikeCalendar .editableScheduleColumn .scheduleLessonDetails{padding-top:3px;font-size:.62rem;line-height:1.15}}.googleLikeCalendar .scheduleTeacherHeader{display:flex!important;position:-webkit-sticky!important;position:sticky!important;top:0;z-index:60;background:#fff}.googleLikeCalendar .scheduleTeacherHeader strong{overflow:visible;text-overflow:clip;white-space:normal;line-height:1.15}@media (max-width:760px){.googleLikeCalendar .scheduleTeacherHeader{min-height:48px}}.studentCancellationChoices{display:grid!important;min-width:min(420px,100%);grid-gap:7px!important;gap:7px!important}.studentCancellationChoices .dangerButton,.studentCancellationChoices .primaryButton,.studentCancellationChoices .secondaryButton{width:100%;justify-content:center}.studentCancellationChoiceHint{margin:-2px 2px 4px!important;color:var(--muted)!important;font-size:.68rem!important;line-height:1.35!important}.studentMakeupForm{display:grid;grid-gap:10px;gap:10px;margin:2px 0 7px;padding:12px;border:1px solid #d9dcf8;border-radius:12px;background:#f8f9ff}.studentMakeupFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.studentMakeupForm .fieldGroup{gap:5px}.studentMakeupForm input[type=date],.studentMakeupForm input[type=time]{min-height:42px}.studentMakeupWithoutTerm{display:flex;gap:8px;color:var(--text-soft);font-size:.75rem;font-weight:700}.studentMakeupWithoutTerm input{width:17px;height:17px;flex:0 0 17px}.studentMakeupForm small{color:var(--muted);font-size:.68rem;line-height:1.4}.editableScheduleColumn .scheduleLessonAbsence{border-left:3px dashed var(--teacher-color,#1a73e8);background:repeating-linear-gradient(135deg,rgba(255,255,255,.62) 0,rgba(255,255,255,.62) 7px,transparent 7px,transparent 14px),var(--teacher-color-soft,#e8f0fe);color:var(--teacher-color-text,#174ea6);opacity:.82}.editableScheduleColumn .scheduleLessonAbsence:hover{opacity:.95}.editableScheduleColumn .scheduleLessonScheduledMakeup{border-left-color:#c58a16;background:#fff4d8;color:#6e4600}@media (max-width:720px){.studentCancellationChoices{min-width:0}.studentMakeupFields{grid-template-columns:1fr}}.lessonDeleteConfirmation:has(.studentCancellationChoices){display:grid;grid-gap:14px;gap:14px;margin-top:14px;padding:16px;border:1px solid #f0c7c4;border-radius:16px;background:#fffafa}.lessonDeleteConfirmation:has(.studentCancellationChoices)>div:first-child{display:grid;grid-gap:4px;gap:4px}.lessonDeleteConfirmation:has(.studentCancellationChoices)>div:first-child strong{font-size:.98rem}.studentCancellationChoices{min-width:0;gap:10px!important}.studentCancellationChoices>button{min-height:46px}.studentCancellationChoiceHint{margin:-5px 3px 2px!important;font-size:.72rem!important;line-height:1.45!important}.studentMakeupForm{gap:12px;margin:2px 0;padding:14px;border-radius:14px;background:#f7f8ff}.studentMakeupWithoutTerm{min-height:36px;align-items:center}.studentMakeupWithoutTerm input{width:18px!important;min-height:18px!important;margin:0;padding:0!important}@media (max-width:720px){.lessonDeleteConfirmation:has(.studentCancellationChoices){padding:12px}.studentCancellationChoices>button{white-space:normal;line-height:1.25}}.lessonEditorBackdrop{z-index:2000;box-sizing:border-box;overflow:hidden;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.lessonEditorDialog{display:flex;max-height:calc(100dvh - 48px);flex-direction:column;overflow:hidden}.lessonEditorFooter,.lessonEditorHeader{position:relative;z-index:2;flex:0 0 auto;background:#fff}.lessonEditorBody{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.editableScheduleWrapper .scheduleViewport{overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y}@media (max-width:760px){.lessonEditorBackdrop{place-items:stretch center;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.lessonEditorDialog{width:100%;height:100%;max-height:100%;border-radius:20px}.lessonEditorHeader{padding-top:14px;padding-bottom:14px}.lessonEditorFooter{padding-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.lessonEditorBody{padding-bottom:16px;scroll-padding-top:12px;scroll-padding-bottom:16px}}.dashboardShell{display:flex;flex-direction:column}.dashboardShell>.dashboardControlGrid{position:-webkit-sticky;position:sticky;top:var(--ems-header-height,124px);z-index:45;order:1;align-self:stretch;padding:7px 0;background:rgba(248,249,253,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.dashboardShell>.workQueue{order:2;margin-top:8px}.dashboardShell>.lessonPanel{order:3}.dashboardShell>.calendarSummaryBar{order:4}.lessonPanel:has(>.editableScheduleWrapper){display:flex;flex-direction:column;overflow:visible}.lessonPanel:has(>.editableScheduleWrapper)>.editableScheduleWrapper{order:1}.lessonPanel:has(>.editableScheduleWrapper)>.schedulePanelHeader{order:2;border-top:1px solid var(--border);border-bottom:0}.googleLikeCalendar{display:flex;flex-direction:column;overflow:visible}.googleLikeCalendar .scheduleCorner,.googleLikeCalendar .scheduleTeacherHeader{visibility:hidden}.scheduleDesktopTeacherSticky{position:-webkit-sticky;position:sticky;top:var(--schedule-mobile-sticky-top,0);z-index:44;order:1;display:grid;height:42px;min-height:42px;grid-template-columns:64px minmax(0,1fr);margin-bottom:-42px;border-bottom:1px solid #dadce0;background:rgba(255,255,255,.98);box-shadow:0 1px 3px rgba(60,64,67,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scheduleDesktopTeacherStickyCorner{display:flex;align-items:center;justify-content:center;border-right:1px solid #dadce0;color:#9aa0a6;font-size:.52rem;font-weight:500}.scheduleDesktopTeacherStickyClip{min-width:0;overflow:hidden}.scheduleDesktopTeacherStickyTrack{display:grid;width:max-content;min-width:100%;height:42px;grid-template-columns:var(--teacher-columns);transform:translateX(calc(-1 * var(--schedule-scroll-x, 0px)));will-change:transform}.scheduleDesktopTeacherStickyCell{display:flex;min-width:0;align-items:center;gap:6px;padding:5px 8px;border-right:1px solid #dadce0;color:#3c4043}.scheduleDesktopTeacherStickyCell strong{min-width:0;flex:1 1 auto;overflow:hidden;font-size:.72rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.scheduleDesktopTeacherStickyCell>span:last-child{display:inline-grid;min-width:20px;height:20px;place-items:center;border-radius:10px;background:#f1f3f4;color:#70757a;font-size:.58rem}.googleLikeCalendar .editableScheduleLayout{order:1;display:flex;min-width:0;flex-direction:column;grid-template-columns:none!important}.googleLikeCalendar .calendarTeacherFilterEmpty,.googleLikeCalendar .scheduleViewport{order:1}.googleLikeCalendar .scheduleViewport{max-height:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overscroll-behavior-y:auto}.googleLikeCalendar .calendarTeacherFilter{order:2;padding:8px 10px 9px;border-top:1px solid #dadce0;border-right:0;border-bottom:0}.googleLikeCalendar .calendarTeacherFilter header{display:none}.googleLikeCalendar .calendarTeacherQuickSwitch{display:flex;gap:6px;margin:0 0 6px;padding:0;overflow-x:auto;border:0;background:transparent;scrollbar-width:none}.googleLikeCalendar .calendarTeacherFilterList{display:flex;max-height:none;flex-direction:row;gap:6px;overflow-x:auto;overflow-y:hidden;padding:0 0 2px;scrollbar-width:none}.googleLikeCalendar .calendarTeacherFilterList::-webkit-scrollbar,.googleLikeCalendar .calendarTeacherQuickSwitch::-webkit-scrollbar{display:none}.googleLikeCalendar .calendarTeacherFilterItem{min-width:max-content;flex:0 0 auto;grid-template-columns:14px 8px minmax(0,auto);gap:5px}.googleLikeCalendar .editableScheduleLegend{order:3;border-top:1px solid var(--border);border-bottom:0}@media (max-width:1180px){.dashboardShell>.dashboardControlGrid{top:var(--ems-header-height,118px)}}@media (max-width:760px){.scheduleDesktopTeacherSticky{display:none}.googleLikeCalendar .scheduleMobileTeacherSticky{margin-bottom:-42px}}@media (max-width:720px){.dashboardShell>.dashboardControlGrid{top:var(--ems-header-height,62px);margin-bottom:2px;padding:5px 0}.dashboardShell>.workQueue{margin-top:6px}.lessonPanel:has(>.editableScheduleWrapper)>.schedulePanelHeader{padding-top:9px}.googleLikeCalendar .calendarTeacherFilter{padding-top:7px}.googleLikeCalendar .scheduleViewport{max-height:none;overflow-x:auto;overflow-y:hidden}.googleLikeCalendar .scheduleCorner{visibility:hidden}}.dashboardShell>.dashboardControlGrid{padding-top:4px;padding-bottom:5px;background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(60,64,67,.08)}.googleLikeCalendar{border-color:#dadce0;border-radius:8px;background:#fff;box-shadow:none;color:#3c4043}.googleLikeCalendar .scheduleDesktopTeacherSticky{height:48px;min-height:48px;margin-bottom:-48px;border-bottom-color:#dadce0;background:rgba(255,255,255,.98);box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.googleLikeCalendar .scheduleDesktopTeacherStickyTrack{height:48px}.googleLikeCalendar .scheduleDesktopTeacherStickyCorner{color:#70757a;font-size:.55rem;font-weight:500}.googleLikeCalendar .scheduleDesktopTeacherStickyCell{min-height:48px;gap:8px;padding:6px 10px;border-right-color:#e8eaed;background:#fff}.googleLikeCalendar .scheduleDesktopTeacherStickyCell .scheduleTeacherHeaderDot,.googleLikeCalendar .scheduleMobileTeacherSticky .scheduleTeacherHeaderDot{width:10px;min-width:10px;max-width:10px;height:10px;flex-basis:10px}.googleLikeCalendar .scheduleDesktopTeacherStickyCell strong{color:#3c4043;font-size:.74rem;font-weight:560;letter-spacing:.005em}.googleLikeCalendar .scheduleDesktopTeacherStickyCell>span:last-child{min-width:0;height:auto;padding:0;background:transparent;color:#80868b;font-size:.6rem;font-weight:500}.googleLikeCalendar .scheduleCorner,.googleLikeCalendar .scheduleTeacherHeader{min-height:48px}.googleLikeCalendar .scheduleAxis{border-right-color:#dadce0;background:#fff}.googleLikeCalendar .scheduleHourLabel{right:8px;padding:0 2px;background:#fff;color:#70757a;font-size:.58rem;font-weight:500;line-height:1}.googleLikeCalendar .editableScheduleColumn{border-right-color:#e8eaed;cursor:pointer;background:#fff}.googleLikeCalendar .editableScheduleColumn:hover{background:rgba(26,115,232,.018)}.googleLikeCalendar .scheduleTimeGuideHour{border-top-color:#e8eaed}.googleLikeCalendar .scheduleTimeGuideHalfHour{border-top-color:#f4f5f6}.googleLikeCalendar .scheduleCurrentTimeLine{height:1px;background:#ea4335}.googleLikeCalendar .scheduleCurrentTimeLine:before{top:-4px;left:-4px;width:9px;height:9px;background:#ea4335}.googleLikeCalendar .scheduleCurrentTimeLabel{right:6px;padding:2px 4px;border-radius:3px;background:#ea4335;font-size:.52rem;font-weight:600}.googleLikeCalendar .editableScheduleColumn .scheduleLesson{gap:2px;padding:4px 6px;border-left-width:4px;border-radius:4px;box-shadow:none;transition:box-shadow .12s ease,filter .12s ease,transform .12s ease}.googleLikeCalendar .editableScheduleColumn .scheduleLesson:hover{filter:brightness(.985) saturate(1.04);box-shadow:0 1px 3px rgba(60,64,67,.22)}.googleLikeCalendar .editableScheduleColumn .scheduleLesson:active{transform:translateY(1px)}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain{gap:4px;line-height:1.08}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain time{font-size:.58rem;font-weight:600}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain strong{font-size:.71rem;font-weight:620;line-height:1.1}.googleLikeCalendar .editableScheduleColumn .scheduleLessonDetails{padding-top:1px;font-size:.58rem;font-weight:500;line-height:1.15;opacity:.86}.googleLikeCalendar .calendarTeacherFilter{background:#fff}.googleLikeCalendar .calendarTeacherQuickSwitch{gap:5px}.googleLikeCalendar .calendarFilterQuickButton{min-height:30px;padding:0 10px;border-color:#dadce0;border-radius:15px;background:#fff;color:#5f6368;font-weight:560;box-shadow:none}.googleLikeCalendar .calendarFilterQuickButton:hover{background:#f8f9fa}.googleLikeCalendar .calendarFilterQuickButtonActive{border-color:#d2e3fc;background:#e8f0fe;color:#1967d2}.googleLikeCalendar .calendarTeacherFilterItem{border-radius:6px}.googleLikeCalendar .calendarTeacherFilterItem:hover{background:#f8f9fa}.googleLikeCalendar .calendarTeacherFilterItemVisible{background:#fff}.googleLikeCalendar .calendarTeacherFocusButton strong{color:#3c4043;font-weight:560}.googleLikeCalendar .calendarTeacherFocusButton small{color:#80868b;font-weight:500}.googleLikeCalendar .editableScheduleLegend{min-height:42px;padding:5px 9px 5px 12px;border-top-color:#dadce0;background:#fff}.googleLikeCalendar .calendarLegendCopy strong{color:#3c4043;font-size:.76rem;font-weight:560}.googleLikeCalendar .calendarLegendCopy span{color:#80868b;font-size:.63rem}.googleLikeCalendar .editableScheduleLegend .primaryButton{min-height:32px;border-radius:4px;box-shadow:none}@media (max-width:760px){.dashboardShell>.dashboardControlGrid{background:rgba(255,255,255,.98)}.googleLikeCalendar{border-radius:0}.googleLikeCalendar .scheduleMobileTeacherSticky{min-height:48px;margin-bottom:-48px;padding-top:6px;padding-bottom:6px;border-bottom-color:#dadce0;background:rgba(255,255,255,.98);box-shadow:none}.googleLikeCalendar .scheduleMobileTeacherSticky strong{color:#3c4043;font-size:.76rem;font-weight:580}.googleLikeCalendar .scheduleMobileTeacherSticky>span:last-child{min-width:0;height:auto;padding:0;background:transparent;color:#80868b;font-size:.6rem}.googleLikeCalendar .calendarTeacherFilter{padding:7px 8px 8px;background:#fff}.googleLikeCalendar .calendarTeacherFilterItem{border-color:#dadce0;background:#fff}.googleLikeCalendar .calendarTeacherFilterItemVisible{border-color:#d2e3fc;background:#f8fbff}.googleLikeCalendar .editableScheduleColumn .scheduleLesson{padding:5px 7px;border-left-width:4px;border-radius:4px}.googleLikeCalendar .editableScheduleColumn .scheduleLessonMain strong{font-size:.77rem;font-weight:620}.googleLikeCalendar .editableScheduleColumn .scheduleLessonDetails{font-size:.62rem}}.smsRemindersPage{max-width:1440px;margin:0 auto;padding:28px 24px 56px}.smsReminderPanel{display:grid;grid-gap:18px;gap:18px}.smsReminderHero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px;border:1px solid var(--border,#e5e7eb);border-radius:18px;background:var(--surface,#fff)}.smsReminderHero .eyebrow{margin:0 0 6px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.smsReminderHero h1{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.12}.smsReminderHero p:not(.eyebrow){margin:9px 0 0;color:#6b7280}.smsPrimaryButton,.smsRefreshButton{border:0;border-radius:12px;font:inherit;font-weight:800;cursor:pointer}.smsPrimaryButton{min-width:180px;padding:13px 18px;background:#111827;color:#fff}.smsPrimaryButton:disabled,.smsRefreshButton:disabled{cursor:not-allowed;opacity:.5}.smsRefreshButton{padding:10px 14px;background:#f3f4f6;color:#111827}.smsAlert{display:grid;grid-gap:4px;gap:4px;padding:14px 16px;border-radius:12px;border:1px solid transparent}.smsAlertSuccess{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.smsAlertWarning{background:#fffbeb;border-color:#fde68a;color:#92400e}.smsAlertError{background:#fef2f2;border-color:#fecaca;color:#991b1b}.smsSummaryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.smsSummaryGrid>div{display:grid;grid-gap:3px;gap:3px;padding:16px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.smsSummaryGrid strong{font-size:25px}.smsSummaryGrid span{color:#6b7280;font-size:13px}.smsToolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.smsSelectAll{display:inline-flex;align-items:center;gap:9px;font-weight:700;cursor:pointer}.smsReminderTable input[type=checkbox],.smsSelectAll input{width:18px;height:18px;accent-color:#111827}.smsTableWrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.smsReminderTable{width:100%;border-collapse:collapse;min-width:920px}.smsReminderTable td,.smsReminderTable th{padding:14px 13px;border-bottom:1px solid #eef0f2;text-align:left;vertical-align:middle}.smsReminderTable th{background:#f9fafb;color:#4b5563;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.smsReminderTable td:first-child,.smsReminderTable th:first-child{width:48px;text-align:center}.smsReminderTable tbody tr:last-child td{border-bottom:0}.smsReminderTable small{display:block;max-width:480px;margin-top:4px;color:#6b7280;line-height:1.35}.smsTime{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:17px}.smsRowSent{background:#f8fffb}.smsStatus{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:800}.smsStatus-success{background:#d1fae5;color:#065f46}.smsStatus-error{background:#fee2e2;color:#991b1b}.smsStatus-warning{background:#fef3c7;color:#92400e}.smsStatus-ready{background:#e5e7eb;color:#374151}.smsReminderFootnote{margin:0;color:#6b7280;font-size:13px;line-height:1.5}.smsEmptyState,.smsReminderLoading{display:grid;grid-gap:5px;gap:5px;padding:26px;border:1px dashed #d1d5db;border-radius:14px;background:#fff;color:#6b7280}.smsEmptyState strong{color:#111827}@media (max-width:900px){.smsSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.smsReminderHero{flex-direction:column}.smsPrimaryButton{width:100%}}@media (max-width:600px){.smsRemindersPage{padding:18px 12px 40px}.smsSummaryGrid{grid-template-columns:1fr 1fr}.smsToolbar{align-items:flex-start;flex-direction:column}}.smsPhoneCell{min-width:260px}.smsPhoneEditor{display:grid;grid-gap:6px;gap:6px;min-width:240px}.smsPhoneEditorLine{display:flex;align-items:center;gap:6px}.smsPhoneEditorLine input[type=tel]{width:150px;min-width:0;padding:9px 10px;border:1px solid #d1d5db;border-radius:9px;background:#fff;color:#111827;font:inherit}.smsPhoneEditorLine input[type=tel]:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.smsPhoneApplyButton{padding:9px 11px;border:0;border-radius:9px;background:#111827;color:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.smsPhoneApplyButton:disabled{cursor:not-allowed;opacity:.5}.smsSaveStudentPhone{display:flex;align-items:flex-start;gap:7px;color:#374151;font-size:12px;line-height:1.4;cursor:pointer}.smsSaveStudentPhone input[type=checkbox]{flex-shrink:0;margin:0}.smsReminderTable .smsPhoneApplied{color:#047857}.smsReminderTable .smsPhoneError{color:#b91c1c}.smsSkipButton{display:block;margin-top:9px;padding:5px 0;border:0;background:transparent;font:inherit;font-size:12px;font-weight:700;color:#6b7280;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.smsSkipButton:hover{color:#991b1b}.smsSkipButton:disabled{opacity:.5;cursor:not-allowed}.smsBottomActions{display:flex;justify-content:flex-end;align-items:center;gap:16px;padding:16px 20px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.smsBottomActions span{color:#4b5563;font-size:13px}@media (max-width:640px){.smsBottomActions{flex-direction:column;align-items:stretch}.smsBottomActions .smsPrimaryButton{width:100%}}.smsSummaryGrid>.smsSummaryPending{border-left:4px solid #d97706}.smsPendingHeading h2{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;color:#111827;font-size:20px}.smsPendingHeading h2 span{padding:4px 12px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.smsPendingHeading p{margin:6px 0 0;color:#6b7280;font-size:13px}.smsSentSection{overflow:hidden;border:1px solid #d1d5db;border-radius:14px;background:#fff}.smsSentToggle{display:flex;align-items:center;gap:14px;padding:17px 20px;cursor:pointer;list-style:none}.smsSentToggle::-webkit-details-marker{display:none}.smsSentToggle span{color:#374151;font-weight:800}.smsSentToggle strong{margin-left:6px;padding:3px 9px;border-radius:999px;background:#e5e7eb;color:#374151;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.smsSentToggle small{margin-left:auto;color:#6b7280}.smsSentToggle:after{content:"▾";font-size:21px;color:#374151;transition:transform .15s ease}.smsSentSection[open] .smsSentToggle:after{transform:rotate(180deg)}.smsSentToggle:focus-visible{outline:2px solid #2563eb;outline-offset:-3px}.smsSentTableWrap{border:0;border-top:1px solid #e5e7eb;border-radius:0}.smsSentTable{min-width:760px}.smsSentTable td:first-child,.smsSentTable th:first-child{width:auto;text-align:left}@media (max-width:600px){.smsSentToggle{flex-wrap:wrap;gap:8px 12px;padding:15px}.smsSentToggle small{order:3;width:100%;margin-left:0}.smsSentToggle:after{margin-left:auto}}@media (max-width:720px){section[role=dialog][aria-labelledby=new-student-wizard-title]>footer{padding-bottom:calc(60px + env(safe-area-inset-bottom))!important}}:root{--ui-touch:44px;--ui-page-title:clamp(1.95rem,3.2vw,2.55rem);--ui-section-title:1.25rem;--ui-body:.92rem;--ui-small:.78rem}main h1{font-size:var(--ui-page-title);line-height:1.04;letter-spacing:-.035em}.dashboardHero,.pageHeader{margin-bottom:20px}.dashboardHero{align-items:center}.dashboardHero h1{font-size:var(--ui-page-title);line-height:1.04}.dashboardHero .lead,.pageHeader .lead{margin-top:10px;font-size:var(--ui-body);line-height:1.5}.dashboardHero .integrationBadge{padding:11px 14px;box-shadow:var(--shadow-xs)}.calendarSummaryBar a{color:var(--accent-dark);font-weight:800;text-decoration:none}.calendarSummaryBar a:hover{text-decoration:underline;text-underline-offset:3px}.calendarFilterQuickButton,.editableScheduleLegend .primaryButton,.iconButton,.primaryButton,.schedulePanelHeader .primaryButton,.schedulePanelHeader .secondaryButton,.secondaryButton{min-height:var(--ui-touch)}.headerUtilities{display:flex;min-width:0;align-items:center;gap:8px;margin-left:auto}.navCount{display:inline-flex;min-width:18px;height:18px;margin-left:5px;padding:0 5px;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:#fff;font-size:.63rem;font-weight:850;line-height:1;vertical-align:1px}.navMenuPanelStructured{width:340px;max-height:min(76vh,720px);overflow-y:auto}.navMenuSection+.navMenuSection{margin-top:5px;padding-top:6px;border-top:1px solid var(--border)}.navMenuSection>p{margin:0;padding:7px 11px 3px;color:var(--muted);font-size:.64rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.globalSearchQuickLinks{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:9px!important}.globalSearchQuickLinks a{padding:6px 9px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text-soft);text-decoration:none}.globalSearchType-action{background:var(--blue-soft);color:var(--accent-dark);font-size:.95rem}.globalSearchLoadingMore{padding:8px 10px;color:var(--muted);font-size:.7rem;text-align:center}.mobileBottomNav{display:none}@media (max-width:1180px){.appHeaderInner.appHeaderSimplified{flex-wrap:wrap}.desktopPrimaryNav{order:3;width:100%;justify-content:center;flex-wrap:wrap}.headerUtilities{order:2;flex:1 1 auto;justify-content:flex-end}.brand{order:1}.globalSearch{width:min(390px,42vw)}}@media (max-width:820px){.dashboardHero{align-items:flex-start;flex-direction:column;gap:14px}.dashboardHero .integrationBadge{max-width:100%;min-width:0}}@media (max-width:720px){body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}.appHeaderInner.appHeaderSimplified{width:calc(100% - 20px);min-height:62px;flex-wrap:nowrap;padding:7px 0}.brandLogo{width:64px;max-height:44px}.desktopPrimaryNav{display:none}.headerUtilities{min-width:0;gap:6px}.globalSearch{width:auto;min-width:0;flex:1 1 auto}.globalSearchField{min-height:40px}.globalSearchField input{font-size:16px}.globalSearchPanel{top:62px;right:8px;left:8px;width:auto;max-height:calc(100dvh - 138px)}.dashboardShell>.dashboardControlGrid{top:var(--ems-header-height,62px)}.calendarFilterQuickButton,.editableScheduleLegend .primaryButton,.schedulePanelHeader .primaryButton,.schedulePanelHeader .secondaryButton{min-height:var(--ui-touch)}.mobileBottomNav{position:fixed;right:0;bottom:0;left:0;z-index:120;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:calc(60px + env(safe-area-inset-bottom));padding:5px 6px max(5px,env(safe-area-inset-bottom));border-top:1px solid rgba(218,223,235,.95);background:rgba(255,255,255,.98);box-shadow:0 -8px 24px rgba(32,42,79,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}body:has([role=dialog][aria-modal=true]) .mobileBottomNav{visibility:hidden;pointer-events:none}.mobileBottomLink{position:relative;display:flex;min-width:0;min-height:50px;align-items:center;justify-content:center;padding:5px 3px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:.68rem;font-weight:780;text-align:center;text-decoration:none;cursor:pointer}.mobileBottomLinkActive{background:var(--accent-soft);color:var(--accent-dark)}.mobileBottomLink b{position:absolute;top:3px;right:calc(50% - 23px);min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;font-size:.57rem;line-height:17px}.mobileNavMore{position:static}.mobileNavMore>summary{list-style:none}.mobileNavMore>summary::-webkit-details-marker{display:none}.mobileNavMore[open]>summary{background:var(--accent-soft);color:var(--accent-dark)}.mobileNavMorePanel{position:fixed;right:8px;bottom:calc(64px + env(safe-area-inset-bottom));left:8px;z-index:130;max-height:min(68dvh,620px);overflow-y:auto;padding:10px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.99);box-shadow:0 24px 70px rgba(32,42,79,.2)}.mobileNavQuickRow{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px;margin-bottom:8px}.mobileNavQuickRow .mobilePayrollQuickLink{grid-column:1/-1}.mobileNavQuickRow a{display:flex;min-height:44px;align-items:center;justify-content:center;border-radius:11px;background:var(--accent-soft);color:var(--accent-dark);font-size:.79rem;font-weight:820;text-decoration:none}.mobileNavMorePanel section+section{margin-top:7px;padding-top:7px;border-top:1px solid var(--border)}.mobileNavMorePanel section>p{margin:0;padding:4px 6px;color:var(--muted);font-size:.63rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.mobileNavMorePanel section>a{display:flex;min-height:46px;padding:8px 9px;border-radius:10px;flex-direction:column;justify-content:center;font-size:.82rem;font-weight:790;text-decoration:none}.mobileNavMorePanel section>a:active{background:var(--surface-soft)}.mobileNavMorePanel section>a span{margin-top:2px;color:var(--muted);font-size:.68rem;font-weight:500}.contextHelpDock{bottom:calc(72px + env(safe-area-inset-bottom))}main h1{font-size:clamp(1.75rem,8vw,2.05rem)}.pageShell,.shell{padding-bottom:38px}}.desktopSessionActions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.desktopSessionActions .contextHelp>summary{min-height:38px;font-size:.8rem}.mobileNavTools{display:none}@media (max-width:720px){.desktopSessionActions{display:none}.mobileNavTools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px;margin-top:9px;padding:12px 5px 3px;border-top:1px solid var(--border)}.mobileNavTools .contextHelp{min-width:0}.mobileLogoutLink,.mobileNavTools .contextHelp>summary{display:flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:9px 12px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text-soft);font-size:.86rem;font-weight:750;text-decoration:none;cursor:pointer}.mobileNavTools .contextHelpPanel{position:static;width:auto;max-height:none;margin-top:8px;padding:12px;border-radius:12px;box-shadow:none;overflow-y:visible}.mobileNavTools .contextHelpPanel:before{display:none}.mobileNavTools .contextHelp[open]{grid-column:1/-1}.mobileNavTools .contextHelp[open]>summary{width:100%}}@media (min-width:721px){.appHeaderInner.appHeaderSimplified{display:grid;grid-template-columns:minmax(185px,auto) minmax(0,1fr);grid-template-areas:"brand utilities" "navigation navigation";align-items:center;grid-gap:8px 16px;gap:8px 16px;padding:9px 0}.appHeaderInner.appHeaderSimplified>.brand{grid-area:brand;justify-self:start;min-width:max-content;flex-shrink:0}.appHeaderInner.appHeaderSimplified>.desktopPrimaryNav{grid-area:navigation;order:0;width:max-content;max-width:100%;min-width:0;justify-self:center;justify-content:center;flex-wrap:wrap}.appHeaderInner.appHeaderSimplified>.headerUtilities{grid-area:utilities;order:0;min-width:0;width:100%;justify-self:end;justify-content:flex-end}.appHeaderInner.appHeaderSimplified .navLink{white-space:nowrap}}@media (min-width:721px) and (max-width:980px){.appHeaderInner.appHeaderSimplified .globalSearch{width:min(310px,37vw);min-width:150px}}.lessonEditorDialog.lessonEditorDialogDetail{width:min(640px,100%);border:1px solid #e0e4f0;border-radius:20px;box-shadow:0 28px 84px rgba(18,23,42,.26)}.lessonEditorDialogDetail .lessonDetailsHeader{padding:22px 24px 18px;align-items:flex-start;gap:16px;background:linear-gradient(135deg,#f9faff,#fff);border-bottom:1px solid #e7e9f4}.lessonDetailsHeading{min-width:0;flex:1 1}.lessonEditorDialogDetail .lessonDetailsHeading p{margin:0 0 5px;color:var(--accent-dark,#5342d5);font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.lessonEditorDialogDetail .lessonDetailsHeading h2{margin:0;color:#18213d;font-size:clamp(1.22rem,2.6vw,1.55rem);line-height:1.25;font-weight:800;overflow-wrap:anywhere}.lessonDetailsHeading>span{display:block;margin-top:6px;color:#5f6884;font-size:.83rem;line-height:1.4}.lessonEditorDialogDetail .lessonDialogClose{flex:0 0 auto;min-width:40px;height:40px;border-radius:10px;border:1px solid #e1e5f0;color:#505975;background:#fff}.lessonEditorDialogDetail .lessonDetailsBody{padding:20px 24px 26px}.lessonDetailsWhen{display:grid;grid-gap:5px;gap:5px;margin:0 0 16px;padding:18px 20px;border-radius:14px;border:1px solid #dfe5f9;background:#f5f7fe}.lessonDetailsWhen>span:first-child{color:#66708e;font-size:.7rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.lessonDetailsWhen strong{font-size:.96rem;color:#263254}.lessonDetailsWhen b{font-size:1.45rem;font-weight:850;color:#19264b;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lessonDetailsWhen>span:last-child{color:#59637e;font-size:.76rem}.lessonDetailsList{margin:0}.lessonDetailsList>div{display:grid;grid-template-columns:124px minmax(0,1fr);grid-gap:16px;gap:16px;padding:11px 4px;border-bottom:1px solid #edf0f6}.lessonDetailsList dt{color:#727c99;font-size:.75rem;font-weight:650}.lessonDetailsList dd{min-width:0;margin:0;color:#25314f;font-size:.84rem;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.lessonDetailsList dd:has(a){display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between}.lessonDetailsList a{color:#4058bb;font-size:.74rem;font-weight:750;text-decoration:none}.lessonDetailsList a:hover{text-decoration:underline}.lessonDetailsActions{display:grid;grid-gap:10px;gap:10px;margin-top:20px}.lessonDetailsActions h3{margin:0 0 3px;color:#1c2948;font-size:.9rem;font-weight:850}.lessonDetailsAction{display:grid;grid-gap:4px;gap:4px;width:100%;padding:14px 17px;border:1px solid #dce2ef;border-radius:13px;background:#fff;color:#253354;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease}.lessonDetailsAction strong{font-size:.9rem;font-weight:800}.lessonDetailsAction span{color:#69738e;font-size:.75rem;line-height:1.4}.lessonDetailsAction:focus-visible,.lessonDetailsAction:hover:not(:disabled){background:#f6f7ff;border-color:#a7b1e7;outline-offset:2px}.lessonDetailsActionCancel{background:#fffafb;border-color:#ead5dd}.lessonDetailsActionCancel:hover:not(:disabled){background:#fff5f7;border-color:#d4a6b7}.lessonDetailsAction:disabled{cursor:not-allowed;opacity:.5}.lessonDetailsActionNote{margin:3px 0 0;color:#626e8c;font-size:.74rem;line-height:1.5}.lessonQuickActionOverlay{position:fixed;inset:0;z-index:1001;display:grid;place-items:center;padding:20px;background:rgba(19,25,46,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lessonQuickActionDialog{width:min(480px,100%);max-height:min(90dvh,740px);overflow-y:auto;border:1px solid #e0e5f0;border-radius:18px;background:#fff;box-shadow:0 25px 80px rgba(12,20,42,.32)}.lessonQuickActionDialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:21px 22px 17px;border-bottom:1px solid #edf0f6}.lessonQuickActionDialog>header p{margin:0 0 6px;font-size:.69rem;font-weight:800;color:#6660a8;text-transform:uppercase}.lessonQuickActionDialog>header h3{margin:0;color:#202b49;font-size:1.2rem}.lessonQuickActionDialog>header span{display:block;margin-top:7px;color:#67718e;font-size:.76rem;line-height:1.5}.lessonQuickActionDialog .lessonDialogClose{flex:0 0 auto}.lessonQuickActionOptions{display:grid;grid-gap:10px;gap:10px;margin:0;padding:18px 22px;border:0}.lessonQuickActionOptions legend{padding-top:16px;color:#3a4462;font-size:.8rem;font-weight:800}.lessonQuickActionOptions label{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid #dfe3ef;border-radius:11px;cursor:pointer}.lessonQuickActionOptions label:has(input:checked){background:#f4f5ff;border-color:#989be4}.lessonQuickActionOptions input{flex:0 0 18px;width:18px;height:18px;min-height:18px;padding:0;margin:2px 0 0;accent-color:#6554d4}.lessonQuickActionOptions label span{display:grid;grid-gap:4px;gap:4px}.lessonQuickActionOptions label strong{color:#233253;font-size:.86rem}.lessonQuickActionOptions label small{color:#65708c;font-size:.73rem;line-height:1.45}.lessonQuickActionMove{display:grid;grid-gap:15px;gap:15px;padding:19px 22px}.lessonQuickActionMove>p{margin:0;color:#3c496a;font-size:.8rem;line-height:1.55}.lessonQuickActionFields{display:grid;grid-template-columns:1fr 1fr;grid-gap:11px;gap:11px}.lessonQuickActionFields label{display:grid;grid-gap:6px;gap:6px;color:#35425f;font-size:.74rem;font-weight:750}.lessonQuickActionFields input{width:100%;min-width:0;min-height:44px;padding:9px;border:1px solid #cfd6e7;border-radius:9px;color:#253451;background:#fff;font:inherit}.lessonQuickActionMove>small{color:#69738e;font-size:.73rem;line-height:1.4}.lessonQuickActionError{margin:0 22px 14px;padding:12px;border-radius:9px;color:#a22739;background:#fff1f3;font-size:.78rem}.lessonQuickActionDialog>footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;padding:15px 22px 20px;border-top:1px solid #edf0f6}.lessonQuickActionDialog>footer button{min-height:43px}.lessonEditorDialog.lessonEditorDialogEdit{border:1px solid #dadce0;border-radius:18px;box-shadow:0 12px 36px rgba(60,64,67,.24)}.lessonEditorDialogEdit .lessonEditorHeader{padding-top:14px;padding-bottom:13px}.lessonEditorDialogEdit .lessonEditorHeader p{margin-bottom:3px;color:#5f6368;font-size:.63rem;font-weight:650;letter-spacing:.04em;text-transform:none}.lessonEditorDialogEdit .lessonEditorHeader h2{color:#202124;font-size:1.18rem;font-weight:600;letter-spacing:-.02em}.lessonEditorDialogEdit input,.lessonEditorDialogEdit select{border-color:#dadce0;border-radius:8px;box-shadow:none}.lessonEditorDialogEdit input:hover,.lessonEditorDialogEdit select:hover{border-color:#bdc1c6}.lessonEditorDialogEdit input:focus,.lessonEditorDialogEdit select:focus{border-color:#1a73e8;outline:2px solid rgba(26,115,232,.15);outline-offset:0}.lessonEditorDialogEdit .lessonEditorRecurrence,.lessonEditorDialogEdit .lessonEditorScope{border-color:#dadce0;border-radius:10px;background:#f8f9fa}.lessonEditorDialogEdit .lessonEditorFooter{border-top-color:#dadce0;background:#fff}.lessonEditorDialogEdit .primaryButton{border-radius:8px}@media (max-width:760px){.lessonEditorDialog.lessonEditorDialogDetail{width:100%;height:auto;max-height:calc(100dvh - 16px);align-self:center;border-radius:18px}.lessonEditorDialogDetail .lessonEditorBody{flex:0 1 auto}.lessonEditorDialogDetail .lessonDetailsHeader{padding:14px 14px 10px}.lessonEditorDialogDetail .lessonDetailsBody{padding:3px 14px max(16px,env(safe-area-inset-bottom))}.lessonDetailsHeaderActions{gap:2px}.lessonDetailsEditButton{min-height:40px;padding:0 10px}.lessonDetailsEditButton kbd,.lessonDetailsShortcutHint{display:none}.lessonDetailsList>div{grid-template-columns:88px minmax(0,1fr);gap:9px}.lessonEditorDialog.lessonEditorDialogEdit{border-radius:18px}.lessonEditorDialog.lessonEditorDialogDetail{width:100%;max-height:calc(100dvh - 18px);border-radius:18px}.lessonEditorDialogDetail .lessonDetailsHeader{padding:18px 17px 14px}.lessonEditorDialogDetail .lessonDetailsBody{padding:16px 17px max(22px,env(safe-area-inset-bottom))}.lessonDetailsList>div{grid-template-columns:93px minmax(0,1fr);gap:10px}.lessonDetailsWhen{padding:15px 16px}.lessonDetailsAction{min-height:67px}.lessonQuickActionOverlay{padding:12px}.lessonQuickActionFields{grid-template-columns:1fr}.lessonQuickActionDialog>footer{display:grid;grid-template-columns:1fr}}.lessonEditorDialogDetail .lessonDetailsBody{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior-y:contain}.lessonEditorDialogDetail .lessonDetailsFooter{flex:0 0 auto;padding:14px 24px max(14px,env(safe-area-inset-bottom));border-top:1px solid #e1e5ef;background:#fff;box-shadow:0 -8px 22px rgba(25,35,60,.05)}.lessonDetailsFooter .lessonDetailsActions{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.lessonDetailsFooter .lessonDetailsActionNote,.lessonDetailsFooter .lessonDetailsActions h3{grid-column:1/-1}.lessonDetailsFooter .lessonDetailsAction{min-width:0;min-height:90px;padding:12px}.lessonDetailsFooter .lessonDetailsAction strong{font-size:.84rem}@media (max-width:760px){.lessonEditorDialog.lessonEditorDialogDetail{height:100%;max-height:100%;align-self:stretch;border-radius:18px}.lessonEditorDialogDetail .lessonDetailsHeader{padding:12px 15px}.lessonEditorDialogDetail .lessonDetailsHeading p{margin-bottom:3px}.lessonEditorDialogDetail .lessonDetailsHeading h2{font-size:1.18rem}.lessonEditorDialogDetail .lessonDetailsHeading>span{margin-top:3px;font-size:.76rem}.lessonEditorDialogDetail .lessonDetailsBody{flex:1 1 auto;padding:12px 15px 16px}.lessonEditorDialogDetail .lessonDetailsWhen{gap:3px;margin-bottom:9px;padding:11px 13px}.lessonEditorDialogDetail .lessonDetailsWhen b{font-size:1.25rem}.lessonEditorDialogDetail .lessonDetailsList>div{grid-template-columns:90px minmax(0,1fr);gap:9px;padding:8px 2px}.lessonEditorDialogDetail .lessonDetailsFooter{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.lessonDetailsFooter .lessonDetailsActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lessonDetailsFooter .lessonDetailsActions h3{display:none}.lessonDetailsFooter .lessonDetailsAction{min-height:52px;padding:10px;align-content:center;text-align:center}.lessonDetailsFooter .lessonDetailsAction strong{font-size:.81rem;line-height:1.22}.lessonDetailsFooter .lessonDetailsAction span{display:none}.lessonDetailsFooter .lessonDetailsAction:last-of-type{grid-column:1/-1;min-height:42px;border-color:#b7bee8;background:#f5f6ff}.lessonQuickActionOverlay{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.lessonQuickActionDialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.lessonQuickActionDialog>footer{position:-webkit-sticky;position:sticky;bottom:0;background:#fff}}@media (max-width:360px){.lessonEditorDialogDetail .lessonDetailsHeader{padding:10px 12px}.lessonEditorDialogDetail .lessonDetailsFooter{padding-right:8px;padding-left:8px}}.teacherPayableDecision{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid #dfe3ef;border-radius:12px;background:#f8f9fc}.teacherPayableDecision>strong{color:#283553;font-size:.9rem}.teacherPayableDecision p{margin:0;color:#56627d;font-size:.82rem}.teacherPayableDecision label{display:flex;gap:10px;align-items:center;font-size:.84rem}.teacherPayableDecision button{justify-self:start}