:root{font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;color:#1e293b;background:#eef2f3}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:0;background:#246b5d;color:#fff;border-radius:6px;padding:10px 14px;cursor:pointer}input,select,textarea{width:100%;border:1px solid #cbd5d9;border-radius:6px;padding:10px;background:#fff}textarea{min-height:92px}.login{min-height:100vh;background:linear-gradient(120deg,#246b5dd1,#1e293bb8),url(/campus.webp);background-size:cover;display:grid;place-items:center;padding:22px}.loginPanel{width:min(520px,100%);background:#fff;border-radius:8px;padding:30px;box-shadow:0 20px 50px #0000002e}.brand{display:flex;gap:12px;align-items:center;font-size:24px;font-weight:800}.login form{display:grid;gap:14px;margin:24px 0}.demo,.error,.ok{padding:10px;border-radius:6px;background:#eef7f4}.error{background:#fff1f2;color:#be123c}.ok{color:#047857}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}aside{background:#143832;color:#fff;padding:18px;display:flex;flex-direction:column;gap:8px}aside button{display:flex;align-items:center;gap:10px;text-align:left;background:transparent;color:#dce8e5}aside button.active,aside button:hover{background:#246b5d}.logo{display:flex;align-items:center;gap:10px;font-weight:800;margin-bottom:18px}main{padding:22px;overflow:auto}header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}header div{display:flex;gap:12px;align-items:center}header span{background:#dbeafe;color:#1d4ed8;padding:4px 8px;border-radius:6px}header small{max-width:760px;color:#64748b}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.forms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.list{display:grid;gap:14px}.panel,.metric{background:#fff;border:1px solid #d9e2e1;border-radius:8px;padding:18px}.wide{grid-column:span 2}.panel h1,.panel h2{margin:0 0 12px;font-size:22px}.panel p{line-height:1.7}.metric span{color:#64748b}.metric strong{display:block;font-size:34px;margin-top:10px}.actions{display:flex;gap:12px;flex-wrap:wrap}.chart{grid-column:span 2;height:320px;background:#fff;border:1px solid #d9e2e1;border-radius:8px;padding:18px}form.panel{display:grid;gap:12px}svg{width:20px;height:20px;flex:0 0 auto}.simpleChart{display:grid;align-content:center;gap:12px}.barRow{display:grid;grid-template-columns:80px 1fr 44px;align-items:center;gap:10px}.barRow span{color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barRow div{height:14px;background:#e2e8f0;border-radius:999px;overflow:hidden}.barRow i{display:block;height:100%;background:#246b5d;border-radius:999px}.barRow b{text-align:right}.lineChart{width:100%;height:100%}.lineChart polyline{fill:none;stroke:#246b5d;stroke-width:4;vector-effect:non-scaling-stroke}.muted{color:#64748b;place-self:center}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:6px}.logo{grid-column:1/-1}.grid,.forms{grid-template-columns:1fr}.wide,.chart{grid-column:auto}header{display:block}main{padding:14px}.loginPanel{padding:22px}.brand{font-size:20px}}@media(max-width:640px){.login{background:linear-gradient(135deg,#246b5d,#1e293b)}}.mobileNav,.mobileMore{display:none}.articleTitle,.articleMeta{display:flex;justify-content:space-between;align-items:center;gap:12px}.articleTitle h2{margin-bottom:5px}.articleMeta{color:#64748b;font-size:13px;margin-top:12px}.iconButton{width:40px;height:40px;padding:8px;display:grid;place-items:center;background:#eef7f4;color:#246b5d}.iconButton svg{width:20px;height:20px}.articleMedia{display:block;width:100%;max-height:360px;margin:14px 0;border-radius:8px;background:#0f2521}.notification{cursor:pointer}.notification.read{opacity:.72}.notification h2{margin-bottom:5px}.recoveryLink,.ssoButton{width:100%;color:#246b5d;background:transparent;padding:6px}.recoveryForm{display:grid;gap:10px;margin:12px 0;padding-top:12px;border-top:1px solid #d9e2e1}.articleFilter{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.articleFilter label{display:grid;gap:6px;color:#475569;font-size:14px}.articleFilter small,.notificationHeading small,.contentPagination span{color:#64748b;font-size:13px}.notificationHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.notificationHeading>div{min-width:0}.notificationHeading h2{margin-bottom:4px}.notificationHeading>span{margin-left:auto;white-space:nowrap;color:#9a5b13;font-weight:700}.contentPagination{justify-content:center;align-items:center}.contentPagination button.small{margin-left:0}.courseProgressPanel{display:grid;gap:12px}.courseProgressHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.courseProgressHeading p{margin:0;color:#475569;overflow-wrap:anywhere}.courseProgressPanel strong{font-size:30px;color:#246b5d;white-space:nowrap}.courseProgressPanel>span{color:#64748b}.courseQuizActions{display:flex;gap:8px;flex-wrap:wrap}.courseTabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid #cbd5d9}.courseTabs button{border-radius:6px 6px 0 0;background:transparent;color:#475569;padding:10px 16px;border-bottom:3px solid transparent}.courseTabs button.active{color:#1d5f52;border-bottom-color:#246b5d;font-weight:700}.courseWorkspace{align-items:start}.dateFilterInputs{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.dateFilterInputs label{flex:1;min-width:150px}.aiResult{white-space:pre-wrap}.dateFilterForm{grid-column:span 2}.courseFilterGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.courseFilterGrid label,.courseEnrollmentForm>label{display:grid;gap:6px;color:#475569;font-size:14px}.courseFilterGrid button{min-height:42px}.enrollmentSummary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e2e8f0}.enrollmentSummary span{color:#64748b;font-size:13px}.enrollmentList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;max-height:180px;overflow:auto}.enrollmentList span{display:flex;gap:8px;padding:8px 0;border-bottom:1px solid #e2e8f0;color:#64748b}.enrollmentList b{color:#1e293b}.courseEditForm,.courseManagementPanel,.courseContentSelector,.courseContentInventory{grid-column:1/-1}.courseManagementRow,.courseContentRow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid #e2e8f0}.courseManagementRow:first-of-type{border-top:0}.courseManagementRow>div:first-child,.courseContentRow>div:first-child{min-width:0}.courseManagementRow b,.courseContentRow b{display:block;line-height:1.5;overflow-wrap:anywhere}.courseManagementRow span,.courseContentRow span{display:block;margin-top:4px;color:#64748b;font-size:13px;overflow-wrap:anywhere}.courseManagementRow .actions,.courseContentRow .actions{flex:0 0 auto}.courseManagementRow button,.courseContentRow button{display:inline-flex;align-items:center;gap:5px}.courseContentSelector{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px}.courseContentSelector label{display:grid;gap:6px;color:#475569;font-size:14px}.courseContentSelector span{color:#64748b}.courseContentInventory h3{margin:18px 0 5px;font-size:16px}.courseContentGroup{border-top:1px solid #d9e2e1}.courseContentGroup:first-of-type{margin-top:12px}.courseContentGroup>.muted{padding:10px 0}.courseContentRow{padding:11px 0}.fieldLabel{display:grid;gap:6px;color:#475569;font-size:14px}.adminAccountsWorkspace,.adminContentWorkspace{grid-template-columns:repeat(2,minmax(0,1fr))}.adminWorkspace>.wide,.adminContentList{grid-column:1/-1}.adminContentRow{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #e2e8f0}.adminContentRow:first-of-type{border-top:0}.adminContentRow>div:first-child{min-width:0}.adminContentRow b{display:block}.adminContentRow span{display:block;margin-top:4px;color:#64748b;font-size:13px}.adminContentRow p{margin:7px 0 0;color:#475569;line-height:1.55;overflow-wrap:anywhere}.adminContentRow .actions{flex:0 0 auto}.adminContentRow button{display:inline-flex;align-items:center;gap:5px}.articleManagementHeading{display:grid;gap:14px}.articleManagementHeading h2{margin-bottom:4px}.articleManagementHeading small{color:#64748b}.articleManagementFilters{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(130px,.8fr)) auto;gap:8px;align-items:end}.articleManagementFilters button{min-height:42px}.articleManagementRows,.articleStatsRows{margin-top:14px}.articleManagementRow{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #e2e8f0}.articleManagementRow>div:first-child{min-width:0}.articleManagementRow b,.articleManagementRow span,.articleManagementRow small{display:block}.articleManagementRow span,.articleManagementRow small{margin-top:4px;color:#64748b;font-size:13px;overflow-wrap:anywhere}.articleManagementRow .actions{flex:0 0 auto}.articleManagementPagination{justify-content:center;align-items:center;margin-top:12px}.articleManagementPagination span{color:#64748b;font-size:13px}.articleManagementPagination button.small{margin-left:0}.articleStatsRow{display:grid;grid-template-columns:minmax(180px,1fr) minmax(360px,1.1fr);align-items:center;gap:20px;padding:14px 0;border-top:1px solid #e2e8f0}.articleStatsRow>div:first-child{min-width:0}.articleStatsRow b,.articleStatsRow span{display:block}.articleStatsRow span{margin-top:4px;color:#64748b;font-size:13px}.articleStatsRow dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.articleStatsRow dt{color:#64748b;font-size:12px}.articleStatsRow dd{margin:3px 0 0;font-size:17px;font-weight:700}.userListHeading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}.userListHeading h2{margin-bottom:4px}.userListHeading small{color:#64748b}.userListFilters{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,1fr) minmax(110px,.8fr) auto;gap:8px;align-items:end;min-width:min(100%,620px)}.userListFilters button{min-height:42px}.userPagination{justify-content:center;align-items:center;margin-top:8px}.userPagination span{color:#64748b;font-size:13px}.userManagementRows{margin-top:14px}.userManagementRow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid #e2e8f0}.userManagementRow>div:first-child{min-width:0}.userManagementRow b,.userManagementRow span{display:block}.userManagementRow span{margin-top:4px;color:#64748b;font-size:13px;overflow-wrap:anywhere}.userManagementRow .actions{flex:0 0 auto;align-items:center}.managedBySystem{margin:0!important;padding:5px 8px;border-radius:4px;background:#eef2f3;color:#64748b!important}.batchAssignmentForm{grid-column:1/-1}.batchAssignmentHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.batchAssignmentHeading h2{margin-bottom:4px}.batchAssignmentHeading small{color:#64748b}.batchAssignmentHeading button{flex:0 0 auto}.batchAssignmentBody{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);gap:16px}.batchAssignmentBody>label,.batchAssignmentControls>label:not(.check){display:grid;gap:6px;color:#475569;font-size:14px}.batchAssignmentBody textarea{min-height:150px}.batchAssignmentControls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px}.batchAssignmentControls .check{grid-column:1/-1}.pagedRecordHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pagedRecordHeading h2{margin-bottom:4px}.pagedRecordHeading small,.recordPagination span{color:#64748b;font-size:13px}.recordPagination{justify-content:center;align-items:center;margin-top:4px}.courseStatsSummary,.feedbackStatsSummary{min-width:0}.courseStatRows{display:grid}.courseStatRow{padding:14px 0;border-top:1px solid #e2e8f0}.courseStatRow:first-child{border-top:0}.courseStatHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.courseStatHeading b{min-width:0;overflow-wrap:anywhere}.courseStatHeading strong{color:#246b5d;font-size:18px;white-space:nowrap}.courseStatTrack{height:7px;margin:10px 0 12px;border-radius:4px;background:#e2e8f0;overflow:hidden}.courseStatTrack i{display:block;height:100%;border-radius:4px;background:#2b7a68}.courseStatRow dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0}.courseStatRow dl div{min-width:0}.courseStatRow dt{color:#64748b;font-size:12px}.courseStatRow dd{margin:3px 0 0;font-size:17px;font-weight:700}.feedbackStatsHeading{display:grid;gap:12px}.feedbackStatsHeading h2{margin:0}.feedbackStatsHeading>div{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.feedbackStatsHeading span{padding:10px;background:#f4f8f7;color:#64748b;font-size:12px}.feedbackStatsHeading span b{display:block;margin-bottom:2px;color:#1e293b;font-size:20px}.feedbackKeywordRows{display:grid;gap:10px;margin-top:16px}.feedbackKeywordRow{display:grid;grid-template-columns:minmax(64px,90px) minmax(70px,1fr) 30px;align-items:center;gap:9px}.feedbackKeywordRow>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569;font-size:13px}.feedbackKeywordRow>div{height:8px;border-radius:4px;background:#e2e8f0;overflow:hidden}.feedbackKeywordRow i{display:block;height:100%;border-radius:4px;background:#b7791f}.feedbackKeywordRow>b{text-align:right;font-size:13px}.check{display:inline-flex;align-items:center;gap:7px;color:#475569;font-size:14px}.check input{width:16px;height:16px;margin:0}.permissionRuleRow{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:18px;padding:14px 0;border-top:1px solid #e2e8f0}.permissionRuleRow:first-of-type{border-top:0}.permissionRuleRow>div:first-of-type b{display:block}.permissionRuleRow>div:first-of-type span{display:block;margin-top:4px;color:#64748b;font-size:13px}.permissionRoleChecks{display:flex;gap:14px;flex-wrap:wrap}.permissionRuleRow button{min-width:72px}.operationLogHeading{display:grid;gap:14px}.operationLogHeading h2{margin:0 0 4px}.operationLogHeading small{color:#64748b}.operationLogFilters{display:grid;grid-template-columns:minmax(190px,1.3fr) minmax(140px,.8fr) minmax(145px,.7fr) minmax(145px,.7fr) auto;gap:8px;align-items:end}.operationLogFilters label{display:grid;gap:5px;color:#64748b;font-size:12px}.operationLogFilters button{min-height:42px}.operationLogRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:11px 0;border-top:1px solid #e2e8f0}.operationLogRow:first-of-type{margin-top:12px}.operationLogRow b,.operationLogRow span,.operationLogRow small{display:block}.operationLogRow span,.operationLogRow small{margin-top:3px;color:#64748b;font-size:13px}.operationLogRow>div:last-child{text-align:right}.logPagination{justify-content:center;align-items:center;margin-top:10px}.logPagination span{color:#64748b;font-size:13px}.subTabs{display:inline-flex;align-items:center;gap:4px;padding:4px;margin:0 0 16px;background:#dfe8e6;border:1px solid #cad7d4;border-radius:6px}.subTabs button{background:transparent;color:#475569;padding:8px 14px}.subTabs button.active{background:#fff;color:#1d5f52;box-shadow:0 1px 3px #1438321f;font-weight:700}.governanceWorkspace>.subTabs{grid-column:1/-1;justify-self:start;margin-bottom:0}main:has(.governance-privacy) .permissionRulesPanel{display:none}main:has(.governance-permissions) .deletionGovernance{display:none}main:has(.governance-dictionaries) .permissionRulesPanel,main:has(.governance-dictionaries) .deletionGovernance{display:none}.systemSettingsPanel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;align-items:start}.systemSettingsPanel>h2,.systemSettingsPanel>.muted{grid-column:1/-1}.systemSettingRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px 0;border-bottom:1px solid #e2e8f0}.systemSettingRow label{display:grid;gap:6px;color:#475569;font-size:14px}.systemSettingRow button{min-height:42px}.systemSettingsPanel>.muted{margin:16px 0 0}button:disabled{cursor:not-allowed;opacity:.5}.aiDraftLibrary article{padding:14px 0;border-bottom:1px solid #e2e8f0}.aiDraftLibrary article:last-of-type{border-bottom:0}.aiDraftLibrary .aiResult{margin:8px 0 12px;color:#475569;line-height:1.7}.referralRecords{display:grid;gap:0}.referralRecord{padding:14px 0;border-bottom:1px solid #e2e8f0}.referralRecord:last-of-type{border-bottom:0}.referralRecord>p{margin:8px 0 12px;color:#475569}.referralHeading{display:flex;align-items:center;gap:10px}.referralHeading span{padding:3px 7px;border-radius:4px;background:#fff4e5;color:#9a5b13;font-weight:700}.referralHeading small{margin-left:auto;color:#64748b}.referralFollowUp{display:grid;grid-template-columns:minmax(220px,1fr) minmax(210px,.7fr) auto;align-items:end;gap:10px}.referralFollowUp label{display:grid;gap:5px;font-size:12px;color:#64748b}.referralMeta{display:flex;gap:16px;flex-wrap:wrap;color:#246b5d;font-size:14px}.referralWorkspace{display:grid;gap:14px}.referralCreatePanel{display:grid;grid-template-columns:minmax(230px,1fr) minmax(180px,.8fr) 130px minmax(260px,1.2fr) auto;align-items:end;gap:12px}.referralCreatePanel>div h2{margin-bottom:4px}.referralCreatePanel>div small{color:#64748b}.referralCreatePanel label,.referralFilterGrid label,.referralFollowUp label{display:grid;gap:5px;color:#64748b;font-size:12px}.referralCreatePanel textarea{min-height:42px;height:42px}.referralCreatePanel button{min-height:42px}.referralWorkspaceHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.referralWorkspaceHeading h2{margin-bottom:4px}.referralWorkspaceHeading small{color:#64748b}.referralWorkspaceHeading>span{padding:5px 8px;border-radius:4px;background:#fff4e5;color:#8a5313;font-size:12px;white-space:nowrap}.referralFilterGrid{display:grid;grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(125px,.7fr)) repeat(2,minmax(140px,.7fr)) auto;gap:9px;align-items:end;margin-top:12px}.referralFilterActions{display:flex;gap:8px}.referralFilterActions button{min-height:42px}.referralRecords{display:grid;gap:12px}.referralRecord{padding:18px 20px;border-left:4px solid #94a3b8}.referralRecord.level-L4{border-left-color:#b42318}.referralRecord.level-L3{border-left-color:#c25d21}.referralRecord.level-L2{border-left-color:#bd7b10}.referralRecord.level-L1{border-left-color:#2b7a68}.referralHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.referralHeading>div:first-child{min-width:0}.referralHeading h2{margin:0;font-size:19px}.referralHeading h2 small{margin-left:5px;color:#64748b;font-size:13px;font-weight:500}.referralHeading p{margin:4px 0 0;color:#64748b;font-size:13px}.referralHeading>div:last-child{display:flex;align-items:center;gap:8px}.referralHeading>div:last-child span{padding:3px 7px;border-radius:4px;background:#fff4e5;color:#8a5313;font-weight:700}.referralHeading>div:last-child small{color:#64748b}.referralRecord>.referralReason{margin:14px 0;color:#475569;line-height:1.65}.referralFollowUp{display:grid;grid-template-columns:150px minmax(210px,1fr) minmax(190px,.7fr) auto;align-items:end;gap:10px;padding-top:14px;border-top:1px solid #e2e8f0}.referralFollowUp .referralRemark{grid-column:1/-2}.referralFollowUp textarea{min-height:68px}.referralFollowUp>button{grid-column:-2;min-height:42px}.referralOutcome{padding:12px 14px;background:#f4f8f7;border-left:3px solid #246b5d}.referralOutcome>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.referralOutcome>div span,.referralOutcome small{color:#64748b}.referralOutcome p{margin:7px 0;line-height:1.55}.referralEmpty{text-align:center;padding:34px}.referralEmpty h2{font-size:18px}.referralEmpty p{margin:0;color:#64748b}.referralPagination{justify-content:center;align-items:center}.referralPagination button.small{margin-left:0}.referralPagination span{color:#64748b;font-size:13px}.appointmentWorkspace{display:grid;gap:14px}.appointmentWorkspaceHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.appointmentWorkspaceHeading h2{margin-bottom:4px}.appointmentWorkspaceHeading small{color:#64748b}.appointmentWorkspaceHeading>span{padding:5px 8px;border-radius:4px;background:#eef7f4;color:#246b5d;font-size:12px;white-space:nowrap}.appointmentFilterGrid{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(140px,.75fr)) auto;gap:10px;align-items:end}.appointmentFilterGrid label,.appointmentHandling label{display:grid;gap:5px;color:#64748b;font-size:13px}.appointmentFilterActions{display:flex;gap:8px}.appointmentFilterActions button{min-height:42px}.appointmentRecords{display:grid;gap:12px}.appointmentRecord{padding:18px 20px}.appointmentRecordHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.appointmentRecordHeading h2{margin:0;font-size:19px}.appointmentRecordHeading h2 small{margin-left:5px;color:#64748b;font-size:13px;font-weight:500}.appointmentRecordHeading p{margin:4px 0 0;color:#64748b;font-size:13px}.appointmentStatus{flex:0 0 auto;padding:4px 8px;border-radius:4px;background:#eef2f3;color:#64748b;font-size:12px;font-weight:700}.appointmentStatus.status-待确认{background:#fff4e5;color:#8a5313}.appointmentStatus.status-已确认{background:#e8f1fb;color:#225f99}.appointmentStatus.status-已完成{background:#e8f6ef;color:#157052}.appointmentStatus.status-已取消{background:#f1f3f4;color:#64748b}.appointmentDetails{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:16px 0}.appointmentDetails div{min-width:0}.appointmentDetails dt{color:#64748b;font-size:12px}.appointmentDetails dd{margin:4px 0 0;line-height:1.55;overflow-wrap:anywhere}.appointmentDescription{grid-column:1/-1}.appointmentHandling{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding-top:14px;border-top:1px solid #e2e8f0}.appointmentHandling textarea{min-height:66px}.appointmentHandling .actions{padding-bottom:1px}.appointmentHandling button.small,.appointmentPagination button.small{margin-left:0;min-height:38px}.appointmentEmpty{text-align:center;padding:34px}.appointmentEmpty h2{font-size:18px}.appointmentEmpty p{margin:0;color:#64748b}.appointmentPagination{justify-content:center;align-items:center}.appointmentPagination span{color:#64748b;font-size:13px}.approvalWorkspace{align-items:start}.approvalLedgerHeading h2{margin-bottom:4px}.approvalLedgerHeading small{color:#64748b}.approvalFilters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;align-items:end;margin-top:14px}.approvalFilters>input:first-child,.approvalFilters>select:nth-child(2),.approvalFilters>select:nth-child(3),.approvalFilters>input:nth-child(4),.approvalFilters>input:nth-child(5),.approvalFilters>button{grid-column:span 2}.approvalFilters button{min-height:42px}.approvalRows{margin-top:14px}.approvalRow{padding:15px 0;border-top:1px solid #e2e8f0}.approvalRowHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.approvalRowHeading>div{min-width:0}.approvalRowHeading b,.approvalRowHeading span{display:block}.approvalRowHeading span{margin-top:4px;color:#64748b;font-size:13px;overflow-wrap:anywhere}.approvalStatus{padding:4px 8px;border-radius:4px;background:#eef2f3;color:#64748b;font-size:12px;white-space:nowrap}.approvalStatus.status-待审批{background:#fff4e5;color:#8a5313}.approvalStatus.status-已通过{background:#e8f6ef;color:#157052}.approvalStatus.status-已拒绝{background:#fff1f2;color:#a33945}.approvalRow p{margin:10px 0 5px;color:#475569;line-height:1.55}.approvalRow>small{display:block;color:#64748b;line-height:1.5}.approvalRow .actions{margin-top:10px}.approvalRow button.small{margin-left:0}.approvalPagination{justify-content:center;align-items:center;margin-top:12px}.approvalPagination button.small{margin-left:0}.approvalPagination span{color:#64748b;font-size:13px}.personalRecordHistory{min-width:0}.personalRecordHeading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.personalRecordHeading h2{margin-bottom:4px}.personalRecordHeading small{color:#64748b}.personalRecordTabs{display:flex;gap:4px;margin:14px 0 4px;padding-bottom:8px;border-bottom:1px solid #d9e2e1;overflow-x:auto}.personalRecordTabs button{display:flex;align-items:center;gap:6px;flex:0 0 auto;background:transparent;color:#475569;padding:8px 11px}.personalRecordTabs button.active{background:#eef7f4;color:#246b5d;font-weight:700}.personalRecordTabs span{min-width:20px;padding:2px 5px;border-radius:4px;background:#e2e8f0;color:#475569;font-size:11px;text-align:center}.personalRecordTabs button.active span{background:#fff;color:#246b5d}.personalRecordRows{display:grid}.personalRecordRow{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:8px 14px;padding:14px 0;border-bottom:1px solid #e2e8f0}.personalRecordRow>div{min-width:0}.personalRecordRow b,.personalRecordRow time{display:block}.personalRecordRow b{line-height:1.5;overflow-wrap:anywhere}.personalRecordRow time{margin-top:4px;color:#64748b;font-size:12px}.personalRecordRow p{grid-column:1/-1;margin:0;padding-right:52px;color:#475569;line-height:1.6;overflow-wrap:anywhere}.personalRecordRow .iconButton{grid-column:2;grid-row:1;align-self:start;width:40px;height:40px}.personalRecordPagination{justify-content:center;align-items:center;margin-top:14px}.personalRecordPagination button.small{margin-left:0}.personalRecordPagination span{color:#64748b;font-size:13px}.studentHelpWorkspace{align-items:start}.studentHelpWorkspace form label{display:grid;gap:5px;color:#64748b;font-size:13px}.studentAppointmentHistory{grid-column:span 2}.studentAppointmentHeading h2{margin-bottom:4px}.studentAppointmentHeading small{color:#64748b}.studentAppointmentItem{padding:14px 0;border-top:1px solid #e2e8f0}.studentAppointmentItem:first-of-type{margin-top:12px}.studentAppointmentItem>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.studentAppointmentItem>p{margin:5px 0;color:#475569}.studentAppointmentItem>small{display:block;color:#64748b;line-height:1.55}.studentAppointmentReply{margin-top:10px;padding:10px 12px;border-left:3px solid #246b5d;background:#f4f8f7}.studentAppointmentReply b{color:#246b5d;font-size:13px}.studentAppointmentReply p{margin:4px 0;line-height:1.55}.studentAppointmentReply small{color:#64748b}.studentAppointmentPagination{justify-content:center;align-items:center;margin-top:12px}.studentAppointmentPagination button.small{margin-left:0}.studentAppointmentPagination span{color:#64748b;font-size:13px}.urgentHelpPanel{border-color:#e5b7a9;background:#fffaf8}.urgentHelpPanel h2{color:#a44c3b}.urgentHelpPanel button{background:#a44c3b}.loadStatus{grid-column:1/-1;padding:10px 14px;border:1px solid #cfe3da;border-radius:8px;background:#f4fbf7;color:#2d6b57;font-size:13px}.loadError{border-color:#e5b7a9;background:#fff8f6;color:#9b4d3f;display:flex;align-items:center;gap:10px}.loadError button{margin:0}.globalToast{position:fixed;top:16px;right:20px;z-index:50;display:flex;align-items:center;gap:12px;max-width:min(420px,calc(100vw - 32px));padding:10px 12px 10px 14px;box-shadow:0 8px 24px #14383229}.globalToast .iconButton{margin:0;background:transparent;color:#9b4d3f;width:30px;height:30px;padding:5px}.consent details{padding:10px 0;border-top:1px solid #d9e2e1}.consent summary{cursor:pointer;font-weight:700;color:#246b5d}.consentCheck{margin:9px 0;align-items:flex-start}.consentCheck input{margin-top:3px}.privacyWorkspace{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.irreversibleNotice{display:flex;align-items:flex-start;gap:10px;margin:14px 0;padding:11px;border-left:4px solid #b4533c;background:#fff7f4;color:#7c3628}.irreversibleNotice b{white-space:nowrap}.dangerAction{background:#a54836}.deletionHistory{display:block}.deletionReceipt{padding:14px 0;border-top:1px solid #e2e8f0}.deletionReceipt:first-of-type{border-top:0}.deletionReceipt>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.deletionReceipt>div b{color:#1d5f52}.deletionReceipt>div span{color:#64748b;font-size:13px}.deletionReceipt p{margin:7px 0;color:#475569}.deletionReceipt ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;margin:9px 0 0;padding:0;list-style:none}.deletionReceipt li{display:flex;justify-content:space-between;gap:8px;color:#64748b;font-size:13px}.deletionReceipt li b{color:#1e293b}.deletionGovernanceHeading,.deletionReviewRow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.deletionGovernanceHeading small,.deletionReviewRow span{display:block;color:#64748b;font-size:13px}.deletionGovernanceHeading>span{padding:4px 8px;border-radius:4px;background:#fff4e5;color:#8a5313;font-weight:700;white-space:nowrap}.deletionRequestFilters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;align-items:end;margin:16px 0 2px}.deletionRequestFilters button{min-height:42px}.deletionRequestRows{display:grid}.deletionReviewRow{align-items:center;padding:13px 0;border-top:1px solid #e2e8f0}.deletionReviewRow>div:first-child{min-width:0}.deletionReviewRow span{margin-top:4px;overflow-wrap:anywhere}.deletionReceipt.compact ul{grid-template-columns:repeat(3,minmax(0,1fr))}.deletionRequestPagination{justify-content:center;align-items:center;margin-top:12px}.deletionRequestPagination button.small{margin-left:0}.deletionRequestPagination span{color:#64748b;font-size:13px}.profileWorkspace{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.profileWorkspace form label{display:grid;gap:6px;color:#475569;font-size:14px}.profileOrganization>div:first-child small{color:#64748b}.profileOrganization dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0 0}.profileOrganization dl div{padding:12px 0;border-top:1px solid #e2e8f0}.profileOrganization dl div:nth-child(odd){padding-right:18px}.profileOrganization dt{color:#64748b;font-size:13px}.profileOrganization dd{margin:5px 0 0;font-weight:700;overflow-wrap:anywhere}@media(max-width:900px){body{background:#f4f7f6}.shell:has(.studentMain)>aside{display:none}.studentMain{position:relative;height:100vh;min-height:100vh;padding:0;overflow:hidden;display:flex;flex-direction:column}.studentMain header{flex:0 0 auto;padding:18px 16px 8px;margin-bottom:0}.studentContent{flex:1;min-height:0;overflow:auto;padding:0 14px 14px}.studentMain header small{display:none}.studentMain header div{width:100%;justify-content:space-between}.studentMain .panel,.studentMain .metric,.studentMain .chart{border-radius:12px;padding:16px;box-shadow:0 2px 10px #1438320d}.studentMain .panel h1,.studentMain .panel h2{font-size:18px}.studentMain .grid,.studentMain .forms{gap:12px}.studentAppointmentHistory,.personalRecordHistory{grid-column:auto}.personalRecordRow p{padding-right:0}.studentMain .courseProgressHeading{align-items:flex-start}.studentMain .courseProgressHeading>div{min-width:0}.studentMain .courseQuizActions{display:grid;grid-template-columns:1fr}.studentMain .courseQuizActions button{width:100%;margin:0;text-align:left}.articleFilter{grid-template-columns:1fr}.notificationHeading{display:grid;grid-template-columns:1fr auto}.notificationHeading>span{grid-column:1;margin:0}.notificationHeading>button{grid-column:2;grid-row:1/3;margin:0}.articleMeta{align-items:flex-start}.articleMeta label{min-width:0;flex:1}.mobileNav{position:static;display:flex;flex:0 0 auto;z-index:20;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:#fffffff7;border-top:1px solid #d9e2e1;box-shadow:0 -4px 18px #1438321a;justify-content:space-around}.mobileNav button{background:transparent;color:#64748b;padding:4px 5px;display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;gap:3px;font-size:11px}.mobileNav button svg{width:20px;height:20px}.mobileNav button.active{color:#246b5d;font-weight:700}.mobileMore{position:absolute;display:grid;grid-template-columns:repeat(4,1fr);z-index:19;left:10px;right:10px;bottom:76px;padding:10px;background:#fff;border:1px solid #d9e2e1;border-radius:12px;box-shadow:0 8px 24px #14383229}.mobileMore button{background:transparent;color:#475569;padding:9px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px}.mobileMore button.active{color:#246b5d;font-weight:700}.systemSettingsPanel,.privacyWorkspace,.profileWorkspace{grid-template-columns:1fr}.systemSettingsPanel>h2,.systemSettingsPanel>.muted{grid-column:auto}.subTabs{display:flex;overflow-x:auto}.subTabs button{flex:0 0 auto}.deletionReceipt ul,.deletionReceipt.compact ul{grid-template-columns:1fr}.deletionGovernanceHeading,.deletionReviewRow{display:grid}.deletionReviewRow .actions{justify-content:flex-start}.deletionRequestFilters{grid-template-columns:repeat(2,minmax(0,1fr))}.deletionRequestFilters input:first-child,.deletionRequestFilters button{grid-column:1/-1}.courseFilterGrid{grid-template-columns:1fr}.enrollmentSummary{align-items:flex-start;flex-direction:column}.enrollmentList{grid-template-columns:1fr}.referralCreatePanel{grid-template-columns:repeat(2,minmax(0,1fr))}.referralCreatePanel>div,.referralCreatePanel>label:last-of-type{grid-column:1/-1}.referralFilterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.referralFollowUp{grid-template-columns:1fr}.referralFollowUp .referralRemark,.referralFollowUp>button{grid-column:auto}.courseContentSelector,.adminAccountsWorkspace,.adminContentWorkspace{grid-template-columns:1fr}.courseManagementRow,.courseContentRow,.adminContentRow,.userManagementRow{display:grid}.courseManagementRow .actions,.courseContentRow .actions,.adminContentRow .actions,.userManagementRow .actions{justify-content:flex-start}.permissionRuleRow{grid-template-columns:1fr}.permissionRoleChecks{display:grid}.permissionEnabled{margin-top:4px}.operationLogFilters,.operationLogRow{grid-template-columns:1fr}.operationLogRow>div:last-child{text-align:left}.operationLogFilters button{width:100%}.userListFilters{grid-template-columns:1fr}.userListFilters button{width:100%}.batchAssignmentHeading{display:grid}.batchAssignmentHeading button{width:100%}.batchAssignmentBody,.batchAssignmentControls{grid-template-columns:1fr}.batchAssignmentControls .check{grid-column:auto}.appointmentFilterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointmentFilterActions{align-self:end}.appointmentHandling{grid-template-columns:1fr}.appointmentHandling .actions{justify-content:flex-start}.articleManagementFilters,.articleStatsRow{grid-template-columns:1fr}.articleManagementRow{display:grid}.articleManagementRow .actions{justify-content:flex-start}.articleStatsRow dl,.approvalFilters{grid-template-columns:repeat(2,minmax(0,1fr))}.approvalFilters input:first-child,.approvalFilters select:nth-child(2),.approvalFilters button{grid-column:1/-1}.approvalFilters button{width:100%}}button.ghost{background:#e2e8f0;color:#1e293b}button.small{padding:4px 8px;font-size:13px;margin-left:8px}.consent .loginPanel{max-width:680px}.aiDisclosure{display:block;color:#805b16;font-weight:600;margin-top:6px}.recommendationHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.recommendationHeading h2{margin-bottom:0}.recommendationHeading .aiDisclosure{margin-top:0}.temporaryCredentials p{display:grid;grid-template-columns:minmax(120px,.4fr) minmax(0,1fr);gap:12px;align-items:center}.temporaryCredentials code{overflow-wrap:anywhere;padding:8px 10px;border:1px solid #c9d5d1;background:#f4f7f6;color:#143832}.surveyHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.surveyHeading h2{margin:0;font-size:24px}.surveyHeading p{margin:5px 0 0;color:#64748b}.surveyHeading .ok{max-width:520px}.surveyQuestionWorkspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin-bottom:16px}.surveyManagementWorkspace{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.surveyManagementWorkspace>.wide{grid-column:1/-1}.questionEditorPanel,.questionnaireQuestionList{min-width:0}.questionEditorPanel label{display:grid;gap:6px;color:#475569;font-size:14px}.questionPanelHeading,.questionItemHeading,.questionEditorActions,.questionOptionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.questionPanelHeading h2{margin-bottom:3px}.questionPanelHeading small,.questionItemHeading small,.questionOptionHeader span{display:block;color:#64748b}.questionMetaGrid{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:12px}.questionOptionRows{display:grid;border-top:1px solid #e2e8f0}.questionOptionHeader{align-items:center;padding:12px 0 8px}.questionOptionRow{display:grid;grid-template-columns:minmax(0,1fr) 110px 40px;gap:10px;align-items:end;padding:9px 0;border-top:1px solid #edf1f2}.questionOptionRow .iconButton{width:40px;height:42px}.dangerIconButton{background:#fff1f2;color:#be123c}.questionEditorActions{align-items:center;margin-top:2px}.questionEditorActions button,.questionItemHeading button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.questionEditorActions button:last-child{margin-left:auto}.questionnaireQuestionList{max-height:760px;overflow:auto}.questionItemRow{padding:15px 0;border-top:1px solid #e2e8f0}.questionItemRow:first-of-type{border-top:0}.questionItemHeading{align-items:flex-start}.questionItemHeading>div{min-width:0}.questionItemHeading b{display:block;line-height:1.55;overflow-wrap:anywhere}.questionItemHeading small{margin-top:4px}.questionItemHeading button{flex:0 0 auto}.questionOptionSummary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:10px}.questionOptionSummary span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid #edf1f2;color:#475569}.questionOptionSummary i{font-style:normal;min-width:0;overflow-wrap:anywhere}.questionOptionSummary b{white-space:nowrap;color:#246b5d}.assessmentPublishRow{padding:16px 0;border-top:1px solid #e2e8f0}.assessmentPublishRow:first-of-type{margin-top:8px}.assessmentPublishHeading,.assessmentPublishHeading>div,.assessmentPublishMeta,.assessmentProgressText{display:flex;align-items:center;justify-content:space-between;gap:12px}.assessmentPublishHeading>div{justify-content:flex-start;min-width:0}.assessmentPublishHeading>div>b{overflow-wrap:anywhere}.publishStatus{flex:0 0 auto;padding:3px 7px;border-radius:4px;background:#eef2f3;color:#64748b;font-size:12px;font-weight:700}.publishStatus.live{background:#e8f6ef;color:#157052}.assessmentPublishMeta{justify-content:flex-start;flex-wrap:wrap;margin:8px 0;color:#64748b;font-size:13px}.assessmentPublishMeta span+span:before{content:"·";margin-right:12px}.assessmentProgress{height:8px;border-radius:4px;background:#e2e8f0;overflow:hidden}.assessmentProgress i{display:block;height:100%;background:#2b7a68}.assessmentProgressText{align-items:flex-start;margin-top:8px}.assessmentProgressText span{color:#64748b;text-align:right;font-size:13px}@media(max-width:900px){.surveyHeading{display:block}.surveyHeading .ok{margin-top:12px;max-width:none}.surveyQuestionWorkspace,.surveyManagementWorkspace{grid-template-columns:1fr}.surveyManagementWorkspace>.wide{grid-column:auto}.questionnaireQuestionList{max-height:none}.questionOptionSummary{grid-template-columns:1fr}.assessmentProgressText{display:grid}.assessmentProgressText span{text-align:left}}.dictionaryEditForm{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0;padding:14px;background:#f8fafb}.dictionaryEditForm h3,.dictionaryEditForm .actions{grid-column:1/-1}.dictionaryRow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid #e2e8f0}.dictionaryRow>span{min-width:0;overflow-wrap:anywhere}.dictionaryRow .actions{flex:0 0 auto}@media(max-width:520px){.questionMetaGrid{grid-template-columns:1fr}.questionOptionRow{grid-template-columns:minmax(0,1fr) 86px 40px}.questionPanelHeading{align-items:flex-start}.questionEditorActions{display:grid;grid-template-columns:1fr}.questionEditorActions button,.questionEditorActions button:last-child{width:100%;margin:0}}@media(max-width:600px){.referralCreatePanel,.referralFilterGrid{grid-template-columns:1fr}.referralCreatePanel>div,.referralCreatePanel>label:last-of-type{grid-column:auto}.referralWorkspaceHeading{display:grid}.referralWorkspaceHeading>span{justify-self:start}.referralHeading{display:grid}.referralHeading>div:last-child{justify-content:flex-start}.referralFilterActions button{flex:1}.appointmentWorkspaceHeading{display:grid}.appointmentWorkspaceHeading>span{justify-self:start}.appointmentFilterGrid,.appointmentDetails,.approvalFilters,.deletionRequestFilters{grid-template-columns:1fr}.approvalFilters>*,.deletionRequestFilters>*{grid-column:auto!important}.approvalRowHeading{display:grid}.approvalStatus{justify-self:start}.appointmentDescription{grid-column:auto}.appointmentFilterActions button{flex:1}.appointmentRecordHeading{align-items:flex-start}.appointmentHandling .actions{display:grid;grid-template-columns:1fr}.appointmentHandling button.small{width:100%}}@media(max-width:900px){.dictionaryEditForm{grid-template-columns:1fr}.dictionaryRow{display:grid;align-items:start}.dictionaryRow .actions{justify-content:flex-start}}
