:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f8fb;--surface:#fff;--surface-muted:#eef3f7;--border:#d9e0e7;--text:#1f2933;--muted:#657381;--primary:#0f766e;--primary-dark:#0b5f59;--danger:#b42318;--danger-bg:#fff1f0}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}button,select,input,textarea{font:inherit}.page{min-height:100vh;padding:32px}.shell{max-width:1380px;margin:0 auto}.loginPage{background:radial-gradient(circle at 18% 18%,#0f766e24,#0000 28%),linear-gradient(135deg,#eef3f7 0%,#f8fafc 48%,#eef8f6 100%);place-items:center;min-height:100vh;padding:32px;display:grid}.loginShell{width:min(100%,1040px)}.loginCard{background:#fffffff0;border:1px solid #0f766e2e;border-radius:22px;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);min-height:440px;display:grid;overflow:hidden;box-shadow:0 24px 70px #0f172a24}.loginCardCompact{min-height:390px}.loginBrandPanel{background:linear-gradient(135deg, #0b5f59f5, #1c2c52f2), var(--primary-dark);color:#fff;flex-direction:column;justify-content:center;padding:54px;display:flex;position:relative}.loginBrandPanel:after{content:"";border:32px solid #ffffff14;border-radius:999px;width:220px;height:220px;position:absolute;inset:auto -72px -72px auto}.loginBrandMark{letter-spacing:.08em;background:#ffffff1f;border:1px solid #ffffff5c;border-radius:18px;place-items:center;width:72px;height:72px;margin-bottom:28px;font-weight:800;display:grid}.loginBrandLogo{background:#fffffff0;border:1px solid #ffffff9e;border-radius:18px;width:260px;max-width:100%;height:auto;margin-bottom:34px;padding:16px 20px;box-shadow:0 18px 34px #0000002e}.loginEyebrow{color:#ffffffc7;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:700}.loginTitle{letter-spacing:.04em;margin:0;font-size:clamp(34px,5vw,52px);line-height:1.16}.loginLead{color:#ffffffdb;max-width:520px;margin:18px 0 0;font-size:16px;line-height:1.8}.loginInfoBox{z-index:1;background:#ffffff1a;border:1px solid #fff3;border-radius:14px;gap:6px;max-width:420px;margin-top:42px;padding:18px 20px;display:grid;position:relative}.loginInfoBox span{color:#ffffffb8;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.loginInfoBox strong{color:#fff;font-size:15px}.loginActionPanel{flex-direction:column;justify-content:center;padding:54px 48px;display:flex}.loginActionPanel .panelTitle{font-size:26px}.loginActionButtons{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.loginPrimaryButton,.loginActionButtons>.button:first-child{justify-content:center;min-width:190px;padding-inline:22px}.loginNote{color:var(--muted);margin:22px 0 0;font-size:13px;line-height:1.7}@media (max-width:860px){.loginPage{place-items:start center;padding:20px}.loginCard{grid-template-columns:1fr;min-height:0}.loginBrandPanel,.loginActionPanel{padding:34px 28px}.loginBrandMark{width:58px;height:58px;margin-bottom:20px}.loginBrandLogo{width:220px;margin-bottom:20px;padding:14px 18px}}.header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.headerButtonGroup{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.promptHeaderButtonGroup{flex-wrap:nowrap;flex:none;align-items:center}.promptHeaderText{min-width:0}.languageSwitcher{z-index:50;border:1px solid var(--border);background:#fffffff0;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:inline-flex;position:fixed;top:14px;right:18px;box-shadow:0 4px 16px #0f172a14}.impersonationBanner~.languageSwitcher{top:48px}.languageSwitcher a{color:var(--muted);text-decoration:none}.languageSwitcher a.active{color:var(--primary);font-weight:700}.languageSwitcherInline{z-index:auto;min-height:42px;box-shadow:none;position:static;top:auto;right:auto}.title{margin:0 0 6px;font-size:28px}.titleHelpRow,.panelTitleHelpRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.titleHelpRow .title,.panelTitleHelpRow .formSectionTitle{margin:0}.formPanel>.panelTitleHelpRow+.studentInfoFormGrid,.formPanel>.panelTitleHelpRow+.formStack{margin-top:14px}.inlineHelp{display:inline-flex;position:relative}.inlineHelpButton{border:1px solid var(--border);width:26px;height:26px;color:var(--primary);cursor:pointer;background:#eef8f6;border-radius:999px;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.inlineHelpButton:hover,.inlineHelpButton[aria-expanded=true]{background:#dff5ef;border-color:#00796b66}.inlineHelpPanel{z-index:80;border:1px solid var(--border);width:min(460px,100vw - 32px);color:var(--text);background:#fff;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.7;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 16px 36px #0f172a29}.inlineHelpPanel p{margin:0}.panelCountGroup{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.panelCountPill{min-height:26px;color:var(--primary);background:#e5f5f1;border-radius:999px;align-items:center;padding:3px 10px;font-size:13px;font-weight:700;line-height:1.4;display:inline-flex}.panelCountPill.warning{color:#9a5a00;background:#fff3d8}.titleWithBadge{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.titleWithBadge .title{margin-bottom:0}.registrationYearBadge{min-height:28px;color:var(--primary-dark);background:#f0fdfa;border:1px solid #b7d8d1;border-radius:999px;align-items:center;padding:4px 10px;font-size:13px;font-weight:700;display:inline-flex}.subtitle{color:var(--muted);margin:0}.errorText{color:var(--danger);font-weight:700}.mutedText{color:var(--muted);font-size:13px}.eyebrow{color:var(--primary);text-transform:uppercase;margin:0 0 6px;font-size:13px;font-weight:700}.sectionTitle{margin:0 0 12px;font-size:18px}.toolbar{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:16px;display:flex}.workspaceControlPanel{margin-bottom:12px}.workspaceControlPanel>.panelHeader{border-bottom:0}.workspaceFilterToolbar{background:0 0;border:0;border-radius:0;margin:0;padding:0}.workspaceFilterToolbar label{white-space:nowrap}.workspaceFilterToolbar .compactInput{width:120px}.workspaceManagementStack{gap:14px;display:grid}.workspaceManagementStack>.panelHeader{padding-inline:0}.workspaceCategoryAddRow td{background:#fbfcfd}.documentFilterToolbar{border:0;border-top:1px solid var(--border);border-radius:0;margin:0}.documentFilterToolbar .field{flex:150px;min-width:140px}.documentFilterActions{flex-wrap:wrap;flex:1 0 100%;justify-content:flex-end;gap:10px;display:flex}.alert{border:1px solid var(--border);border-radius:8px;margin:0 0 18px;padding:12px 14px;font-weight:700}.alert.success{color:#087443;background:#edf9f1;border-color:#b7e1c7}.alert.warning{color:#8a5a00;background:#fff8e6;border-color:#f6d58d}.alert.danger{background:var(--danger-bg);color:var(--danger);border-color:#f1b7b2}.toolbarBreak{flex-basis:100%;height:0}.teacherTimetableFilterToolbar{flex-wrap:nowrap;align-items:center}.teacherTimetableFilterToolbar label{white-space:nowrap}.teacherTimetableFilterToolbar .input{width:min(520px,42vw);min-width:260px}@media (max-width:960px){.teacherTimetableFilterToolbar{flex-wrap:wrap}.teacherTimetableFilterToolbar .input{width:100%;min-width:min(260px,100%)}}.toolbarStudentSearchRow{flex:100%;align-items:center;gap:12px;min-width:0;display:flex}.toolbarStudentSearchRow .studentSearchSelect{flex:520px}.onlineAccommodationFilterToolbar{flex-wrap:nowrap}.onlineAccommodationListPage .header{margin-bottom:14px}.onlineAccommodationListPage .toolbar{margin-bottom:12px;padding-block:12px}.onlineAccommodationListPage .card{padding-top:12px}.onlineAccommodationListPage .sectionHeader{margin-bottom:8px}.onlineAccommodationFilterToolbar label{white-space:nowrap}.onlineAccommodationFilterToolbar #year{flex:0 0 96px;width:96px}.onlineAccommodationFilterToolbar #term,.onlineAccommodationFilterToolbar #responseStatus{flex:0 0 140px;width:140px}.onlineAccommodationFilterToolbar .toolbarStudentSearchRow{flex:360px;min-width:280px}.onlineAccommodationFilterToolbar .toolbarStudentSearchRow .studentSearchSelect{flex:280px}.onlineAccommodationTableTitle{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:1100px){.onlineAccommodationFilterToolbar{flex-wrap:wrap}}.teacherFilterField{display:none}.toolbar:has(#kind option[value=teacher]:checked) .teacherFilterField{display:revert}.toolbar:has(#kind option[value=teacher]:checked) .toolbarBreak.teacherFilterField{display:block}.adminUsersSearchToolbar .teacherFilterField{display:revert}.adminUsersSearchToolbar .toolbarBreak.teacherFilterField{display:block}.checkboxLabel{color:var(--text);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.checkboxLabel.wide{white-space:normal;grid-column:1/-1}.panelToolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.panelToolbar .toolbar{flex:680px;margin-bottom:0}.adminUsersSearchToolbar{flex:100%}.adminUsersSearchInput{flex:0 clamp(260px,33vw,480px);width:clamp(260px,33vw,480px)}.adminUserIdentityCell{white-space:normal;overflow-wrap:anywhere;word-break:normal;max-width:260px}.adminUserIdentityCell strong,.adminUserIdentityCell .mutedLine{overflow-wrap:anywhere;word-break:normal}.adminUserTopFields{grid-column:1/-1;grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr) auto;align-items:end;gap:14px;display:grid}.adminUserActiveCheck{align-self:end;min-height:42px}.studentSearchSelect{min-width:min(520px,100%);position:relative}.studentSearchSelect .select{width:100%}.studentSearchOptions{z-index:20;border:1px solid var(--border);background:var(--surface);border-radius:8px;max-height:280px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 28px #0f172a24}.studentInformationSearchForm .studentSearchSelect{width:min(420px,100%);min-width:0}.studentInformationSearchForm{grid-template-columns:minmax(260px,420px) auto;align-items:center;gap:8px;display:grid}.studentInformationSearchButton{flex:none;width:auto}.returnSubmissionForm{gap:8px;min-width:min(360px,100%);display:grid}.returnReasonInput{resize:vertical;min-height:88px}.sectionConfirmActions{flex-wrap:wrap;gap:8px;margin:10px 0 18px;display:flex}.compactButton{width:auto;min-width:0}.fitContentButton{justify-self:start;width:max-content;max-width:100%}.studentSearchOptions button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:9px 10px;display:block}.studentSearchOptions button:hover,.studentSearchOptions button:focus{background:var(--surface-muted)}.compactToolbar{margin-bottom:12px}.multilineText{white-space:pre-line}.select{border:1px solid var(--border);background:#fff;border-radius:6px;min-width:280px;padding:9px 10px}.select.compact{min-width:140px}.button{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:6px;min-height:40px;padding:9px 14px;text-decoration:none}.button:hover{background:var(--primary-dark)}.button:disabled{cursor:not-allowed;background:#a6b4bf}.button.secondary{background:var(--surface-muted);color:var(--text)}.button.secondary:hover{background:#dde8ef}.button.secondary.selectedFilterButton{background:var(--primary);color:#fff}.button.secondary.selectedFilterButton:hover{background:var(--primary-dark)}.compactSelect{width:auto;min-width:120px}.button.danger{background:var(--danger-bg);color:var(--danger)}.button.danger:hover{background:#ffe1de}.button.registrationSubmissionSubmittingButton,.button.registrationSubmissionSubmittingButton:hover,.button.registrationSubmissionSubmittingButton:disabled{color:#991b1b;opacity:1;background:#fee2e2;border:1px solid #fecaca}.grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);align-items:start;gap:18px;display:grid}.registrationGrid{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:18px;display:grid}.registrationStudentHeader{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;gap:16px;margin-bottom:14px;padding:16px;display:flex}.registrationStudentHeader h2{margin:0 0 5px;font-size:22px}.registrationStudentHeader p{color:var(--muted);margin:0}.registrationStudentMeta{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.registrationStudentMeta span{min-height:28px;color:var(--primary-dark);background:#f0fdfa;border:1px solid #b7d8d1;border-radius:999px;align-items:center;padding:4px 10px;font-size:13px;font-weight:700;display:inline-flex}.studentAvatarText{width:54px;height:54px;color:var(--primary-dark);background:#e6f4f1;border-radius:8px;flex:0 0 54px;justify-content:center;align-items:center;font-size:24px;font-weight:800;display:inline-flex}.dashboardHero{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:22px;padding:22px;display:grid}.dashboardHero h2{margin:0 0 8px;font-size:22px}.dashboardHero p{color:var(--muted);margin:0}.heroLabel{font-size:13px;font-weight:700;color:var(--primary)!important;margin-bottom:6px!important}.studentHeroProfile{min-width:min(100%,320px)}.studentHeroName{color:var(--text);line-height:1.2;margin:0 0 14px!important;font-size:30px!important}.studentHeroDetails{grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px 16px;margin:0;display:grid}.studentHeroDetails div{min-width:180px}.studentHeroDetails dt{color:var(--muted);margin-bottom:3px;font-size:12px;font-weight:700}.studentHeroDetails dd{overflow-wrap:break-word;color:var(--text);margin:0;font-size:15px;font-weight:700}.researchPreferenceHero{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch}.researchPreferenceHeroProfile{min-width:220px}.researchPreferenceHeroDetails{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-content:start;width:100%;max-width:none}.heroStats{grid-template-columns:repeat(4,minmax(82px,1fr));gap:10px;display:grid}.heroStats div{border:1px solid var(--border);text-align:center;background:#fbfcfd;border-radius:8px;min-width:82px;padding:12px}.heroStats strong{margin-bottom:4px;font-size:24px;display:block}.heroStats span{color:var(--muted);font-size:12px}.registrationStudentHeader .heroStats{margin-left:auto}.adminHero{border-left:4px solid var(--primary)}.dashboardGrid{grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);align-items:start;gap:18px;display:grid}.dashboardMain{min-width:0}.dashboardSide{gap:18px;min-width:0;display:grid}.topDashboardGrid{grid-template-columns:minmax(0,1fr) minmax(360px,420px);align-items:start;gap:18px;display:grid}.dashboardMenuColumn,.dashboardNoticeColumn{gap:16px;min-width:0;display:grid}.dashboardNoticeCard{min-width:0}.dashboardNoticeList{display:grid}.dashboardNoticeItem{border-bottom:1px solid var(--border);gap:6px;padding:14px 18px;display:grid}.dashboardNoticeItemCompact{gap:4px;padding:10px 16px}.dashboardNoticeUnread{background:#f8fbff;position:relative}.dashboardNoticeUnread:before{content:"";background:#1c2c52;border-radius:999px;width:7px;height:7px;position:absolute;top:18px;left:8px}.dashboardNoticeUnread.approved:before{background:var(--primary)}.dashboardNoticeUnread.returned:before{background:#b3382c}.dashboardNoticeItem:last-child{border-bottom:0}.dashboardNoticeItem strong{color:var(--text);font-size:14px;line-height:1.45;display:block}.dashboardNoticeItemCompact strong{font-size:13px}.dashboardNoticeMeta{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.dashboardNoticeMeta time{color:var(--muted);font-size:12px;font-weight:700}.dashboardNoticeTag{color:#1c2c52;background:#e8eef7;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:900}.dashboardNoticeStatus{width:18px;height:18px;color:var(--muted);background:#eef3f7;border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.dashboardNoticeStatus.approved{color:var(--primary-dark);background:#dffbea}.dashboardNoticeStatus.returned{color:#b3382c;background:#fee2e2}.dashboardNoticeStatus.submitted{color:#c2410c;background:#fff7ed}.dashboardNoticeSummary{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.55}.dashboardNoticeItemCompact .dashboardNoticeSummary{-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.dashboardNoticeActions,.dashboardNoticeHeaderActions,.dashboardNoticeModalActions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dashboardNoticeActions{margin-top:2px}.dashboardNoticeReadButton{cursor:pointer;background:0 0;border:0;padding:0}.dashboardNoticeReadAllButton{white-space:nowrap}.compactEmptyState{padding:14px 18px}.dashboardNoticeModal{width:min(980px,100vw - 48px)}.dashboardNoticeModalList{border:1px solid var(--border);border-radius:8px;display:grid;overflow:hidden}.dashboardNoticeDetailBody{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;gap:12px;line-height:1.8;display:grid}.studentPortalPage{background:#f4f5f7;padding:0}.studentPortalShell{grid-template-columns:280px minmax(0,1fr);width:100%;min-height:100vh;margin:0;display:grid}.studentPortalSidebar{color:#fff;background:#1c2c52;border-radius:0;flex-direction:column;min-height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.studentPortalBrand{color:#fff;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:4px 12px;padding:28px 20px 24px;text-decoration:none;display:grid}.studentPortalBrand:hover,.studentPortalBrand:focus-visible{background:#ffffff0f}.studentPortalBrand small,.studentPortalSidebarProfile span{color:#ffffffb8;font-size:12px;font-weight:700}.studentPortalBrandMark{color:#0f172a;background:#a8802f;border-radius:8px;grid-row:span 2;justify-content:center;align-items:center;width:32px;height:32px;font-weight:900;display:inline-flex}.studentPortalBrand strong{font-size:15px;line-height:1.2}.studentPortalNav{gap:28px;padding:12px 20px;display:grid}.studentPortalNavGroup h2{color:#ffffffbd;letter-spacing:0;border-top:1px solid #ffffff24;margin:0 0 13px;padding-top:15px;font-size:13px}.studentPortalNavGroup:first-child h2{border-top:0;padding-top:0}.studentPortalNavList,.studentPortalNavSubgroup{gap:8px;display:grid}.studentPortalNavSubgroup+.studentPortalNavSubgroup{margin-top:16px}.studentPortalNavSubgroup h3{color:#ffffffdb;letter-spacing:0;background:#ffffff12;border-left:3px solid #ffffff6b;border-radius:6px;margin:2px 0 4px;padding:5px 8px;font-size:12px;font-weight:900}.studentPortalNavItem{color:#fff;border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:44px;padding:8px 6px;text-decoration:none;display:grid}.studentPortalNavItem:hover,.studentPortalNavItem:focus-visible{background:#ffffff1a}.studentPortalNavIcon{color:#f8fafc;background:#ffffff1f;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.studentPortalNavSvg{width:15px;height:15px}.studentPortalNavText{gap:3px;min-width:0;display:grid}.studentPortalNavTitle{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:800;overflow:hidden}.studentPortalNavText small{color:#ffffffad;font-size:11px;font-weight:700;line-height:1.35}.studentPortalNavBadge{color:#fff;text-align:center;background:#b3382c;border-radius:4px;min-width:22px;padding:3px 7px;font-size:12px;font-weight:900}.studentPortalSidebarProfile{border-top:1px solid #ffffff1f;gap:6px;margin-top:auto;padding:22px 20px 24px;display:grid}.studentPortalSidebarProfile strong{overflow-wrap:anywhere}.studentPortalLangLinks{grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;display:grid}.studentPortalLangLinks a{color:#fff;text-align:center;border:1px solid #ffffff38;border-radius:6px;padding:6px 8px;font-size:12px;font-weight:800;text-decoration:none}.studentPortalLangLinks a:hover,.studentPortalLangLinks a:focus-visible{background:#ffffff1a}.studentPortalContent{gap:16px;width:min(900px,100vw - 304px);min-width:0;margin:0 auto;padding:34px 0 48px;display:grid}.studentPortalHeader{justify-content:space-between;gap:16px;margin-bottom:8px;display:flex}.studentPortalProfileCard{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);align-items:start;gap:22px;padding:22px;display:grid}.studentPortalProfileCard h2{margin:4px 0 0;font-size:28px;line-height:1.25}.studentPortalProfileDetails{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;margin:0;display:grid}.studentPortalProfileDetails div{min-width:0}.studentPortalProfileDetails dt{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:800}.studentPortalProfileDetails dd{overflow-wrap:anywhere;margin:0;font-weight:800}.studentPortalMainGrid{grid-template-columns:minmax(0,1fr) minmax(360px,420px);align-items:start;gap:18px;display:grid}.studentPortalMainStack{gap:22px;display:grid}.studentPortalMainColumn{gap:16px;min-width:0;display:grid}.studentTodoPanel{overflow:hidden}.studentTodoHeader{justify-content:space-between;align-items:start;gap:16px;padding:22px 24px 18px;display:flex}.studentTodoHeader h2{margin:0 0 8px;font-size:20px}.studentTodoHeader p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.studentTodoTotal{color:#b3382c;text-align:center;background:#fee2e2;border-radius:4px;min-width:40px;padding:4px 8px;font-size:13px;font-weight:900}.studentTodoList{gap:10px;padding:0 24px 22px;display:grid}.studentTodoItem{border:1px solid var(--border);background:#fff;border-left:4px solid #b3382c;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid}.studentTodoCount{color:#fff;background:#b3382c;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-weight:900;display:inline-flex}.studentTodoItem h3{margin:0 0 5px;font-size:16px}.studentTodoItem p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.studentTodoDue{flex-wrap:wrap;align-items:center;gap:6px;display:flex;margin-top:7px!important}.studentTodoDueBadge{border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:900;display:inline-flex}.studentTodoDueBadge.danger{color:#b3382c;background:#fee2e2}.studentTodoDueBadge.warning{color:#c2410c;background:#fff7ed}.studentTodoDueBadge.muted{color:var(--muted);background:#eef3f7}.studentTodoLink{color:var(--text);white-space:nowrap;font-size:13px;font-weight:900;text-decoration:none}.studentTodoLink:hover,.studentTodoLink:focus-visible{color:var(--primary);text-decoration:underline}.studentTodoEmpty{border:1px dashed var(--border);color:var(--muted);text-align:center;border-radius:8px;margin:0 24px 22px;padding:16px}.studentPortalMenuPanel{display:none}.studentPortalMenuList{border-top:1px solid var(--border);display:grid}.studentPortalMenuRow{border-bottom:1px solid var(--border);color:var(--text);grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);align-items:center;gap:16px;padding:14px 18px;text-decoration:none;display:grid}.studentPortalMenuRow:hover,.studentPortalMenuRow:focus-visible{background:#f7fafc}.studentPortalMenuRow span{gap:3px;display:grid}.studentPortalMenuRow strong{color:var(--primary)}.studentPortalMenuRow small{color:var(--muted);font-size:12px;font-weight:700}.studentPortalMenuRow em{color:var(--muted);font-size:13px;font-style:normal;line-height:1.55}.studentPortalPage .dashboardNoticeColumn{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.studentPortalPage .dashboardNoticeItem{padding:12px 16px}.teacherPortalPage .studentPortalBrandMark{background:#0f766e}.adminPortalPage .studentPortalBrandMark{color:#fff;background:#0f766e}.adminPortalContent{align-content:start;gap:12px;width:auto;max-width:none;margin:0;padding:24px 18px 48px}.adminPortalContentEmbedded{width:auto;padding-top:16px}.adminPortalPage .studentPortalSidebar,.rolePortalPage .studentPortalSidebar{height:100vh;overflow-y:auto}.rolePortalContent{align-content:start;width:auto;max-width:none;margin:0;padding:18px 18px 48px}.rolePortalFrameTopbar{margin:-18px -18px 12px;padding:10px 18px}.rolePortalStandaloneTopbar{z-index:60;position:fixed;top:14px;right:18px}.rolePortalHeaderActions{align-items:center}.rolePortalContent .eyebrow,.rolePortalContent .subtitle,.rolePortalContent .header>a.button[href=\/student],.rolePortalContent .header>a.button[href=\/teacher],.rolePortalContent .header>a.button[href=\/admin],.rolePortalContent .headerButtonGroup>a.button[href=\/student],.rolePortalContent .headerButtonGroup>a.button[href=\/teacher],.rolePortalContent .headerButtonGroup>a.button[href=\/admin]{display:none}.adminPortalEmbeddedPage{gap:12px;display:grid}.adminPortalEmbeddedPage>.page{min-height:auto;padding:0}.adminPortalEmbeddedPage>.page>.shell{width:100%;max-width:none;padding:0}.adminPortalHeader{align-items:flex-start;margin-bottom:0}.adminPortalFrameTopbar{z-index:20;background:#f4f5f7;border-bottom:1px solid #d1dde6b3;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 10px;display:flex;position:sticky;top:0}.adminPortalHeaderActions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex;position:relative}.adminPortalIconButton{min-height:42px;color:var(--text);cursor:pointer;background:#eef3f7;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex;position:relative}.adminPortalIconButton:hover,.adminPortalIconButton:focus-visible{background:#e7f7f4;border-color:#b7d8d3}.adminPortalIconButton>span{width:24px;height:24px;color:var(--primary-dark);background:#dff5f1;border-radius:8px;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.adminPortalIconButton em{color:#fff;background:#b3382c;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;font-style:normal;font-weight:900;display:inline-flex}.adminPortalLauncher{position:relative}.adminPortalLauncherButton{font:inherit}.adminPortalLauncher summary{list-style:none}.adminPortalLauncher summary::-webkit-details-marker{display:none}.adminPortalLauncherPanel{z-index:25;border:1px solid var(--border);background:var(--surface);border-radius:10px;width:min(780px,100vw - 340px);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 18px 48px #0f172a2e}.adminPortalLauncherGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:min(620px,100vh - 180px);padding:16px;display:grid;overflow:auto}.adminPortalLauncherGroup{border:1px solid var(--border);background:#f8fafc;border-radius:8px;align-content:start;gap:8px;padding:14px;display:grid}.adminPortalLauncherGroup h3{border-left:4px solid var(--primary);margin:0;padding-left:10px;font-size:15px}.adminPortalLauncherGroup p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.adminPortalLauncherLinks{gap:5px;display:grid}.adminPortalLauncherLinks a{color:var(--text);border-radius:6px;padding:5px 8px;font-size:13px;font-weight:800;text-decoration:none}.adminPortalLauncherLinks a:hover,.adminPortalLauncherLinks a:focus-visible{color:var(--primary-dark);background:#e7f7f4}.adminPortalDomainPanel{border:1px solid var(--border);background:var(--surface);border-radius:12px;gap:10px;padding:14px 16px;display:grid}.adminPortalDomainHeading{align-items:baseline;gap:10px;display:flex}.adminPortalDomainHeading span{color:var(--primary);letter-spacing:.04em;font-size:12px;font-weight:900}.adminPortalDomainMenu{flex-wrap:wrap;gap:8px;display:flex}.adminPortalDomainMenu a{min-height:44px;color:var(--text);background:#f8fafc;border:1px solid #cfe2df;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.adminPortalDomainMenuCompact a{min-height:40px;padding:8px 12px}.adminPortalDomainMenu a>span{width:24px;height:24px;color:var(--primary-dark);background:#dff5f1;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.adminPortalDomainMenu a:hover,.adminPortalDomainMenu a:focus-visible{color:var(--primary-dark);background:#e7f7f4}.adminTodoPanel{overflow:visible}.adminTodoHeader{padding-bottom:12px}.adminTodoTabs{flex-wrap:wrap;gap:8px;padding:0 24px 16px;display:flex}.adminTodoTabs a{color:var(--text);background:#eef3f7;border-radius:8px;align-items:center;gap:7px;padding:9px 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.adminTodoTabs a.isActive{background:var(--primary);color:#fff}.adminTodoTabs span{min-width:22px;color:var(--primary-dark);background:#ffffffbf;border-radius:999px;justify-content:center;align-items:center;padding:2px 7px;font-size:12px;display:inline-flex}.adminTodoDetails{color:var(--muted);margin-top:7px!important;font-size:12px!important}.compactStatusPill{vertical-align:middle;margin-right:.5rem;padding:2px 8px}@media (max-width:1180px){.studentPortalShell{grid-template-columns:260px minmax(0,1fr)}.studentPortalContent{width:min(900px,100vw - 300px)}.studentPortalPage .dashboardNoticeColumn{grid-template-columns:repeat(2,minmax(0,1fr))}}.cardGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.cardGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cardGrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.launcherSectionPanel{padding:16px}.actionCard{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-height:156px;padding:16px}.actionCard h3{margin:0 0 8px;font-size:17px}.actionCard h3 a{color:inherit;text-decoration:none}.actionCard h3 a:hover{color:var(--primary);text-decoration:underline}.actionCard p{color:var(--muted);margin:0 0 14px;line-height:1.55}.launcherActionCard{min-height:128px;color:inherit;background:#fff;text-decoration:none;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;display:block;position:relative;box-shadow:0 1px 2px #0f172a08}.launcherActionCard:hover,.launcherActionCard:focus-within{border-color:var(--primary-dark);background:#f2fbf8;transform:translateY(-1px);box-shadow:0 10px 22px #0f172a14}.launcherGroupCard:hover,.launcherGroupCard:focus-within{border-color:var(--border);background:#fff;transform:none;box-shadow:0 1px 2px #0f172a08}.launcherActionCard h3{border-left:6px solid var(--primary);align-items:center;margin-bottom:12px;padding-left:10px;line-height:1.35;display:flex}.launcherActionCard:hover h3,.launcherActionCard:focus-visible h3{color:var(--primary-dark)}.launcherGroupCard:hover h3,.launcherGroupCard:focus-visible h3{color:inherit}.launcherActionCard:focus-visible{outline-offset:3px;outline:3px solid #0f766e38}.launcherActionCard p{margin-bottom:0;line-height:1.7}.iconActionCard{align-content:start;gap:8px;display:grid}.actionCardIcon{width:34px;height:34px;color:var(--primary-dark);background:#dff5f1;border-radius:10px;justify-content:center;align-items:center;font-size:17px;font-weight:900;display:inline-flex}.iconActionCard h3,.iconActionCard p{margin-bottom:4px}.requiredActionCard{align-content:start;gap:12px;display:grid}.requiredActionCardHeader,.requiredActionDetailRow{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.requiredActionCardHeader h3{margin:0}.requiredActionCountBox,.requiredActionDetailCount{border:1px solid var(--border);background:var(--surface-muted);min-width:48px;min-height:42px;color:var(--text);border-radius:6px;place-items:center;font-size:22px;font-weight:700;line-height:1;display:inline-grid}.requiredActionDetailList,.requiredActionDetails{gap:10px;display:grid}.requiredActionDetails summary{background:var(--surface-muted);width:fit-content;min-height:36px;color:var(--link);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:6px 12px;font-weight:700;list-style:none;display:inline-flex}.requiredActionDetails summary::-webkit-details-marker{display:none}.requiredActionDetails[open] summary{margin-bottom:2px}.requiredActionDetailRow{border-top:1px solid var(--border);padding-top:10px}.requiredActionDetailRow:first-child{border-top:0;padding-top:0}.requiredActionDetailCount{min-width:40px;min-height:34px;font-size:18px}.requiredActionDetailRowMuted .textLink,.requiredActionDetailRowMuted .requiredActionDetailCount{color:var(--muted)}.clfInterviewTextarea{min-width:420px}.quickLinkList{gap:8px;display:grid}.quickLinkList .button{white-space:normal;justify-content:center;min-width:0}.quickLinkList .smallLink{margin-top:0}.tabBar{flex-wrap:wrap;gap:8px;padding:0 18px 16px;display:flex}.tabLink{border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:8px;padding:8px 12px;font-size:14px;font-weight:700;text-decoration:none}.tabLink.active{border-color:var(--primary);color:var(--primary);background:#e6f4f1}.notificationTemplateTabsPanel{margin-bottom:18px}.notificationTemplateTabs{align-items:center;padding:16px 18px}.notificationTemplateEditorPanel{padding:18px;overflow:visible}.notificationTemplateTitleRow{flex-wrap:wrap;align-items:center;margin-bottom:16px;display:flex}.notificationTemplateTitleBlock{min-width:0}.notificationTemplateHeadingLine{align-items:center;gap:10px;display:flex}.notificationTemplateTitleRow .formSectionTitle{margin-bottom:0}.lessonNotificationTemplateHeader{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.lessonNotificationTemplateHeader .panelLead{margin:0}.notificationTemplateForm{gap:14px}.notificationTemplateForm .textarea{min-height:240px}.textLink{color:var(--primary);font-weight:700;text-decoration:none}.textLink:hover{text-decoration:underline}.inlineLink{color:var(--primary);font-weight:700;text-decoration:none}.inlineLink:hover{text-decoration:underline}.dangerText{color:var(--danger)}.monoText{word-break:break-all;font-family:Consolas,Liberation Mono,monospace;font-size:12px}.statusPill{background:var(--surface-muted);min-height:24px;color:var(--muted);border-radius:999px;align-items:center;margin-bottom:10px;padding:2px 9px;font-size:12px;font-weight:700;display:inline-flex}.statusPill.published{color:#087443;background:#e6f6ef}.statusPill.draft{color:#8a5a00;background:#fff8e6}.statusPill.warning{color:#92400e;background:#fef3c7}.statusPill.success{color:#166534;background:#dcfce7}.statusPill.error{color:#b42318;background:#fdecec}.statusPill.profileEmployment{color:#5b21b6;background:#ede9fe}.statusPill.profilePosition{color:#9a3412;background:#fff7ed}.statusPill.profileCore{color:#3730a3;background:#e0e7ff}.statusPill.profileDepartment{color:#075985;background:#e0f2fe}.statusPill.profileAssignment{color:#166534;background:#dcfce7}.enrollmentResultPanel .panelHeader{padding-bottom:10px}.enrollmentResultList{gap:8px;padding:10px 14px 14px;display:grid}.enrollmentResultCard{border:1px solid var(--border);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.enrollmentResultMain{align-items:center;gap:12px;min-width:0;display:flex}.enrollmentResultMain .statusPill{flex:none;margin-bottom:0}.enrollmentResultContent{min-width:0}.enrollmentResultContent p{margin:0}.enrollmentResultContent .mutedText{margin-top:4px;font-size:12px}.enrollmentResultAction{flex:none}@media (max-width:720px){.enrollmentResultCard{flex-direction:column;align-items:flex-start}.enrollmentResultAction{align-self:flex-end}}.statusBadge.warningBadge{color:#b45309;font-weight:700}.statusBadge.dangerBadge{color:#b42318;font-weight:700}.statusBadge{min-height:24px;color:var(--primary);white-space:nowrap;background:#e8f4f1;border-radius:999px;align-items:center;padding:2px 9px;font-size:12px;font-weight:800;line-height:1.3;display:inline-flex}.badgeList{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.teacherMissingBadgeList{padding:12px 18px 0}.largeBadgeList{gap:8px}.lineStack{gap:4px;display:grid}.compactReadonlyGrid{grid-template-columns:repeat(3,minmax(88px,1fr));min-width:280px;margin-bottom:0}.promptTextarea{white-space:pre;width:100%;min-height:520px;margin-top:14px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;line-height:1.55}.stackedText{gap:8px;display:grid}.stackedText p{margin:0;line-height:1.45}.stackedText span{color:var(--muted);font-size:12px}.compactField{min-width:180px}.diplomaNumberStartField{width:140px}.eventList{display:grid}.eventItem{border-bottom:1px solid var(--border);padding:14px 18px}.eventItem:last-child{border-bottom:0}.eventItem time{color:var(--primary);margin-bottom:5px;font-size:12px;font-weight:700;display:block}.eventItem strong{margin-bottom:5px;display:block}.eventItem p{color:var(--muted);margin:0;font-size:14px}.dokodemoNoticeFeedItem{gap:8px;display:grid}.dokodemoNoticeMeta,.dokodemoNoticeBadges{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.dokodemoNoticeFeedItem time{color:var(--muted);margin-bottom:0}.dokodemoNoticeFeedItem p{color:var(--text);white-space:pre-wrap;line-height:1.7}.compactEventList{gap:8px;margin-top:10px}.compactEventList .eventItem{border:1px solid var(--border);border-radius:6px;padding:10px 12px}.courseSessionEditForm{gap:10px;min-width:520px;display:grid}.compactGrid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.movementPeriodGrid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.stackedTimetableGroups{gap:18px;padding:18px;display:grid}.timetableGroup{gap:10px;display:grid}.timetableGroup h3{margin:0;font-size:16px}.compactTimetable{min-width:820px}.compactTimetable .timetableCourse{min-width:0}.smallLink{margin-top:8px;font-size:14px;display:inline-block}.narrowShell{max-width:720px}.messagePanel{margin-top:48px}.messageBody{padding:22px}.messageBody p{line-height:1.6}.asLink{align-items:center;text-decoration:none;display:inline-flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.panel:has(.inlineHelp){overflow:visible}.panel:has(.inlineHelpButton[aria-expanded=true]){z-index:120;position:relative}.checkPanel{overflow:visible}.panelHeader{border-bottom:1px solid var(--border);background:#fbfcfd;padding:16px 18px}.panelHeaderWithActions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.panelHeaderWithActions>.tableActions{margin-left:auto}.panelTitle{margin:0;font-size:18px}.panelTitle.withLeadingBar{border-left:4px solid var(--primary);padding-left:10px;line-height:1.35}.externalApplicationListTitle{align-items:center;gap:10px;display:flex}.termStatusLine{font-size:13px;font-weight:800;line-height:1.35;display:block}.termStatusLine.successText{color:#166534}.termStatusLine.dangerText{color:var(--danger)}.panelLead{color:var(--muted);margin:6px 0 0;font-size:13px}.lessonPeriodLine{color:var(--text);margin:6px 0 0;font-size:14px;font-weight:700}.lessonSubjectLine{color:var(--text);margin:8px 0 0;font-size:15px;font-weight:700;line-height:1.7}.lessonInstructorResponsePanel>.panelHeaderWithActions{padding:6px 14px 2px}.dokodemoApplicantList{gap:4px;margin-top:8px;display:grid}.dokodemoApplicantList p{margin:0}.dokodemoTeacherAcceptanceForms{gap:10px;display:grid}.dokodemoTeacherAcceptanceForm{grid-template-columns:auto minmax(120px,160px) auto minmax(220px,1fr) auto;align-items:center;gap:8px;display:grid}.dokodemoTeacherAcceptanceForm .tableNote{grid-column:1/-1;margin:0}@media (max-width:900px){.dokodemoTeacherAcceptanceForm{grid-template-columns:1fr;align-items:stretch}}.teachingQuestionTitle{color:var(--text);margin:0 0 8px;font-size:15px;font-weight:800;line-height:1.7}.teachingQuestionText{color:var(--text);margin:0 0 8px;font-size:15px;font-weight:400;line-height:1.7;display:block}.teachingQuestionNote{color:var(--text);margin:10px 0 14px;font-size:14px;font-weight:400;line-height:1.7;display:block}.diplomaRuleNotice{color:var(--text);margin:0;padding:16px 18px;font-size:15px;line-height:1.7}.diplomaRegisterActions{justify-content:flex-end;padding:16px 18px;display:flex}.tableScroll{width:100%;overflow-x:auto}.dataTable{border-collapse:collapse;width:100%;min-width:1080px}.dataTable th,.dataTable td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;white-space:normal;padding:12px 14px}.dataTable th{background:#f3f6f8;font-size:13px;font-weight:700}.backLinkRow{margin-bottom:16px}.statusPanel{border:1px solid var(--border);border-radius:8px;margin:18px;padding:18px}.successPanel{background:#f0fbf5;border-color:#a9dcc4}.noticePanel{background:#fff8e8;border-color:#f3d08a}.dangerPanel{background:var(--danger-bg);border-color:#f0b8b2}.statusTitle{margin:0 0 14px;font-size:17px;font-weight:700}.detailList{gap:10px;margin:0;display:grid}.detailList div{grid-template-columns:180px minmax(0,1fr);gap:12px;display:grid}.detailList dt{color:var(--muted);font-weight:700}.detailList dd{word-break:break-word;margin:0}.teachingLoadMetaLine{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13px;display:flex}.teachingLoadClassAdvisorDraftRow{background:#fff8e8}.teachingLoadClassAdvisorDraftRow td{border-color:#f3d08a}.teachingLoadCourseNameCell{white-space:normal;max-width:360px}.teachingLoadCourseNameCell strong{overflow-wrap:anywhere;line-height:1.45;display:block}.teachingLoadCourseMeta,.teachingLoadMarkerStack{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:12px;line-height:1.4;display:flex}.teachingLoadMarkerStack{flex-direction:column;align-items:flex-start;gap:4px;min-width:84px}.teachingLoadKomaWarning{gap:8px;display:grid}.teachingLoadKomaWarning ul{margin:0;padding-left:20px}.teachingLoadKomaWarning li{margin:3px 0}.roleSelectCompact{min-width:64px;max-width:72px}.formPanel{margin-bottom:18px}.studentInformationFormPage .shell{max-width:860px}.studentInformationFormPage .header{max-width:720px;margin-inline:auto}.studentInformationFormPage .panel{width:min(100%,720px);max-width:720px;margin-inline:auto}.studentInformationFormPage .studentInformationPeriodLine{color:var(--text);font-size:14px;font-weight:800}.studentInformationFormPage .formPanel,.studentInformationFormPage .subPanel{border-radius:8px;box-shadow:0 1px 2px #0f172a0a}.studentInformationFormPage .formPanel{padding:18px}.studentInformationFormPage .field{gap:8px;width:100%;max-width:540px}.studentInformationFormPage .field>span{color:var(--text);font-size:15px;font-weight:800}.studentInformationFormPage .input{min-height:44px}.studentInformationFormPage .fieldStatic,.studentInformationFormPage .choiceRow,.studentInformationFormPage .inlineGrid{width:100%;max-width:540px}.studentInformationFormPage .studentInfoFormGrid{justify-items:stretch;width:100%;max-width:540px}.studentInfoTabRadio{opacity:0;pointer-events:none;position:absolute}.studentInfoTabNav{border-bottom:1px solid var(--border);gap:8px;width:min(100%,720px);margin:0 auto 2px;display:flex}.studentInfoTabNav label{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#f8fafc;border-bottom:0;border-radius:8px 8px 0 0;padding:10px 18px;font-size:14px;font-weight:800}#studentInfoTabPersonal:checked~.studentInfoTabNav label[for=studentInfoTabPersonal],#studentInfoTabChurch:checked~.studentInfoTabNav label[for=studentInfoTabChurch]{color:var(--primary-dark);border-color:var(--primary);background:#fff}.studentInfoTabPanel{gap:16px;display:none}#studentInfoTabPersonal:checked~.personalPanel,#studentInfoTabChurch:checked~.churchPanel{display:grid}.formNav{z-index:5;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-muted);flex-wrap:wrap;gap:8px;padding:10px 18px;display:flex;position:sticky;top:0}.formNav button,.formNav a{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:700;text-decoration:none}.formNav button:hover,.formNav button.isActive,.formNav a:hover,.formNav a.isActive{border-color:var(--primary);color:var(--primary)}.formNav button.isActive,.formNav a.isActive{background:#eaf6f0}.formNav button:focus,.formNav a:focus{outline:2px solid var(--primary);outline-offset:2px}.formNav.compactNav{background:0 0;border-top:0;padding:0 0 12px;position:static}.formBody{padding:18px}.studentIdentityBar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);background:#f8fafc;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 18px;font-size:13px;display:flex}.studentIdentityBar strong{color:var(--text);font-size:15px}.studentPhotoFrame,.studentPhotoThumb{border:1px solid var(--border);background:var(--surface-muted);color:var(--muted);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.studentPhotoFrame{border-radius:6px;width:64px;height:80px}.studentPhotoThumb{border-radius:4px;width:44px;height:56px}.studentPhotoFrame img,.studentPhotoThumb img{object-fit:cover;width:100%;height:100%}.formTabSection{border:1px solid var(--border);background:#fff;border-radius:8px;padding:14px;scroll-margin-top:88px;display:none}.formTabSection.isActive{display:block}.formTabSection+.formTabSection{margin-top:0}.formSectionTitle{border-left:4px solid var(--primary);color:var(--text);margin:18px 0 14px;padding-left:10px;font-size:20px;font-weight:800}.formSectionTitle .statusPill,.formSectionTitle .statusBadge,.formSectionTitle .smallButton{vertical-align:middle;margin-left:10px}.formSectionTitle:first-child{margin-top:0}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.compactFormGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.calendarFilterForm{gap:14px;display:grid}.calendarFilterControls{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;display:grid}.senderFieldStack{gap:14px;max-width:760px;display:grid}.calendarOtherSenderFields{grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;display:grid}.calendarFormPage .shell{max-width:1760px}.calendarFormPage .senderFieldStack{max-width:none}.submissionActionGrid{grid-template-columns:minmax(160px,max-content) minmax(320px,1fr);align-items:start;gap:14px;margin-top:14px;display:grid}.submissionActionGrid.approvalActionRow{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.returnReasonDetails{gap:10px;min-width:min(360px,100%);display:grid}.returnReasonDetails>summary{cursor:pointer;width:fit-content;list-style:none}.returnReasonDetails>summary::-webkit-details-marker{display:none}.returnReasonPanel{margin-top:10px}.timetableSearchResults{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.researchScheduleForms{gap:18px;display:grid}.researchDateGrid{grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;display:grid}.manualLedgerFormGrid>.field{align-content:start}.manualLedgerNameField{position:relative}.manualLedgerCandidateList{z-index:25;border:1px solid var(--border);background:var(--surface);border-radius:6px;gap:4px;max-height:260px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 28px #0f172a24}.manualLedgerCandidateList button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;gap:2px;padding:8px 10px;display:grid}.manualLedgerCandidateList button:hover,.manualLedgerCandidateList button:focus{background:#eef7f5}.manualLedgerCandidateList span{color:var(--muted);font-size:12px;font-weight:400}.studentInfoFormGrid{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.studentInfoFormGrid .field.wide{grid-column:auto}.field{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}.field.wide{grid-column:1/-1}.manualLedgerProgramField,.manualLedgerCertificateField{border:1px solid var(--border);border-radius:6px;align-content:start;min-height:300px;margin:0;padding:12px}.manualLedgerProgramField>span,.manualLedgerCertificateField>span{margin-bottom:8px}.manualLedgerCertificateField .tableWrap{overflow-x:visible}.manualLedgerCertificateField table{margin:0}.manualLedgerWideField{grid-column:1/-1}.formBody[data-role-aware=staff-user] [data-teacher-profile]{display:none}.formBody[data-role-aware=staff-user]:has(select[name=role] option[value=TEACHER]:checked) [data-staff-profile]{display:none}.formBody[data-role-aware=staff-user]:has(select[name=role] option[value=TEACHER]:checked) [data-staff-employment-type]{display:none}.formBody[data-role-aware=staff-user]:has(select[name=role] option[value=TEACHER]:checked) [data-teacher-profile]{display:grid}.formBreak{grid-column:1/-1;height:0}.input,.textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:6px;padding:10px 11px}.timetableSearchInput{flex:360px;max-width:720px}.timetableCourseSelect{flex:360px;max-width:620px}.inputError{background:#fff7f7;border-color:#dc2626;box-shadow:0 0 0 2px #dc26261f}.fieldError{color:#dc2626;font-size:12px;font-weight:700}.requiredMark{color:#dc2626;margin-left:4px;font-weight:800;display:inline-block}.inputSuffixGroup{border:1px solid var(--border);background:#fff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.inputSuffixGroup .input{border:0;border-radius:0}.inputSuffixGroup span{border-left:1px solid var(--border);background:var(--surface-muted);color:var(--muted);padding:10px 11px;font-weight:700}.readonlyInput{background:var(--surface-muted);color:var(--muted)}.compactInput{max-width:120px}.courseFilterToolbar{gap:10px 12px}.courseFilterToolbar .select.compact{width:144px}.courseFilterToolbar .courseTeacherSelect{flex:240px;max-width:320px}.courseFilterToolbar .courseNameFilterInput{flex:420px;max-width:640px}.teachingLoadFilterToolbar{align-items:center}.teachingLoadFilterToolbar label{align-items:center;min-height:40px;display:inline-flex}.teachingLoadFilterToolbar .input{width:auto;height:40px}.teachingLoadFilterToolbar .compactInput{width:120px}.teachingLoadFilterToolbar .compactSelect{width:150px;min-width:150px}.timetableEditFilterToolbar{flex-wrap:nowrap;align-items:center;overflow-x:auto}.timetableEditFilterToolbar label{white-space:nowrap;align-items:center;min-height:40px;display:inline-flex}.timetableEditFilterToolbar .input{width:auto;height:40px}.timetableEditFilterToolbar .compactSelect{width:150px;min-width:150px}.timetableEditFilterToolbar #filterTeacher{width:220px;min-width:220px}.eaiRegistrationFilterToolbar{flex-wrap:wrap;overflow:visible}.eaiRegistrationFilterToolbar .studentSearchSelect{flex:420px;min-width:min(420px,100%)}.statusChangeFilterToolbar{flex-wrap:nowrap;overflow-x:auto}.statusChangeFilterToolbar label{white-space:nowrap;align-items:center;min-height:40px;display:inline-flex}.statusChangeFilterToolbar .input{width:auto;height:40px}.statusChangeFilterToolbar .compactInput{width:96px;min-width:96px}.statusChangeFilterToolbar .compactSelect{width:128px;min-width:128px}.statusChangeFilterToolbar .compactDateInput{width:152px;min-width:152px}.statusChangeFilterToolbar .searchInput{width:220px;min-width:220px}.shortTextInput{max-width:240px}.mediumTextInput{max-width:360px}.compactTextarea{max-width:420px;min-height:72px}.fullWidthTextarea{width:100%;max-width:none}.descriptionCell{white-space:normal;max-width:360px}.descriptionCell .compactTextarea{width:min(100%,360px)}.stackedField{align-items:start;gap:8px;display:grid}.checkStack{align-items:start;gap:6px;display:grid}.formBreak{flex-basis:100%;width:0;height:0}.dateInputWide{min-width:150px;max-width:180px}.textarea{resize:vertical}.largeTextarea{min-height:210px;line-height:1.6}.csvTextarea{white-space:pre;min-height:260px;font-family:Consolas,Courier New,monospace;font-size:13px;line-height:1.5}.previewSummary{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.csvPreviewTable{margin-top:12px}.compactList{white-space:normal;gap:4px;margin:0;padding-left:18px;display:grid}.lessonTimeSelectGroup{align-items:center;gap:.35rem;display:inline-flex}.lessonTimePart{min-width:4.6rem}.lessonCandidateRows{gap:.85rem;display:grid}.lessonCandidateRow{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;grid-template-columns:minmax(8rem,.8fr) minmax(9rem,1fr) minmax(9rem,1fr);align-items:end;gap:.75rem;padding:.9rem;display:grid}.lessonAnswerBlocks{gap:1rem;display:grid}.lessonAnswerBlock{border:1px solid var(--border-color);background:#fff;border-radius:8px;padding:1rem}.lessonAnswerBlock h3{margin:0 0 .75rem;font-size:1rem}.sectionSubheading{margin:1.2rem 0 .65rem;font-size:1.05rem}.compactSubheading{margin-top:.5rem}.compactLead{margin-bottom:.65rem}.lessonAdjustmentTimeStrip{border:1px solid var(--border);background:#f8fafc;border-radius:6px;align-items:center;gap:12px;margin-bottom:14px;padding:10px 12px;display:flex}.lessonAdjustmentTimeStrip strong{flex:none}.lessonAdjustmentTimeChips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lessonAdjustmentTimeChip{color:#0f5f59;background:#e6f4f1;border:1px solid #99f6e4;border-radius:999px;padding:4px 9px;font-size:.86rem;font-weight:700;line-height:1.2;display:inline-flex}.lessonAnswerTabs{margin-top:.35rem}.lessonAnswerTabInput{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute}.lessonAnswerTabList{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.lessonAnswerTabButton{background:var(--surface-muted);border:1px solid var(--border);cursor:pointer;border-radius:6px;align-items:center;min-height:38px;padding:8px 13px;font-weight:700;display:inline-flex}.lessonAnswerTabButton:hover,.lessonAnswerTabButton:focus-visible{border-color:var(--primary)}.lessonAnswerTabPanel{display:none}:is(.lessonAnswerTabs:has(.lessonAnswerTabInput:first-of-type:checked) .lessonAnswerLessonPanel,.lessonAnswerTabs:has(.lessonAnswerTabInput:nth-of-type(2):checked) .lessonAnswerPracticePanel){display:block}:is(.lessonAnswerTabs:has(.lessonAnswerTabInput:first-of-type:checked) .lessonAnswerTabButton:first-of-type,.lessonAnswerTabs:has(.lessonAnswerTabInput:nth-of-type(2):checked) .lessonAnswerTabButton:nth-of-type(2)){border-color:var(--primary);color:var(--primary-dark);background:#e6f4f1}.lessonAnswerList{gap:.35rem;max-width:24rem;display:grid}.lessonAnswerChoice,.lessonGridChoice{border-radius:6px;justify-content:center;align-items:center;gap:.5rem;min-width:3.25rem;min-height:2rem;padding:.25rem .45rem;font-weight:700;display:inline-flex}.lessonGridCellButton{color:#0f766e;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#ecfdf5;border:1px solid #99f6e4;border-radius:6px;justify-content:center;align-items:center;width:100%;min-width:4.25rem;min-height:2rem;padding:.2rem .5rem;font-size:.9rem;font-weight:700;display:inline-flex}.lessonGridCellButton:hover,.lessonGridCellButton:focus-visible{outline-offset:1px;border-color:#0f766e;outline:2px solid #0f766e3d}.lessonGridCellButton.unavailable{color:#b42318;background:#fff1f0;border-color:#fecaca}.lessonGridCellButton.fixedBlocked{color:#334155;cursor:not-allowed;white-space:normal;background:#e5e7eb;border-color:#cbd5e1;min-width:4.6rem;font-size:.78rem;line-height:1.25}.lessonGridCellButton:disabled{cursor:not-allowed;opacity:.65}.lessonAnswerChoice input,.lessonGridChoice input{block-size:1.15rem;inline-size:1.15rem}.lessonAnswerChoice.unavailable,.lessonGridChoice.unavailable{color:#b42318;background:#fff1f0}.lessonUnavailableTable th,.lessonUnavailableTable td,.organPracticeUnavailableTable th,.organPracticeUnavailableTable td{text-align:center;vertical-align:middle;padding:2px 3px}.lessonUnavailableTable th,.organPracticeUnavailableTable th{white-space:nowrap;font-size:.86rem}.lessonGridEmptyCell{color:#94a3b8;text-align:center;background:#f1f5f9}.lessonAnswerGridWrap{-webkit-user-select:none;user-select:none}.lessonPreferenceGridBlock{gap:12px;display:grid}.lessonPreferenceModeActions{padding-top:2px}.lessonPreferenceNotice{border:1px solid var(--border-color);color:var(--muted-text);background:#f8fafc;border-radius:8px;gap:.25rem;margin:.75rem 0;padding:.75rem .9rem;display:grid}.lessonPreferenceNotice p{margin:0}.lessonPreferenceModeBar,.lessonDurationChooser{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.lessonPreferenceMode,.radioPill{border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;background:#f8fafc;border-radius:8px;align-items:center;gap:.4rem;min-height:2.25rem;padding:.35rem .75rem;font-weight:700;display:inline-flex}.lessonPreferenceMode.active{border-color:var(--primary);box-shadow:0 0 0 2px #0f766e24}.lessonGridCellButton.preferenceCell.choiceFirst,.lessonPreferenceMode.choiceFirst.active{color:#fff;background:#0f766e;border-color:#0f766e}.lessonGridCellButton.preferenceCell.choiceSecond,.lessonPreferenceMode.choiceSecond.active{color:#1d4ed8;background:#dbeafe;border-color:#60a5fa}.lessonGridCellButton.preferenceCell.choiceThird,.lessonPreferenceMode.choiceThird.active{color:#6d28d9;background:#ede9fe;border-color:#a78bfa}.lessonGridCellButton.preferenceCell.choiceAvailable,.lessonPreferenceMode.choiceAvailable.active{color:#166534;background:#dcfce7;border-color:#86efac}.lessonGridCellSubLabel{margin-top:.1rem;font-size:.68rem;font-weight:700;line-height:1.15;display:block}.exceptionReasonBox{border:1px solid var(--border-color);background:#f8fafc;border-radius:8px;gap:.5rem;margin-top:.75rem;padding:.75rem;display:grid}.durationAwarePreferenceGrid{gap:.35rem;display:grid}.availabilityDateTagList{grid-template-columns:max-content;display:grid}.lessonAnswerTime{font-variant-numeric:tabular-nums;min-width:3.5rem}.monoTextarea{white-space:pre;min-height:180px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.lessonTimetableGroups{gap:12px;display:grid}.lessonTimetableGroup{border:1px solid var(--border-color);background:#fff;border-radius:8px;padding:14px}.lessonTimetableGroup h3{margin:0 0 10px;font-size:16px}.lessonTimetableItem{background:#f7fbfa;border-left:3px solid #0f8b83;border-radius:6px;gap:4px;padding:10px 12px;display:grid}.lessonTimetableItem span{color:#475569;font-size:13px}.tabActionRow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.timetableVersionTable{min-width:900px}.pdfMenuGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:16px;display:grid}.pdfMenuButton{justify-content:center;min-height:48px}.pdfExportTable{min-width:680px}.pdfExportTable td:last-child{width:180px}.timetableTabs{margin:16px 18px 0}.compactPanelHeader{margin:0}.compactNotice{margin:8px 0 0;padding:8px 10px}.inlineBadge{vertical-align:middle;margin-left:8px}.panelSubsection{border-top:1px solid var(--border);padding:16px 18px}.panelSubsection .subPanelTitle{margin:0 0 12px;font-size:17px}.titleAccent{vertical-align:-.22em;background:var(--primary);width:4px;height:1.35em;margin-right:10px;display:inline-block}.timetableGridScroll{overflow-x:auto}.lessonScheduleGrid{border-collapse:collapse;table-layout:fixed;width:100%;min-width:980px}.lessonScheduleGrid.lessonGridNarrow{min-width:760px}.lessonScheduleGridMatrix{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:72px repeat(5,minmax(150px,1fr));width:100%;min-width:980px;display:grid}.lessonScheduleGridMatrix.lessonGridNarrow{min-width:760px}.timetableGridHeader,.timetableGridTimeCell,.timetableGridBaseCell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:34px}.timetableGridHeader,.timetableGridTimeCell{background:#f3f6f8;font-size:12px;font-weight:700}.timetableGridHeader{align-items:center;padding:7px 8px;display:flex}.timetableGridTimeHeader,.timetableGridTimeCell{text-align:center;justify-content:center}.timetableGridTimeCell{align-items:center;display:flex}.timetableGridBaseCell{align-items:flex-start;padding:7px 8px;display:flex}.timetableGridPlacedItem{z-index:2;flex-direction:column;padding:4px 6px;display:flex}.timetableGridPlacedItem.stacked{flex-direction:row;gap:4px}.timetableGridPlacedItem.blocked{z-index:1;padding:0}.timetableGridBreakMarker{z-index:3;align-self:center;padding:0 8px}.lessonScheduleGrid th,.lessonScheduleGrid td{border:1px solid var(--border);vertical-align:top;padding:7px 8px;overflow:hidden}.lessonScheduleGrid thead th,.lessonScheduleGrid tbody th{white-space:nowrap;background:#f3f6f8;font-size:12px}.lessonScheduleGrid tbody th{text-align:center;width:72px}.timetableCellCard{border-left:3px solid var(--primary);background:#f7fbfa;border-radius:6px;align-content:start;gap:2px;width:100%;padding:7px 8px;font-size:12px;display:grid;overflow:hidden}.timetableCellCard .tableActions{align-self:start}.timetableGridPlacedItem>.timetableCellCard{min-height:100%}.timetableGridPlacedItem.stacked>.timetableCellCard{flex:1 1 0;min-width:0;min-height:0;padding:6px 7px}.timetableCellCard+.timetableCellCard{margin-top:6px}.timetableGridPlacedItem.stacked>.timetableCellCard+.timetableCellCard{margin-top:0}.timetableCellCard strong{overflow-wrap:anywhere;font-size:12px}.timetableCellCard span{color:var(--muted);overflow-wrap:anywhere}.timetableCellCard.teacherPracticeCard{background:#fff7ed;border-left-color:#f97316}.timetableCellCard.hasError{border-left-color:var(--danger);background:var(--danger-bg)}.timetableCellCard.hasWarning{background:#fff8e6;border-left-color:#d97706}.timetableBlockedCard{color:#334155;text-align:left;background:#e5e7eb;border-left:3px solid #64748b;border-radius:6px;align-content:start;justify-items:start;gap:3px;width:100%;min-height:100%;padding:8px;font-size:12px;display:grid;overflow:hidden}.timetableGridPlacedItem>.timetableBlockedCard{border-left-width:0;border-radius:0}.lessonScheduleGrid td.timetableBlockedCell{vertical-align:middle}.timetableBlockedCard+.timetableBlockedCard,.timetableBlockedCard+.timetableCellCard,.timetableCellCard+.timetableBlockedCard{margin-top:6px}.timetableBlockedCard.organLesson{background:#e2e8f0;border-left-color:#475569}.timetableBlockedCard strong{overflow-wrap:anywhere;font-size:12px;line-height:1.35}.timetableBlockedCard span{color:#475569;overflow-wrap:anywhere;line-height:1.35}.timetableBlockedItem{gap:2px;display:grid}.timetableBlockedItem+.timetableBlockedItem{border-top:1px solid #64748b47;margin-top:7px;padding-top:7px}.timetableBreakMarker{color:#92400e;white-space:nowrap;background:#fff7ed;border:1px dashed #d97706;border-radius:999px;justify-content:center;align-items:center;min-height:18px;font-size:11px;font-weight:800;line-height:1.2;display:flex}.cellMessageBadges{flex-wrap:wrap;gap:3px;margin-top:2px;display:flex}.cellErrorBadge,.cellWarningBadge{border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700;line-height:1.25}.cellErrorBadge{color:#b91c1c;background:#fff;border:1px solid #dc2626}.cellWarningBadge{color:#92400e;background:#fff;border:1px solid #d97706}.tinyButton{min-height:26px;padding:4px 7px;font-size:11px}.compactActions{gap:4px;margin-top:3px}.timetableMessageBox{border:1px solid var(--border);border-radius:8px;margin:8px 14px 0;padding:9px 12px;font-size:13px}.timetableMessageBox ul{margin:6px 0 0;padding-left:18px}.timetableMessageBox.error{background:var(--danger-bg);color:var(--danger);border-color:#ffccc7}.timetableMessageBox.warning{background:#fff8e6;border-color:#f6d58a}.timetableMessageSummary{display:inline}.timetableMessageDetails{margin-left:8px;display:inline-block}.timetableMessageDetails summary{min-height:26px;color:var(--text);cursor:pointer;background:#eef3f7;border-radius:6px;align-items:center;padding:4px 9px;font-size:12px;font-weight:700;list-style:none;display:inline-flex}.timetableMessageDetails summary::-webkit-details-marker{display:none}.timetableMessageDetailsBody{color:var(--muted);gap:4px;margin:8px 0 4px;font-size:13px;line-height:1.55;display:grid}.modalPanel .errorBox{color:var(--danger);font-weight:800}.blockText{margin-top:4px;display:block}.lessonCandidateRow label{gap:.35rem;display:grid}.lessonSubjectTermGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.lessonSubjectTermCard{align-items:flex-start;gap:.55rem;display:grid}.lessonSubjectTermCard strong{color:var(--text)}.lessonVisibilityList{padding-left:0}.lessonVisibilityList>li{list-style:none}.inlineCheckbox{align-items:center;gap:.35rem;display:inline-flex}.errorList{color:var(--danger)}.warningList{color:#8a5a00}.importGuide,.compactMessage{margin-bottom:18px}.checkRow{color:var(--text);flex-wrap:wrap;gap:18px;margin-top:14px;display:flex}.checkRow label{align-items:center;gap:7px;display:inline-flex}.fieldSet{border:1px solid var(--border);border-radius:8px;margin:16px 0 0;padding:14px}.fieldSet legend{color:var(--muted);padding:0 6px;font-size:13px;font-weight:700}.fieldSet legend.onlineAccommodationQuestion{color:var(--text);font-size:1rem;font-weight:700}.formGrid>.fieldSet{grid-column:1/-1;margin-top:0}.checkboxGrid{gap:10px;display:grid}.checkboxGrid label{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;line-height:1.5;display:grid}.teachingMethodGroupList{gap:14px;display:grid}.teachingMethodGroup{gap:8px;display:grid}.fieldSubheading{color:var(--muted);margin:0;font-size:13px;font-weight:700}.inlineCheckGrid{flex-wrap:wrap;gap:10px;display:flex}.inlineCheckGrid label{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:6px;align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.inlineCheckGrid .dpOption{align-items:flex-start;width:100%}.dpOption span{gap:3px;line-height:1.45;display:grid}.dpOption strong{color:var(--primary)}.singleCheck{color:var(--text);align-items:center;gap:8px;font-weight:700;display:inline-flex}.inlineCheck{color:var(--text);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.compactCheck{white-space:nowrap;font-size:13px}.teacherRow{grid-template-columns:110px minmax(220px,360px) 96px auto;align-items:center;gap:8px;display:grid}.teacherKomaInput{text-align:right;width:96px;min-width:96px}.teacherReadonlyList{gap:8px;display:grid}.teacherReadonlyRow{grid-template-columns:72px minmax(220px,360px) 96px;align-items:center;gap:10px;width:fit-content;max-width:100%;display:grid}.readonlyRadioLabel{color:var(--text)}.readonlyTeacherInput{background:var(--surface-muted);width:100%;font-weight:700}.radioLabel{color:var(--text);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.choiceRow{flex-wrap:wrap;gap:10px;display:flex}.choicePill{border:1px solid var(--border);min-width:104px;color:var(--text);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:800;display:inline-flex}.choicePill.isSelected{border-color:var(--primary);color:var(--primary-dark);background:#eefaf6}.choicePill input{accent-color:var(--primary)}.scheduleFieldSet{margin-bottom:16px}.scheduleGridWrap{overflow-x:auto}.scheduleGrid{table-layout:fixed;border:1px solid var(--border);min-width:620px}.scheduleGrid th,.scheduleGrid td{text-align:center;white-space:normal;padding:8px}.scheduleGrid tbody th{width:70px}.scheduleCell{min-height:42px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;gap:4px;font-size:12px;display:grid}.scheduleCell:has(input:checked){color:var(--primary-dark);background:#dff3ee;font-weight:700;box-shadow:inset 0 0 0 2px #a9d8ce}.planGrid{grid-template-columns:1fr;gap:10px;display:grid}.planField{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:8px;display:grid}.planField.singlePlanField{grid-template-columns:minmax(0,1fr)}.planField.singlePlanField .textarea{width:100%;min-height:140px}.planField span{color:var(--muted);font-size:13px;font-weight:700}.irregularPlanList{gap:8px;display:grid}.irregularPlanHeader,.irregularPlanRow{grid-template-columns:48px minmax(260px,1.75fr) minmax(76px,.48fr) minmax(128px,.7fr) minmax(70px,.42fr) minmax(82px,.48fr) minmax(140px,.72fr) minmax(86px,.46fr) minmax(64px,.36fr);align-items:center;gap:8px;display:grid}.irregularPlanHeader{color:var(--muted);background:#f1f5f9;border-radius:6px;padding:8px 10px;font-size:13px;font-weight:700}.irregularPlanRow{border-bottom:1px solid var(--border);padding:6px 0}.irregularPlanNo{color:var(--muted);text-align:center;font-weight:700}.irregularPlanRow .smallButton{white-space:nowrap;justify-self:end;width:64px}.irregularPlanTable{table-layout:fixed;width:100%}.irregularPlanTable th,.irregularPlanTable td{vertical-align:middle}.irregularPlanTable .input,.irregularPlanTable .select{width:100%;min-width:0}.irregularPlanColWeek{width:4%}.irregularPlanColContent{width:26%}.irregularPlanColTerm{width:8%}.irregularPlanColDate{width:12%}.irregularPlanColWeekday{width:7%}.irregularPlanColPeriod{width:8%}.irregularPlanColTeacher{width:14%}.irregularPlanColClassroom{width:10%}.irregularPlanColTentative,.irregularPlanColAction{width:6%}.irregularErrorDialog{max-width:min(720px,100vw - 40px)}.irregularErrorDialog h3{margin:0 0 10px}.irregularErrorDialog ul{margin:0;padding-left:20px;line-height:1.7}@media (max-width:860px){.calendarFilterControls,.researchDateGrid{grid-template-columns:1fr}.irregularPlanHeader{display:none}.irregularPlanRow{grid-template-columns:36px minmax(0,1fr)}.irregularPlanRow>:not(.irregularPlanNo){grid-column:2}}.repeatableList{gap:10px;display:grid}.repeatableRow,.textbookRow,.gradingRow,.repeatableFooter{align-items:center;gap:8px;display:flex}.gradingRow{grid-template-columns:minmax(0,1fr) 96px 24px;display:grid}.readonlyInputLike{border:1px solid var(--line);background:var(--panel-soft);min-height:40px;color:var(--text);border-radius:6px;align-items:center;padding:9px 10px;font-size:14px;display:flex}.textbookRow{grid-template-columns:minmax(180px,1.25fr) minmax(120px,.7fr) minmax(140px,.8fr) 100px auto auto;align-items:center;display:grid}.prePostStudyRow{grid-template-columns:110px minmax(240px,1fr) 120px auto auto;align-items:start;gap:8px;display:grid}.prePostStudyContent{height:42px;min-height:42px}.textbookActionSpacer{width:52px;display:inline-block}.textbookRow .smallButton{white-space:nowrap}.percentInput{text-align:right}.percentMark{color:var(--muted);font-size:13px;font-weight:700}.smallButton{min-height:36px;padding:7px 10px}.dropdownDetails{display:inline-block;position:relative}.dropdownDetails summary{cursor:pointer;list-style:none}.dropdownDetails summary::-webkit-details-marker{display:none}.dropdownPanel{z-index:60;border:1px solid var(--border);background:var(--surface);border-radius:8px;width:min(520px,100vw - 48px);margin-top:8px;padding:16px;position:absolute;right:0;box-shadow:0 18px 50px #0f172a38}.lessonAuditRow{background:#fff8e6}.lessonCancelRow{background:#fff1f1}.inlineFormRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tagList{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.tagList.availabilityDateTagList{grid-template-columns:repeat(3,max-content);align-items:start;display:grid}.tagChip{border:1px solid var(--line);background:var(--panel-soft);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.tagChipButton{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:0 2px}.tagChipButton:hover{color:var(--danger)}.fitButton{width:fit-content}.repeatableFooter{justify-content:space-between}.validTotal{color:var(--primary)}.invalidTotal{color:var(--danger)}.fieldHint{color:var(--muted);margin:0;font-size:12px;font-weight:400}.formActions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.formActions.compactActions{grid-column:1/-1;justify-content:flex-start;align-items:center;margin-top:8px}.formGrid+.formSectionTitle,.formActions.compactActions+.formSectionTitle{margin-top:28px}.formActions.compactActions.alignEnd{justify-content:flex-end}.formActions.compactActions.actionBarLeft,.formActions.compactActions.actionButtonsTogether{gap:10px}.inlineSaveMessage{color:var(--success);font-size:13px;font-weight:700}.courseSubmitActionStack{flex-direction:column;align-items:flex-end;gap:6px;display:inline-flex}.buttonOnlyForm{align-items:center;display:inline-flex}.approvedPlanRow td{background:#ecfdf3}.sectionSaveActions{border-bottom:1px solid var(--border);margin-bottom:20px;padding-top:8px;padding-bottom:20px}.scrollAnchor{scroll-margin-top:24px}.isHidden{display:none!important}.creditManagement{gap:16px;display:grid}.nestedFormBody{border-top:1px solid var(--border);padding-top:16px}.sectionHeaderRow{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.compactTitle{margin-bottom:4px}.historyList{border-top:1px solid var(--border);gap:4px;margin:8px 0 14px;padding-top:10px;display:grid}.historyRow{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.progressList{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;gap:6px;padding:10px;display:grid}.progressRow{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.progressRow strong{font-size:13px;display:block}.singleEditPanel{margin-top:12px}.modalBackdrop{z-index:50;background:#0f172a59;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modalPanel{border:1px solid var(--border);background:var(--surface);border-radius:8px;width:min(820px,100%);max-height:calc(100vh - 48px);padding:18px;position:relative;overflow:auto;box-shadow:0 18px 50px #0f172a38}.wideModal{width:min(1080px,100vw - 48px)}.calendarModalPanel{width:min(1380px,100vw - 48px)}.studentInformationSubmissionModal{width:min(1100px,100%)}.practicumReviewModal{gap:16px;width:min(1180px,100vw - 48px);padding:20px;display:grid}.practicumReviewModal .modalHeader{margin-bottom:0}.practicumModalHeaderActions{justify-content:flex-end;display:flex}.practicumReadonlySections{gap:16px;display:grid}.practicumReadonlySection{border-top:1px solid var(--border);padding-top:14px}.practicumReadonlyGrid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px 20px;margin:0;display:grid}.practicumReadonlyGrid div{grid-template-columns:150px minmax(0,1fr);align-items:start;gap:10px;display:grid}.practicumReadonlyGrid dt{color:var(--muted);font-size:13px;font-weight:700}.practicumReadonlyGrid dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.6}.practicumSegmentReadonly{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;padding:12px}.practicumActionFields{border-top:1px solid var(--border);gap:10px;padding-top:14px;display:grid}.practicumActionFields .field.wide{max-width:720px}.practicumModalActions{z-index:1;border-top:1px solid var(--border);background:#fffffff5;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:12px;margin:0 -20px -20px;padding:12px 20px;display:flex;position:sticky;bottom:-20px}.practicumModalActionGrid{grid-template-columns:repeat(auto-fit,minmax(220px,280px));justify-content:end;align-items:start;display:grid}.practicumActionColumn{justify-items:stretch;gap:8px;max-width:280px;display:grid}.practicumActionColumn .field{grid-template-columns:1fr;gap:6px;width:100%;margin:0;display:grid}.practicumActionColumn .field.wide{max-width:280px}.practicumActionColumn textarea.input{width:100%;min-height:64px}.practicumDocumentKindText{color:var(--text);font-size:13px;font-weight:700;line-height:1.6}.practicumDocumentTable .statusPill,.practicumReviewModal h2 .statusPill{margin-bottom:0}.practicumReviewModal h2{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.practicumDocumentTable .button{min-width:88px}.practicumFilterToolbar{flex-wrap:wrap;gap:10px 14px}.practicumFilterToolbar .field{align-items:center;gap:8px;margin:0;display:flex}.practicumFilterToolbar .field>span{white-space:nowrap}.practicumFilterToolbar .input{min-width:120px}.practicumFilterToolbar .field.wide .input{min-width:240px}.practicumReviewModal .simpleList .tableNote{margin-top:4px;display:block}@media (max-width:780px){.practicumReviewModal{width:min(100%,100vw - 24px);padding:16px}.practicumReadonlyGrid{grid-template-columns:1fr}.practicumReadonlyGrid div{grid-template-columns:1fr;gap:4px}.practicumModalActions{margin:0 -16px -16px;padding:12px 16px;bottom:-16px}.practicumActionColumn{width:100%;max-width:none}}.teachingLoadModalPanel{width:min(1180px,100%)}.lessonApplicationDetailModal{width:min(820px,100vw - 48px);padding:18px}.lessonApplicationDetailModal .modalHeader{border-bottom:1px solid var(--border);align-items:flex-start;margin-bottom:12px;padding-bottom:14px}.lessonApplicationDetailModal .panelTitle{margin-top:4px}.lessonApplicationDetailModal .panelLead{margin-top:8px}.lessonApplicationDetailModal .panelSubsection{border:1px solid var(--border);background:#fff;border-radius:8px;margin:0 0 2px;padding:16px}.lessonApplicationDetailModal .panelSubsection .panelSubsection{margin-top:12px}.lessonApplicationDetailModal .subPanelTitle{margin:0 0 14px;font-size:16px}.lessonApplicationDetailModal .detailList{gap:12px}.lessonApplicationDetailModal .detailList div{grid-template-columns:150px minmax(0,1fr);align-items:start}.lessonApplicationDetailModal .detailList dt{line-height:1.6}.lessonApplicationDetailModal .detailList dd{font-weight:500;line-height:1.65}.lessonApplicationDetailModal .tableWrap{margin-top:0}.lessonApplicationDetailModal .checkStack{gap:10px}.lessonApplicationDetailModal .field{gap:8px}.lessonApplicationDetailModal .lessonApplicationForeignCheck{align-self:end;min-height:40px}.lessonApplicationDetailModal .historyList{gap:10px;display:grid}.lessonApplicationDetailModal .historyList p{margin:0}@media (max-width:720px){.lessonApplicationDetailModal{width:min(100%,100vw - 24px)}.lessonApplicationDetailModal .detailList div{grid-template-columns:1fr;gap:4px}}.dokodemoMailModalPanel{width:min(980px,100%)}.dokodemoMailModalPanel .dokodemoReturnReasonForm{width:100%;max-width:none}.dokodemoMailModalPanel .dokodemoReturnReasonForm .input,.dokodemoMailModalPanel .dokodemoReturnReasonForm .textarea{width:100%}.mailRecipientSelectBox{border:1px solid var(--border);background:var(--panel-soft);border-radius:8px;gap:8px;width:100%;max-height:220px;padding:12px;display:grid;overflow:auto}.mailRecipientSelectBox .checkRow{flex-wrap:nowrap;align-items:flex-start;gap:8px;margin:0;font-weight:500;display:flex}.mailRecipientSelectBox .checkRow input{margin-top:3px}.mailFieldGroup{gap:6px;display:grid}.mailFieldLabel{color:var(--text);font-weight:700}.lessonUnavailableSlotModal{width:min(920px,100vw - 48px)}.lessonUnavailableSlotModal .modalHeader{border-bottom:1px solid var(--border);align-items:flex-start;margin-bottom:16px;padding-bottom:14px}.lessonUnavailableSlotModal .formSectionTitle{margin-bottom:8px}.lessonUnavailableSlotForm{gap:16px;display:grid}.lessonUnavailableSlotFormGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}.lessonUnavailableSlotFormGrid .field{min-width:0}.lessonUnavailableSlotFormGrid .select,.lessonUnavailableSlotFormGrid .input,.lessonUnavailableSlotFormGrid .textarea{width:100%}.lessonUnavailableSlotCopyGrid{grid-template-columns:repeat(2,minmax(220px,360px));align-items:start}.lessonUnavailableSlotCopyGrid .input,.lessonUnavailableSlotCopyGrid .select{width:100%}.lessonTermActionRow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;display:flex}.lessonTermActionRow .tabList{margin:0}.lessonUnavailableSlotTypeField .select{max-width:320px}.lessonUnavailableSlotChecks{border-top:1px solid var(--border);align-content:start;padding-top:12px}.lessonUnavailableSlotActions{justify-content:flex-end}@media (max-width:820px){.lessonUnavailableSlotFormGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.lessonUnavailableSlotCopyGrid{grid-template-columns:1fr}}@media (max-width:620px){.lessonUnavailableSlotFormGrid{grid-template-columns:1fr}}.teachingLoadPreviewModalPanel{width:min(1180px,100%)}.teachingLoadPreviewTeacherList{gap:6px;display:grid}.teachingLoadPreviewTeacherItem{grid-template-columns:minmax(140px,1fr) auto auto;align-items:center;gap:8px;width:100%;display:grid}.teachingLoadPreviewTeacherItem strong{min-width:0;color:var(--text);font-size:13px}.teachingLoadPreviewTeacherItem .statusBadge{white-space:nowrap;justify-self:start}.teachingResponseModalPanel{width:min(1100px,100%)}.teachingTimetablePlanModalPanel{width:min(1180px,100%)}.teachingTimetableEntryModalPanel{width:min(860px,100%)}.teachingTimetableEntryTitle{border-left:4px solid var(--primary);padding-left:10px;line-height:1.35}.teachingTimetableEntrySummary{grid-template-columns:max-content minmax(0,1fr);align-items:start;margin:0}.teachingTimetableEntryFormPanel{gap:14px;display:grid}.teachingTimetableEntryControls{grid-template-columns:repeat(3,minmax(160px,220px));gap:14px;display:grid}.teachingTimetableEntryField{gap:6px;margin:0;display:grid}.teachingTimetableEntryField>span{color:var(--muted);font-size:13px;font-weight:700}.advisorGuidanceModal,.gradePreviewModal{width:min(1180px,100%)}.gradePreviewFrame{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;height:min(72vh,780px)}.enrollmentListSections{gap:18px;display:grid}.enrollmentListSection h4{border-left:4px solid var(--accent);margin:0 0 8px;padding-left:10px;font-size:1rem}.embeddedPage{padding:0}.embeddedPage .shell{width:100%;max-width:none;padding:12px}.embeddedPage .registrationStudentHeader{margin-top:0}.timetableCheckDetailTable{table-layout:auto;width:100%}.timetableCheckDetailTable th,.timetableCheckDetailTable td{white-space:normal;overflow-wrap:anywhere;word-break:break-word;vertical-align:top}.timetableCheckDetailTable th:first-child,.timetableCheckDetailTable .termCell{white-space:nowrap;width:1%}.timetableCheckDetailTable .subjectCell{width:34%}.timetableCheckDetailTable .messageCell{width:auto}.teachingLoadPreviewModalPanel .modalHeader{padding-right:0}.detailGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:14px 0;display:grid}.detailGrid .summaryBox{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;gap:4px;padding:12px;display:grid}.detailGrid .summaryBox span{color:var(--muted);font-size:12px;font-weight:700}.detailGrid .summaryBox strong{color:var(--text)}.definitionGrid{grid-template-columns:150px minmax(0,1fr);gap:10px 14px;margin:0 0 14px;display:grid}.definitionGrid dt{color:var(--muted);font-size:13px;font-weight:700}.definitionGrid dd{margin:0}.csvInputGuideSection{gap:16px;display:grid}.csvInputGuideLead{max-width:72ch;color:var(--text);margin:0;line-height:1.8}.csvInputGuideList{border:1px solid var(--border);background:#fff;border-radius:12px;margin:0;overflow:hidden}.csvInputGuideItem{border-top:1px solid var(--border);grid-template-columns:140px minmax(0,1fr);display:grid}.csvInputGuideItem:first-child{border-top:0}.csvInputGuideItem dt,.csvInputGuideItem dd{padding:13px 16px}.csvInputGuideItem dt{background:var(--surface-muted,#f8fafc);color:var(--muted);font-size:13px;font-weight:700}.csvInputGuideItem dd{color:var(--text);margin:0;line-height:1.7}@media (max-width:700px){.csvInputGuideItem{grid-template-columns:1fr}.csvInputGuideItem dt{padding-bottom:4px}.csvInputGuideItem dd{padding-top:4px}}.reviewActionGrid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.reviewActionForm{gap:10px;display:grid}.compactReviewActionForm{align-self:end}.wrapCell{white-space:normal;max-width:260px}.compactNumberInput{width:120px}.fullWidthField{grid-column:1/-1}.researchDayNoteBlock{padding:14px 18px 6px}.researchDayNoteField{color:var(--text);gap:8px;font-size:14px;font-weight:700;display:grid}.readonlyBox{border:1px solid var(--border);min-height:40px;color:var(--text);background:#f8fafc;border-radius:6px;padding:9px 10px}.responseNoteBlock{margin-top:16px}.responseNoteBlock h4{color:var(--text);margin:0 0 8px;font-size:15px}.availabilityGrid{gap:12px;display:grid}.sectionBlockTitle{margin-top:28px}.sectionLead{color:var(--muted);margin:0 0 12px;line-height:1.7}.teachingChoiceRow{margin-bottom:8px}.teachingConditionalSection{margin-top:12px;display:none}:is(.teachingConditionalSection.isVisible,.teachingPartTimeForm:has(input[name=hasPrimaryWorkplace][value=true]:checked) .primaryWorkplaceDetails,.teachingPartTimeForm:has(input[name=hasMailingAddressChange][value=true]:checked) .mailingAddressDetails){display:grid}.teachingPartTimeForm:has(input[name=acceptanceStatus][value=DECLINED]:checked) .availabilityScheduleSection{display:none}.teachingPartTimeForm:has(input[name=acceptanceStatus][value=DECLINED]:checked) .commissionDetailSection{display:none}.termGuide{color:var(--muted);white-space:pre-line;margin:0 0 10px;font-size:13px;line-height:1.7}.availabilityRow{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:6px 0;display:grid}.checkboxGroup{flex-wrap:wrap;gap:8px 14px;display:flex}.changePair{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:6px 10px;min-width:180px;display:grid}.changePair span{color:var(--muted);font-size:12px;font-weight:700}.changePair strong{color:var(--text);font-size:13px;line-height:1.55}.teachingLoadAddForm{grid-template-columns:minmax(360px,1fr) 120px 110px;align-items:end;gap:12px;display:grid}.teachingLoadAddForm label{color:var(--text);font-weight:700}.teachingLoadAddCourseField,.teachingLoadAddSmallField{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.teachingLoadAddActions{grid-column:1/-1}.teachingLoadKomaInput{width:72px;min-width:72px;color:var(--text);text-align:right;background:#fff;font-weight:700}.teachingLoadTeacherNoteField{grid-template-columns:96px minmax(280px,520px);align-items:start;gap:12px;margin:16px 0;display:grid}.teachingLoadTeacherNoteField label{color:var(--text);padding-top:10px;font-weight:700}.teachingLoadTeacherNoteInput{resize:vertical;width:min(520px,100%);min-height:84px}.modalHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;padding-right:96px;display:flex}.modalCloseButton{position:absolute;top:12px;right:12px}.textButton{color:var(--primary);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;font-weight:700}.textButton:hover{text-decoration:underline}.courseDetailTrigger{line-height:1.45}.courseDetailModal{gap:14px;display:grid}.courseDetailGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.courseDetailGrid>div{border:1px solid var(--border);background:#f8fafc;border-radius:6px;gap:3px;padding:8px;display:grid}.courseDetailGrid span{color:var(--muted);font-size:12px;font-weight:700}.courseDetailGrid strong{color:var(--text);white-space:pre-line;font-size:13px}.courseDetailSection{gap:6px;display:grid}.courseDetailSection h3{border-left:4px solid var(--primary);margin:0;padding-left:8px;font-size:14px}.courseDetailSubheading{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:700}.courseDetailText,.courseDetailList{color:var(--text);white-space:pre-line;margin:0;font-size:13px;line-height:1.65}.courseDetailList{padding-left:20px}.tableActions{align-items:center;gap:8px;display:flex}.pagination{flex-wrap:wrap;justify-content:flex-end;gap:6px;padding-top:12px;display:flex}.paginationButton{justify-content:center;align-items:center;min-width:40px;display:inline-flex}.paginationCurrent{cursor:default}.paginationDisabled{cursor:not-allowed;opacity:.55}.paginationEllipsis{color:var(--muted);align-self:center;padding:0 4px}.compactPageHeader{margin-bottom:14px}.compactPageHeader .title{margin:0}.teachingLoadGroupPage{gap:12px;display:grid}.teachingLoadGroupToolbar{flex-wrap:nowrap;width:fit-content;margin-bottom:6px;padding:10px 14px}.teachingLoadGroupToolbar label{white-space:nowrap}.teachingLoadGroupPanel .panelHeader{padding:12px 16px}.teachingLoadGroupPanel .panelTitle{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teachingLoadGroupPanel .tableWrap table th,.teachingLoadGroupPanel .tableWrap table td{padding-top:12px;padding-bottom:12px}.teachingLoadGroupPanel .tableActions{flex-wrap:wrap}.teachingLoadGroupPage .modalHeader h2{margin:0}.teachingLoadGroupPage .modalPanel .stackedForm{margin-top:14px}.teachingLoadGroupPage .modalPanel .field>span,.teachingLoadGroupPage .modalPanel .inlineField>span,.teachingLoadGroupPage .courseSelectionField>span{color:var(--text);font-weight:800}.courseSelectionRows{gap:10px;display:grid}.courseSelectionRow{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.courseSelectionField{grid-template-columns:120px minmax(260px,520px);align-items:center;gap:6px;min-width:0;display:grid}.courseSelectionField .input{width:100%}.courseSelectionRow .smallButton{white-space:nowrap}@media (max-width:760px){.teachingLoadGroupToolbar{flex-wrap:wrap;width:100%}.courseSelectionRow{grid-template-columns:minmax(0,1fr) auto auto}.courseSelectionField{grid-column:1/-1;grid-template-columns:1fr}}.enrollmentBulkDeleteActions{justify-content:flex-end;margin-top:12px}.lessonAnswerSubmitActions{justify-content:flex-end;padding:12px 16px 16px}.teachingLoadActions{flex-wrap:wrap}.teachingLoadDeleteAction{border-left:1px solid var(--border);margin-left:14px;padding-left:12px}.inlineEditForm{grid-template-columns:minmax(90px,.6fr) minmax(220px,1.4fr) minmax(190px,1fr) minmax(190px,1fr) auto auto;align-items:end;gap:10px;display:grid}.inlineEditForm label{color:var(--muted);gap:4px;font-size:12px;display:grid}.impersonationBanner{color:#7c2d12;z-index:90;background:#fff7ed;border-bottom:1px solid #fed7aa;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:4px 12px;font-size:13px;display:flex;position:sticky;top:0}body:has(.impersonationBanner) .rolePortalStandaloneTopbar{top:48px}body:has(.impersonationBanner) .adminPortalFrameTopbar{top:40px}body:has(.impersonationBanner) .modalBackdrop{align-items:start;padding-top:56px}body:has(.impersonationBanner) .modalPanel{max-height:calc(100vh - 80px)}.impersonationBanner>div{flex-wrap:wrap;align-items:center;gap:4px 10px;line-height:1.35;display:flex}.impersonationBanner .button{min-height:32px;padding:6px 12px}.impersonationActor{color:#9a3412;font-size:12px}.ruleList{gap:8px;margin-top:14px;display:grid}.ruleItem{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;flex-wrap:wrap;justify-content:space-between;gap:8px 14px;padding:10px 12px;display:flex}.gradeEntryList{gap:12px;display:grid}.gradeEntryCard{border:1px solid var(--border);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.gradeEntryStudent{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.gradeEntryStudent span{color:var(--muted);font-size:13px}.gradeEntryFields{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.gradeEntryFields label{color:var(--muted);gap:5px;font-size:12px;display:grid}.gradeAutoResult{color:var(--muted);align-content:end;gap:5px;font-size:12px;display:grid}.gradeAutoResult strong{border:1px solid var(--border);min-height:40px;color:var(--text);background:#fbfcfd;border-radius:6px;padding:10px 12px}.summaryGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:14px;display:grid}.summaryGrid>div{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;gap:4px;padding:10px 12px;display:grid}.summaryGrid span{color:var(--muted);font-size:12px}.gradeTermGpaRow td{background:#f8fafc;font-weight:700}.gradePublicationTable{min-width:1180px}.gradePublicationTable th,.gradePublicationTable td{white-space:normal}.gradePublicationTable th:first-child,.gradePublicationTable td:first-child,.gradePublicationTable th:nth-child(2),.gradePublicationTable td:nth-child(2),.gradePublicationTable th:nth-child(3),.gradePublicationTable td:nth-child(3){white-space:nowrap;width:72px}.gradePublicationTable th:nth-child(4),.gradePublicationTable td:nth-child(4){width:170px}.gradePublicationTable th:nth-child(5),.gradePublicationTable td:nth-child(5){width:150px}.gradePublicationTable th:nth-child(6),.gradePublicationTable td:nth-child(6){width:320px}.gradePublicationTable th:nth-child(7),.gradePublicationTable td:nth-child(7){width:300px}.dateTimeStack{gap:2px;line-height:1.35;display:inline-grid}.gradePublicationStatusCell,.gradePublicationVisibilityStack{gap:4px;display:grid}.gradePublicationStatusCell .statusBadge{text-align:center;justify-content:center}.gradePublicationActions{flex-wrap:nowrap;align-items:center;min-width:280px}.gradePublicationActions .inlineMiniForm{align-items:center}.gradePublicationActions .gradePublicationVisibilityForm,.gradePublicationActions .gradePublicationButtonForm{flex-wrap:nowrap;align-items:flex-end}.gradePublicationField{color:var(--muted);gap:4px;font-size:.78rem;display:inline-grid}.gradePublicationField input{color:var(--text)}.gradePublicationDateInput{width:210px}.gradePublicationDateForm{justify-items:start;gap:.75rem;display:grid}.twoColumnGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.inlineList{flex-wrap:wrap;gap:.5rem;display:flex}.inlineOptions{border:0;flex-wrap:wrap;gap:1rem;margin:0 0 1rem;padding:0;display:flex}.inlineOptions legend{flex-basis:100%;margin-bottom:.25rem;font-weight:700}.summaryBox{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:12px;display:grid}.summaryBox>div{gap:4px;display:grid}.summaryBox .warningText{grid-column:1/-1;margin:0}.badgeStack{flex-wrap:wrap;gap:6px;display:flex}.badgeStack.vertical{flex-direction:column;align-items:flex-start}.cellPrimary{color:var(--text);font-weight:700;line-height:1.45}.cellSecondary{color:var(--muted);font-size:13px;line-height:1.45}.noticeBox{border:1px solid var(--border);background:#f8fafc;border-radius:6px;gap:4px;margin-top:12px;padding:12px 14px;display:grid}.noticeBox.warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.graduateSpecialRegistrationNotice{gap:6px;padding:10px 14px;font-size:13px;line-height:1.5}.graduateSpecialRegistrationNotice p{margin:0}.formStack{gap:16px;display:grid}.lessonCourseActionStack{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.lessonCourseActionStack .statusPill{margin-bottom:0}.lessonCourseActionRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.subPanel{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;padding:14px}.subPanel h3{color:var(--text);margin:0 0 12px;font-size:17px;font-weight:800}.applicationForm{gap:18px;display:grid}.checkGrid{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.checkGrid label,.checkStack label{color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:700;display:inline-flex}.courseSelectionList{gap:12px;display:grid}.studentInformationLikeForm .formPanel,.practicumDocumentPage{gap:14px;display:grid}.practicumDocumentPage>.stack{gap:18px;display:grid}.practicumDocumentPage>.stack>.panel{padding:18px}.practicumCourseListPanel{padding:0;overflow:hidden}.practicumCourseTable th,.practicumCourseTable td{vertical-align:top}.practicumCourseTable td:first-child,.practicumCourseTable td:nth-child(2){white-space:nowrap}.practicumCourseTable td:last-child{width:240px}.practicumTableMetaList{gap:4px;min-width:180px;display:grid}.practicumTableMetaList div{gap:2px;display:grid}.practicumTableMetaList strong{color:var(--text);font-size:12px}.practicumTableMetaList span{color:var(--muted);font-size:12px}.practicumTableActionForm,.practicumTableActions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.practicumTableActionStack{justify-items:start;gap:8px;min-width:180px;display:grid}.practicumTableActionForm .compactSelect{width:96px;min-width:96px}.practicumTableActions .button,.practicumTableActionForm .button,.practicumTableActionStack .button{white-space:normal;min-height:34px;padding:7px 10px}.practicumTableActionStack .compactSelect{width:120px}.practicumSelectedDocumentPanel{gap:14px;padding:18px;display:grid}.practicumSelectedDocumentHeader{width:min(100%,920px)}.practicumDocumentModalPanel{gap:14px;width:min(1040px,100vw - 48px);padding:18px 20px;display:grid}.practicumDocumentModalPanel .practicumSelectedDocumentHeader{border-bottom:1px solid var(--border);width:100%;padding-bottom:12px;padding-right:88px}.practicumDocumentModalPanel h2{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 6px;display:flex}.practicumTitleStatusBadge{font-size:12px;line-height:1.2}.practicumModalCloseButton{position:absolute;top:18px;right:20px}.practicumModalErrorPanel{margin:0}.practicumModalErrorPanel h3{margin:0 0 8px}.practicumStartToolbar{align-items:end;margin:12px 0 0;padding:14px}.practicumStartToolbar .field{width:min(100%,280px)}.practicumDocumentItem{border-top:1px solid var(--border);gap:14px;padding-top:16px;display:grid}.practicumDocumentItem:first-child{border-top:0;padding-top:0}.practicumDocumentForm{gap:16px;width:min(100%,920px);margin-inline:auto;display:grid}.practicumFormSection{border-top:1px solid var(--border);gap:14px;padding-top:16px;display:grid}.practicumFormSection:first-child{border-top:0;padding-top:0}.practicumSummarySection{padding-bottom:2px}.practicumDocumentForm .formSectionTitle{border-left:4px solid var(--primary);color:var(--text);margin:0;padding-left:10px;font-size:18px;line-height:1.35}.practicumDocumentForm .studentInfoFormGrid{grid-template-columns:minmax(0,1fr);gap:10px;width:min(100%,780px)}.practicumDocumentForm .field{grid-template-columns:152px minmax(220px,420px);align-items:center;gap:8px 14px;max-width:620px}.practicumDocumentForm .field>span{color:var(--text);font-size:13px;font-weight:800}.practicumDocumentForm .field.wide{grid-template-columns:152px minmax(320px,640px);max-width:820px}.practicumDocumentForm .field.dateField{grid-template-columns:152px 190px;max-width:360px}.practicumDocumentForm .field.mediumField{grid-template-columns:152px minmax(260px,460px);max-width:640px}.practicumDocumentForm .input,.practicumDocumentForm .fieldStatic{width:100%;min-height:40px}.practicumDocumentForm .fieldError{white-space:nowrap;grid-column:2}.practicumSummaryList{grid-template-columns:repeat(2,minmax(260px,1fr));gap:8px 20px;width:min(100%,820px);margin:0;display:grid}.practicumSummaryList div{grid-template-columns:120px minmax(0,1fr);align-items:baseline;gap:8px;min-height:28px;display:grid}.practicumSummaryList dt{color:var(--muted);font-size:12px;font-weight:800}.practicumSummaryList dd{color:var(--text);margin:0;font-size:13px;font-weight:700}.practicumDocumentForm textarea.input{resize:vertical;min-height:88px}.practicumDocumentForm .singleCheck{border:1px solid var(--border);width:fit-content;max-width:100%;min-height:40px;color:var(--text);background:#f8fafc;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.practicumSegmentPanel{border:1px solid var(--border);background:#fbfdff;border-radius:8px;gap:12px;padding:14px;display:grid}.practicumFormActions{z-index:1;border-top:1px solid var(--border);background:var(--surface);justify-content:flex-end;width:100%;padding:14px 0 0;position:sticky;bottom:0}@media (max-width:960px){.practicumSummaryList{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.practicumDocumentForm .field{grid-template-columns:minmax(0,1fr);max-width:none}.practicumDocumentForm .field.wide,.practicumDocumentForm .field.dateField,.practicumDocumentForm .field.mediumField{grid-template-columns:minmax(0,1fr)}.practicumDocumentForm .fieldError{white-space:normal;grid-column:1}.practicumSummaryList div{grid-template-columns:minmax(0,1fr);gap:2px}.practicumFormActions{justify-content:stretch}.practicumFormActions .button{justify-content:center;width:100%}}.readonlyField{border:1px solid var(--border);color:var(--text);background:#f8fafc;border-radius:8px;gap:6px;padding:10px 12px;display:grid}.readonlyField span{color:#475569;font-size:12px;font-weight:700}.inlineFieldGroup{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.birthDateField .inlineFieldGroup{flex-wrap:nowrap;width:100%}.birthDateField .inlineFieldGroup .select{flex:1 1 0;min-width:0;max-width:none}@media (max-width:640px){.birthDateField .inlineFieldGroup{flex-wrap:wrap}.birthDateField .inlineFieldGroup .select{flex:96px}}.dokodemoCheckSection{border-top:1px solid var(--border);gap:10px;margin-top:12px;padding-top:12px;display:grid}.dokodemoCheckSection:first-of-type{border-top:0;margin-top:0;padding-top:0}.dokodemoCheckSection h4{color:var(--text);margin:0;font-size:15px;font-weight:800}.isDisabledOption{color:#94a3b8!important}.warningRow{background:#fffbeb}.commissionMissingRankRow>td{background:#fff7ed}.statusBadge.success{color:#166534;background:#dcfce7}.statusBadge.warning{color:#92400e;background:#fef3c7}.statusBadge.danger{color:#991b1b;background:#fee2e2}.dokodemoPageHeader,.dokodemoYearToolbar{width:min(100%,980px);margin-inline:auto}.dokodemoDashboardPageHeader{width:100%;margin-inline:0}.dokodemoPeriodBanner.alert{margin-inline:auto;color:#7a4100;background:#fff4d6;border-color:#f6c453;width:min(100%,980px);margin-top:12px;box-shadow:inset 4px 0 #d97706}.dokodemoYearToolbar{flex-wrap:wrap}.dokodemoApplicationForm{width:min(100%,980px);max-width:980px;margin-inline:auto}.dokodemoApplicationForm .formPanel{width:min(100%,980px);max-width:100%;margin-inline:auto;padding:18px;display:block}.dokodemoApplicationForm .courseSelectionPanel{width:min(100%,980px);margin-inline:auto}.dokodemoCompleteLayout{gap:18px;width:min(100%,980px);margin-inline:auto;display:grid}.dokodemoCompletePanel{padding:18px}.dokodemoCompleteSummaryGrid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:12px;display:grid}.dokodemoCompleteSummaryGrid>div{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;gap:4px;padding:12px;display:grid}.dokodemoCompleteSummaryGrid span{color:#475569;font-size:12px;font-weight:700}.dokodemoCompleteSummaryGrid strong{color:var(--text);font-size:16px}.dokodemoCompleteCourseList{gap:10px;display:grid}.dokodemoCompleteCourseItem{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.dokodemoCompleteCourseItem div{gap:4px;min-width:0;display:grid}.dokodemoCompleteCourseItem strong{color:var(--text);line-height:1.45}.dokodemoCompleteCourseItem span:not(.statusBadge){color:#475569;font-size:13px}.dokodemoCompleteNotice p{color:#334155;margin:0;line-height:1.75}.dokodemoCompleteActions{justify-content:flex-end;margin-top:16px;display:flex}.dokodemoApplicationForm .formPanel>*+*{margin-top:14px}.dokodemoApplicationForm .panelLead,.dokodemoApplicationForm .fieldHint{color:#475569;line-height:1.75}.dokodemoApplicationForm .dokodemoFieldNote{color:var(--text);margin:0;font-size:16px;font-weight:800;line-height:1.75}.dokodemoApplicationForm .field>span{color:var(--text);font-size:16px;font-weight:800}.dokodemoApplicationForm .dokodemoCourseNotice{color:var(--text);margin:8px 0 0;font-size:16px;font-weight:800;line-height:1.7}.dokodemoApplicationFieldset{border:0;min-width:0;margin:0;padding:0}.dokodemoApplicationFieldset:disabled{opacity:.78}.dokodemoApplicationForm .studentInfoFormGrid{width:fit-content;max-width:100%}.dokodemoApplicationForm .foreignResidentDetails,.dokodemoApplicationForm .foreignDocumentsConfirm,.dokodemoApplicationForm .seminaryInformationSection,.dokodemoApplicationForm .dokodemoGraduateReasonPanel{display:none}:is(.dokodemoApplicationForm:has(input[name=foreignCitizen][value=YES]:checked) .foreignResidentDetails,.dokodemoApplicationForm:has(input[name=isForeignNational][value=yes]:checked) .foreignDocumentsConfirm,.dokodemoApplicationForm:has(input[name=feeCategory][value=SEMINARY]:checked) .seminaryInformationSection,.dokodemoApplicationForm:has(input[name=isFirstGraduateCreditApplicationAnswer][value=YES]:checked):has(.graduateCreditReasonTargetMethod:checked) .dokodemoGraduateReasonPanel){gap:14px;display:grid}.dokodemoApplicationForm:has(input[name=isForeignNational][value=yes]:checked) .foreignDocumentsConfirm{display:inline-flex}.lessonApplyForm .foreignDocumentsConfirm{align-items:flex-start;gap:8px;display:none}.lessonApplyForm:has(input[name=isForeignNational][value=yes]:checked) .foreignDocumentsConfirm{display:inline-flex}.lessonPracticeFixedNote{margin:0}.dokodemoCategoryHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dokodemoFeeTableControl{flex:none}.dokodemoCourseOnlySummary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.dokodemoCourseOnlySummary>div{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;padding:12px}.dokodemoCourseOnlySummary span{color:var(--muted);margin-bottom:4px;font-size:.85rem;display:block}.dokodemoModalToggle{opacity:0;pointer-events:none;position:absolute}.dokodemoModalBackdrop{z-index:80;background:#0f172a7a;justify-content:center;align-items:flex-start;padding:48px 20px;display:none;position:fixed;inset:0;overflow:auto}.dokodemoModalToggle:checked~.dokodemoModalBackdrop{display:flex}.dokodemoModalPanel{border:1px solid var(--border);background:#fff;border-radius:8px;width:min(980px,100%);padding:20px;position:relative;box-shadow:0 24px 60px #0f172a3d}.dokodemoModalPanel .tableScroll,.dokodemoModalPanel .dataTable,.dokodemoModalPanel .dataTable th,.dokodemoModalPanel .dataTable td{background:#fff}.dokodemoModalPanel .tableWrap+.tableWrap{margin-top:16px}.dokodemoModalPanel .regularLessonFeeTable,.dokodemoModalPanel .feeModalTable{table-layout:fixed;min-width:0}.dokodemoModalPanel .regularLessonFeeTable th,.dokodemoModalPanel .regularLessonFeeTable td,.dokodemoModalPanel .feeModalTable th,.dokodemoModalPanel .feeModalTable td{overflow-wrap:anywhere;padding:10px 12px}.dokodemoModalPanel .lessonFeeTable th:first-child,.dokodemoModalPanel .lessonFeeTable td:first-child{width:25%}.dokodemoModalPanel .regularLessonFeeSubheading,.dokodemoModalPanel .feeModalSectionTitle{margin-top:24px}.dokodemoModalPanel .feeCellNote{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45;display:block}.dokodemoModalPanel .instrumentFeeTable th,.dokodemoModalPanel .instrumentFeeTable td{width:25%}.dokodemoModalPanel caption{text-align:left;color:var(--text);padding:8px 0;font-weight:700}.dokodemoCourseTabs{gap:12px;display:grid}.dokodemoTabRadio{opacity:0;pointer-events:none;position:absolute}.dokodemoCourseTabPanel{gap:14px;display:none}#dokodemo-course-tab-undergraduate:checked~.tabBar label[for=dokodemo-course-tab-undergraduate],#dokodemo-course-tab-graduate:checked~.tabBar label[for=dokodemo-course-tab-graduate]{border-color:var(--primary);color:var(--primary-dark);background:#e6f4f1}#dokodemo-course-tab-undergraduate:checked~.undergraduatePanel,#dokodemo-course-tab-graduate:checked~.graduatePanel{display:grid}.dokodemoCourseMatrix tr.isDisabledRow{color:#64748b;background:#f8fafc}.dokodemoCourseMatrix tr.isDisabledRow .courseNamePrimary{color:#64748b}.warningText{color:#b45309;font-weight:700}.dokodemoFormGrid{grid-template-columns:repeat(2,minmax(260px,420px));align-items:start}.residentStatusChoices{grid-template-columns:repeat(2,max-content);align-items:center;gap:10px;display:grid}.residentStatusOtherChoice,.japaneseAbilityOtherChoice{align-items:center;gap:10px;display:flex}.residentStatusOtherChoice{grid-column:1/-1}.residentStatusOtherChoice .input,.japaneseAbilityOtherChoice .input{width:min(280px,50vw)}.dokodemoCourseMatrix{table-layout:fixed;min-width:0}.dokodemoCourseMatrix th:first-child,.dokodemoCourseMatrix td:first-child{width:42%}.dokodemoCourseMatrix th:not(:first-child),.dokodemoCourseMatrix td:not(:first-child){text-align:center;width:14.5%}.courseNamePrimary{color:var(--text);overflow-wrap:anywhere;font-size:16px;line-height:1.45;display:block}.courseMetaLine{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:12px;line-height:1.45;display:block}.dokodemoCourseTermTeacher{color:var(--text);font-size:15px;font-weight:700}.matrixChoice{justify-content:center;align-items:center;min-width:32px;min-height:32px;display:inline-flex}.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.courseSelectionCard{border:1px solid var(--border);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.courseSelectionHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.courseSelectionCheck{color:var(--text);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;display:grid}.courseSelectionCheck strong{font-size:17px;line-height:1.45;display:block}.courseSelectionCheck small{color:var(--muted);font-size:13px;line-height:1.5;display:block}.compactDefinitionList,.compactDetailList{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;margin:0;display:grid}.compactDefinitionList div,.compactDetailList div{gap:3px;display:grid}.compactDefinitionList dt,.compactDetailList dt{color:var(--muted);font-size:12px;font-weight:800}.compactDefinitionList dd,.compactDetailList dd{color:var(--text);margin:0;font-size:14px}.lessonRegularDetailList{grid-template-columns:1fr;gap:0;display:grid}.lessonRegularDetailList div{border-top:1px solid var(--border);grid-template-columns:150px minmax(0,1fr);align-items:start;gap:18px;padding:10px 0;display:grid}.lessonRegularDetailList div:first-child{border-top:0;padding-top:0}.lessonRegularDetailList div:last-child{padding-bottom:0}.lessonRegularDetailList dt{color:var(--muted);font-size:13px;font-weight:800}.lessonRegularDetailList dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:700;line-height:1.55}.lessonRegularDetailList .lineItem{display:block}.dokodemoErrorAlert{width:min(100%,980px);margin-left:auto;margin-right:auto}.dokodemoHeaderNotice{color:#0f3b66;background:#eef6ff;border:1px solid #b7d7ff;border-radius:8px;width:fit-content;max-width:min(100%,760px);margin:12px 0 0;padding:10px 12px;font-weight:700;line-height:1.6}.dokodemoFeeCategoryHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.dokodemoFeeCategoryHeader .dokodemoFeeTableControl{margin-left:auto}.dokodemoDashboard .dashboardGrid{grid-template-columns:minmax(0,1fr) minmax(340px,380px)}.dokodemoVerticalDetailList{gap:10px;margin:0;display:grid}.dokodemoVerticalDetailList div{gap:3px;display:grid}.dokodemoVerticalDetailList dt{color:var(--muted);font-size:12px;font-weight:800}.dokodemoVerticalDetailList dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:14px}.dokodemoVerticalDetailList dd:has(+*){white-space:normal}.lessonApplicationDetailList{grid-template-columns:minmax(120px,170px) minmax(0,1fr);gap:12px 24px}.lessonApplicationDetailList div{display:contents}.lessonApplicationDetailList dt{padding-top:2px}.lessonApplicationDetailList dd{font-size:15px;font-weight:600;line-height:1.7}.lessonContinueRequestPanel{max-width:980px}.lessonContinueNotice{color:#b91c1c;font-weight:800;line-height:1.8}.lessonContinueRequestForm{align-items:flex-end}@media (max-width:760px){.lessonApplicationDetailList{grid-template-columns:1fr;gap:4px 0}.lessonApplicationDetailList div{gap:2px;display:grid}}.detailSentence{margin:0 0 10px;line-height:1.65}.dokodemoCourseList{gap:10px;display:grid}.dokodemoCourseItem{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px 14px;display:grid}.dokodemoCourseItem:last-child{border-bottom:0}.dokodemoCourseMeta{min-width:180px;color:var(--text);white-space:nowrap;gap:4px;font-size:13px;display:grid}.dokodemoPendingApplicationList{gap:14px;display:grid}.dokodemoPendingApplication{border:1px solid var(--border);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.dokodemoPendingHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.dokodemoPendingHeader>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inlineActionForm{margin:0}.dokodemoVerificationTabs{gap:12px;display:grid}.dokodemoVerificationRadio{opacity:0;pointer-events:none;position:absolute}.dokodemoVerificationButtonList{gap:8px;display:grid}.dokodemoVerificationButton{width:100%;color:var(--text);cursor:pointer;background:linear-gradient(#fff 0%,#f1faf8 100%);border:1px solid #b9d8d2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;display:grid;box-shadow:0 1px #00796b14}.dokodemoVerificationButton:hover,.dokodemoVerificationButton:focus{border-color:var(--primary);transform:translateY(-1px);box-shadow:0 4px 12px #00796b24}.dokodemoVerificationButtonText{gap:2px;display:grid}.dokodemoVerificationButtonText span{font-weight:800}.dokodemoVerificationButtonText small{color:var(--muted);font-size:12px;line-height:1.2}.dokodemoVerificationAction{background:var(--primary);color:#fff;white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.dokodemoVerificationButton strong{color:var(--primary-dark);white-space:nowrap}.dokodemoDashboardInfoButton{color:var(--text);background:linear-gradient(#fff 0%,#f1faf8 100%);border:1px solid #b9d8d2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid;box-shadow:0 1px #00796b14}.dokodemoDashboardInfoButton+.dokodemoDashboardInfoButton,.dokodemoDashboardInfoButton+.dokodemoVerificationButton,.dokodemoVerificationButtonList+.dokodemoDashboardInfoButton{margin-top:8px}.dokodemoDashboardInfoButton strong{color:var(--primary-dark);white-space:nowrap}.dokodemoDashboardInfoButton.isDisabled{border-color:var(--border);background:#f8fafc}.dokodemoDashboardInfoButton.isDisabled strong{color:#64748b}.dokodemoDashboardInfoButton.isWarning{background:#fff8e1;border-color:#f3c96b}.dokodemoDashboardInfoButton.isWarning strong{color:#8a5a00}.dokodemoVerificationButton.isActive,#dokodemo-verify-payment:checked~.dokodemoVerificationButtonList label[for=dokodemo-verify-payment],#dokodemo-verify-approval:checked~.dokodemoVerificationButtonList label[for=dokodemo-verify-approval],#dokodemo-verify-history:checked~.dokodemoVerificationButtonList label[for=dokodemo-verify-history],#dokodemo-verify-grades:checked~.dokodemoVerificationButtonList label[for=dokodemo-verify-grades]{border-color:var(--primary);background:#e6f4f1}.dokodemoVerificationModalPanel{width:min(760px,100%)}.dokodemoVerificationModalBody{gap:14px;padding-top:16px;display:grid}.dokodemoVerificationSummary{background:#eefaf6;border:1px solid #b9d8d2;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.dokodemoVerificationSummary span:not(.statusBadge){color:var(--muted);font-size:12px;font-weight:800;display:block}.dokodemoVerificationSummary strong{color:var(--text);white-space:nowrap;margin-top:3px;font-size:24px;line-height:1.2;display:block}.dokodemoDetailCards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.dokodemoDetailCards>div{border:1px solid var(--border);background:#fff;border-radius:8px;padding:10px 12px}.dokodemoDetailCards span{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:800;display:block}.dokodemoDetailCards strong{overflow-wrap:anywhere}.dokodemoContactCards{grid-template-columns:1fr}.dokodemoModalCourseList,.dokodemoHistoryGroupList{gap:10px;margin:0;padding:0;list-style:none;display:grid}.dokodemoModalCourseList li{border:1px solid var(--border);background:#fff;border-radius:8px;gap:4px;padding:10px 12px;display:grid}.dokodemoModalCourseList li span{color:var(--muted);font-size:13px}.dokodemoHistoryGroupList h4{margin:0 0 8px}.dokodemoVerificationPanel{border:1px solid var(--border);background:#fff;border-radius:8px;gap:12px;padding:14px;display:none}.dokodemoVerificationPanel h3{margin:0;font-size:17px}#dokodemo-verify-payment:checked~.dokodemoVerificationPanels .paymentPanel,#dokodemo-verify-approval:checked~.dokodemoVerificationPanels .approvalPanel,#dokodemo-verify-history:checked~.dokodemoVerificationPanels .historyPanel,#dokodemo-verify-grades:checked~.dokodemoVerificationPanels .gradesPanel{display:grid}.dokodemoPaymentSummary{justify-content:space-between;align-items:center;gap:12px;display:flex}.dokodemoPaymentSummary span:not(.statusBadge){color:var(--muted);font-size:12px;font-weight:800;display:block}.dokodemoPaymentSummary strong{color:var(--text);white-space:nowrap;margin-top:2px;font-size:24px;line-height:1.2;display:block}.dokodemoSpouseFreeBox{background:#eefaf6;border-color:#b7e4d3}.courseClearChoice{color:var(--muted);align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:700;display:inline-flex}.dokodemoDisclosureList{gap:10px;display:grid}.dokodemoDisclosure{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.dokodemoDisclosure summary{cursor:pointer;color:var(--text);background:#f8fafc;padding:12px 14px;font-weight:800}.dokodemoDisclosure[open] summary{border-bottom:1px solid var(--border)}.dokodemoDisclosure>:not(summary){margin:12px 14px}.dokodemoContactList{gap:6px;line-height:1.6;display:grid}.dokodemoEntryPanel{width:min(100%,980px);margin-left:auto;margin-right:auto;padding:20px}.dokodemoApplicationPeriodPanel{width:min(100%,980px);margin-left:auto;margin-right:auto}.dokodemoApplicationPeriodPanel+.dokodemoEntryPanel,.dokodemoApplicationPeriodPanel+.dokodemoApplicationForm,.dokodemoEntryPanel+.dokodemoApplicationForm{margin-top:16px}.dokodemoSectionTitle{border-left:4px solid var(--primary);padding-left:12px;line-height:1.4}.dokodemoApplicationPeriodTitleRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dokodemoApplicationPeriodMessage{margin-top:8px;font-weight:800}.dokodemoResourceButtonRow{flex-wrap:wrap;gap:10px;margin-top:0;padding:16px 20px 20px;display:flex}.dokodemoEntryLead{color:var(--text);margin:0 0 16px;line-height:1.8}.dokodemoEntryChoices{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.twoColumnDetailGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.subtleBox{border:1px solid var(--border);background:#f8fafc;border-radius:8px;gap:8px;padding:12px;display:grid}.statusActionGrid{grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(140px,1fr));align-items:start;gap:12px;display:grid}.dokodemoStatusActions{align-items:start;gap:12px;display:grid}.dokodemoStatusCard{border:1px solid var(--border);background:#f8fafc;border-radius:8px;align-content:start;gap:10px;padding:14px;display:grid}.dokodemoStatusCard h4{color:var(--text);margin:0;font-size:15px}.dokodemoStatusCard .button{justify-self:start}.dokodemoReturnCard textarea{width:min(100%,520px)}.dokodemoOperationButtons{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dokodemoOperationButtons form{margin:0}.dokodemoOperationButtons .button{white-space:nowrap}.dokodemoReturnReasonForm{gap:8px;width:fit-content;max-width:100%;display:grid}.dokodemoReturnReasonForm label{color:var(--text);gap:6px;font-weight:700;display:grid}.dokodemoOperationWarning{color:#744a00;background:#fff8e1;border:1px solid #f2c94c;border-radius:8px;width:fit-content;max-width:100%;padding:10px 12px}.dokodemoOperationWarning p{margin:0 0 6px;font-weight:700}.dokodemoOperationWarning ul{margin:0;padding-left:18px}.button.disabledButton{color:#64748b;cursor:not-allowed;pointer-events:none;background:#e2e8f0}.dokodemoApprovalPage .shell{max-width:980px}.dokodemoApprovalPage .studentInformationLikeForm{width:min(100%,900px)}.dokodemoApprovalPage .studentInformationLikeForm .formPanel{padding:18px}.dokodemoApprovalPage .studentInfoFormGrid{grid-template-columns:repeat(2,minmax(220px,360px));align-items:end;width:fit-content;max-width:100%}.dokodemoApprovalPage .studentInfoFormGrid .wide,.dokodemoApprovalPage .subtleBox.wide,.dokodemoApprovalPage .formActions.wide{grid-column:1/-1}.dokodemoApprovalPage .studentInfoFormGrid .field{gap:6px;display:grid}.dokodemoApprovalPage .studentInfoFormGrid .field span{font-weight:700}.dokodemoApprovalPage .studentInfoFormGrid select[name=studentId]{width:min(100%,760px)}.dokodemoGraduateReasonList{gap:10px;display:grid}.dokodemoGraduateReasonItem{border:1px solid var(--border);background:#f8fafc;border-radius:8px;gap:6px;padding:12px;display:grid}.dokodemoGraduateReasonItem p{color:#334155;white-space:pre-wrap;margin:0;line-height:1.7}.inlineMiniForm{align-items:start;gap:8px;display:grid}.inlineGrid{flex-wrap:wrap;gap:10px;display:flex}.inlineField{grid-template-columns:minmax(120px,auto) 90px;align-items:center;gap:6px;display:inline-grid}.stackedForm{align-items:start;gap:14px;display:grid}.stackedFields{gap:10px;display:grid}.stackedForm .inlineField,.stackedFields .inlineField{grid-template-columns:120px minmax(280px,520px);width:fit-content}.stackedForm .textareaField{align-items:start}.mediumInput{width:min(520px,70vw)}.mediumTextarea{resize:vertical;width:min(520px,70vw);min-height:84px}.inlineCheckbox{align-items:center;gap:8px;width:fit-content;display:inline-flex}.illnessFieldSet{gap:12px}.illnessGrid{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.illnessOption{grid-template-columns:minmax(150px,1fr) 96px;width:100%}.illnessOption .input:disabled{color:#94a3b8;background:#f1f5f9}.studentInformationEditPanel{margin-top:16px}.studentInformationEditPanel>summary{cursor:pointer;color:var(--primary);font-weight:700}.studentInformationEditPanel[open]>summary{margin-bottom:16px}.certificateIssueMenu{gap:22px;max-width:460px;display:grid}.certificateStudentRows{grid-template-columns:144px 1fr;gap:2px 20px;display:grid}.certificateStudentRows div,.certificateStudentRows label{display:contents}.certificateStudentRows span,.certificateCountRow>span,.certificateExtraFields span{color:#000;background:#d9d9d9;padding:4px 6px}.certificateStudentRows strong{padding:4px 6px;font-weight:500}.certificateStudentRows .input{max-width:180px}.certificateCountGrid{grid-template-columns:144px 72px 72px;align-items:center;gap:3px 20px;display:grid}.certificateNameHeader{background:0 0!important;padding-left:0!important}.certificateCountRow{display:contents}.certificateCountGrid select{min-width:44px;max-width:48px;padding:2px 4px}.certificateExtraFields{grid-template-columns:144px 1fr;gap:4px 20px;display:grid}.certificateDateFields{grid-template-columns:144px minmax(0,1fr);gap:4px 20px;display:grid}.certificateExtraFields label,.certificateDateFields label{display:contents}.certificateDateFields span{color:#000;background:#d9d9d9;padding:4px 6px}.certificateDateFields .input{max-width:180px}.graduationProgressStack{gap:18px;display:grid}.requirementPanel{overflow:hidden}.requirementGroups{gap:14px;display:grid}.requirementGroup{border:1px solid var(--border);background:#fbfcfd;border-radius:8px;overflow:hidden}.requirementGroupHeader{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.requirementGroupHeader h3{margin:0 0 4px;font-size:16px}.requirementGroupHeader p{color:var(--muted);margin:0;font-size:13px}.requirementGroupHeader .requirementGroupCreditSummary{color:var(--text);font-size:14px;font-weight:400}.statusPill{border-radius:999px;justify-content:center;align-items:center;min-width:68px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.statusDone{color:#166534;background:#dcfce7}.statusProgress{color:#075985;background:#e0f2fe}.statusCredit{color:#6b21a8;background:#f3e8ff}.statusOpen{color:#475569;background:#f1f5f9}.statusRetake{color:#c2410c;background:#fff7ed}.enrollmentRegistrationBadge{vertical-align:middle;min-width:auto;margin-left:8px}.stackedBadges{flex-wrap:wrap;gap:6px;min-width:120px;display:flex}.stackedBadges .statusPill{min-width:auto}.inlineBadges{min-width:0;display:inline-flex}.approvalSummaryDetails{max-width:100%;display:block;position:relative}.approvalSummaryDetails>summary{cursor:pointer;list-style:none}.approvalSummaryDetails>summary::-webkit-details-marker{display:none}.approvalSummaryTrigger{color:#92400e;background:#fffbeb;border:1px solid #f59e0b;border-radius:8px;flex-direction:column;align-items:center;gap:5px;max-width:100%;padding:6px 8px;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.approvalSummaryTrigger .stackedBadges{flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;display:inline-flex}.approvalSummaryTrigger .statusPill{text-align:center;white-space:normal;max-width:120px;line-height:1.35}.approvalSummaryDetails>summary:hover .approvalSummaryTrigger{background:#fef3c7;border-color:#d97706;transform:translateY(-1px)}.approvalSummaryOpenLabel{text-underline-offset:3px;font-size:12px;font-weight:700;text-decoration:underline}.approvalSummaryInstruction{color:var(--danger);margin:6px 0 0;font-size:13px;font-weight:700;line-height:1.5}.approvalSummaryPanel{box-sizing:border-box;border:1px solid var(--border);width:100%;min-width:0;box-shadow:var(--shadow);color:var(--text);z-index:2;background:#fff;border-radius:8px;margin-top:8px;padding:10px 12px}.approvalSummaryPanel dl{gap:8px;margin:0;display:grid}.approvalSummaryPanel dl>div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;display:grid}.approvalSummaryPanel dt{color:var(--muted);font-size:inherit;line-height:1.4}.approvalSummaryPanel dd{text-align:right;margin:0;font-weight:700}.ruleItem strong{font-size:14px}.ruleItem span{color:var(--muted);font-size:14px}.selectedCard{border-color:var(--primary);background:#f3f8f5}.verticalRuleItem{gap:12px;display:grid}.ruleItemHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.inlineForm{grid-template-columns:150px minmax(180px,1fr) 120px 90px auto;align-items:center;gap:8px;display:grid}.inlineMiniForm{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inlineMiniForm .compact{min-width:86px}.copyInlineForm{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(160px,220px)) auto;margin-top:16px;padding-top:16px}.tabNav{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.tabList{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.tabButton{border:1px solid var(--border);background:var(--surface-muted);min-height:38px;color:var(--text);border-radius:6px;justify-content:center;align-items:center;padding:8px 13px;font-weight:700;text-decoration:none;display:inline-flex}.tabButton.active{border-color:var(--primary);color:var(--primary-dark);background:#e6f4f1}.tabButton .lessonTabStatusPill{margin-left:8px;padding:4px 8px;font-size:.82rem;box-shadow:0 0 0 1px #0f766e33}.tabButton.active .lessonTabStatusPill{color:#0f4f4a;background:#ccfbf1;border-color:#5eead4}.readonlyGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.readonlyGrid div{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;padding:10px 12px}.readonlyGrid .readonlyFull{grid-column:1/-1}.readonlyGrid span,.readonlyGrid strong{display:block}.readonlyGrid span{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:700}.readonlyGrid strong{font-size:14px}.readonlyList{gap:8px;margin:0;padding:0;list-style:none;display:grid}.readonlyList li{color:var(--text);grid-template-columns:44px minmax(0,1fr);align-items:start;gap:8px;font-size:14px;line-height:1.45;display:grid}.readonlyList strong{color:var(--primary)}.researchDetail{gap:18px;display:grid}.researchDetailGrid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px;display:grid}.researchDetailItem{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;min-width:0;padding:10px 12px}.researchDetailItem span,.researchDetailBlock span{color:var(--muted);margin-bottom:5px;font-size:12px;font-weight:700;display:block}.researchDetailItem strong{overflow-wrap:anywhere;color:var(--text);font-size:14px;line-height:1.5;display:block}.researchDetailText{gap:12px;display:grid}.researchDetailBlock{border:1px solid var(--border);background:#fbfcfd;border-radius:6px;min-width:0;padding:12px 14px}.researchDetailBlock p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);margin:0;line-height:1.75}.notificationTestReset{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.sourceList{color:var(--text);gap:8px;margin:0;padding-left:20px;line-height:1.55;display:grid}.tableNote{color:var(--muted);white-space:normal;margin:5px 0 0;font-size:13px}.tableNote.strongNote{color:var(--text);margin:0 0 6px;font-weight:700}.ledgerNote{overflow-wrap:anywhere;max-width:220px;display:inline-block}.preLine{white-space:pre-line}.certificateCancelForm{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.certificateCancelReason{width:min(220px,100%)}.inlinePill{min-width:auto;margin:0 0 0 8px}.requirementSectionRow td{background:var(--surface-muted);color:var(--muted);font-size:13px;font-weight:700}.lineBreak{display:block}.creditDetailList{gap:4px;min-width:260px;display:grid}.creditDetailRow{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 0;display:grid}.creditDetailRow:last-child{border-bottom:0}.panelCount{color:var(--muted);font-size:14px;font-weight:400}.tableWrap{overflow-x:auto}.tableWrap.noHorizontalScroll{overflow-x:visible}.dokodemoApplicationCoursesTable,.dokodemoLegacyImportPreviewTable{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0}.dokodemoApplicationCoursesTable th,.dokodemoApplicationCoursesTable td,.dokodemoLegacyImportPreviewTable th,.dokodemoLegacyImportPreviewTable td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;white-space:normal;overflow-wrap:anywhere;word-break:normal;padding:12px 14px}.dokodemoApplicationCoursesTable th{background:#f3f6f8;font-size:13px;font-weight:700}.dokodemoApplicationCoursesTable th:first-child,.dokodemoApplicationCoursesTable td:first-child{width:72%}.dokodemoApplicationCoursesTable th:nth-child(2),.dokodemoApplicationCoursesTable td:nth-child(2){width:12%}.dokodemoApplicationCoursesTable th:nth-child(3),.dokodemoApplicationCoursesTable td:nth-child(3){width:16%}.dokodemoLegacyImportPreviewTable.dataTable{min-width:0}.gradeMatrixTable{width:max-content;min-width:0}.gradeMatrixTable th,.gradeMatrixTable td{vertical-align:middle;white-space:nowrap}.gradeMatrixItemColumn{min-width:120px;max-width:160px;white-space:normal!important}.gradeMatrixPointsColumn{width:72px;min-width:72px}.gradeMatrixStudentColumn{width:128px;min-width:128px;line-height:1.25;white-space:normal!important}.gradeMatrixStudentName{font-weight:700}.gradeMatrixInput{width:72px;min-width:72px}.recommendedRequirementRow td{background:#eff6ff}.requirementLinkGrid{border:1px solid var(--border);background:#fff;border-radius:6px;gap:8px;padding:10px;display:grid;overflow:visible}.noticeText{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin:12px 0;padding:10px 12px;font-size:13px}.saveToastBackdrop{z-index:1000;background:#0f172a9e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.saveToastDialog{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:14px;width:min(450px,100%);min-height:112px;padding:28px 34px;font-size:15px;line-height:1.65;position:relative;box-shadow:0 18px 50px #0f172a47}.saveToastDialog p{white-space:pre-line;margin:0}.saveToastClose{color:#334155;cursor:pointer;width:34px;height:34px;font:inherit;background:#f1f5f9;border:0;border-radius:8px;place-items:center;font-size:18px;line-height:1;display:grid;position:absolute;top:12px;right:12px}.saveToastClose:hover{background:#e2e8f0}.textLink{color:var(--primary);margin-left:8px;font-weight:700;text-decoration:underline}.requirementLinkRow{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:center;gap:10px;padding-bottom:8px;display:grid}.requirementLinkRow.threeColumn{grid-template-columns:minmax(0,1fr) 120px minmax(180px,260px)}.requirementLinkRow:last-child{border-bottom:0;padding-bottom:0}.requirementLinkRow label{min-width:0;color:var(--text);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.requirementLinkLabel{color:var(--text);font-size:13px;font-weight:700}.fieldStatic{border:1px solid var(--border);color:var(--text);background:#f8fafc;border-radius:6px;margin:0;padding:10px 12px;font-size:14px}.requirementNoteCell{white-space:normal;max-width:720px}.masterCoreCourseColumns{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.compactCourseList{gap:4px;margin:0;padding-left:18px;display:grid}.courseMasterTable{table-layout:fixed;font-size:12px}.courseMasterTable th,.courseMasterTable td{overflow-wrap:anywhere;word-break:break-word;vertical-align:top;padding:10px 8px}.courseMasterTable .courseName{min-width:0}.courseMasterCodeCol{width:8%}.courseMasterNameCol{width:22%}.courseMasterCreditCol,.courseMasterStatusCol{width:7%}.courseMasterCategoryCol{width:10%}.courseMasterRequirementCol{width:7%}.courseMasterConditionCol{width:12%}.courseMasterActionCol{width:5%}.wideTableWrap{width:100%}.checkTableWrap{width:100%;overflow-x:visible}.courseCheckSummaryGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:0 16px 16px;display:grid}.courseCheckSummaryItem{border:1px solid var(--border);background:#f8fafc;border-radius:8px;align-items:baseline;gap:8px;padding:12px 14px;display:flex}.courseCheckSummaryItem strong{font-size:22px}.courseCheckFilterGroups{gap:12px;padding:0 16px 16px;display:grid}.courseCheckFilterHeader,.courseCheckFilterGroup{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.courseCheckFilterGroup{border-top:1px solid var(--border);padding-top:10px}.courseCheckFilterGroupTitle{color:var(--text);flex:0 0 120px;font-size:13px;font-weight:800}.courseCheckFilterButtons{flex-wrap:wrap;flex:560px;gap:8px;display:flex}.checkBadgeList{gap:6px}.checkTable{table-layout:fixed;border-collapse:separate;border-spacing:0;min-width:0;font-size:12px}.checkTable th,.checkTable td{vertical-align:top;white-space:normal;word-break:break-word;padding:8px 6px}.checkTable th:first-child,.checkTable td:first-child{width:6%}.checkTable th:nth-child(2),.checkTable td:nth-child(2){width:26%}.checkTable th:nth-child(3),.checkTable td:nth-child(3){width:12%}.checkTable th:nth-child(4),.checkTable td:nth-child(4),.checkTable th:nth-child(5),.checkTable td:nth-child(5),.checkTable th:nth-child(6),.checkTable td:nth-child(6){width:10%}.checkTable th:last-child,.checkTable td:last-child{width:7%}.checkTable .courseName{min-width:0}.checkTable .multilineText{white-space:pre-line}.checkCell{border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:14px;font-weight:700;display:inline-flex}.checkCell.ok{color:#087443;background:#e6f6ef}.checkCell.missing{color:#8a5a00;background:#fff8e6}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;padding:12px 14px}th{color:#344453;background:#f5f8fa;font-size:13px}.checkTable thead{z-index:5;position:sticky;top:0}.checkTable thead th{box-shadow:0 1px 0 var(--border);background:#f5f8fa}tr:last-child td{border-bottom:0}.conflictRow td{background:#fff8e6}.selectedRow td{background:#edf7f4}.sortLink{color:inherit;text-decoration:none}.sortLink:hover{color:var(--primary);text-decoration:underline}.creditRow td{background:#faf5ff}.inProgressRow td{background:#eff6ff}.passedRow td{background:#dcfce7}.requirementSubcategoryRow td{color:var(--primary-dark);background:#eef6f4;font-weight:700}.courseName{white-space:normal;min-width:210px}.studentRegistrationCourseTable.dataTable{table-layout:fixed;min-width:0}.studentRegistrationCourseTable th,.studentRegistrationCourseTable td{padding:10px 12px}.studentRegistrationCourseNameHeader,.studentRegistrationCourseNameCell{width:38%}.studentRegistrationCourseTable th:nth-child(2),.studentRegistrationCourseTable td:nth-child(2){width:17%}.studentRegistrationCourseTable th:nth-child(3),.studentRegistrationCourseTable td:nth-child(3),.studentRegistrationCourseTable th:nth-child(6),.studentRegistrationCourseTable td:nth-child(6){width:9%}.studentRegistrationCourseTable th:nth-child(4),.studentRegistrationCourseTable td:nth-child(4){width:16%}.studentRegistrationCourseTable th:nth-child(5),.studentRegistrationCourseTable td:nth-child(5){width:8%}.studentRegistrationCourseTable th:nth-child(6),.studentRegistrationCourseTable td:nth-child(6){width:11%}.studentRegistrationCourseName{min-width:0;display:block}.studentRegistrationCourseName .courseDetailTrigger{vertical-align:bottom;min-width:0;max-width:100%;display:inline-flex}.studentRegistrationCourseTitle{gap:2px;min-width:0;display:grid}.studentRegistrationCourseCode{color:var(--muted);font-size:12px;font-weight:700}.studentRegistrationCourseName .enrollmentRegistrationBadge{vertical-align:bottom;min-width:auto;margin:0 0 0 8px}.studentRegistrationCourseName .tableNote{margin:2px 0 0}.studentRegistrationCourseName .button{white-space:normal;text-align:left;min-width:0;max-width:100%}.studentRegistrationActionCell{white-space:nowrap;min-width:88px}.studentRegistrationActionCell .button{white-space:nowrap;min-width:60px}.lessonRegistrationGuideButton{justify-content:center;align-items:center;min-height:40px;line-height:1.2;display:inline-flex}.studentRegistrationCourseTable .multilineText{white-space:pre-line}.teacherCourseNameDisplay{color:var(--text-main);margin:0;font-size:1.1rem;font-weight:700;line-height:1.4}.muted{color:var(--muted)}.empty{color:var(--muted);padding:24px}.studentCard{border-bottom:1px solid var(--border);padding:16px 18px}.studentName{margin:0 0 4px;font-size:20px}.stack{flex-direction:column;gap:12px;display:flex}.inlineActions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.repeatableCourseName{color:var(--text);margin:6px 0 0;font-size:16px;font-weight:700}.sideStack{gap:18px;display:grid}.summaryItem{border-bottom:1px solid var(--border);padding:14px 18px}.summaryItem:last-child{border-bottom:0}.summaryName{margin:0 0 5px;font-weight:700}.summaryMeta{color:var(--muted);margin:0 0 10px;font-size:14px}.timetableWrap{overflow-x:auto}.timetablePanel,.rosterPanel{margin-top:18px}.timetable{table-layout:fixed;min-width:980px}.timetable th,.timetable td{white-space:normal;padding:12px}.timetable thead th,.timetable tbody th{text-align:center;width:72px}.timetableCourses{gap:6px;display:grid}.twoPeriodHeader{padding:0}.twoPeriodHeader span{place-items:center;min-height:106px;display:grid}.twoPeriodHeader span+span{border-top:1px solid var(--border)}.twoPeriodCell{vertical-align:stretch;padding:0}.twoPeriodGrid{min-height:212px;display:grid}.twoPeriodGridSpan{background:#f7fbfa;border:1px solid #b7d8d3;border-radius:8px;min-height:192px;margin:10px}.twoPeriodSlot,.twoPeriodSpanSlot{align-content:center;padding:12px;display:grid}.twoPeriodGridStack{grid-template-rows:1fr 1fr}.twoPeriodSlot+.twoPeriodSlot{border-top:1px solid var(--border)}.twoPeriodGridSpan .timetableCourse:not(.irregularTimetableCourse){background:#e6f3f0;border-left-color:#0f8b83}.timetableCourse{border-left:3px solid var(--primary);background:#edf7f4;border-radius:6px;gap:3px;min-height:76px;padding:10px;display:grid}.timetableCourse.irregularTimetableCourse{background:#fff7e6;border-left-color:#b7791f}.timetableCourse.irregularTimetableCourse .timetableCourseBadge{color:#92400e;background:#fef0c7}.timetableCourse strong{font-size:14px;line-height:1.35}.timetableCourseTitle{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.timetableCourseTitle .inlineBadges{flex:none}.timetableCourse span{color:var(--muted);font-size:12px}.timetableCourseBadges{flex-wrap:wrap;gap:4px;display:flex}.timetableCourseBadge{width:fit-content;color:var(--primary);background:#dff3ee;border:1px solid #0000;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.timetableCourseBadge.auditTimetableCourseBadge{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.timetableCourseBadge.nonDegreeTimetableCourseBadge{color:#6d28d9;background:#ede9fe;border-color:#c4b5fd}.timetableCourseBadge.oneTwoPeriodBadge,.timetableCourse.irregularTimetableCourse .timetableCourseBadge.oneTwoPeriodBadge{color:#fff;background:#0f766e}.panelTitle .inlineBadges{vertical-align:middle;flex-wrap:wrap;gap:6px;margin-left:10px;display:inline-flex}.panelTitle .inlineBadges .statusPill{min-width:auto;margin-bottom:0}.statusPill.danger{color:#b42318;background:#fdecec}.irregularSummaryList{gap:12px;display:grid}.irregularSummaryCard{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.irregularSummaryHeader{border-bottom:1px solid var(--border);background:#f7fafc;grid-template-columns:minmax(240px,2fr) minmax(140px,1fr) 90px minmax(90px,auto) minmax(120px,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.irregularSummaryHeader>div:first-child{gap:3px;display:grid}.irregularSummaryDates{gap:6px;padding:10px 14px 12px;display:grid}.irregularSummaryDateRow{grid-template-columns:52px 1fr;align-items:start;gap:8px;line-height:1.6;display:grid}.irregularSummaryDateRow strong{color:var(--primary)}@media (max-width:900px){.irregularSummaryHeader{grid-template-columns:1fr}}.statsGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:16px;display:grid}.compactStats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.statCard{border:1px solid var(--border);background:var(--panel-soft);border-radius:8px;padding:12px 14px}.statCard span{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.statCard strong{color:var(--text);font-size:22px}.simpleList{gap:8px;margin:12px 0 0;padding-left:20px;display:grid}.timetablePlanCalendarWrap{margin-top:14px;overflow-x:auto}.timetablePlanCalendar{table-layout:fixed;min-width:980px}.timetablePlanCalendar th,.timetablePlanCalendar td{white-space:normal;vertical-align:top}.timetablePlanCalendar thead th,.timetablePlanCalendar tbody th{text-align:center;width:72px}.timetablePlanCalendar td{height:126px}.timetablePlanCalendar .conflictCell{background:#fff7ed}.timetablePlanCellStack{gap:8px;display:grid}.timetablePlanCellItem{background:#eef8f5;border:1px solid #bfdad2;border-radius:7px;gap:3px;padding:8px;display:grid}.timetablePlanCellHeader{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.timetablePlanCellItem.severityCritical{background:#fff1f2;border-color:#fca5a5}.timetablePlanCellItem.severityWarning{background:#fff7ed;border-color:#fdba74}.timetablePlanCellItem.severityNotice{background:#eff6ff;border-color:#bfdbfe}.timetablePlanCellItem.hasAttention{background:#fffaf0;border-color:#f6c77b}.timetablePlanCellItem span{color:var(--primary-dark);font-size:12px;font-weight:700}.timetablePlanCellItem .timetablePlanPeriodBadge{color:#075f52;background:#dff4ee;border:1px solid #a6d6c8;border-radius:999px;padding:3px 6px;font-size:11px;line-height:1}.timetablePlanCellItem strong{color:var(--text);font-size:13px;line-height:1.35}.timetablePlanCellItem small{color:var(--muted);font-size:12px;line-height:1.35}.timetablePlanCellItem em{color:#b45309;font-size:12px;font-style:normal;line-height:1.35}.darkGreenButton{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.dangerSubtle{color:#b42318;background:#fff1f2;border-color:#fecdd3}.noWrapButton{white-space:nowrap}.button:disabled,button:disabled{cursor:not-allowed;opacity:.55}.dangerText{color:#b42318;font-weight:700}.compactTimetablePanel{position:sticky;top:16px}.compactTimetableWrap{padding:14px;overflow-x:auto}.compactTimetable{table-layout:fixed;border:1px solid var(--border);min-width:330px}.compactTimetableStack{gap:14px;display:grid}.compactTermBlock h3{border-left:3px solid var(--primary);color:var(--text);margin:0 0 8px;padding-left:8px;font-size:14px}.compactTimetable th,.compactTimetable td{text-align:center;white-space:normal;padding:8px 6px}.compactTimetable thead th,.compactTimetable tbody th{width:46px;font-size:12px}.compactTimetable td{height:42px;color:var(--muted);font-size:12px}.compactTimetable .filledSlot{color:var(--primary-dark);background:#dff3ee;font-weight:700;box-shadow:inset 0 0 0 2px #a9d8ce}.outsideTimetable{border-top:1px solid var(--border);padding:14px 18px}.outsideTimetable h3{margin:0 0 8px;font-size:15px}.outsideTimetable p,.outsideTimetable ul{color:var(--muted);margin:0;font-size:14px}.outsideTimetable ul{gap:6px;padding-left:18px;display:grid}.registrationViewTabs{margin:18px 0}.registrationModelPanel{gap:18px;display:grid}.modelTabNav{margin-bottom:0}.modelLegend{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;flex-wrap:wrap;gap:10px 16px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.modelLegend span{align-items:center;gap:6px;display:inline-flex}.modelLegendSwatch{background:#fff;border-left:5px solid;border-radius:4px;width:16px;height:16px}.modelTermStack{gap:22px;display:grid}.modelTermBlock{gap:12px;display:grid}.modelTermHeader{border-left:4px solid var(--primary);padding-left:10px}.modelTermHeader h3{margin:0;font-size:18px}.modelTimetableWrap{overflow-x:auto}.modelTimetable{table-layout:fixed;border:1px solid var(--border);min-width:760px}.modelTimetable th,.modelTimetable td{vertical-align:top;white-space:normal}.modelTimetable thead th,.modelTimetable tbody th{background:var(--surface-muted);text-align:center;width:86px}.modelCourseStack,.modelOutsideCourseGrid,.modelCourseRegistrationActions{gap:8px;display:grid}.modelOutsideCourseGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.modelCourseCard{border:1px solid var(--border);border-left:5px solid var(--primary);width:100%;min-height:74px;color:var(--text);text-align:left;cursor:pointer;background:#f8fafc;border-radius:8px;padding:10px 12px;text-decoration:none;display:grid}.modelCourseCard:hover{border-color:var(--primary);box-shadow:0 8px 18px #0f172a14}.modelCourseCard strong{font-size:14px;line-height:1.35}.modelCourseTitleLine{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.modelCourseTitleLine>span:first-child{min-width:0}.modelCourseCard span{color:var(--muted);font-size:13px}.modelCourseCard .modelStatusBadge,.courseDetailActionSummary .modelStatusBadge{border:1px solid var(--border);width:max-content;color:var(--text);white-space:nowrap;background:#fff;border-radius:999px;flex:none;align-items:center;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.2;display:inline-flex}.modelCourseCard .modelStatusBadge-success,.courseDetailActionSummary .modelStatusBadge-success{color:#14532d;background:#fff;border-color:#15803d}.modelCourseCard .modelStatusBadge-warning,.courseDetailActionSummary .modelStatusBadge-warning{color:#92400e;background:#fff;border-color:#d97706}.modelCourseCard .modelStatusBadge-danger,.courseDetailActionSummary .modelStatusBadge-danger{color:#991b1b;background:#fff;border-color:#dc2626}.modelCourseCard .modelStatusBadge-draft,.courseDetailActionSummary .modelStatusBadge-draft{color:#1e40af;background:#fff;border-color:#4f46e5}.modelCourseCardContinuation{background:#f1f5f9;min-height:54px}.modelCourseCard-core{background:#ecfdf5;border-left-color:#0f766e}.modelCourseCard-designated{background:#eff6ff;border-left-color:#2563eb}.modelCourseCard-elective{background:#fff7ed;border-left-color:#d97706}.modelCourseCard-masterBibleElective{background:#ecfeff;border-left-color:#0891b2}.modelCourseCard-masterTheologyElective{background:#f0fdf4;border-left-color:#16a34a}.modelCourseCard-recommended{background:#f5f3ff;border-left-color:#7c3aed}.advisorPendingCount{color:#991b1b;background:#fee2e2;border-color:#fecaca}.courseDetailActions{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;padding:12px}.courseDetailActionSummary{gap:10px;display:grid}.courseDetailActionSummary p{color:var(--muted);margin:0;font-size:14px}@media (max-width:860px){.page{padding:18px}.header{display:block}.studentPortalPage{padding:18px}.grid,.registrationGrid{grid-template-columns:1fr}.registrationStudentHeader{align-items:flex-start}.compactTimetablePanel{position:static}.dashboardHero,.dashboardGrid,.topDashboardGrid{grid-template-columns:1fr}.studentPortalShell{grid-template-columns:1fr;width:100%;min-height:auto}.studentPortalContent{width:100%;padding:0}.studentPortalSidebar{display:none}.studentPortalMenuPanel,.studentPortalHeader{display:block}.studentPortalPage .dashboardNoticeColumn{grid-template-columns:1fr}.studentTodoItem{grid-template-columns:auto minmax(0,1fr)}.studentTodoLink{grid-column:2;justify-self:start}.studentPortalMenuRow{grid-template-columns:1fr;gap:6px}.dokodemoDashboard .dashboardGrid,.dokodemoCourseItem{grid-template-columns:1fr}.dokodemoCourseMeta{white-space:normal;min-width:0}.heroStats,.studentHeroDetails,.cardGrid,.cardGrid.three,.cardGrid.four{grid-template-columns:1fr}.studentHeroName{font-size:24px!important}.select,.select.compact{min-width:100%}.formGrid,.adminUserTopFields,.movementPeriodGrid{grid-template-columns:1fr}.dokodemoFormGrid{grid-template-columns:1fr;width:100%}.dokodemoCompleteSummaryGrid{grid-template-columns:1fr}.dokodemoCompleteCourseItem{display:grid}.residentStatusChoices{grid-template-columns:1fr}.residentStatusOtherChoice,.japaneseAbilityOtherChoice{flex-direction:column;align-items:flex-start}.twoColumnDetailGrid,.statusActionGrid,.dokodemoStatusActions,.teachingLoadAddForm,.planGrid{grid-template-columns:1fr}.gradingRow{grid-template-columns:minmax(0,1fr) 84px 22px}.gradingRow .smallButton{grid-column:1/-1}.repeatableRow{grid-template-columns:1fr;display:grid}.textbookRow{grid-template-columns:1fr}.textbookActionSpacer{display:none}.teacherRow,.lessonCandidateRow,.readonlyGrid,.researchDetailGrid,.inlineForm,.inlineEditForm{grid-template-columns:1fr}}.majorPreferenceAdminHeader{margin-bottom:12px}.majorPreferenceFilterToolbar{flex-wrap:nowrap;align-items:center;gap:12px;margin-bottom:14px;padding:12px 16px;display:flex}.majorPreferenceFilterTitle{color:var(--text);white-space:nowrap;font-size:14px}.majorPreferenceFilterToolbar .field{flex-direction:row;flex:none;align-items:center;gap:8px;width:auto;display:flex}.majorPreferenceFilterToolbar .field span{white-space:nowrap;margin:0}.majorPreferenceFilterToolbar .compactInput{width:120px}.majorPreferenceTabRow{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.majorPreferenceTabRow .tabList{margin-bottom:0}.majorPreferenceListTitle{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.majorPreferenceCountBadge{color:#0f4c81;background:#eef6ff;border-radius:999px;align-items:center;min-height:24px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.majorPreferenceCountBadge.warn,.majorPreferenceStatusBadge.unsubmitted{color:#9a3412;background:#fff7ed}.majorPreferenceStatusBadge.submitted{color:#047857;background:#e7f8f1}.majorPreferenceStatusBadge.confirmed{color:#1d4ed8;background:#e8f1ff}.majorPreferenceChoiceList{gap:8px;min-width:220px;display:grid}.majorPreferenceChoicePlan{gap:3px;padding-left:10px;display:grid}.majorPreferenceChoicePlan.first{border-left:3px solid var(--primary)}.majorPreferenceChoicePlan.second{border-left:3px solid #2563eb}.majorPreferenceChoicePlan span{color:var(--muted);font-size:12px;font-weight:700}.majorPreferenceConfirmSelect{min-width:220px;max-width:100%}.majorPreferenceChangeForm{display:block}.majorPreferenceTableActions{min-width:140px}.majorPreferenceConfirmButton{color:#fff;border:0}.majorPreferenceSummaryStack{gap:12px}.majorPreferenceSummaryPanel .panelHeader{padding:12px 16px}.majorPreferenceSummaryGrid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:14px;padding:14px 16px 16px;display:grid}.majorPreferenceSummaryGrid .subPanelTitle{margin:0 0 8px;font-size:15px}.majorPreferencePage{width:100%;max-width:none}.majorPreferencePage>.majorPreferenceFilterToolbar,.majorPreferencePage>.majorPreferenceTabRow,.majorPreferencePage>.stackedForm{width:100%}.majorPreferenceStudentPage{width:min(100%,620px);margin:0 auto;padding-top:34px}.majorPreferenceStudentHeader{margin-bottom:14px}.majorPreferenceStudentHeader h1{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.majorPreferenceTitleBadge{font-size:13px;line-height:1.2}.majorPreferencePeriodLine{color:var(--text);margin:0 0 8px;font-size:14px;font-weight:700}.majorPreferenceNotice{padding:6px 0}.majorPreferenceNoticeTitle{border-left:4px solid var(--primary);color:var(--text);margin:0 0 10px;padding-left:12px;font-size:18px;line-height:1.45}.majorPreferenceConfirmedMajor{color:var(--text);margin:0 0 0 16px;font-size:17px;font-weight:800;line-height:1.6}.majorPreferenceConfirmedMajor span{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:2px}.majorPreferenceForm{gap:16px;margin-top:12px;display:grid}.majorPreferencePlanSection{gap:10px;padding-left:0;display:grid}.majorPreferencePlanSection .formSectionTitle{margin-bottom:2px}.majorPreferenceField{gap:4px}.majorPreferenceFieldLabel{color:var(--text);font-weight:700}.majorPreferenceField .input{width:100%}.majorPreferenceMinorGroup{gap:6px;display:grid}.majorPreferenceMinorGroup>span{color:var(--text);font-size:13px;font-weight:700}.majorPreferenceMinorChoices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.majorPreferenceMinorChoice{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;gap:8px;min-height:38px;padding:8px 10px;font-weight:700;display:flex}.majorPreferenceMinorChoice:has(input:disabled){color:var(--muted);background:#f1f5f9}.majorPreferenceForm .formActions{justify-content:flex-end;margin-top:2px}@media (max-width:720px){.majorPreferenceFilterToolbar{flex-wrap:wrap}.majorPreferenceFilterToolbar .field{width:min(100%,220px)}.majorPreferenceSummaryGrid{grid-template-columns:1fr}.majorPreferenceStudentPage{width:100%;padding-top:22px}.majorPreferenceMinorChoices{grid-template-columns:1fr}}
