.workspace{z-index:20;color:#29485d;background:#f3faf8;grid-template-columns:230px 1fr;display:grid;position:fixed;inset:0}.workspace-sidebar{color:#fff;background:linear-gradient(#173f55,#1e5c63);flex-direction:column;padding:23px 15px 18px;display:flex;overflow:auto}.workspace-brand{border-bottom:1px solid #ffffff21;align-items:center;gap:11px;padding:0 8px 22px;display:flex}.workspace-brand>span{color:#fff;background:linear-gradient(135deg,#ff9a7e,#ffc467);border-radius:14px;place-items:center;width:39px;height:39px;font-weight:800;display:grid;box-shadow:0 8px 20px #00000026}.workspace-brand b,.workspace-brand small{display:block}.workspace-brand b{letter-spacing:.08em;font-size:14px}.workspace-brand small{color:#acd2cf;font-size:var(--office-caption);margin-top:3px}.workspace-sidebar nav{flex-direction:column;gap:4px;padding:20px 0;display:flex}.workspace-sidebar nav button{color:#c6dddc;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;grid-template-columns:36px 1fr;align-items:center;gap:10px;padding:9px 10px;transition:all .2s;display:grid}.workspace-sidebar nav button:hover{background:#ffffff14;transform:translate(2px)}.workspace-sidebar nav button.active{color:#1b4a55;background:#fff;box-shadow:0 10px 24px #00000021}.workspace-sidebar nav i{color:#fff;width:32px;height:32px;font-style:normal;font-size:var(--office-caption);background:#ffffff1c;border-radius:11px;place-items:center;font-weight:800;display:grid}.workspace-sidebar nav .active i{color:#fff;background:#ff927b}.workspace-sidebar nav b,.workspace-sidebar nav small{display:block}.workspace-sidebar nav b{font-size:var(--office-caption)}.workspace-sidebar nav small{color:#88b3b1;font-size:var(--office-caption);margin-top:2px}.workspace-sidebar nav .active small{color:#789294}.sidebar-foot{background:#ffffff12;border-radius:15px;align-items:center;gap:10px;margin-top:auto;padding:14px 11px;display:flex}.online-dot{background:#6fe0aa;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #6fe0aa1f}.sidebar-foot b,.sidebar-foot small{display:block}.sidebar-foot b{font-size:var(--office-caption)}.sidebar-foot small{color:#89b8b6;font-size:var(--office-caption);margin-top:2px}.workspace-main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.workspace-header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffb8;border-bottom:1px solid #dbeae7;flex:none;justify-content:space-between;align-items:center;height:91px;padding:0 34px;display:flex}.workspace-header p{color:#6ea194;font-size:var(--office-caption);letter-spacing:.18em;margin:0 0 3px;font-weight:700}.workspace-header h2{color:#24465a;margin:0;font-size:24px}.workspace-actions,.action-row{align-items:center;gap:9px;display:flex}.workspace-actions button,.soft-button,.accent-button,.upload-button{cursor:pointer;font-size:var(--office-caption);white-space:nowrap;border:0;border-radius:12px;padding:10px 15px;font-weight:700}.soft-button{color:#567484;background:#eaf4f2}.accent-button{color:#fff;background:linear-gradient(135deg,#45b995,#69cdb0);box-shadow:0 8px 18px #45b99533}.upload-button{color:#587384;background:#fff;border:1px solid #dce9e6;justify-content:center;align-items:center;display:inline-flex}.upload-button input{display:none}.upload-button.wide{width:100%;margin-top:12px}.close-button{color:#557486;align-items:center;gap:9px;display:flex;box-shadow:0 5px 14px #446f7f14;background:#fff!important}.close-button span{color:#fff;background:#ff907a;border-radius:8px;place-items:center;width:22px;height:22px;font-size:16px;display:grid}.workspace-content{background:radial-gradient(circle at 96% 4%,#ffd97e29,#0000 22%),#f3faf8;flex:1;min-height:0;padding:27px 34px 40px;overflow:auto}.section-lead{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-lead h3{color:#294b5f;margin:0;font-size:20px}.section-lead p{color:#8099a2;font-size:var(--office-caption);margin:5px 0 0}.rule-strip{color:#69878e;font-size:var(--office-caption);background:#e6f5ef;border-radius:14px;align-items:center;gap:20px;margin-bottom:17px;padding:12px 16px;display:flex}.rule-strip b{color:#319878}.rule-strip span{border-left:1px solid #438c7726;padding-left:19px}.table-card,.editor-card,.form-card,.teacher-detail,.source-card,.paper-editor{background:#fff;border:1px solid #ffffffe6;border-radius:20px;box-shadow:0 10px 35px #4a7e8e14}.schedule-layout{grid-template-columns:minmax(0,1fr) 230px;gap:17px;display:grid}.table-card{overflow:hidden}.schedule-table table,.data-table{border-collapse:collapse;width:100%}.schedule-table th,.schedule-table td,.data-table th,.data-table td{text-align:center;border-bottom:1px solid #edf3f1;border-right:1px solid #edf3f1}.schedule-table thead th,.data-table thead th{color:#75919a;height:42px;font-size:var(--office-caption);background:#f8fbfa}.schedule-table tbody th{color:#496a7a;width:82px;font-size:var(--office-caption)}.schedule-table tbody th small{color:#a0afb4;font-size:var(--office-caption);margin-top:3px;font-weight:400;display:block}.schedule-table td button{cursor:pointer;background:#fff;border:0;width:100%;min-height:66px;transition:all .2s}.schedule-table td button:hover{background:#fff7e5;border-radius:12px;transform:scale(.96)}.schedule-table td b,.schedule-table td small{display:block}.schedule-table td b{color:#375a6b;font-size:var(--office-caption)}.schedule-table td small{color:#a0b2b6;font-size:var(--office-caption);margin-top:4px}.editor-card{padding:20px}.editor-card h4,.form-card h4{color:#345669;margin:12px 0 5px;font-size:15px}.editor-card p{color:#87a0a7;font-size:var(--office-caption);margin:0 0 15px;line-height:1.6}.tag.coral{color:#dc725d;background:#fff0eb}.course-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.course-grid button{color:#6a858e;cursor:pointer;font-size:var(--office-caption);background:#f0f6f5;border:0;border-radius:9px;padding:7px 3px}.course-grid button.active{color:#fff;background:#ff907a}.editor-card.empty{text-align:center;padding-top:65px}.empty-illustration{color:#fff;background:linear-gradient(135deg,#ffbf62,#ff907a);border-radius:20px;place-items:center;width:58px;height:58px;margin:0 auto;font-size:20px;font-weight:800;display:grid;transform:rotate(-6deg)}.schedule-context{grid-template-columns:1.4fr .8fr .7fr;gap:10px;margin-bottom:16px;display:grid}.schedule-context>div,.schedule-context>label{background:#fff;border-radius:15px;flex-direction:column;gap:4px;padding:13px 15px;display:flex;box-shadow:0 7px 22px #497e8e0d}.schedule-context span,.schedule-context small{color:#8ba0a7;font-size:var(--office-caption)}.schedule-context b{color:#385c6d;font-size:var(--office-caption)}.schedule-context input{color:#4e6c79;background:#f8fbfa;border:1px solid #dceae7;border-radius:9px;margin-top:3px;padding:7px}.schedule-side{flex-direction:column;gap:12px;display:flex}.editor-card.empty.compact{padding-top:22px}.editor-card.empty.compact .empty-illustration{width:48px;height:48px}.schedule-table td button.substitution{background:#fff5df;position:relative}.schedule-table td button.substitution:after{content:"代课";color:#fff;font-size:var(--office-caption);background:#ff9177;border-radius:99px;padding:2px 5px;position:absolute;top:5px;right:5px}.schedule-table td small em{color:#dc725d;margin-left:4px;font-style:normal;font-weight:800;display:inline-block}.substitution-mini{background:#fff;border-radius:16px;padding:14px;box-shadow:0 8px 25px #497e8e0f}.substitution-mini header,.substitution-mini div{justify-content:space-between;align-items:center;display:flex}.substitution-mini header{border-bottom:1px dashed #dce9e6;padding-bottom:9px}.substitution-mini header b{font-size:var(--office-caption)}.substitution-mini header span,.substitution-mini div span{color:#8ba0a7;font-size:var(--office-caption)}.substitution-mini div{padding-top:8px}.substitution-mini div b{color:#3b9a7f;font-size:var(--office-caption)}.substitution-mini p{color:#9bacb0;font-size:var(--office-caption);text-align:center;margin:10px 0 0}.filter-bar{background:#fff;border-radius:16px;align-items:center;gap:9px;margin-bottom:16px;padding:10px;display:flex;box-shadow:0 8px 25px #497e8e0f}.filter-bar input,.filter-bar select{color:#4f6c7a;height:38px;font-size:var(--office-caption);background:#f8fbfa;border:1px solid #ddeae7;border-radius:11px;outline:0;padding:0 13px}.filter-bar input{flex:1}.filter-bar span{color:#86a0a8;font-size:var(--office-caption);padding:0 8px}.filter-chip{color:#789198;font-size:var(--office-caption);background:#eef5f3;border:0;border-radius:10px;padding:8px 12px}.filter-chip.active{color:#fff;background:#5bc3a3}.teacher-layout{grid-template-columns:300px 1fr;gap:17px;display:grid}.teacher-list{flex-direction:column;gap:7px;max-height:620px;display:flex;overflow:auto}.teacher-list button{text-align:left;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:16px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:11px;display:grid}.teacher-list button.active{background:#eef9f5;border-color:#a7dbcc}.teacher-avatar,.big-avatar{color:#fff;background:linear-gradient(135deg,#76cdb4,#55b997);border-radius:14px;place-items:center;font-weight:800;display:grid}.teacher-avatar{width:40px;height:40px}.teacher-list b,.teacher-list small{display:block}.teacher-list b{font-size:var(--office-caption)}.teacher-list small{color:#8ba0a7;font-size:var(--office-caption);margin-top:3px}.teacher-list em{color:#d37d68;font-size:var(--office-caption);font-style:normal}.teacher-detail{padding:24px}.profile-head{border-bottom:1px dashed #dbe8e5;align-items:center;gap:15px;padding-bottom:21px;display:flex}.big-avatar{border-radius:21px;width:64px;height:64px;font-size:22px}.profile-head>div{flex:1}.profile-head small{color:#96a9ad;font-size:var(--office-caption)}.profile-head h3{color:#294b5e;margin:3px 0;font-size:22px}.profile-head p{color:#78929b;font-size:var(--office-caption);margin:0}.profile-head button{color:#469b83;font-size:var(--office-caption);background:#e8f6f1;border:0;border-radius:10px;padding:8px 12px}.profile-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px;display:grid}.profile-grid div{background:#f6faf9;border-radius:13px;padding:13px}.profile-grid span,.profile-grid b{display:block}.profile-grid span{color:#94a6aa;font-size:var(--office-caption)}.profile-grid b{color:#466576;font-size:var(--office-caption);margin-top:5px}.history-note{background:#fff7e4;border-radius:14px;margin-top:17px;padding:13px 15px}.history-note b{color:#c98b25;font-size:var(--office-caption)}.history-note p{color:#8d7c5d;font-size:var(--office-caption);margin:3px 0 0}.plan-layout,.leave-layout,.complaint-layout,.writing-layout{grid-template-columns:320px 1fr;gap:18px;display:grid}.form-card{padding:20px}.form-card label{color:#718b94;font-size:var(--office-caption);margin-top:12px;display:block}.form-card input,.form-card select,.form-card textarea{color:#456575;width:100%;font-size:var(--office-caption);background:#f9fcfb;border:1px solid #dce9e6;border-radius:10px;outline:0;margin-top:5px;padding:10px}.form-card textarea{resize:vertical;min-height:58px}.form-card .accent-button{width:100%;margin-top:15px}.two-cols{grid-template-columns:1fr 1fr;gap:9px;display:grid}.plan-list{flex-direction:column;gap:8px;display:flex}.plan-list article{background:#fff;border-radius:15px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:14px 16px;display:grid;box-shadow:0 7px 20px #497e8e0f}.plan-list article.done{opacity:.55}.plan-list .check{color:#fff;background:#fff;border:2px solid #acdccc;border-radius:9px;width:26px;height:26px}.plan-list .done .check{background:#5bc3a3}.plan-list b,.plan-list small{display:block}.plan-list b{font-size:var(--office-caption)}.plan-list small{color:#95a7ac;font-size:var(--office-caption);margin-top:4px}.plan-list time{color:#e07c65;font-size:var(--office-caption);font-weight:700}.score-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}.score-summary div{background:#fff;border-radius:17px;padding:17px;box-shadow:0 8px 25px #497e8e0f}.score-summary span,.score-summary b,.score-summary small{display:block}.score-summary span{color:#8ba0a7;font-size:var(--office-caption)}.score-summary b{color:#385c6d;margin:5px 0 2px;font-size:22px}.score-summary small{color:#9cabad;font-size:var(--office-caption)}.coral-text{color:#ff826f!important}.data-table th,.data-table td{text-align:left;font-size:var(--office-caption);border-right:0;padding:13px 12px}.data-table td{color:#67818b}.data-table td b,.data-table td strong{color:#365969}.status-pill,.type-pill{color:#d27662;font-size:var(--office-caption);background:#fff0eb;border:0;border-radius:99px;padding:5px 8px;display:inline-block}.status-pill.done{color:#3b9a7f;background:#e7f6f0}.audit-tip{font-size:var(--office-caption);background:#fff6df;border-radius:14px;align-items:center;gap:12px;margin-top:14px;padding:13px 16px;display:flex}.audit-tip b{color:#bd841e}.audit-tip span{color:#8c7f62;flex:1}.audit-tip button{color:#b37811;font-size:var(--office-caption);background:0 0;border:0;font-weight:700}.document-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.document-grid article{background:#fff;border-radius:18px;grid-template-columns:48px 1fr auto;align-items:center;gap:13px;padding:17px;display:grid;box-shadow:0 8px 25px #497e8e0f}.doc-icon{color:#fff;background:#71cdb0;border-radius:12px;place-items:center;width:46px;height:52px;font-weight:800;display:grid}.doc-icon.方案{background:#83bde8}.doc-icon.计划{background:#ffb564}.doc-icon.总结{background:#b8a2e5}.document-grid small{color:#8fa5aa;font-size:var(--office-caption)}.document-grid h4{color:#3a5c6d;font-size:var(--office-caption);margin:4px 0}.document-grid p{color:#a3b1b3;font-size:var(--office-caption);margin:0}.document-grid button{color:#4c9e86;font-size:var(--office-caption);background:#e9f6f2;border:0;border-radius:9px;padding:7px 10px}.duty-calendar{flex-direction:column;gap:9px;display:flex}.duty-calendar article{background:#fff;border-radius:17px;grid-template-columns:100px 1.5fr 1fr 60px;align-items:center;gap:14px;padding:11px 15px;display:grid;box-shadow:0 7px 22px #497e8e0f}.duty-calendar time b,.duty-calendar time span{display:block}.duty-calendar time b{font-size:14px}.duty-calendar time span{color:#91a5aa;font-size:var(--office-caption)}.duty-scene{background:#e8f7f2;border-radius:12px;padding:11px 13px}.duty-scene.color-1{background:#fff1e9}.duty-scene.color-2{background:#eaf5ff}.duty-scene.color-3{background:#f1edff}.duty-scene span,.duty-scene b,.duty-scene small{font-size:var(--office-caption);margin-right:12px}.duty-scene b{font-size:var(--office-caption)}.duty-person span,.duty-person b{display:block}.duty-person span{color:#93a5aa;font-size:var(--office-caption)}.duty-person b{font-size:var(--office-caption);margin-top:4px}.duty-calendar article>button{color:#6e8b93;font-size:var(--office-caption);background:#eef5f3;border:0;border-radius:9px;padding:8px}.duty-settings{grid-template-columns:1fr 1.4fr .9fr;gap:12px;margin:0 0 16px;display:grid}.duty-settings>label,.duty-settings>div{background:#fff;border-radius:16px;flex-direction:column;gap:7px;padding:13px 15px;display:flex;box-shadow:0 7px 22px #497e8e0d}.duty-settings span,.duty-settings small{color:#78949b;font-size:var(--office-caption)}.duty-settings textarea{resize:vertical;color:#315568;min-height:58px;font:inherit;background:#f9fcfb;border:1px solid #dceae7;border-radius:10px;padding:9px}.duty-settings>div b{color:#315568;font-size:var(--office-caption)}.duty-calendar article.locked{background:#f8fffc;outline:2px solid #57c5a359}.duty-calendar article.locked>button{color:#fff;background:#57c5a3}.leave-layout{grid-template-columns:300px 1fr}.form-card.compact{padding:18px}.complaint-list{flex-direction:column;gap:10px;display:flex}.complaint-list article{background:#fff;border-radius:17px;padding:16px;box-shadow:0 7px 22px #497e8e0f}.complaint-list header{justify-content:space-between;display:flex}.complaint-list header span{color:#d97661;font-size:var(--office-caption);font-weight:700}.complaint-list header em{color:#8c78bd;font-size:var(--office-caption);background:#f0ebff;border-radius:99px;padding:4px 7px;font-style:normal}.complaint-list h4{color:#3b5d6e;font-size:var(--office-caption);margin:10px 0}.complaint-list p{color:#789098;font-size:var(--office-caption);margin:5px 0;line-height:1.5}.complaint-list button{color:#3d9d82;font-size:var(--office-caption);background:#e8f6f1;border:0;border-radius:8px;margin-top:7px;padding:7px 10px}.writing-layout{grid-template-columns:220px 1fr}.source-card{padding:17px}.source-card>span{color:#78949b;font-size:var(--office-caption)}.source-card ul{margin:12px 0 0;padding:0;list-style:none}.source-card li{border-bottom:1px dashed #e1ebe8;justify-content:space-between;padding:9px 0;display:flex}.source-card b{font-size:var(--office-caption)}.source-card em{color:#4aac8f;font-size:var(--office-caption);font-style:normal}.paper-editor{overflow:hidden}.paper-toolbar{color:#496a79;font-size:var(--office-caption);border-bottom:1px solid #e7efed;justify-content:space-between;padding:13px 16px;font-weight:700;display:flex}.paper-toolbar button{color:#799097;font-size:var(--office-caption);background:#eef5f3;border:0;border-radius:7px;margin-left:5px;padding:5px 8px}.paper-editor textarea{resize:none;color:#394f5b;width:100%;height:390px;font-size:var(--office-caption);background:#fffefa;border:0;outline:0;padding:30px 46px;line-height:2;display:block}.paper-editor footer{color:#8da0a4;font-size:var(--office-caption);border-top:1px solid #e7efed;justify-content:space-between;align-items:center;padding:11px 16px;display:flex}.paper-editor footer button{margin-left:7px}.toast{z-index:40;color:#fff;font-size:var(--office-caption);background:#285b62;border-radius:13px;padding:12px 17px;position:fixed;bottom:27px;right:28px;box-shadow:0 12px 30px #20585e3d}.toast-enter-active,.toast-leave-active{transition:all .25s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(12px)}.workspace-slide-enter-active,.workspace-slide-leave-active{transition:transform .5s cubic-bezier(.7,0,.2,1),opacity .35s}.workspace-slide-enter-from,.workspace-slide-leave-to{opacity:.4;transform:translate(100%)}@media (width<=900px){.workspace{grid-template-columns:76px 1fr}.workspace-brand>div,.workspace-sidebar nav span,.sidebar-foot div{display:none}.workspace-sidebar nav button{justify-content:center;padding:8px;display:flex}.workspace-brand{justify-content:center;padding-left:0;padding-right:0}.teacher-layout,.schedule-layout,.schedule-context,.plan-layout,.leave-layout,.complaint-layout,.writing-layout,.duty-settings{grid-template-columns:1fr}.profile-grid,.score-summary{grid-template-columns:repeat(2,1fr)}.load-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.document-grid{grid-template-columns:1fr}.workspace-content{padding:22px 18px}.workspace-header{padding:0 18px}.duty-calendar article{grid-template-columns:75px 1fr 60px}.duty-person{display:none}}.workspace-brand small,.workspace-sidebar nav small,.sidebar-foot small,.workspace-sidebar nav b,.sidebar-foot b,.workspace-header p{font-size:var(--office-caption)}.workspace-header h2{font-size:26px}.workspace-actions button,.soft-button,.accent-button,.upload-button{font-size:var(--office-caption)}.section-lead h3{font-size:23px}.section-lead p{font-size:var(--office-caption);line-height:1.6}.rule-strip,.tag,.schedule-table thead th,.data-table thead th,.schedule-table tbody th,.schedule-table tbody th small,.schedule-table td small,.schedule-table td b,.editor-card p,.filter-bar span,.teacher-list small,.teacher-list em,.profile-head small,.profile-head p,.profile-grid span,.history-note p,.plan-list small,.score-summary span,.score-summary small,.audit-tip,.document-grid small,.document-grid p,.duty-calendar time span,.duty-scene span,.duty-scene small,.duty-person span,.complaint-list header span,.complaint-list header em,.complaint-list p,.paper-editor footer,.filter-bar input,.filter-bar select,.filter-chip,.form-card input,.form-card select,.form-card textarea,.profile-grid b,.plan-list b,.data-table th,.data-table td,.status-pill,.type-pill,.duty-settings span,.duty-settings small,.duty-settings>div b,.duty-scene b,.duty-person b,.duty-calendar article>button,.complaint-list button,.paper-toolbar,.form-card label{font-size:var(--office-caption)}.source-card label{color:#67838e;font-size:var(--office-caption);margin-top:15px;font-weight:700;display:block}.source-card input,.source-card select,.source-card textarea{box-sizing:border-box;color:#3f6070;width:100%;font:inherit;background:#f8fbfa;border:1px solid #dce9e6;border-radius:11px;outline:0;margin-top:6px;padding:11px 12px}.source-card textarea{resize:vertical;min-height:96px}.complaint-list h4{font-size:15px}.complaint-list p{line-height:1.75;font-size:var(--office-caption)}.paper-toolbar button,.source-card>span,.source-card b,.source-card em{font-size:var(--office-caption)}.view-toggle{background:#e2eee9;border-radius:11px;gap:3px;padding:3px;display:inline-flex}.view-toggle button{color:#5f7d86;font-size:var(--office-caption);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 14px;font-weight:700}.view-toggle button.active{color:#fff;background:#3e8f7a}.load-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:14px;display:grid}.load-summary div{background:#fff;border-radius:16px;padding:15px 17px;box-shadow:0 8px 25px #497e8e0f}.load-summary span,.load-summary b,.load-summary small{display:block}.load-summary span{color:#8198a1;font-size:var(--office-caption)}.load-summary b{color:#315668;margin:6px 0 3px;font-size:24px}.load-summary b small{font-size:var(--office-caption);color:#9cabad;margin-left:4px;font-weight:400;display:inline}.load-summary small{color:#9cabad;font-size:var(--office-caption)}.load-table td{vertical-align:middle}.load-table tr.idle td{opacity:.55}.load-bars{align-items:flex-end;gap:3px;height:36px;display:flex}.load-bars span{background:#a8d8c9;border-radius:3px 3px 0 0;width:9px;min-height:4px}.load-bars span.peak{background:#3e8f7a}.load-note{color:#8ba0a7;font-size:var(--office-caption);margin:10px 2px 0;line-height:1.7}.complaint-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px;display:grid}.complaint-overview article{background:#fff;border:1px solid #fffffff2;border-radius:18px;padding:17px 18px;position:relative;overflow:hidden;box-shadow:0 8px 26px #497e8e12}.complaint-overview article:after{content:"";background:#e7f6f1;border-radius:50%;width:64px;height:64px;position:absolute;top:-24px;right:-20px}.complaint-overview article.total:after{background:#fff0e9}.complaint-overview span,.complaint-overview b,.complaint-overview small{z-index:1;display:block;position:relative}.complaint-overview span{color:#8198a1;font-size:var(--office-caption)}.complaint-overview b{color:#315668;margin:6px 0 3px;font-size:28px}.complaint-overview .total b{color:#e67962}.complaint-overview small{color:#9babad;font-size:var(--office-caption)}.complaint-layout{grid-template-columns:minmax(430px,540px) minmax(0,1fr);align-items:start}.complaint-form{padding:26px}.complaint-form-head{border-bottom:1px dashed #dce9e6;align-items:center;gap:12px;padding-bottom:16px;display:flex}.complaint-form-head>span{color:#fff;background:linear-gradient(135deg,#ff927a,#ffbd75);border-radius:15px;place-items:center;width:44px;height:44px;font-size:16px;font-weight:900;display:grid;transform:rotate(-4deg)}.complaint-form-head span,.complaint-form-head h4{display:block}.complaint-form-head>div>span{color:#d97a65;font-size:var(--office-caption);font-weight:800}.complaint-form-head h4{margin:3px 0 0;font-size:17px}.complaint-form textarea{min-height:76px}.complaint-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:13px;display:grid}.complaint-list article{border-radius:18px;padding:19px}.complaint-list.empty{display:block}.complaint-empty{box-sizing:border-box;text-align:center;background:linear-gradient(145deg,#ffffffe6,#f1faf7d1);border:1px dashed #cfe2de;border-radius:23px;justify-items:center;min-height:360px;padding:54px 60px;display:grid}.complaint-empty>span{color:#fff;background:linear-gradient(135deg,#62c5a7,#93ddc6);border-radius:21px;place-items:center;width:62px;height:62px;font-size:25px;display:grid;box-shadow:0 13px 25px #4ab59438}.complaint-empty h4{color:#355b6b;margin:18px 0 7px;font-size:19px}.complaint-empty p{color:#80979f;max-width:560px;font-size:var(--office-caption);margin:0;line-height:1.8}.complaint-empty>div{grid-template-columns:auto auto auto auto auto auto auto auto;align-items:center;gap:8px;margin-top:30px;display:grid}.complaint-empty i{color:#4da88c;width:28px;height:28px;font-size:var(--office-caption);background:#e3f5ef;border-radius:9px;place-items:center;font-style:normal;display:grid}.complaint-empty b{color:#66828d;font-size:var(--office-caption)}.complaint-empty i:not(:first-child){margin-left:12px}.writing-layout{grid-template-columns:minmax(340px,380px) minmax(0,1fr);align-items:start}.report-settings{flex-direction:column;gap:12px;display:flex}.report-config-card{padding:22px}.report-config-card>header{border-bottom:1px dashed #dce9e6;align-items:center;gap:12px;padding-bottom:16px;display:flex}.report-config-icon{color:#fff;background:linear-gradient(135deg,#7ebee7,#aa9ce2);border-radius:15px;place-items:center;width:46px;height:46px;font-size:15px;font-weight:900;display:grid;transform:rotate(-3deg)}.report-config-card header small,.report-config-card header h4{display:block}.report-config-card header small{color:#91a4ac;font-size:var(--office-caption);letter-spacing:.11em;font-weight:800}.report-config-card header h4{color:#34586a;margin:3px 0 0;font-size:18px}.report-type-switch{grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;display:grid}.report-type-switch button{color:#68838d;text-align:left;cursor:pointer;background:#f8fbfa;border:1px solid #e2ece9;border-radius:15px;grid-template-columns:36px 1fr;align-items:center;gap:0 9px;padding:12px;transition:all .2s;display:grid}.report-type-switch button>span{color:#718b96;width:36px;height:36px;font-size:var(--office-caption);background:#eaf2f1;border-radius:12px;grid-row:1/3;place-items:center;font-weight:900;display:grid}.report-type-switch b,.report-type-switch small{display:block}.report-type-switch b{font-size:var(--office-caption)}.report-type-switch small{color:#99a9ad;font-size:var(--office-caption);white-space:nowrap;margin-top:3px}.report-type-switch button.active{background:#edfaf5;border-color:#91d4c0;box-shadow:0 7px 18px #4fae911a}.report-type-switch button.active>span{color:#fff;background:#59bea0}.report-source-note{background:#fff6df;border-radius:13px;margin-top:15px;padding:12px 13px}.report-source-note b,.report-source-note span{display:block}.report-source-note b{color:#bd841e;font-size:var(--office-caption)}.report-source-note span{color:#8c7f62;font-size:var(--office-caption);margin-top:4px;line-height:1.55}.report-material{padding:13px;margin-top:0!important}.paper-editor textarea{height:clamp(430px,55vh,680px);font-size:14px}.paper-toolbar{padding:14px 18px}.ai-workspace-button{color:#397a68!important;background:#e2f6ef!important}.export-workspace-button{color:#356c82!important;background:#e2f1f7!important}.month-picker{color:#567484;font-size:var(--office-caption);white-space:nowrap;background:#eaf4f2;border-radius:12px;align-items:center;gap:6px;padding:5px 10px;font-weight:700;display:inline-flex}.month-picker select{color:#3d6273;font-size:var(--office-caption);cursor:pointer;background:#fff;border:1px solid #d5e6e2;border-radius:9px;outline:0;padding:7px 9px;font-weight:600}.danger-button{color:#c05b45;font-size:var(--office-caption);cursor:pointer;background:#fdeeea;border:0;border-radius:10px;flex:none;align-self:flex-start;padding:8px 13px;font-weight:700;transition:all .2s}.danger-button:hover{background:#f9ddd6}.profile-head-actions{gap:8px;display:flex}.profile-edit{grid-template-columns:repeat(3,1fr);gap:11px;margin-top:20px;display:grid}.profile-edit label{color:#718b94;font-size:var(--office-caption);gap:5px;font-weight:700;display:grid}.profile-edit input{color:#456575;font:inherit;font-size:var(--office-caption);background:#f9fcfb;border:1px solid #dce9e6;border-radius:10px;outline:0;padding:10px 11px}.profile-edit-actions{grid-column:1/-1;justify-content:flex-end;gap:9px;margin-top:4px;display:flex}@media (width<=900px){.profile-edit{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.workspace{display:block;overflow:hidden}.workspace-main{box-sizing:border-box;height:100svh;padding-bottom:72px}.workspace-sidebar{z-index:35;box-sizing:border-box;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#173f55f7;height:72px;padding:7px 9px;display:block;position:fixed;bottom:0;left:0;right:0;overflow:auto hidden}.workspace-brand,.sidebar-foot{display:none}.workspace-sidebar nav{flex-direction:row;gap:6px;width:max-content;padding:0;display:flex}.workspace-sidebar nav button{border-radius:16px;flex:0 0 52px;justify-content:center;width:52px;height:56px;padding:6px;display:flex}.workspace-sidebar nav i{width:40px;height:40px;font-size:var(--office-caption);border-radius:13px}.workspace-sidebar nav button.active{transform:translateY(-3px);box-shadow:0 8px 19px #0003}.workspace-header{height:70px;padding:0 14px}.workspace-header p{font-size:var(--office-caption)}.workspace-header h2{font-size:20px}.workspace-actions{gap:6px}.workspace-actions .soft-button{width:40px;height:40px;padding:0;font-size:0}.workspace-actions .soft-button:before{content:"⌕";font-size:17px}.close-button{gap:0!important;padding:8px!important;font-size:0!important}.close-button span{width:24px;height:24px;font-size:17px}.workspace-content{padding:18px 14px 105px}.section-lead{flex-direction:column;align-items:stretch;gap:13px;margin-bottom:16px}.section-lead h3{font-size:21px;line-height:1.25}.section-lead p{max-width:none;font-size:var(--office-caption);margin-top:6px}.section-lead>.upload-button,.section-lead>.accent-button{align-self:stretch}.section-lead .action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.section-lead .action-row>*{white-space:normal;min-width:0}.section-lead .action-row .accent-button:last-child:nth-child(3){grid-column:1/-1}.rule-strip{font-size:var(--office-caption);grid-template-columns:1fr 1fr;gap:10px 12px;padding:13px;display:grid}.rule-strip span{border-left:0;padding-left:0}.score-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.score-summary div{padding:15px}.score-summary b{font-size:21px}.table-card{overflow:auto}.data-table{min-width:580px}.audit-tip{flex-wrap:wrap;align-items:flex-start;line-height:1.55}.audit-tip span{flex-basis:70%}.section-lead .action-row{flex-wrap:wrap}.month-picker{flex-basis:100%;justify-content:space-between}.month-picker select{flex:1;min-width:0}.complaint-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.complaint-overview article{padding:14px}.complaint-overview b{font-size:22px}.complaint-layout{grid-template-columns:1fr}.complaint-form{padding:18px}.complaint-list{grid-template-columns:1fr}.complaint-empty{min-height:300px;padding:38px 22px}.complaint-empty>div{grid-template-columns:auto 1fr;justify-items:start}.complaint-empty i:not(:first-child){margin-left:0}.writing-layout{grid-template-columns:1fr}.report-type-switch{grid-template-columns:1fr 1fr}.paper-editor textarea{height:420px;font-size:var(--office-caption);padding:22px 20px}.paper-editor footer{flex-direction:column;align-items:flex-start;gap:10px}.paper-editor footer>div{gap:7px;width:100%;display:flex}.paper-editor footer button{flex:1;margin-left:0}.paper-toolbar div{display:none}.duty-settings{grid-template-columns:1fr}.duty-calendar article{grid-template-columns:68px 1fr 52px;padding:11px}.duty-calendar article>button{padding:8px 4px}.duty-scene span,.duty-scene b,.duty-scene small{margin:2px 0;display:block}.duty-calendar time b{font-size:var(--office-caption)}.two-cols{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap;align-items:stretch}.filter-bar input{flex-basis:100%}.teacher-layout,.schedule-layout,.schedule-context,.plan-layout,.leave-layout{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr 1fr}.document-grid{grid-template-columns:1fr}}:root{color:#25405a;font-synthesis:none;text-rendering:optimizelegibility;--navy:#23415a;--muted:#6f8b9c;--mint:#71cdb0;--mint-dark:#35a786;--sun:#ffcd67;--coral:#ff8e7b;--sky:#8bcff0;--lilac:#b7a6e7;--white:#fffefa;--line:#4a7e9624;background:#dff5ff;font-family:Microsoft YaHei UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:4px}body{min-height:100vh;overflow:hidden}.workbench-shell{isolation:isolate;background:radial-gradient(circle at 15% 18%,#fffffff2 0 5%,#0000 16%),radial-gradient(circle at 88% 24%,#ffffffb3 0 4%,#0000 14%),linear-gradient(#dff6ff 0%,#edfaff 52%,#fdfbf0 100%);min-height:100svh;position:relative;overflow:hidden}.workbench-shell:before,.workbench-shell:after{content:"";z-index:-1;filter:blur(2px);pointer-events:none;border-radius:50%;position:absolute}.workbench-shell:before{background:#ffffff8c;width:340px;height:110px;top:11%;left:38%;box-shadow:90px 22px #ffffff59,-110px 25px #ffffff59}.workbench-shell:after{background:#ffedbe5c;width:470px;height:170px;bottom:17%;right:-150px}.grain{z-index:3;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:absolute;inset:0}.campus-canvas{z-index:0;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.topbar{z-index:5;border-bottom:1px solid #35708921;grid-template-columns:1fr auto 1fr;align-items:center;height:clamp(88px,6.8vh,108px);margin:0 3.2vw;padding:0 clamp(22px,1.35vw,34px);display:grid;position:relative}.brand{color:inherit;justify-self:start;align-items:center;gap:clamp(13px,.72vw,18px);text-decoration:none;display:inline-flex}.brand-mark{background:#fff;border-radius:clamp(15px,.82vw,20px);place-items:center;width:clamp(44px,2.35vw,58px);height:clamp(44px,2.35vw,58px);display:grid;position:relative;transform:rotate(-5deg);box-shadow:0 9px 22px #4a829724}.brand-mark i{background:var(--mint);border-radius:9px;width:5px;position:absolute}.brand-mark i:first-child{background:var(--coral);height:18px;margin-left:-11px}.brand-mark i:nth-child(2){background:var(--sun);height:27px}.brand-mark i:nth-child(3){background:var(--sky);height:14px;margin-left:11px}.brand b{color:var(--navy);letter-spacing:.12em;font-size:clamp(18px,.9vw,23px);font-weight:800;display:block}.brand small{color:#6f8997;letter-spacing:.1em;margin-top:3px;font-size:clamp(12px,.54vw,14px);font-weight:500;display:block}.semester-switch{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb8;border-radius:99px;justify-self:center;align-items:center;gap:clamp(10px,.55vw,14px);padding:clamp(8px,.45vw,11px) clamp(10px,.5vw,13px) clamp(8px,.45vw,11px) clamp(16px,.85vw,22px);display:flex;box-shadow:0 8px 25px #598b9c17}.semester-switch>span{color:#78939f;font-size:clamp(12px,.53vw,14px);font-weight:600}.semester-switch button,.quiet-button,.ai-quick-button,.avatar-button{cursor:pointer;background:0 0;border:0}.semester-switch button{color:var(--navy);background:#fff;border-radius:99px;padding:clamp(8px,.42vw,11px) clamp(14px,.75vw,19px);font-size:clamp(13px,.6vw,15px);font-weight:700}.semester-switch button b{color:var(--coral);margin-left:7px}.semester-switch select{color:var(--navy);cursor:pointer;appearance:none;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,#e07c65 50%),linear-gradient(135deg,#e07c65 50%,#0000 50%);background-position:calc(100% - 17px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border:0;border-radius:99px;outline:0;padding:clamp(8px,.42vw,11px) clamp(28px,1.5vw,36px) clamp(8px,.42vw,11px) clamp(14px,.75vw,19px);font-size:clamp(13px,.6vw,15px);font-weight:700}.semester-switch select option{color:#29485d;font-weight:600}.top-actions{justify-self:end;align-items:center;gap:clamp(14px,.75vw,19px);display:flex}.ai-quick-button{color:#fff;background:linear-gradient(135deg,#55b99a,#7dc8b1);border-radius:99px;padding:clamp(10px,.5vw,13px) clamp(15px,.8vw,21px);font-size:clamp(12px,.6vw,15px);font-weight:800;box-shadow:0 8px 19px #40a58733}.ai-quick-button span{margin-left:4px}.quiet-button{color:#526f80;background:#ffffffa8;border-radius:99px;padding:clamp(10px,.5vw,13px) clamp(15px,.8vw,21px);font-size:clamp(16px,.78vw,20px)}.quiet-button span{margin-left:5px;font-size:clamp(12px,.6vw,15px);font-weight:700}.avatar-button{color:#fff;background:linear-gradient(135deg,var(--coral),#ffaf7c);border-radius:clamp(14px,.72vw,18px);width:clamp(40px,2.05vw,51px);height:clamp(40px,2.05vw,51px);font-size:clamp(14px,.7vw,18px);font-weight:800;transform:rotate(4deg);box-shadow:0 8px 18px #ff8e7b4d}.hero-copy{z-index:4;pointer-events:none;width:min(520px,32vw);position:absolute;top:17.5%;left:5.7vw}.eyebrow{color:#318d74;letter-spacing:.1em;background:#fffc;border-radius:99px;align-items:center;gap:clamp(8px,.45vw,12px);margin:0 0 clamp(20px,1.1vw,28px);padding:clamp(8px,.42vw,11px) clamp(13px,.7vw,18px);font-size:clamp(12px,.56vw,14px);font-weight:800;display:inline-flex;box-shadow:0 7px 20px #4c8b9d14}.eyebrow span{color:var(--sun);font-size:clamp(15px,.72vw,18px)}.hero-copy h1{color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(48px,3.6vw,80px);font-weight:800;line-height:1.16}.hero-copy h1 em{color:var(--coral);font-style:normal;position:relative}.hero-copy h1 em:after{content:"";z-index:-1;background:#ffcd6794;border-radius:50%;height:8px;position:absolute;bottom:-5px;left:2px;right:0;transform:rotate(-1deg)}.intro{color:#587788;letter-spacing:.025em;max-width:clamp(370px,20vw,500px);margin:clamp(23px,1.25vw,32px) 0 clamp(28px,1.45vw,37px);font-size:clamp(15px,.72vw,18px);font-weight:500;line-height:1.85}.primary-action{pointer-events:auto;color:#fff;background:linear-gradient(135deg,#4dbb99,var(--mint));cursor:pointer;border:0;border-radius:clamp(16px,.85vw,21px);align-items:center;gap:clamp(23px,1.2vw,31px);padding:clamp(11px,.58vw,15px) clamp(12px,.62vw,16px) clamp(11px,.58vw,15px) clamp(21px,1.1vw,28px);font-size:clamp(14px,.66vw,17px);font-weight:800;transition:transform .25s,box-shadow .25s;display:inline-flex;box-shadow:0 13px 27px #38a88940}.primary-action:hover{transform:translateY(-4px)rotate(-1deg);box-shadow:0 18px 32px #38a88952}.primary-action span{color:#32977b;background:#fff;border-radius:clamp(11px,.58vw,15px);place-items:center;width:clamp(34px,1.75vw,44px);height:clamp(34px,1.75vw,44px);font-size:clamp(14px,.7vw,18px);display:grid}.today-panel{z-index:4;width:clamp(285px,14.5vw,365px);color:var(--navy);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefadb;border:1px solid #ffffffe6;border-radius:clamp(28px,1.5vw,38px);padding:clamp(23px,1.18vw,30px);position:absolute;top:17.5%;right:4vw;transform:rotate(1deg);box-shadow:0 24px 60px #44829729}.today-panel:before{content:"";background:var(--sun);border-radius:10px;width:54px;height:8px;position:absolute;top:-4px;left:50%;transform:translate(-50%)rotate(-2deg)}.panel-heading{color:#587785;justify-content:space-between;align-items:center;font-size:clamp(13px,.62vw,16px);font-weight:800;display:flex}.panel-heading time{color:var(--coral);font-size:clamp(19px,.95vw,24px);font-weight:800}.next-class{border-bottom:1px dashed #40768b33;padding:clamp(23px,1.2vw,30px) 0 clamp(20px,1vw,26px)}.next-class small{color:#678d92;font-size:clamp(12px,.56vw,14px);font-weight:600}.next-class strong{color:var(--navy);margin-top:7px;font-size:clamp(26px,1.3vw,33px);font-weight:800;display:block}.next-class p{color:#607d8b;margin:7px 0 0;font-size:clamp(13px,.61vw,15px)}.metric-row{grid-template-columns:repeat(3,1fr);gap:10px;padding:clamp(19px,1vw,25px) 0;display:grid}.metric-row div{flex-direction:column;gap:2px;display:flex}.metric-row b{color:var(--navy);font-size:clamp(22px,1.1vw,28px)}.metric-row div:first-child b{color:var(--mint-dark)}.metric-row div:nth-child(2) b{color:#e3a62f}.metric-row div:nth-child(3) b{color:var(--coral)}.metric-row span{color:#748f9a;white-space:nowrap;font-size:clamp(11px,.5vw,13px);font-weight:600}.week-button{color:#456b7c;cursor:pointer;background:#edf8f5;border:0;border-radius:clamp(13px,.7vw,18px);justify-content:space-between;width:100%;padding:clamp(12px,.65vw,17px) clamp(15px,.78vw,20px);font-size:clamp(12px,.56vw,14px);font-weight:800;display:flex}.week-button span{color:var(--mint-dark)}.module-dock{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc7;border:1px solid #ffffffeb;border-radius:clamp(26px,1.4vw,35px);grid-template-columns:repeat(5,1fr);gap:clamp(8px,.45vw,12px);padding:clamp(10px,.55vw,14px);display:grid;position:absolute;bottom:5.3vh;left:4.8vw;right:4.8vw;box-shadow:0 20px 50px #457f9429}.module-dock button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:clamp(18px,.95vw,24px);grid-template-columns:clamp(42px,2.15vw,54px) 1fr;align-items:center;gap:clamp(11px,.58vw,15px);padding:clamp(13px,.72vw,18px) clamp(14px,.76vw,19px);transition:background .25s,transform .25s,box-shadow .25s;display:grid;position:relative}.module-dock button:hover{background:#fff;transform:translateY(-4px);box-shadow:0 10px 24px #457f941a}.module-dock button.active{background:#fff8e7;transform:translateY(-5px)rotate(-.5deg);box-shadow:0 11px 24px #dbad4a29}.module-code{color:#3c9e82;background:#e2f7ef;border-radius:clamp(14px,.72vw,18px);place-items:center;width:clamp(40px,2vw,51px);height:clamp(40px,2vw,51px);font-size:clamp(15px,.75vw,19px);font-weight:900;display:grid}.module-dock button:nth-child(2) .module-code{color:#d47a64;background:#fff0e8}.module-dock button:nth-child(3) .module-code{color:#4b90ba;background:#e7f5ff}.module-dock button:nth-child(4) .module-code{color:#8a6cbe;background:#f0ebff}.module-dock button:nth-child(5) .module-code{color:#c48725;background:#fff3ce}.active .module-code{box-shadow:0 2px 8px #31574212}.module-name{min-width:0}.module-name b,.module-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.module-name b{color:#2f5065;font-size:clamp(14px,.63vw,16px);font-weight:800}.module-name small{color:#748e9a;margin-top:4px;font-size:clamp(11px,.5vw,13px);font-weight:500}.module-count{color:#5f8e7d;grid-column:2;font-size:clamp(11px,.48vw,12px);font-weight:700}.scene-legend{z-index:4;color:#668793;letter-spacing:.05em;justify-content:space-between;font-size:clamp(11px,.52vw,13px);font-weight:600;display:flex;position:absolute;bottom:1.6vh;left:5.3vw;right:5.3vw}.pulse-dot{background:#53c99b;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 5px #53c99b24}@media (width<=1450px){.module-count{display:none}.module-dock button{grid-template-columns:40px 1fr;padding:12px}.module-name small{font-size:var(--office-caption)}}@media (width<=1050px){.topbar{grid-template-columns:1fr auto}.semester-switch{display:none}.hero-copy{width:40vw;top:16%}.today-panel{width:250px;top:16%}.module-count{display:none}}@media (width<=760px){body{overflow:auto}.workbench-shell{min-height:1020px}.topbar{height:76px;margin:0;padding:0 15px}.brand small,.quiet-button span,.ai-quick-button span{display:none}.top-actions{gap:6px}.ai-quick-button,.quiet-button{width:38px;height:38px;padding:0}.campus-canvas{height:52%;top:95px}.hero-copy{width:calc(100% - 44px);top:105px;left:22px}.hero-copy h1{font-size:38px}.intro{max-width:285px}.today-panel{width:auto;top:500px;left:22px;right:22px}.module-dock{grid-template-columns:repeat(5,1fr);gap:3px;bottom:42px;left:20px;right:20px}.module-dock button{justify-content:center;padding:9px 4px;display:flex}.module-name,.module-count{display:none}.scene-legend{bottom:16px;left:24px;right:24px}.scene-legend span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.auth-loading{color:#5f7d8c;min-height:100vh;font-size:var(--office-caption);letter-spacing:.08em;background:#eaf9fb;place-items:center;display:grid}.login-shell{background:linear-gradient(#dff6ff,#f7fced);min-height:100svh;position:relative;overflow:hidden}.login-shell .campus-canvas{filter:saturate(.8)brightness(1.08);opacity:.52}.login-shell:after{content:"";pointer-events:none;background:linear-gradient(90deg,#e7f9fc59,#f4fcf8c2 52%,#fffaebe8);position:absolute;inset:0}.login-cloud{z-index:2;filter:blur(1px);background:#ffffffb3;border-radius:60px;width:180px;height:55px;position:absolute}.login-cloud:before,.login-cloud:after{content:"";background:inherit;border-radius:50%;position:absolute}.login-cloud:before{width:75px;height:75px;bottom:0;left:30px}.login-cloud:after{width:95px;height:95px;bottom:0;right:22px}.cloud-one{top:12%;right:12%;transform:scale(.8)}.cloud-two{bottom:16%;left:8%;transform:scale(.55)}.login-card{z-index:4;box-sizing:border-box;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border:1px solid #fffffff5;border-radius:34px;width:min(390px,100vw - 42px);padding:38px 42px;position:absolute;top:50%;right:9vw;transform:translateY(-50%)rotate(.35deg);box-shadow:0 28px 80px #3d748730}.login-emblem{color:#fff;background:linear-gradient(135deg,var(--coral),#ffbd73);border-radius:19px;place-items:center;width:58px;height:58px;font-size:22px;font-weight:900;display:grid;position:absolute;top:-24px;right:34px;transform:rotate(7deg);box-shadow:0 12px 24px #ff8e7b47}.login-card h1,.account-modal h2{color:var(--navy);margin:10px 0 5px;font-size:30px}.login-card>p:not(.eyebrow):not(.auth-error),.account-modal>p{color:#7c98a4;font-size:var(--office-caption);margin:0 0 26px}.login-card label,.account-modal label{color:#587486;font-size:var(--office-caption);gap:7px;margin-top:16px;font-weight:700;display:grid}.login-card input,.account-modal input,.account-modal select{box-sizing:border-box;color:#284e62;background:#f8fcfb;border:1px solid #dcebed;border-radius:13px;outline:none;width:100%;padding:13px 14px;transition:all .2s}.login-card input:focus,.account-modal input:focus,.account-modal select:focus{border-color:var(--mint);background:#fff;box-shadow:0 0 0 4px #53c99b1f}.login-button{color:#fff;background:linear-gradient(135deg,#49b895,var(--mint));cursor:pointer;border:0;border-radius:15px;justify-content:center;align-items:center;gap:22px;width:100%;margin-top:23px;padding:14px;font-weight:800;display:flex;box-shadow:0 11px 22px #38a88938}.login-card>small{color:#9aadb5;text-align:center;font-size:var(--office-caption);margin-top:16px;display:block}.auth-error{color:#dd6f60!important;font-size:var(--office-caption)!important;margin:12px 0 0!important}.profile-popover{z-index:20;background:#fff;border:1px solid #eef4f2;border-radius:18px;width:190px;padding:16px;position:absolute;top:58px;right:0;box-shadow:0 18px 45px #2553662b}.profile-popover b,.profile-popover small{display:block}.profile-popover b{color:var(--navy);font-size:var(--office-caption)}.profile-popover small{color:#8ba0a9;font-size:var(--office-caption);margin:3px 0 12px}.profile-popover button{color:#557585;cursor:pointer;width:100%;font-size:var(--office-caption);background:#f2f9f7;border:0;border-radius:10px;margin-top:5px;padding:9px}.modal-mask{z-index:120;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18435452;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.account-modal{box-sizing:border-box;background:#fff;border:1px solid #fff;border-radius:28px;width:min(820px,100vw - 40px);max-height:85vh;padding:28px;overflow:auto;box-shadow:0 30px 90px #1f4b5c3d}.password-modal{width:min(430px,100vw - 40px)}.password-modal h2{font-size:24px}.tag{color:#3e9e83;font-size:var(--office-caption);background:#e8f8f2;border-radius:99px;padding:5px 9px;font-weight:800;display:inline-block}.users-modal>header{justify-content:space-between;align-items:flex-start;display:flex}.users-modal>header h2{margin:7px 0 18px}.users-modal>header>button{color:#76909d;cursor:pointer;background:#edf6f4;border:0;border-radius:12px;width:34px;height:34px;font-size:20px}.account-create{background:#f2faf8;border-radius:18px;grid-template-columns:1fr 1fr 1.3fr 130px 120px;gap:8px;padding:12px;display:grid}.account-create .login-button{margin:0;padding:11px}.account-list{gap:8px;margin-top:18px;display:grid}.account-list article{border:1px solid #eaf1ef;border-radius:15px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:13px 15px;display:grid}.account-list b,.account-list small{display:block}.account-list b{color:#315568;font-size:var(--office-caption)}.account-list small{color:#93a4ac;font-size:var(--office-caption);margin-top:2px}.account-list span{color:#369277;font-size:var(--office-caption);background:#e5f8f0;border-radius:99px;padding:5px 8px}.account-list span.off{color:#a8796f;background:#f8edeb}.account-list button{color:#617d89;cursor:pointer;font-size:var(--office-caption);background:#edf5f4;border:0;border-radius:9px;padding:7px 10px}.account-list button:disabled{opacity:.35;cursor:default}.search-mask{z-index:135;-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);background:#1f4b5c40}.global-search{box-sizing:border-box;background:#fffffff5;border:1px solid #fffffff2;border-radius:30px;flex-direction:column;width:min(820px,100vw - 40px);max-height:86vh;padding:25px 25px 16px;display:flex;overflow:hidden;box-shadow:0 32px 90px #2453653d}.global-search-head{justify-content:space-between;align-items:flex-start;padding:1px 3px 16px;display:flex}.global-search-head span{color:#47a98c;font-size:var(--office-caption);letter-spacing:.16em;font-weight:900}.global-search-head h2{color:var(--navy);letter-spacing:-.04em;margin:5px 0 0;font-size:25px}.global-search-head>button{color:#76909d;cursor:pointer;background:#edf6f4;border:0;border-radius:13px;width:36px;height:36px;font-size:21px;transition:all .2s}.global-search-head>button:hover{color:#fff;background:var(--coral);transform:rotate(5deg)}.global-search-input{background:#f7fbfa;border:1px solid #dceceb;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:6px 8px 6px 16px;transition:all .2s;display:grid;box-shadow:inset 0 1px #fff}.global-search-input:focus-within{background:#fff;border-color:#65c6a7;box-shadow:0 0 0 5px #53c99b1f,0 12px 28px #39788814}.global-search-input>span{color:#4cae91;font-size:23px}.global-search-input input{color:#284e62;min-width:0;font-size:var(--office-caption);background:0 0;border:0;outline:0;padding:10px 0}.global-search-input input::placeholder{color:#9cafb7}.global-search-input em,.global-search-input kbd{color:#8aa0a9;font-family:inherit;font-size:var(--office-caption);background:#eaf3f1;border:0;border-radius:9px;margin:0;padding:6px 8px;font-style:normal}.global-search-input em{color:#42997f}.search-error{color:#d96f62;font-size:var(--office-caption);margin:10px 3px 0}.search-result-area{gap:17px;margin-top:16px;padding:0 5px 8px 1px;display:grid;overflow:auto}.search-result-area section>h3{color:#607e8d;font-size:var(--office-caption);letter-spacing:.08em;align-items:center;gap:7px;margin:0 0 8px;display:flex}.search-result-area section>h3 small{color:#79939e;min-width:17px;height:17px;font-size:var(--office-caption);background:#edf5f3;border-radius:7px;place-items:center;display:grid}.search-result-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.search-result-list button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e9f0ee;border-radius:15px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:10px;transition:all .2s;display:grid}.search-result-list button:hover,.search-result-list button:focus-visible{background:#f4fbf8;border-color:#bfe6d9;outline:0;transform:translateY(-2px);box-shadow:0 10px 24px #3375841a}.search-kind{color:#fff;width:38px;height:38px;font-size:var(--office-caption);background:linear-gradient(135deg,#6bc6aa,#94dec4);border-radius:13px;place-items:center;font-weight:900;display:grid}.search-kind.teacher{color:#ba735f;background:#ffebe5}.search-kind.document{color:#7271b8;background:#eeebff}.search-result-list button>span:nth-child(2){min-width:0}.search-result-list b,.search-result-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-result-list b{color:#315568;font-size:var(--office-caption)}.search-result-list small{color:#91a4ac;font-size:var(--office-caption);margin-top:3px}.search-result-list i{color:#68b89f;font-size:14px;font-style:normal}.search-empty{color:#8aa0aa;text-align:center;justify-items:center;padding:48px 20px;display:grid}.search-empty>span{color:#55b599;background:#eaf8f3;border-radius:20px;place-items:center;width:54px;height:54px;font-size:27px;display:grid}.search-empty b{color:#4c6d7c;font-size:var(--office-caption);margin-top:13px}.search-empty p{font-size:var(--office-caption);margin:6px 0 0}.global-search>footer{color:#94a7ae;font-size:var(--office-caption);border-top:1px solid #edf2f1;justify-content:space-between;margin-top:9px;padding:11px 4px 0;display:flex}.global-search>footer i{background:#62c4a5;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block;box-shadow:0 0 0 4px #62c4a51f}.search-pop-enter-active,.search-pop-leave-active{transition:opacity .2s}.search-pop-enter-active .global-search,.search-pop-leave-active .global-search{transition:transform .26s cubic-bezier(.2,.85,.25,1),opacity .2s}.search-pop-enter-from,.search-pop-leave-to{opacity:0}.search-pop-enter-from .global-search,.search-pop-leave-to .global-search{opacity:0;transform:translateY(-14px)scale(.97)}@media (width<=760px){.login-card{padding:34px 27px;right:21px}.login-shell .campus-canvas{height:100%;top:0}.account-create{grid-template-columns:1fr}.users-modal{padding:20px}.global-search{border-radius:24px;padding:20px 16px 13px}.global-search-head h2{font-size:21px}.global-search-input{gap:8px;padding-left:12px}.global-search-input input{font-size:var(--office-caption)}.search-result-list{grid-template-columns:1fr}.global-search>footer span:last-child{display:none}}.workspace .teacher-list button{flex-shrink:0;height:auto;min-height:76px}.workspace .teacher-list b{font-size:var(--office-body)}.workspace .teacher-list small,.workspace .teacher-list em{font-size:var(--office-caption)}@media (width<=600px){.workspace .workspace-header{flex-wrap:wrap;gap:10px;height:auto;min-height:104px;padding:12px 14px}.workspace .workspace-header>div:first-child{width:100%}.workspace .workspace-header p{display:none}.workspace .workspace-actions{flex-wrap:wrap;gap:6px;width:100%}.workspace .workspace-actions .soft-button{width:auto;height:auto;padding:8px 10px;font-size:var(--office-caption)!important}.workspace .workspace-actions .soft-button:before{content:none}.workspace .workspace-actions .close-button{margin-left:auto}}.directory-switch{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.directory-switch button{font:inherit;color:#34596b;cursor:pointer;background:#fff;border:1px solid #cfdfda;border-radius:12px;padding:12px 18px}.directory-switch button.selected{background:#e1f2e8;border-color:#75b99e;font-weight:650}@media (width<=600px){.directory-switch button{flex:1;min-height:44px}}:root{--office-body:16px;--office-caption:14px;--office-title:26px;--office-sidebar:240px;--office-ink:#25465e;--office-muted:#66869a;--office-primary:#278b78;--office-bg:#f2faff;--office-paper:#fff;--office-border:#d8e9ef;--office-radius:18px;--office-control:44px;--office-space:28px;--office-shadow:0 8px 28px #264d3c0b;--navy:var(--office-ink);--muted:var(--office-muted);--mint-dark:var(--office-primary);font-family:Microsoft YaHei UI,PingFang SC,Microsoft YaHei,sans-serif}:root[data-office-font=large]{--office-body:18px;--office-caption:16px;--office-title:28px;--office-control:48px}button,input,select,textarea{font-family:inherit}.ui-icon{vertical-align:middle;flex:none;width:21px;height:21px}button{touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none}:is(button,a,input,select,textarea,summary):focus-visible{outline-offset:3px;outline:3px solid #278b78}input,select,textarea{accent-color:var(--office-primary)}body .office-shell.workspace,body .office-shell.admin-shell{grid-template-columns:var(--office-sidebar) minmax(0,1fr);color:var(--office-ink);background:var(--office-bg);font-size:var(--office-body)}.office-shell :is(.workspace-main,.admin-main){flex-direction:column;min-width:0;height:100dvh;min-height:0;display:flex;overflow:hidden}.office-shell :is(.workspace-content,.admin-content){height:auto;min-height:0;padding:var(--office-space);background:var(--office-bg);scrollbar-gutter:stable;flex:1;overflow:auto}.office-shell :is(.workspace-content,.admin-content)>*{max-width:1680px;margin-left:auto;margin-right:auto}.office-shell .workspace-content :is(input,select,textarea),.office-shell .admin-content :is(input,select,textarea){font-size:var(--office-body);min-width:0;max-width:100%;color:var(--office-ink);font-weight:400}.office-shell :is(input,select):not([type=checkbox]):not([type=file]){min-height:var(--office-control);background:#fff;border:1px solid #ceddd4;border-radius:10px}.office-shell textarea{border:1px solid #ceddd4;border-radius:10px;padding:12px;line-height:1.7}.office-shell label{font-size:var(--office-caption);color:#425d64;font-weight:500}.office-shell :is(p,small){line-height:1.65}.office-shell :is(.soft-button,.accent-button,.upload-button,.danger-button){min-height:var(--office-control);font-size:var(--office-caption);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;display:inline-flex}.office-shell .soft-button{color:#345b4d;background:#edf4f0}.office-shell .accent-button{color:#fff;background:var(--office-primary);box-shadow:none}.office-shell .danger-button{color:#a44435;background:#fff0eb}.office-shell .upload-button{color:#345b4d;background:#fff;border:1px solid #d5e2da}.office-shell .section-lead{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:24px}.office-shell .section-lead h3{font-size:22px;font-weight:650;line-height:1.4}.office-shell .section-lead p{font-size:var(--office-caption);color:var(--office-muted);margin-top:8px}.office-shell .action-row{flex-wrap:wrap;gap:8px}.office-shell :is(.table-card,.form-card,.source-card,.editor-card){border:1px solid var(--office-border);border-radius:var(--office-radius);box-shadow:var(--office-shadow)}.office-shell :is(.data-table,.schedule-table){font-variant-numeric:tabular-nums}.office-shell .data-table :is(th,td){font-size:var(--office-caption);color:var(--office-ink);padding:14px 12px}.office-shell .data-table th{color:#536e66;background:#f0f6f2;font-weight:600}.office-shell .table-card{overflow:auto}.office-shell .rule-strip{font-size:var(--office-caption);color:#345f4e;flex-wrap:wrap;line-height:1.6}.office-shell .rule-strip.is-pending{color:#775c2b;background:#faf3e4}.office-shell .view-toggle{background:#edf3ef;border-radius:10px;gap:3px;padding:4px;display:inline-flex}.office-shell .view-toggle button{min-height:36px;font-size:var(--office-caption);padding:8px 12px;font-weight:500}.office-shell .view-toggle button.active{color:var(--office-primary);background:#fff;box-shadow:0 1px 4px #25465e10}.office-shell .office-empty{color:var(--office-muted);font-size:var(--office-body);text-align:center;padding:28px 18px;line-height:1.8}.office-nav{border-right:1px solid var(--office-border);min-height:0;color:var(--office-ink);background:#eaf6fc;flex-direction:column;padding:28px 16px 18px;display:flex}.office-nav-brand{align-items:center;gap:12px;padding:0 10px 26px;display:flex}.office-school-mark{color:#fff;background:#278b78;border-radius:14px 14px 18px 6px;flex:0 0 42px;place-items:center;width:42px;height:46px;font-size:23px;font-weight:650;display:grid}.office-nav-brand strong{font-size:17px;font-weight:650;display:block}.office-nav-brand small{font-size:var(--office-caption);color:#5d7569;margin-top:5px;line-height:1.5;display:block}.office-nav-desktop{scrollbar-width:thin;flex-direction:column;gap:5px;padding:0 2px 20px;display:flex;overflow:auto}.office-nav-desktop button{color:#466458;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:14px;min-height:60px;padding:11px 14px;display:flex}.office-nav-desktop b{font-size:var(--office-body);font-weight:550;display:block}.office-nav-desktop small{font-size:var(--office-caption);color:#667f72;margin-top:3px;display:block}.office-nav-desktop button:hover{background:#ffffff9e}.office-nav-desktop button.active b{font-weight:700}.office-nav-desktop button.active .ui-icon{color:#278b78}.office-nav-footer{color:#526f60;font-size:var(--office-caption);border-top:1px solid #d1dfd6;align-items:center;gap:10px;margin-top:auto;padding:16px 10px 0;display:flex}.office-nav-footer small{color:#62796d;font-size:var(--office-caption);margin-top:3px;display:block}.office-nav-mobile{display:none}.office-header{min-height:92px;padding:18px var(--office-space);border-bottom:1px solid var(--office-border);background:#ffffffde;flex:none;justify-content:space-between;align-items:center;gap:20px;display:flex}.office-header h2{font-size:var(--office-title);letter-spacing:-.02em;margin:0;font-weight:650;line-height:1.3}.office-header p{font-size:var(--office-caption);color:var(--office-muted);margin:5px 0 0}.office-header-actions{flex:none;align-items:center;gap:8px;display:flex}.icon-button{width:var(--office-control);height:var(--office-control);border:1px solid var(--office-border);color:#426255;cursor:pointer;background:#fff;border-radius:10px;place-items:center;display:grid}.office-module-dialog{width:min(520px,100vw - 32px);max-height:85dvh;color:var(--office-ink);border:1px solid #dae5de;border-radius:22px;padding:24px;box-shadow:0 24px 80px #193a3630}.office-module-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#18352d50}.office-module-dialog header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.office-module-dialog h2{margin:0;font-size:22px}.office-module-dialog header button{color:#355a49;background:#edf4ef;border:0;border-radius:12px;width:44px;height:44px}.office-module-dialog nav{grid-template-columns:1fr 1fr;gap:8px;display:grid}.office-module-dialog nav button{color:#294f40;text-align:left;background:#fff;border:1px solid #dce7df;border-radius:12px;align-items:center;gap:12px;min-width:0;padding:14px 10px;display:flex}.office-module-dialog nav b,.office-module-dialog nav small{display:block}.office-module-dialog nav small{color:#66869a;margin-top:5px;font-size:13px}.office-module-dialog nav button.active{background:#eaf6ee}.workbench-shell{background:radial-gradient(at 48% 28%,#ffffffb8 0%,#0000 52%),linear-gradient(#dff6ff 0%,#edfaff 58%,#fffbed 100%);flex-direction:column;height:100dvh;min-height:100dvh;max-height:none;display:flex;overflow:auto}.workbench-shell:before,.workbench-shell:after{display:block}.workbench-shell>.grain{display:none}.workbench-shell .topbar{border-color:#cfdfd966;flex-shrink:0;grid-template-columns:1fr auto 1fr;gap:24px;width:calc(100% - 96px);max-width:2240px;height:auto;min-height:94px;margin:0 auto;padding:20px 0}.workbench-shell .brand{gap:12px}.workbench-shell .brand b{letter-spacing:.08em;font-size:23px}.workbench-shell .brand small{color:#617b75;letter-spacing:.04em;font-size:14px}.workbench-shell .brand-mark{width:48px;height:52px;box-shadow:none;border:1px solid #d8e5df;border-radius:16px 16px 19px 7px;transform:none}.workbench-shell .top-actions{gap:8px}.workbench-shell .quiet-button,.workbench-shell .ai-quick-button{min-height:42px;font-size:var(--office-caption);box-shadow:none;background:#ffffffbd;border-radius:12px;justify-content:center;align-items:center;padding:10px 14px;display:inline-flex}.workbench-shell .quiet-button span{font-size:var(--office-caption)}.workbench-shell .ai-quick-button{color:#fff;background:#278b78}.workbench-shell .avatar-button{width:42px;height:42px;box-shadow:none;background:#d98766;border-radius:14px;font-size:17px;transform:none}.workbench-shell .font-preference{color:#426255;background:#ffffffae;border:1px solid #d4e3da;border-radius:10px;max-width:98px;min-height:42px;padding:7px;font-size:14px}.workbench-shell .semester-switch{box-shadow:none;background:#ffffffa8;border:1px solid #dce8e1;border-radius:12px;gap:8px;padding:6px 8px 6px 16px}.workbench-shell .semester-switch>span{color:#66869a;font-size:14px}.workbench-shell .semester-switch select{border-radius:9px;padding:9px 30px 9px 9px;font-size:14px}.campus-stage{flex:1 0 510px;grid-template-columns:minmax(300px,380px) minmax(360px,1fr) 272px;align-items:center;gap:14px;width:calc(100% - 96px);max-width:2240px;min-height:510px;margin:0 auto;padding:28px 0;display:grid}.workbench-shell .hero-copy{z-index:2;pointer-events:auto;width:100%;position:relative;top:auto;left:auto}.workbench-shell .eyebrow{box-shadow:none;letter-spacing:.03em;color:#527d60;background:0 0;margin:0 0 26px;padding:0;font-size:14px;font-weight:500}.workbench-shell .hero-copy h1{letter-spacing:-.045em;font-size:clamp(38px,2.6vw,52px);font-weight:700;line-height:1.32}.hero-copy h1>span,.hero-copy h1>em{white-space:nowrap;display:block}.workbench-shell .hero-copy h1 em{color:#ff8e7b;font-style:normal}.workbench-shell .hero-copy h1 em:after{opacity:.9;background:#ffdb86;height:5px;display:block;bottom:-5px}.workbench-shell .intro{white-space:pre-line;max-width:100%;font-size:var(--office-body);color:#627b72;letter-spacing:0;margin:22px 0 28px;line-height:1.9}.workbench-shell .primary-action{font-size:var(--office-body);background:#278b78;border-radius:12px;gap:16px;padding:12px 14px 12px 20px;font-weight:600;box-shadow:0 8px 16px #278b781a}.workbench-shell .primary-action:hover{transform:translateY(-2px)}.workbench-shell .primary-action span{color:#278b78;border-radius:8px;width:30px;height:30px;font-size:18px}.campus-scene-frame{align-self:stretch;min-width:0;min-height:454px;position:relative}.campus-scene-frame .campus-canvas{width:100%;height:100%;inset:0}.campus-scene-caption{color:#607d6a;pointer-events:none;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex;position:absolute;bottom:12px;left:0;right:0}.campus-scene-caption>span:last-child{color:#7d8f84;margin-left:5px;font-size:13px}.campus-sun{color:#b38934;font-size:20px}.campus-lightweight{color:#527553;text-align:center;background:#e1eee0;border-radius:50% 50% 38% 45%;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:10% 5% 15%}.campus-lightweight>.ui-icon{width:82px;height:82px}.campus-lightweight h2{font-size:24px}.campus-lightweight p{font-size:16px;line-height:1.7}.workbench-shell .today-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffffed;border:1px solid #e2e8dc;border-radius:28px;width:100%;padding:24px;position:relative;top:auto;left:auto;right:auto;transform:none;box-shadow:0 18px 40px #7eafc820}.workbench-shell .today-panel:before{background:#ddbb62;border-radius:0 0 3px 3px;width:38px;height:5px;left:28px;transform:none}.workbench-shell .panel-heading{color:#5e736b;font-size:14px}.workbench-shell .panel-heading time{color:#b6784c;font-size:18px;font-weight:600}.workbench-shell .next-class{border:0;margin:26px 0 10px;padding:0}.workbench-shell .next-class small{color:#6f8375;font-size:13px}.workbench-shell .next-class strong{margin-top:7px;font-size:23px}.workbench-shell .next-class p{color:#748378;margin-top:8px;font-size:13px;line-height:1.6}.workbench-shell .metric-row{border:0;flex-direction:column;gap:3px;margin:0;padding:12px 0;display:flex}.metric-row button{color:#415e50;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;padding:10px 0;display:flex}.metric-row button:hover{background:#edf5ed}.metric-row .metric-symbol{color:#587e68;background:#ecf4ee;border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.workbench-shell .metric-row span{font-size:var(--office-caption)}.workbench-shell .metric-row b{color:#278b78;margin-left:auto;font-size:24px;font-weight:600}.workbench-shell .week-button{color:#34644e;background:#edf5ed;border-radius:9px;margin-top:6px;padding:12px;font-size:14px}.workbench-shell .module-dock{background:#ffffffc9;border:1px solid #dce6da;border-radius:20px;flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;width:calc(100% - 96px);max-width:2240px;margin:0 auto;padding:10px;position:relative;bottom:auto;left:auto;right:auto;box-shadow:0 10px 36px #537b4f08}.workbench-shell .module-dock button{text-align:left;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:12px;grid-template-columns:44px 1fr;gap:5px 12px;padding:17px 14px;display:grid;transform:none}.workbench-shell .module-dock button.active,.workbench-shell .module-dock button:hover{box-shadow:none;background:#edf4e9;transform:none}.workbench-shell .module-code{width:44px;height:46px;box-shadow:none;color:#815f23;background:#f5e2af;border-radius:14px 14px 16px 7px;grid-row:1/3;transform:none}.module-code.teachers{color:#995735;background:#f6ded0}.module-code.plans{color:#2d7758;background:#d8eddf}.module-code.assessment{color:#416e94;background:#dbeaf4}.module-code.reports{color:#775792;background:#e7dff2}.module-code .ui-icon{width:24px;height:24px}.workbench-shell .module-name{min-width:0;display:block}.workbench-shell .module-name b{font-size:var(--office-body);color:#294638;font-weight:650}.workbench-shell .module-name small{color:#6b8073;white-space:normal;margin-top:5px;font-size:13px;line-height:1.5}.workbench-shell .module-count{color:#568064;grid-column:2;margin:3px 0 0;padding:0;font-size:13px}.campus-secondary{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px 22px;padding:22px 24px 12px;display:flex}.campus-secondary>span{color:#637966;border-right:1px solid #c9d9c8;padding-right:16px;font-size:13px}.campus-secondary button{color:#496951;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:7px 3px;font-size:14px;display:flex}.campus-secondary .ui-icon{width:17px;height:17px}.workbench-shell .scene-legend{color:#728370;flex-shrink:0;width:calc(100% - 96px);max-width:2240px;margin:0 auto;padding:8px 0 16px;font-size:12px;position:static}.workbench-shell .scene-legend span:last-child{display:none}.module-teachers .directory-switch{border-bottom:1px solid #dae5dc;gap:8px;margin-bottom:24px;padding-bottom:18px}.module-teachers .directory-switch button{font-size:var(--office-caption);border-radius:10px;padding:11px 16px}.module-teachers .directory-switch button.selected{color:#23694e;background:#e3f0e5;border-color:#b5d3bd}.module-teachers .teacher-filters{box-shadow:none;background:0 0;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;padding:0;display:flex}.teacher-filters .teacher-search{color:#759180;background:#fff;border:1px solid #ceddd4;border-radius:10px;flex:300px;align-items:center;gap:10px;padding:0 14px;display:flex}.office-shell .teacher-search input{background:0 0;border:0;outline:none;width:100%;padding:11px 0}.teacher-search:focus-within{border-color:#278b78;box-shadow:0 0 0 3px #278b7820}.teacher-filters>select{flex:0 164px;padding:10px}.teacher-filters>span{white-space:nowrap;color:#627568;margin-left:auto;font-size:14px}.office-shell .teacher-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:24px;display:grid}.teacher-list-heading{color:#637668;justify-content:space-between;align-items:center;padding:0 12px 8px;font-size:14px;display:flex}.teacher-list-heading span{color:#728275}.office-shell .teacher-list{scrollbar-width:thin;flex-direction:column;gap:6px;min-height:340px;max-height:calc(100dvh - 350px);padding:0 8px 8px 0;display:flex;overflow:auto}.office-shell .teacher-list button{min-height:82px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:12px;flex-shrink:0;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:13px 12px;display:grid}.office-shell .teacher-list button.active{background:#fff;border-color:#c6dacc}.office-shell .teacher-list button:hover{background:#ffffffb0}.office-shell .teacher-list b{font-size:var(--office-body);font-weight:600}.office-shell .teacher-list small{font-size:var(--office-caption);color:#63756b;margin-top:5px;line-height:1.5}.office-shell .teacher-list em{display:none}.office-shell .teacher-avatar{color:#4d7558;background:#dfebe1;border-radius:14px 14px 16px 7px;width:42px;height:46px;font-size:18px}.office-shell .teacher-list .active .teacher-avatar{color:#2a6745;background:#cbe2d1}.office-shell .teacher-detail{box-shadow:var(--office-shadow);border:1px solid #dce7df;border-radius:18px;min-height:0;padding:30px}.office-shell .profile-head{border-bottom:1px solid #e2eae5;flex-wrap:wrap;gap:16px;padding:0 0 24px}.office-shell .big-avatar{color:#41684a;background:#d6e9d8;border-radius:21px 21px 25px 8px;width:68px;height:74px;font-size:28px}.office-shell .profile-head h3{margin:5px 0;font-size:28px;font-weight:650}.office-shell .profile-head p,.office-shell .profile-head small{font-size:var(--office-caption);color:#607769}.office-shell .profile-head-actions{align-self:center;gap:8px;margin-left:auto}.office-shell .profile-head-actions button{color:#2b6c4d;background:#edf5ef;border-radius:10px;min-height:42px;padding:9px 13px;font-size:14px}.office-shell .profile-head-actions .danger-button{color:#945646;background:0 0;border:1px solid #e6d5cd}.profile-section{margin-top:28px}.profile-section>header{color:#456d51;align-items:center;gap:9px;margin-bottom:18px;display:flex}.profile-section h4{color:#355741;margin:0;font-size:17px;font-weight:600}.profile-section>header>span{color:#687e6f;margin-left:auto;font-size:13px}.profile-section .ui-icon{width:18px;height:18px}.profile-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 26px;margin:0;display:grid}.profile-fields div{min-width:0}.profile-fields dt{color:#657a6b;font-size:var(--office-caption);margin-bottom:7px}.profile-fields dd{color:#294736;font-size:var(--office-body);overflow-wrap:anywhere;margin:0;line-height:1.6}.assignment-section{background:#f5f9f2;border:1px solid #e0ebdf;border-radius:12px;padding:20px}.assignment-section .profile-fields{grid-template-columns:1fr 1fr}.profile-source-note{color:#657969;font-size:var(--office-caption);border-top:1px solid #e3eae2;margin:28px 0 0;padding:18px 0 0}.profile-back{display:none}.office-shell .profile-edit{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.office-shell .profile-edit label{font-size:var(--office-caption);gap:8px}.office-shell .profile-edit input{font-size:var(--office-body)}.module-writing .report-lead{align-items:center}.draft-status{color:#4b6b53;font-size:var(--office-caption);background:#eaf2e8;border-radius:8px;align-items:center;gap:7px;padding:8px 12px;display:inline-flex}.draft-status:before{content:"";background:#6c9b71;border-radius:50%;width:6px;height:6px}.draft-status.unsaved{color:#805f22;background:#faf0dc}.draft-status.unsaved:before{background:#bd943a}.office-shell .writing-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:28px;display:grid}.office-shell .report-settings{display:block}.office-shell .report-config-card{box-shadow:none;background:#fff;border:1px solid #dce5db;border-radius:16px;padding:22px}.report-config-card>header{border-bottom:1px solid #e5ebe2;justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;display:flex}.office-shell .report-config-card header h4{color:#34513e;margin:0;font-size:18px}.report-config-card header>span{color:#748171;font-size:13px}.report-config-card fieldset{border:0;min-width:0;margin:0;padding:0}.office-shell .report-type-switch{background:#edf3ec;border-radius:10px;gap:4px;margin:20px 0;padding:4px;display:flex}.office-shell .report-type-switch button{min-width:0;min-height:40px;font-size:var(--office-caption);text-align:center;background:0 0;border:0;border-radius:7px;flex:1;padding:9px 6px;font-weight:500;display:block}.office-shell .report-type-switch button.active{color:#278b78;background:#fff;box-shadow:0 1px 5px #385e4110}.report-config-card label{font-size:var(--office-caption);flex-direction:column;gap:8px;margin:18px 0 0;display:flex}.report-config-card :is(input,textarea){width:100%;padding:11px}.report-date-range{grid-template-columns:1fr;gap:0;display:grid}.report-config-card textarea{resize:vertical;min-height:160px}.office-shell .report-generate{width:100%;margin-top:18px}.office-shell .report-source-note{color:#63735e;background:0 0;border-top:1px solid #e4eade;border-radius:0;margin-top:22px;padding:16px 0 0}.report-source-note summary{cursor:pointer;font-size:var(--office-caption);line-height:1.5}.report-source-note p{font-size:var(--office-caption);color:#63735e;line-height:1.7}.report-review-note{font-size:var(--office-caption);color:#6c7e6b;padding:0 4px;line-height:1.8}.office-shell .paper-editor{min-width:0;box-shadow:none;background:#f0f8fc;border:1px solid #dce5db;border-radius:16px;overflow:hidden}.office-shell .paper-toolbar{background:#fff;border-bottom:1px solid #dce5db;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.paper-toolbar>span{font-size:var(--office-caption);color:#5f7864;align-items:center;gap:8px;display:flex}.paper-toolbar .view-toggle button{font-size:var(--office-caption)}.paper-stage{min-height:570px;padding:28px}.office-shell .paper-editor textarea.report-body,.paper-preview{color:#34483a;width:100%;max-width:820px;height:auto;min-height:530px;font-size:var(--office-body);resize:vertical;background:#fffefa;border:1px solid #e5e9df;border-radius:2px;margin:0 auto;padding:44px 46px;line-height:1.9;display:block;box-shadow:0 4px 18px #39543c08}.paper-editor textarea.report-body::placeholder{color:#768373;font-size:var(--office-body)}.paper-preview h2{text-align:center;margin:0 0 30px;font-size:24px;line-height:1.6}.paper-preview p{font-size:var(--office-body);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px;line-height:1.9}.office-shell .paper-editor footer{background:#fff;border-top:1px solid #dce5db;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.paper-editor footer>span{font-size:var(--office-caption);color:#63755f}.paper-editor footer>div{gap:8px;display:flex}.office-shell .schedule-table td button{min-height:88px}.office-shell .schedule-table td b{font-size:var(--office-body)}.office-shell .schedule-table td small,.office-shell .schedule-table tbody th small{font-size:var(--office-caption);color:#62777b}.office-shell .score-summary :is(span,small),.office-shell .schedule-context :is(span,small),.office-shell .complaint-overview :is(span,small){font-size:var(--office-caption);color:#65756b}.office-shell .filter-bar input,.office-shell .month-picker select{font-size:var(--office-body)}.office-shell .model-card :is(input,textarea,select),.office-shell .model-fields label{font-weight:400}.office-shell .model-card header h3{font-size:18px;line-height:1.5}.office-shell .model-fields label{font-size:var(--office-caption)}.ai-panel{font-size:var(--office-body)}.ai-panel label{font-size:var(--office-caption)}.ai-panel :is(input,select,textarea){font-size:var(--office-body);font-weight:400;line-height:1.6}.ai-panel .ai-run{font-size:var(--office-body);background:#278b78}.ai-panel .ai-markdown,.global-search-input input,.search-result-list b{font-size:var(--office-body)}.search-result-list small{font-size:var(--office-caption)}@media (width>=2200px){.campus-stage{grid-template-columns:420px minmax(500px,1fr) 320px;gap:32px}.workbench-shell .hero-copy h1{font-size:58px}.campus-stage{min-height:620px}}@media (width<=1500px){.workbench-shell .topbar{gap:14px;width:calc(100% - 56px)}.workbench-shell .brand b{font-size:20px}.workbench-shell .brand small{font-size:13px}.workbench-shell .semester-switch>span{display:none}.workbench-shell .top-actions{gap:6px}.workbench-shell .quiet-button{padding:10px}.workbench-shell .ai-quick-button{padding:10px 12px}.campus-stage{flex-basis:480px;grid-template-columns:290px minmax(330px,1fr) 248px;gap:12px;width:calc(100% - 56px);min-height:480px}.workbench-shell .hero-copy h1{font-size:39px}.workbench-shell .today-panel{padding:20px}.workbench-shell .module-dock{width:calc(100% - 56px)}.workbench-shell .module-dock button{gap:6px 10px;padding:14px 10px}.workbench-shell .module-name small{font-size:13px}.office-shell .writing-layout{grid-template-columns:300px minmax(0,1fr);gap:22px}.paper-stage{padding:20px}.office-shell .paper-editor textarea.report-body,.paper-preview{padding:34px}}@media (width<=1150px){:root{--office-sidebar:88px;--office-space:22px}.office-nav{padding:22px 10px}.office-nav-brand{justify-content:center;padding:0 0 22px}.office-nav-brand>div,.office-nav-desktop span,.office-nav-footer>span{display:none}.office-nav-desktop button{justify-content:center;min-height:54px;padding:14px}.office-nav-footer{justify-content:center}.workbench-shell .topbar{grid-template-columns:1fr auto;gap:14px}.workbench-shell .semester-switch{grid-area:2/1/auto/-1;justify-self:start}.workbench-shell .brand small{display:block}.campus-stage{grid-template-columns:290px minmax(330px,1fr)}.workbench-shell .today-panel{grid-column:1/-1;grid-template-columns:1fr 1.8fr auto;align-items:center;gap:18px;padding:18px 22px;display:grid}.workbench-shell .today-panel .next-class{display:none}.workbench-shell .metric-row{flex-direction:row;gap:18px;padding:0}.metric-row button{padding:6px}.metric-row .metric-symbol{display:none}.workbench-shell .metric-row b{font-size:22px}.workbench-shell .week-button{margin:0}.workbench-shell .module-dock{margin-top:20px}.workbench-shell .module-dock button{grid-template-columns:1fr;justify-items:start}.workbench-shell .module-code{grid-row:auto;width:36px;height:38px;margin-bottom:4px}.workbench-shell .module-count{grid-column:1}.workbench-shell .module-name small{display:none}.office-shell .teacher-layout{grid-template-columns:250px minmax(0,1fr);gap:18px}.profile-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-section>header>span{display:none}.office-shell .teacher-detail{padding:24px}.office-shell .profile-head-actions{width:100%;margin-left:0}.office-shell .writing-layout{grid-template-columns:280px minmax(0,1fr);gap:18px}.office-shell .report-config-card{padding:18px}.paper-stage{padding:16px}.office-shell .paper-editor textarea.report-body,.paper-preview{padding:26px}.office-shell .complaint-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1fr)}.office-shell .complaint-list{grid-template-columns:1fr}}@media (width<=760px){:root{--office-space:18px}body .office-shell.workspace,body .office-shell.admin-shell{display:block}.office-shell :is(.workspace-main,.admin-main){height:100dvh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.office-nav{display:contents}.office-nav-brand,.office-nav-desktop,.office-nav-footer{display:none}.office-nav-mobile{z-index:200;padding:8px 6px calc(8px + env(safe-area-inset-bottom));height:calc(76px + env(safe-area-inset-bottom));background:#fbfdfa;border-top:1px solid #d2e1d6;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -3px 20px #233f3008}.office-nav-mobile button{color:#687d6f;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:52px;font-size:12px;display:flex}.office-nav-mobile button.active{color:#246545;background:#e5f0e3}.office-nav-mobile .ui-icon{width:22px;height:22px}.office-header{flex-wrap:wrap;gap:12px;min-height:116px;padding:16px 18px}.office-header .office-heading{min-width:0}.office-header h2{font-size:23px}.office-header p{font-size:13px}.office-header-actions{flex-wrap:wrap;justify-content:flex-start;gap:7px;width:100%}.office-shell .office-header-actions .soft-button{min-height:40px;padding:8px 12px}.office-header .back-campus{margin-left:auto}.office-header .back-campus span,.office-header .desktop-action{display:none}.office-shell :is(.workspace-content,.admin-content){padding:20px 16px 32px}.office-shell .section-lead h3{font-size:21px}.office-shell .section-lead .action-row{width:100%;display:flex}.office-shell :is(.teacher-layout,.schedule-layout,.schedule-context,.plan-layout,.leave-layout,.complaint-layout,.writing-layout,.duty-settings){grid-template-columns:minmax(0,1fr)}.office-shell .schedule-table table{min-width:680px}.office-shell .data-table{min-width:620px}.office-shell .rule-strip{gap:8px 12px;display:flex}.teacher-filters .teacher-search{flex-basis:100%}.teacher-filters>select{flex:1;max-width:calc(50% - 6px)}.teacher-filters>span{width:100%;margin:0}.office-shell .teacher-list{min-height:0;max-height:none;padding:0}.office-shell .teacher-list button{background:#fff;min-height:78px}.teacher-layout:not(.show-profile) .teacher-detail,.teacher-layout.show-profile .teacher-list{display:none}.office-shell .teacher-detail{padding:20px}.profile-back{color:#32694b;min-height:44px;font-size:var(--office-caption);background:0 0;border:0;margin:0 0 20px;padding:8px 0;display:inline-flex}.profile-fields{gap:20px}.office-shell .profile-head h3{font-size:25px}.office-shell .profile-head-actions{flex-wrap:wrap}.office-shell .profile-edit{grid-template-columns:1fr}.profile-section h4{font-size:17px}.office-shell .writing-layout{gap:18px}.office-shell .report-settings{order:2}.office-shell .paper-editor{order:1}.paper-stage{min-height:340px;padding:12px}.office-shell .paper-editor textarea.report-body,.paper-preview{min-height:320px;padding:24px 18px}.office-shell .paper-toolbar,.office-shell .paper-editor footer{padding:12px}.paper-editor footer>span{font-size:13px}.report-date-range{grid-template-columns:1fr 1fr;gap:12px}.module-writing .report-lead{gap:12px}.report-review-note{font-size:14px}.workbench-shell{height:auto;min-height:100dvh;overflow:visible}.workbench-shell .topbar{gap:14px 8px;width:calc(100% - 36px);padding:18px 0 14px}.workbench-shell .brand b{font-size:20px}.workbench-shell .brand small{letter-spacing:0;font-size:12px}.workbench-shell .brand-mark{width:40px;height:44px}.workbench-shell .top-actions{gap:5px}.workbench-shell .quiet-button{width:38px;min-width:38px;height:38px;padding:0;font-size:18px}.workbench-shell .quiet-button span,.workbench-shell .ai-quick-button,.workbench-shell .font-preference{display:none}.workbench-shell .avatar-button{width:38px;height:38px}.workbench-shell .semester-switch{justify-self:stretch;padding:4px 7px}.workbench-shell .semester-switch select{width:100%;font-size:14px}.workbench-shell .semester-switch>span{min-width:56px;padding-left:4px;font-size:13px;display:block}.campus-stage{flex-direction:column;flex:none;gap:0;width:calc(100% - 36px);min-height:0;padding:22px 0 0;display:flex}.workbench-shell .hero-copy{text-align:center}.workbench-shell .eyebrow{margin-bottom:12px;font-size:13px}.workbench-shell .hero-copy h1{font-size:33px;line-height:1.25}.hero-copy h1>span,.hero-copy h1>em{white-space:normal;display:inline}.workbench-shell .hero-copy h1 em{display:block}.workbench-shell .intro{margin:14px 0;font-size:14px;line-height:1.7}.workbench-shell .primary-action{display:none}.campus-scene-frame{width:100%;height:310px;min-height:310px}.campus-scene-caption{font-size:12px;bottom:0}.campus-scene-caption>span:last-child{display:none}.workbench-shell .today-panel{border-radius:14px;width:100%;margin-top:12px;padding:18px;display:block}.workbench-shell .panel-heading{font-size:14px}.workbench-shell .panel-heading time{font-size:17px}.workbench-shell .metric-row{gap:12px;margin-top:10px}.metric-row button{flex-direction:column-reverse;align-items:flex-start;gap:6px;padding:8px 2px;display:flex}.workbench-shell .metric-row b{margin-left:0;font-size:24px}.workbench-shell .metric-row span{font-size:13px}.workbench-shell .week-button{width:100%;padding:11px;font-size:14px}.workbench-shell .module-dock{border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:calc(100% - 36px);margin-top:20px;padding:8px}.workbench-shell .module-dock button{grid-template-columns:36px 1fr;gap:5px 9px;padding:12px 8px;display:grid}.workbench-shell .module-code{grid-row:1/3;margin:0}.workbench-shell .module-name b{font-size:15px}.workbench-shell .module-count{grid-column:2;font-size:12px}.workbench-shell .module-dock button:last-child{grid-column:1/-1}.campus-secondary{justify-content:flex-start;gap:6px 17px;padding:16px 24px 8px}.campus-secondary>span{display:none}.campus-secondary button{min-height:40px;font-size:13px}.workbench-shell .scene-legend{width:calc(100% - 48px);padding-bottom:20px;font-size:12px}}@media (prefers-reduced-motion:reduce){.workbench-shell .primary-action:hover{transform:none}}.workbench-shell .module-dock button .module-code.schedule{color:#886b28;background:#f7e7b1}.workbench-shell .module-dock button .module-code.teachers{color:#a95f48;background:#fbe2d6}.workbench-shell .module-dock button .module-code.plans{color:#487856;background:#dfeee1}.workbench-shell .module-dock button .module-code.assessment{color:#477b94;background:#dfedf5}.workbench-shell .module-dock button .module-code.reports{color:#827096;background:#ece5f6}.office-shell .teacher-search input{box-shadow:none;background:0 0;border:0;border-radius:0}.office-shell .profile-head>.profile-head-actions{flex:none;margin-left:auto}.office-module-dialog nav b{font-size:var(--office-body)}.office-module-dialog nav small{font-size:var(--office-caption)}@media (width<=760px){.workbench-shell .semester-switch{grid-area:2/1/auto/-1;max-width:100%;display:flex}.workbench-shell .module-count{font-size:var(--office-caption);display:block}.office-nav-mobile button{font-size:14px}.office-header p,.paper-editor footer>span,.workbench-shell .eyebrow,.workbench-shell .metric-row span,.campus-secondary button,.campus-scene-caption{font-size:var(--office-caption)}.office-shell .profile-head{flex-wrap:wrap}.office-shell .profile-head>.profile-head-actions{flex:100%;margin-left:0}}body:has(.office-shell){overflow:hidden}.workbench-shell:has(.office-shell){height:100dvh;min-height:100dvh;overflow:hidden}body .office-shell :is(.workspace-content,.admin-content){padding:var(--office-space);background:var(--office-bg)}body .office-shell .teacher-search input{box-shadow:none;background:0 0;border:0}@media (width<=760px){body .office-shell :is(.workspace-content,.admin-content){padding:20px 16px 32px}.report-date-range{grid-template-columns:minmax(0,1fr)}.office-shell .report-config-card,.office-shell .report-settings{min-width:0}}.mobile-report-jump{display:none}@media (width<=760px){.teacher-profile-open>.directory-switch,.teacher-profile-open>.section-lead,.teacher-profile-open>.teacher-filters{display:none}.mobile-report-jump{color:#32674d;background:#edf4ef;border:0;border-radius:8px;align-items:center;min-height:44px;padding:8px 10px;font-size:14px;display:inline-flex}.report-config-card>header{flex-wrap:wrap}.report-config-card>header>span{display:none}}.workbench-shell .brand-mark{background:#fff;border-radius:18px;transform:rotate(-5deg);box-shadow:0 8px 20px #75adce19}.workbench-shell .eyebrow{color:#368d82;background:#ffffffdb;border-radius:999px;align-items:center;gap:10px;padding:8px 15px;display:inline-flex;box-shadow:0 6px 20px #6bb4cd10}.workbench-shell .hero-copy h1{color:#23415a}.workbench-shell .intro{color:#5e8196}.workbench-shell .primary-action{background:linear-gradient(125deg,#288771,#329582);border-radius:18px;box-shadow:0 10px 24px #4bb79b2a}.workbench-shell .primary-action span{color:#328a77;border-radius:11px}.workbench-shell .avatar-button{background:linear-gradient(135deg,#ff987e,#ffc18b);border-radius:16px;box-shadow:0 6px 14px #ff987e24}.workbench-shell .ai-quick-button{background:linear-gradient(125deg,#288771,#329582)}.workbench-shell .today-panel:before{background:#ffcd67;border-radius:4px;width:50px;height:7px;transform:rotate(-3deg)}.workbench-shell .panel-heading time{color:#dc7968}.workbench-shell .next-class strong{color:#294e65}.workbench-shell .metric-row button:first-child .metric-symbol{color:#288570;background:#e3f6ef}.workbench-shell .metric-row button:nth-child(2) .metric-symbol{color:#9e7426;background:#fff3d3}.workbench-shell .metric-row button:nth-child(3) .metric-symbol{color:#b66658;background:#fff0ed}.workbench-shell .metric-row button:first-child b{color:#288570}.workbench-shell .metric-row button:nth-child(2) b{color:#9e7426}.workbench-shell .metric-row button:nth-child(3) b{color:#b66658}.workbench-shell .module-dock{background:#ffffffdf;border-color:#ffffffd9;border-radius:28px;gap:8px;box-shadow:0 14px 35px #6c9fb416}.workbench-shell .module-dock button{--module-tint:#fff6df;--module-color:#ac7c24;border-radius:20px;transition:background .2s,box-shadow .2s,transform .2s}.workbench-shell .module-dock button:has(.teachers){--module-tint:#fff0ea;--module-color:#b66853}.workbench-shell .module-dock button:has(.plans){--module-tint:#eaf9f2;--module-color:#328b70}.workbench-shell .module-dock button:has(.assessment){--module-tint:#eaf5fe;--module-color:#467fa8}.workbench-shell .module-dock button:has(.reports){--module-tint:#f1edff;--module-color:#8471ac}.workbench-shell .module-dock button.active,.workbench-shell .module-dock button:hover{background:var(--module-tint);box-shadow:0 5px 15px #729dad0c}.workbench-shell .module-dock button:hover{transform:translateY(-3px)}.workbench-shell .module-dock button .module-code{background:var(--module-tint);color:var(--module-color);border:1px solid #ffffffb0;border-radius:15px}.workbench-shell .module-name b{color:#31566f}.workbench-shell .module-name small{color:#66859a}.workbench-shell .module-count{color:var(--module-color)}.campus-secondary button{color:#53768d}.campus-scene-caption{color:#5a8895}.campus-scene-caption>span:last-child{color:#67879a}.office-nav{background:linear-gradient(#e7f5ff,#f1fbf8 65%,#fffaf0);border-color:#dbeaf2}.office-school-mark{background:linear-gradient(135deg,#ff967b,#f3bc60);border-radius:15px;box-shadow:0 6px 14px #f1a47725}.office-nav-desktop button,.office-nav-mobile button,.office-module-dialog nav button{--module-color:#438d9e;--module-tint:#e5f5f9}.office-nav [data-module=schedule],.office-nav [data-module=academic]{--module-color:#a77b28;--module-tint:#fff3d5}.office-nav [data-module=teachers],.office-nav [data-module=users],.office-nav [data-module=complaints]{--module-color:#b66c56;--module-tint:#fff0e9}.office-nav [data-module=plans],.office-nav [data-module=settings],.office-nav [data-module=leave]{--module-color:#318974;--module-tint:#e7f8f0}.office-nav [data-module=assessment],.office-nav [data-module=devices],.office-nav [data-module=overview]{--module-color:#457fa7;--module-tint:#e8f4ff}.office-nav [data-module=writing],.office-nav [data-module=prompts],.office-nav [data-module=models]{--module-color:#8470ac;--module-tint:#f1edff}.office-nav-desktop .ui-icon,.office-module-dialog nav .ui-icon{box-sizing:content-box;background:var(--module-tint);width:21px;height:21px;color:var(--module-color);border-radius:12px;padding:8px}.office-nav-desktop button.active{color:#31566c;background:linear-gradient(100deg,#fff,var(--module-tint));box-shadow:0 7px 18px #779eb516}.office-nav-desktop button.active .ui-icon,.office-nav-mobile button.active{color:var(--module-color)}.office-nav-desktop b{color:#34596e}.office-nav-desktop small{color:#6b8794}.office-nav-mobile button.active,.office-module-dialog nav button.active{background:var(--module-tint)}.office-header{background:#ffffffeb}.office-nav-footer{color:#5c8291;border-color:#d9e9ed}@media (width<=760px){.workbench-shell .module-dock{border-radius:23px;gap:5px}.workbench-shell .module-dock button{border-radius:16px}.office-module-dialog nav .ui-icon{width:18px;height:18px;padding:6px}.office-module-dialog nav button{gap:8px;padding:12px 8px}}@media (prefers-reduced-motion:reduce){.workbench-shell .module-dock button:hover{transform:none}}@media (width<=760px){.workbench-shell:before{width:240px;left:calc(50% - 120px);box-shadow:50px 12px #ffffff50,-50px 18px #ffffff40}.workbench-shell:after{width:240px;right:0}}.campus-help-button{align-items:center;gap:6px;display:inline-flex}.campus-help-button .ui-icon{width:20px;height:20px}@media (width<=760px){.campus-help-button span{display:none}}
