.login-page{position:relative;isolation:isolate;min-height:100svh;background:#fdfbff;overflow-x:clip;color:#262626}.login-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.login-backdrop img{position:absolute;left:50%;top:50%;width:100svh;height:100vw;object-fit:fill;opacity:.6;transform:translate(-50%,-50%) rotate(90deg) scaleY(-1)}.login-stage{display:grid;place-items:center;min-height:100svh}.login-canvas{--login-unit:min(.06944444vw,.11904762svh,1px);position:relative;width:calc(1440 * var(--login-unit));min-height:calc(840 * var(--login-unit))}.login-school-logo{position:absolute;right:calc(70 * var(--login-unit));top:calc(50 * var(--login-unit));width:calc(233 * var(--login-unit));height:auto}.login-wordmark{position:absolute;left:calc(146 * var(--login-unit));top:calc(128 * var(--login-unit));width:calc(529 * var(--login-unit));margin:0;color:#2b3a95;font-family:Ma Shan Zheng Platform Title,KaiTi,STKaiti,serif;font-size:calc(52 * var(--login-unit));font-weight:400;line-height:1.3;white-space:nowrap}.login-illustration{position:absolute;left:calc(125 * var(--login-unit));top:calc(280 * var(--login-unit));width:calc(587 * var(--login-unit));height:calc(460 * var(--login-unit));pointer-events:none}.login-illustration-scene{position:absolute;left:0;top:-8%;width:100%;height:112.87%}.login-illustration-badge{position:absolute;left:23.5%;top:18%;width:3.04%;height:4.35%;transform:rotate(-24deg) skew(-15deg)}.login-card{position:absolute;left:calc(847 * var(--login-unit));top:calc(186 * var(--login-unit));width:calc(512 * var(--login-unit));min-height:calc(543 * var(--login-unit));padding:calc(60 * var(--login-unit)) calc(62 * var(--login-unit)) calc(74 * var(--login-unit));border-radius:calc(50 * var(--login-unit));background:#fff;box-shadow:0 0 10px #3d08ce26}.login-modes{display:flex;gap:calc(22 * var(--login-unit));margin:calc(-36 * var(--login-unit)) 0 calc(28 * var(--login-unit))}.login-mode{padding:0 0 calc(6 * var(--login-unit));border:0;background:transparent;color:#85818e;font-size:calc(16 * var(--login-unit));line-height:1.4}.login-mode[aria-selected=true]{color:#69479b;box-shadow:inset 0 calc(-2 * var(--login-unit)) 0 #9861ed}.login-code-row{display:flex;gap:calc(8 * var(--login-unit))}.login-code-row input{flex:1}.login-code-send{flex:none;min-width:calc(112 * var(--login-unit));padding:0 calc(12 * var(--login-unit));border:1px solid #e4dcf3;border-radius:calc(4 * var(--login-unit));background:#fff;color:#69479b;font-size:calc(14 * var(--login-unit))}.login-code-send:disabled{color:#90939e}.login-sms-note{margin:calc(16 * var(--login-unit)) 0 calc(20 * var(--login-unit));color:#85818e;font-size:calc(13 * var(--login-unit));line-height:1.6}.login-card h2{margin:0 0 calc(60 * var(--login-unit));color:#262626;font-size:calc(38 * var(--login-unit));font-weight:700;line-height:1.25}.login-card form,.login-field{display:flex;flex-direction:column}.login-field{gap:calc(10 * var(--login-unit))}.login-field+.login-field{margin-top:calc(24 * var(--login-unit))}.login-field label{font-size:calc(18 * var(--login-unit));font-weight:500;line-height:1.3}.login-field input{width:100%;min-width:0;height:calc(46 * var(--login-unit));padding:calc(12 * var(--login-unit)) calc(14 * var(--login-unit));border:1px solid transparent;border-radius:calc(4 * var(--login-unit));background:#f2f5ff;color:#262626;font-size:calc(16 * var(--login-unit));line-height:1.25;outline:none}.login-field input::placeholder{color:#90939e}.login-field input:focus-visible{border-color:#9861ed;outline:2px solid #9861ed;outline-offset:2px}.login-forgot{align-self:flex-end;margin:calc(12 * var(--login-unit)) 0 calc(28 * var(--login-unit));padding:0;border:0;background:transparent;color:#85818e;font-size:calc(14 * var(--login-unit));line-height:1.4}.login-forgot:hover{color:#833bff}.login-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(56 * var(--login-unit));padding:calc(14 * var(--login-unit)) calc(10 * var(--login-unit));border:0;border-radius:100px;background:linear-gradient(90deg,#b77cf2,#a46fff);color:#fff;font-size:calc(20 * var(--login-unit));font-weight:600;line-height:1.4}.login-submit:hover:not(:disabled){background:linear-gradient(90deg,#aa6be8,#9156ef)}.login-submit:disabled{opacity:.8}.login-password-help,.login-error{margin:calc(-14 * var(--login-unit)) 0 calc(20 * var(--login-unit));padding:calc(10 * var(--login-unit)) calc(12 * var(--login-unit));border-radius:6px;background:#f6f1ff;color:#69479b;font-size:calc(14 * var(--login-unit));line-height:1.7}.login-error{display:flex;align-items:flex-start;gap:6px;background:#fff1f0;color:#a23b36}.login-error svg{width:calc(16 * var(--login-unit));height:calc(16 * var(--login-unit));margin-top:2px}@media(max-width:740px),(max-width:1000px)and (max-aspect-ratio:4/3){.login-stage{display:block;padding:24px 20px 40px}.login-canvas{--login-unit:1px;width:100%;min-height:0;padding-top:82px}.login-school-logo{top:0;right:4px;width:180px}.login-wordmark{position:static;width:100%;max-width:440px;margin:0 auto 32px;font-size:clamp(24px,5vw,42px);text-align:center}.login-illustration{display:none}.login-card{position:static;width:100%;max-width:440px;min-height:0;margin:0 auto;padding:32px 28px 36px;border-radius:28px}.login-card h2{margin-bottom:30px;font-size:26px}.login-field{gap:9px}.login-field+.login-field{margin-top:20px}.login-field label{font-size:14px}.login-field input{height:46px;padding:12px 14px;font-size:16px}.login-modes{margin:-8px 0 22px}.login-mode,.login-code-send,.login-sms-note{font-size:13px}.login-code-send{min-width:96px}.login-forgot{min-height:32px;margin:8px 0 20px;font-size:12px}.login-submit{min-height:46px;padding:12px 14px;font-size:16px}.login-password-help,.login-error{margin:-4px 0 18px;font-size:13px}}.password-gate{min-height:100dvh;display:grid;place-items:center;padding:24px;background:#f3f7fc;color:#262626}.password-gate-card{width:min(440px,100%);background:#fff;border-radius:16px;padding:32px 28px;box-shadow:0 8px 30px #1d274014}.password-gate-card h1{margin:0 0 12px;font-size:24px}.password-gate-card p{margin:0 0 20px;color:#595959;line-height:1.6}.password-gate-card form{display:flex;flex-direction:column;gap:8px}.password-gate-card label{margin-top:8px;font-size:14px}.password-gate-card input{height:44px;border:1px solid #e2e5eb;border-radius:8px;padding:10px 12px;font:inherit}.password-gate-actions{display:flex;gap:12px;margin-top:16px}.password-gate-primary,.password-gate-secondary{min-height:40px;border-radius:8px;padding:8px 16px;font:inherit}.password-gate-primary{color:#fff;background:#1462de;border:1px solid #145dd8}.password-gate-secondary{color:#5b626d;background:#fff;border:1px solid #dce0e8}.success-toast{position:fixed;z-index:1000;inset:76px auto auto 50%;margin:0;transform:translate(-50%);align-items:flex-start;gap:10px;width:max-content;max-width:min(520px,calc(100vw - 32px));padding:13px 14px;border:1px solid #d7e9df;border-radius:12px;background:#fff;color:#263d34;box-shadow:0 8px 28px #203e2e24;font-size:14px;line-height:22px}.success-toast:popover-open{display:flex}.success-toast-icon{display:flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;color:#238269;background:#e8f6ee}.success-toast p{min-width:0;margin:0;max-height:40vh;overflow-y:auto;overflow-wrap:anywhere}.success-toast button{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;margin:-1px -3px -1px 2px;padding:0;border:0;border-radius:5px;background:transparent;color:#7b8d84;font-size:20px;line-height:1}.success-toast button:hover{color:#263d34;background:#edf5f0}@media(max-width:720px){.success-toast{top:68px}}.feedback-toast-info{border-color:#cbdcff}.feedback-toast-info .success-toast-icon{color:#316de7;background:#edf4ff}.teaching-file-list,.teaching-file-pool>ul{list-style:none;margin:14px 0;padding:0;display:grid;gap:10px}.teaching-file-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:10px 14px;padding:12px 14px;border-radius:5px;background:#f5f6f8;min-width:0}.teaching-file-row>div:first-child{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.teaching-file-row img{display:block;flex:none}.teaching-file-row strong{display:block;font-size:13px;line-height:20px;font-weight:400;overflow-wrap:anywhere}.teaching-file-row small{display:block;font-size:11px;color:#929aa8;line-height:18px}.teaching-file-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.teaching-file-actions>button,.teaching-file-warning button{border:0;background:none;padding:5px 0;font:inherit;color:#328cff;font-size:12px}.teaching-file-row>.inline-error{width:100%}.teaching-file-dropzone{min-height:185px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:28px 24px;border:1px dashed #d9d9d9;border-radius:4px;background:#fff;text-align:center;cursor:pointer}.teaching-file-dropzone>img{display:block;flex:none}.teaching-file-dropzone>strong{font-size:14px;line-height:21px;font-weight:500;overflow-wrap:anywhere}.teaching-file-dropzone>span{font-size:12px;line-height:18px;color:#8c8c8c;max-width:100%}.teaching-file-dropzone>input[type=file]{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;opacity:0;cursor:pointer}.teaching-file-dropzone:focus-within{outline:2px solid #a8c9ff;outline-offset:2px}.teaching-file-dropzone.disabled{cursor:not-allowed;opacity:.6}.teaching-file-dropzone.disabled>input{cursor:not-allowed}.teaching-file-dropzone.dragging{background:#edf5ff;border-color:#328cff}.teaching-file-caption,.teaching-file-empty{font-size:12px;color:#9098a5;line-height:1.8;margin:14px 0}.teaching-file-pool{margin-top:14px;font-size:13px;color:#59667e}.teaching-file-pool>summary{cursor:pointer}.teaching-file-warning{border:1px solid #f2d9a5;background:#fffaf0;border-radius:6px;padding:14px;margin:16px 0;color:#87652f;font-size:13px;line-height:1.8}.teaching-file-warning button{margin-right:18px;text-align:left}.teacher-task-form .teaching-file-required{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:400}.teacher-task-form .teaching-file-required>input[type=checkbox]{width:16px;height:16px;min-height:0;margin:0;padding:0;flex:none}.teaching-submission-files,.teaching-submitted-files{margin:24px 0}.teaching-submission-files>h4,.teaching-submitted-files>h4,.teaching-reference-heading{font-size:14px;font-weight:500;line-height:24px;margin:18px 0 12px}.teaching-submission-files>h4>span{font-size:12px;color:#8c8c8c;margin-left:10px;font-weight:400}@media(max-width:650px){.teaching-file-row{padding:12px 10px}.teaching-file-row>div:first-child{flex-basis:100%}.teaching-file-actions{justify-content:flex-end;width:100%}.teaching-file-dropzone{padding:26px 16px}}.figma-assignment-workspace,.figma-assignment-sheet{--assignment-accent: #1890ff;--assignment-tint: #e8f4ff;color:#1e2939;min-width:0}.figma-assignment-workspace[data-mode=student],.figma-assignment-sheet[data-mode=student]{--assignment-accent: #9810fa;--assignment-tint: #f3e8ff}.figma-assignment-workspace :focus-visible,.figma-assignment-sheet :focus-visible{outline:2px solid var(--assignment-accent);outline-offset:3px}.figma-assignment-heading{margin-bottom:22px}.figma-assignment-heading h1{font-size:24px;line-height:1.4;font-weight:650;margin:0}.figma-assignment-heading p{font-size:14px;color:#6a7282;line-height:1.7;margin:7px 0 0}.figma-assignment-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-height:130px;padding:20px;border-radius:14px;background:#f0edff url(/figma/assignments/student-stat-background.png) center / 100% 100% no-repeat;margin-bottom:16px;box-shadow:0 1px 2px #00000010}.figma-assignment-stat{display:flex;align-items:center;gap:30px;padding:12px 26px;background:#fff;border-radius:14px;min-width:0;box-shadow:0 1px 2px #5800bc0d}.figma-assignment-stat-image{position:relative;display:block;flex-shrink:0;width:65.401px;height:59.263px}.figma-assignment-stat-image img{position:absolute;max-width:none}.figma-assignment-stat-image.pending img{left:-4.56px;top:-.9px}.figma-assignment-stat-image.completed{width:62.511px;height:53.965px}.figma-assignment-stat-image.completed img{left:-9.16px;top:-5.49px}.figma-assignment-stat-image.total{width:59.985px;height:54.985px}.figma-assignment-stat-image.total img{left:-9.16px;top:-5.5px}.figma-assignment-stat>div{display:grid;gap:6px;min-width:0}.figma-assignment-stat>div>span{font-size:14px;line-height:1.5;color:#000000a6}.figma-assignment-stat strong{font-size:30px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums;color:#000000d9}.figma-assignment-list-panel{min-width:0;border-radius:14px;background:#fff;box-shadow:0 0 4px #0000000f;padding:20px}.figma-assignment-list-heading{padding:0 0 17px}.figma-assignment-list-heading h2{font-size:18px;line-height:1.5;font-weight:600;color:#000000d9;margin:0}.figma-assignment-list-heading p{color:#8b929c;line-height:1.6;font-size:12px;margin:6px 0 0}.figma-assignment-list-toolbar{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:16px;min-width:0}.figma-assignment-filters{display:flex;gap:5px;flex-wrap:wrap;min-width:0}.figma-assignment-filters button{padding:7px 14px;border:1px solid transparent;background:transparent;color:#6a7282;border-radius:9px;font-size:14px;line-height:1.5;white-space:nowrap}.figma-assignment-filters button[aria-pressed=true]{background:var(--assignment-tint);color:var(--assignment-accent)}.figma-assignment-refresh{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:0;color:#87909e;padding:8px;border-radius:7px}.figma-assignment-refresh:disabled{cursor:wait;opacity:.5}.figma-assignment-search-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.figma-assignment-search{display:flex;align-items:center;gap:9px;padding:0 12px;background:#f9fafb;border:1px solid #f0f1f4;border-radius:9px;max-width:350px;flex:1;min-width:0}.figma-assignment-search>img{flex-shrink:0}.figma-assignment-search input{border:0;min-width:0;width:100%;font:inherit;font-size:14px;background:transparent;color:#364153;padding:9px 0;outline:0;line-height:1.6}.figma-assignment-search:focus-within{border-color:var(--assignment-accent)}.figma-assignment-search input:focus-visible{outline:none}.figma-assignment-search input::placeholder{color:#9a9fab}.figma-assignment-reset{display:inline-flex;align-items:center;gap:6px;color:#6a7282;font-size:12px;line-height:1.6;padding:7px 0;border:0;background:transparent;flex-shrink:0}.figma-assignment-task-cards{display:grid;gap:14px}.figma-assignment-task-card{border:1px solid #f1f2f5;border-radius:14px;box-shadow:0 0 2px #0000000f;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 30px 17px 21px;min-height:106px}.figma-assignment-card-content{min-width:0}.figma-assignment-card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.figma-assignment-card-title h2{min-width:0;margin:0;font-size:16px;font-weight:600;line-height:1.5}.figma-assignment-card-title h2 button{border:0;background:transparent;color:#1e2939;padding:0;text-align:left;line-height:inherit;font:inherit;overflow-wrap:anywhere}.figma-assignment-card-content>p{font-size:14px;color:#00000073;line-height:1.6;margin:5px 0;overflow-wrap:anywhere}.figma-assignment-status{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:2px 10px;border-radius:100px;background:#edf0f4;color:#7c8491;font-size:12px;line-height:1.5;white-space:nowrap;font-weight:400}.figma-assignment-status.unsubmitted{background:#e8f4ff;color:#1091fa}.figma-assignment-status.pending_review{background:#fff3d9;color:#d88d00}.figma-assignment-status.returned{background:#fff0ef;color:#ef4344}.figma-assignment-status.confirmed{background:#d1fae5;color:#00a66e}.figma-assignment-deadline{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;line-height:1.6;color:#858b99;margin-top:7px}.figma-assignment-deadline img{flex-shrink:0}.figma-assignment-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;min-height:40px;font-size:14px;font-weight:500;line-height:1.5;border:1px solid var(--assignment-accent);border-radius:10px;color:var(--assignment-accent);background:#fff;flex-shrink:0}.figma-assignment-button.primary{color:#fff;background:var(--assignment-accent)}.figma-assignment-button.return{color:#ef4344;border-color:#ef4344}.figma-assignment-button:disabled{opacity:.5;cursor:wait}.figma-assignment-task-card>.figma-assignment-button{min-width:91px;font-size:16px}.figma-assignment-pagination{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#8c8580;font-size:12px;line-height:1.5;padding:23px 10px 0}.figma-assignment-pagination>div{display:flex;align-items:center;gap:10px}.figma-assignment-pagination button{background:#fff;border:1px solid #e9e9e9;border-radius:8px;color:#4d4a47;padding:6px 9px;font-size:12px}.figma-assignment-pagination button:disabled{opacity:.4;cursor:default}.figma-assignment-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:560px;padding:35px 15px;text-align:center}.figma-assignment-empty>img{display:block;max-width:100%;height:auto;margin-bottom:35px}.figma-assignment-empty h2{font-size:14px;font-weight:400;color:#000000a6;margin:0}.figma-assignment-empty p{font-size:12px;line-height:1.7;color:#949aa5;margin:10px 0 0}.figma-assignment-review-layout{display:grid;grid-template-columns:minmax(280px,.48fr) minmax(0,1fr);gap:20px;align-items:stretch}.figma-assignment-review-layout .figma-assignment-list-panel{border-radius:10px;padding:20px 0 16px}.figma-assignment-review-layout .figma-assignment-list-heading{padding:0 18px 17px}.figma-assignment-review-layout .figma-assignment-list-toolbar{padding:0 12px;gap:2px;margin-bottom:10px}.figma-assignment-review-layout .figma-assignment-filters{gap:1px}.figma-assignment-review-layout .figma-assignment-filters button{padding:6px 10px;font-size:13px}.figma-assignment-review-layout .figma-assignment-search-row{padding:0 14px;margin-bottom:13px;gap:8px}.figma-assignment-review-layout .figma-assignment-search input{font-size:12px}.figma-assignment-review-layout .figma-assignment-reset{font-size:11px}.figma-assignment-student-list{max-height:650px;overflow-y:auto}.figma-assignment-student-row{width:100%;display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid #f2f3f6;background:#fff;padding:16px 19px;text-align:left;min-width:0}.figma-assignment-student-row.selected{background:#e8f4ff}.figma-assignment-submitted{font-size:11px;color:#899098;background:#f1f2f4;padding:2px 7px;border-radius:100px;white-space:nowrap;flex-shrink:0}.figma-assignment-submitted.yes{color:#10b981;background:#d1fae5}.figma-assignment-student-name{display:grid;gap:5px;min-width:0;flex:1}.figma-assignment-student-name strong{color:#000000d9;font-size:14px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.figma-assignment-student-name small{font-size:11px;color:#9299a5;line-height:1.5;overflow-wrap:anywhere}.figma-assignment-row-state{color:#899098;font-size:11px;white-space:nowrap;padding-left:10px;border-left:1px solid #dedede}.figma-assignment-row-state.pending_review{color:#d88d00}.figma-assignment-row-state.returned{color:#ef4344}.figma-assignment-row-state.confirmed{color:#00a66e}.figma-assignment-review-layout .figma-assignment-pagination{flex-wrap:wrap;padding:20px 17px 0;gap:10px;font-size:11px}.figma-assignment-review-main{min-width:0}.figma-assignment-review-layout .figma-assignment-empty{min-height:380px}.figma-assignment-sheet{min-width:0}.figma-assignment-person-card{padding:18px;border-radius:10px;background:#edf7ff url(/figma/assignments/review-summary-background.png) center / 100% 100% no-repeat;box-shadow:0 0 2px #0000000f;margin-bottom:20px}.figma-assignment-person-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;min-height:122px;border-radius:8px;border:1px solid #fff;box-shadow:0 0 8px #6690ff20;background:#ffffffb3}.figma-assignment-person-inner>div:first-child{min-width:0}.figma-assignment-person-inner h2{color:#000000d9;font-size:20px;font-weight:600;line-height:1.5;margin:0;overflow-wrap:anywhere}.figma-assignment-person-inner p{font-size:15px;line-height:1.6;color:#000000a6;margin:7px 0 4px;overflow-wrap:anywhere}.figma-assignment-person-inner>div>span{font-size:13px;color:#000000a6;line-height:1.7}.figma-assignment-person-status{text-align:center;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:7px}.figma-assignment-person-status>span{font-size:13px;color:#00000073}.figma-assignment-person-status .figma-assignment-status{font-size:17px;padding:6px 18px;font-weight:500}.figma-assignment-sheet-body{border-radius:10px;background:#fff;padding:24px;box-shadow:0 0 2px #0000000f;min-width:0}.figma-assignment-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.figma-assignment-section-heading h3{margin:0;color:#1e2939;font-size:18px;font-weight:600;line-height:1.6;border-left:2px solid var(--assignment-accent);padding-left:7px}.figma-assignment-section-heading>span{font-size:12px;color:#9299a5;line-height:1.6}.figma-assignment-prose{color:#4a5565;font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.figma-assignment-requirements{margin-bottom:27px}.figma-assignment-history{border-top:1px solid #eceef2;padding-top:24px;margin:0 0 26px}.figma-assignment-version{border:1px solid #e9edf4;border-radius:7px;margin-bottom:12px;overflow:hidden}.figma-assignment-version-content{padding:20px 18px;border-top:1px solid #e9edf4}.figma-assignment-answers{display:grid;gap:20px;margin:0}.figma-assignment-answers dt{font-size:14px;font-weight:500;color:#000000d9;line-height:1.6;margin-bottom:8px}.figma-assignment-answers dd{border-radius:4px;background:#f4f5f7;color:#000000d9;font-size:14px;line-height:1.9;padding:12px 16px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.figma-assignment-review-record{display:flex;align-items:flex-start;gap:9px;color:#009c6d;font-size:13px;line-height:1.8;margin-top:23px;border-top:1px solid #eceef2;padding-top:18px}.figma-assignment-review-record.returned{color:#c4772c}.figma-assignment-review-record>svg{flex-shrink:0;margin-top:3px}.figma-assignment-review-record strong{font-weight:500}.figma-assignment-review-record .figma-assignment-review-score{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.figma-assignment-review-record p{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0}.figma-assignment-review-record time{display:block;font-size:12px;opacity:.7}.figma-assignment-caption{font-size:13px;color:#9299a5;line-height:1.8;margin:-5px 0 19px}.figma-assignment-submission,.figma-assignment-review-form{border-top:1px solid #eceef2;padding-top:24px}.figma-assignment-form{display:grid;gap:20px}.figma-assignment-field{min-width:0}.figma-assignment-score-field{width:240px;max-width:100%}.figma-assignment-field label{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:500;color:#000000d9;line-height:1.6;margin-bottom:8px}.figma-assignment-field label em,.figma-assignment-field label span{font-style:normal;font-size:12px;font-weight:400;color:#8d94a0}.figma-assignment-field label em{color:#ef4344}.figma-assignment-field input,.figma-assignment-field textarea{display:block;width:100%;min-width:0;padding:12px 16px;color:#000000d9;background:#f4f5f7;border:1px solid transparent;border-radius:4px;font-size:14px;line-height:1.8;font-family:inherit}.figma-assignment-field textarea{resize:vertical;min-height:110px}.figma-assignment-field input:focus,.figma-assignment-field textarea:focus{border-color:var(--assignment-accent)}.figma-assignment-field input:disabled,.figma-assignment-field textarea:disabled{opacity:.6}.figma-assignment-form-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:20px;padding-top:8px}.figma-assignment-form-actions>p{color:#8b929e;font-size:12px;line-height:1.7;margin:0 auto 0 0}.figma-assignment-form-actions.review{justify-content:center;padding-top:15px}.figma-assignment-form-actions.review .figma-assignment-button{min-width:140px;min-height:52px;font-size:16px}.figma-assignment-form-actions.review .primary{background:#61b7ff url(/figma/assignments/review-confirm-background.png) center / 100% 100% no-repeat;border-color:transparent}.figma-assignment-form .field-error{margin:-5px 0 0;font-size:13px;color:#ef4344}.figma-assignment-notice{display:flex;align-items:flex-start;gap:7px;border-radius:7px;background:#f4f8ff;color:#5e7da5;font-size:13px;line-height:1.9;padding:13px 15px;margin:18px 0}.figma-assignment-notice.returned{background:#fff7ee;color:#b77a35}.figma-assignment-notice.confirmed{background:#effaf4;color:#509b79}.figma-assignment-notice>svg{flex-shrink:0;margin-top:4px}.figma-assignment-back{display:inline-flex;gap:8px;align-items:center;border:0;background:transparent;color:var(--assignment-accent);font-size:14px;padding:7px 0;margin-bottom:16px}.figma-assignment-back svg{transform:rotate(180deg)}.figma-assignment-message{padding:60px 25px;text-align:center;border-radius:10px;background:#fff}.figma-assignment-message h2{font-size:18px;font-weight:500;color:#4a5565;margin:0 0 14px}.figma-assignment-message p{font-size:14px;color:#9299a5;line-height:1.8;margin:0 0 20px}.figma-assignment-loading{padding:30px 18px;color:#9299a5;font-size:14px;line-height:1.8}.figma-assignment-workspace>.inline-error{margin-bottom:20px}.figma-assignment-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(hover:hover)and (pointer:fine){.figma-assignment-card-title h2 button:hover,.figma-assignment-reset:hover{color:var(--assignment-accent)}.figma-assignment-task-card:hover{border-color:#e6d5ff}.figma-assignment-student-row:hover{background:#f2f8ff}.figma-assignment-button.outline:hover{background:var(--assignment-tint)}}@media(max-width:1100px){.figma-assignment-stat{gap:18px;padding:12px 20px}.figma-assignment-review-layout{grid-template-columns:285px minmax(0,1fr);gap:16px}.figma-assignment-person-card{padding:14px}.figma-assignment-person-inner{padding:16px;gap:12px}.figma-assignment-person-inner h2{font-size:18px}.figma-assignment-person-status .figma-assignment-status{font-size:14px;padding:5px 12px}.figma-assignment-sheet-body{padding:21px}}@media(max-width:900px){.figma-assignment-review-layout{grid-template-columns:minmax(0,1fr)}.figma-assignment-student-list{max-height:300px}.figma-assignment-review-layout .figma-assignment-search{max-width:none}.figma-assignment-stat{gap:13px;padding:12px 15px}.figma-assignment-stats{gap:12px;padding:15px}.figma-assignment-stat strong{font-size:27px}.figma-assignment-stat-image{transform:scale(.85);transform-origin:center;margin-left:-5px;margin-right:-5px}}@media(max-width:580px){.figma-assignment-stats{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}.figma-assignment-stat{padding:10px 24px;gap:27px;min-height:88px}.figma-assignment-stat-image{transform:none;margin:0}.figma-assignment-stat>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;flex:1;gap:15px}.figma-assignment-stat strong{font-size:28px}.figma-assignment-list-panel{padding:16px 13px}.figma-assignment-filters{gap:2px}.figma-assignment-filters button{padding:6px 8px;font-size:12px}.figma-assignment-list-toolbar{gap:3px;margin-bottom:11px}.figma-assignment-search-row{gap:10px}.figma-assignment-search{padding:0 9px}.figma-assignment-search input{font-size:16px}.figma-assignment-reset{font-size:11px}.figma-assignment-task-card{flex-wrap:wrap;padding:17px 15px;gap:13px}.figma-assignment-card-title h2{font-size:15px}.figma-assignment-card-content>p{font-size:12px}.figma-assignment-task-card>.figma-assignment-button{margin-left:auto;min-height:36px;font-size:14px;padding:7px 13px}.figma-assignment-pagination{padding:20px 0 0;gap:10px;flex-wrap:wrap}.figma-assignment-empty{min-height:410px;padding:35px 10px}.figma-assignment-empty>img{margin-bottom:25px}.figma-assignment-person-inner{align-items:flex-start;flex-wrap:wrap}.figma-assignment-person-inner h2{font-size:18px}.figma-assignment-person-status{flex-direction:row;gap:10px}.figma-assignment-person-inner p{font-size:13px}.figma-assignment-person-inner>div>span{font-size:12px}.figma-assignment-sheet-body{padding:20px 16px}.figma-assignment-section-heading h3{font-size:16px}.figma-assignment-version-content{padding:17px 13px}.figma-assignment-answers dd{padding:11px 12px;font-size:13px}.figma-assignment-field input,.figma-assignment-field textarea{font-size:16px;padding:11px 12px}.figma-assignment-form-actions.review{gap:12px}.figma-assignment-form-actions.review .figma-assignment-button{min-width:120px;min-height:44px;font-size:14px}}.figma-assignment-workspace>.task-review-view-tabs{margin:0 0 8px}.task-archive-panel{min-width:0;padding:20px;border-radius:12px;background:#fff}.task-archive-scroll{overflow:auto}.task-archive-table{width:100%;min-width:760px;border-collapse:collapse;font-size:14px}.task-archive-table th,.task-archive-table td{padding:14px 12px;border-bottom:1px solid #edf0f5;text-align:left}.task-archive-table th{background:#f7f9fc;color:#596579;font-weight:500}.task-archive-table td small{display:block;color:#8a95a6;margin-top:5px}.task-archive-dialog{width:820px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:0;border-radius:12px;color:#364256}.task-archive-dialog::backdrop{background:#0006}.task-archive-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:20px}.task-archive-dialog>header h2{margin:0;font-size:20px}.task-archive-dialog>header button{border:0;background:transparent;min-width:40px;min-height:40px;font-size:24px;cursor:pointer}@media(max-width:580px){.task-archive-panel{padding:14px}}.task-archive-table .text-button{border:0;background:transparent;color:#1890ff;padding:6px 0;cursor:pointer;font:inherit}.task-evaluation-form{min-width:0}.task-evaluation-details,.task-evaluation-comment{background:#fff;border:1px solid #e8edf5;border-radius:12px;padding:20px}.task-evaluation-heading,.task-evaluation-result>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.task-evaluation-heading h3,.task-evaluation-result h4{margin:0;color:#253047;font-size:16px}.task-evaluation-heading p,.task-evaluation-comment>p{margin:7px 0 0;color:#7b879b;font-size:12px;line-height:1.6}.task-evaluation-total{flex:none;text-align:right;color:#63728a}.task-evaluation-total strong{color:#3974f5;font-size:26px}.task-evaluation-total small{display:block;margin-top:3px;font-size:11px}.task-evaluation-group{min-width:0;border:0;margin:24px 0 0;padding:0}.task-evaluation-group legend{padding:0 0 0 10px;border-left:3px solid #5d7fff;color:#253047;font-weight:600;font-size:14px}.task-evaluation-group legend span{margin-left:10px;font-weight:400;color:#8390a4;font-size:12px}.task-evaluation-rows{margin-top:12px;border:1px solid #e8edf5;border-radius:8px;overflow:hidden}.task-evaluation-row{display:grid;grid-template-columns:minmax(0,1fr) 108px;align-items:center;gap:20px;padding:14px 16px}.task-evaluation-row+.task-evaluation-row{border-top:1px solid #edf0f6}.task-evaluation-row:nth-child(2n){background:#fafbfe}.task-evaluation-criterion{min-width:0}.task-evaluation-criterion label{display:block;color:#34425b;font-size:14px;font-weight:600;line-height:1.6}.task-evaluation-criterion p{margin:4px 0 0;color:#758197;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.task-evaluation-number{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#8390a4;font-size:13px;white-space:nowrap}.task-evaluation-number input{width:78px;height:42px;min-width:0;padding:8px;text-align:center;background:#fff;border:1px solid #cfd9ea;border-radius:6px;color:#253047;font-size:16px;font-variant-numeric:tabular-nums}.task-evaluation-number input:focus-visible{border-color:var(--assignment-accent);outline:2px solid var(--assignment-tint);outline-offset:2px}.task-evaluation-comment textarea{display:block;width:100%;min-width:0;padding:10px 12px;resize:vertical;border:1px solid #e2e7f1;border-radius:6px;background:#fff;color:#34425b;font:inherit;font-size:14px;line-height:1.7}.task-evaluation-comment label{display:block;font-size:15px;color:#253047;font-weight:600}.task-evaluation-comment textarea{margin-top:12px;min-height:128px;background:#f8faff}.task-evaluation-comment>span{display:block;margin-top:6px;text-align:right;font-size:11px;color:#8390a4}.task-evaluation-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:8px 0}.task-evaluation-actions>span{font-size:12px;color:#7b879b}.task-evaluation-actions>div{display:flex;gap:10px;margin-left:auto}.task-evaluation-result{margin-top:14px;padding:16px;border:1px solid #e7edf6;border-radius:8px}.task-evaluation-result>header strong{color:#3974f5}.task-evaluation-result dl{margin:8px 0 0}.task-evaluation-result dl>div{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:14px;padding:9px 0;border-top:1px solid #edf0f6;font-size:13px}.task-evaluation-result dd{margin:0}.task-evaluation-result dd p{white-space:pre-wrap;overflow-wrap:anywhere;color:#758197;margin:5px 0 0}@media(max-width:640px){.task-evaluation-details,.task-evaluation-comment{padding:14px}.task-evaluation-heading{gap:10px}.task-evaluation-total strong{font-size:22px}.task-evaluation-actions>div{width:100%;flex-wrap:wrap}.task-evaluation-actions button{flex:1;white-space:nowrap}}.figma-assignment-version-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#f9fbfe}.figma-assignment-version-toolbar>div,.figma-assignment-version-toolbar label{display:flex;align-items:center;gap:10px;min-width:0}.figma-assignment-version-toolbar label>span{font-size:12px;color:#758197;white-space:nowrap}.figma-assignment-version-toolbar select{min-width:0;max-width:100%;height:36px;padding:0 28px 0 10px;border:1px solid #dce3ef;border-radius:6px;background:#fff;color:#34425b;font:inherit;font-size:13px}.figma-assignment-version-label{color:#34425b;font-size:13px}.figma-assignment-print-button{flex:none;border:0;padding:6px 0;background:transparent;color:var(--assignment-accent);font:inherit;font-size:12px;cursor:pointer}.figma-assignment-answer-content{display:grid;gap:20px}.figma-assignment-answer-content .figma-assignment-answers dd{background:transparent;padding:0;color:#34425b}.figma-assignment-answer-content .teaching-submitted-files{margin:0}@media(max-width:640px){.figma-assignment-version-toolbar{flex-wrap:wrap;padding:10px 12px}.figma-assignment-version-toolbar>div{flex-wrap:wrap}.figma-assignment-version-toolbar label>span{display:none}.figma-assignment-version-toolbar select{max-width:180px}.task-evaluation-row{grid-template-columns:minmax(0,1fr) 92px;padding:12px;gap:12px}.task-evaluation-number input{width:66px}}.figma-assignment-review-main{height:min(740px,76dvh);min-height:280px;display:flex;flex-direction:column;overflow:hidden;border-radius:10px;background:#fff}.figma-assignment-review-main>.figma-assignment-sheet{display:flex;flex:1;flex-direction:column;min-height:0}.figma-assignment-review-main .figma-assignment-sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.figma-assignment-review-main>.figma-assignment-message{flex:1;display:flex;flex-direction:column;justify-content:center}.figma-assignment-review-footer{flex:none;padding:12px 24px;border-top:1px solid #e8edf5;background:#fff}.figma-assignment-review-footer:empty,.figma-assignment-review-footer[hidden]{display:none}.figma-assignment-review-footer .task-evaluation-actions{padding:0}.figma-assignment-review-footer .inline-error{margin:0 0 10px}@media(min-width:901px){.portal-content>div:has(>.figma-assignment-review-workspace){display:flex;flex:1;flex-direction:column;min-height:0}.figma-assignment-review-workspace{display:flex;flex:1;flex-direction:column;min-height:0}.figma-assignment-review-workspace>:not(.figma-assignment-review-layout){flex:none}.figma-assignment-review-workspace>.figma-assignment-review-layout{flex:1;min-height:0}.figma-assignment-review-main{height:100%;min-height:0}.figma-assignment-review-layout .figma-assignment-list-panel{display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;box-sizing:border-box;overflow:hidden}.figma-assignment-review-layout .figma-assignment-empty{min-height:0;flex:1}.figma-assignment-review-layout .figma-assignment-student-list{flex:1;min-height:0;overflow-y:auto}.figma-assignment-review-layout .figma-assignment-list-heading,.figma-assignment-review-layout .figma-assignment-list-toolbar,.figma-assignment-review-layout .figma-assignment-search-row,.figma-assignment-review-layout .figma-assignment-pagination{flex:none}}.review-task-scope{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;font-size:14px}.review-task-table .data-table{min-width:740px}.review-task-pending{color:#637086;font-size:13px;white-space:nowrap}.review-task-pending input{accent-color:#1890ff}@media(max-width:640px){.figma-assignment-review-footer{padding:12px 16px}}html:has(.management-table-panel){scrollbar-gutter:stable}.management-table-panel[class]{box-sizing:border-box;width:100%;min-width:0;height:auto;min-height:0;display:flex;flex-direction:column;gap:0;padding:20px;border:1px solid #edf0f5;border-radius:12px;background:#fff;box-shadow:none}.portal-content>div:has(.management-table-panel){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.portal-content>div:has(.management-table-panel) :is(.enterprise-workspace,.attendance-workspace,.teaching-workspace,.teacher-figma,.form-template-library,.figma-courses,.course-members-view,.school-directory,.portfolio-workspace,.responsibility-queue,.task-progress,.teacher-progress-body):has(.management-table-panel){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.portal-content .enterprise-intern-layout:has(>.management-table-panel){flex:1 1 auto;min-height:0;align-items:stretch;grid-template-rows:minmax(0,1fr)}.portal-content .enterprise-intern-layout>.management-table-panel,.portal-content .management-table-panel{flex:1 1 auto;min-height:0;overflow:hidden}.portal-content :is(.course-members-view,.change-review-workspace,.portfolio-workspace,.responsibility-queue,.attendance-workspace)>:not(.management-table-panel):not(dialog){flex:0 1 auto;min-height:0;max-height:40%;overflow:auto}.management-table-panel>*{flex-shrink:0}.management-table-panel .management-table-toolbar{margin-bottom:20px}.management-table-panel .management-table-toolbar :is(.course-button-primary,.enterprise-button.primary,.directory-button.primary,.attendance-button.primary),.management-table-panel>header .enterprise-button.primary{color:#fff;border-color:#637eff;background:#637eff;border-radius:8px;min-height:40px}.management-table-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px;min-height:40px}.management-table-search{flex:1 1 220px;min-width:160px;max-width:660px}.management-table-toolbar>.management-table-search-form{display:flex;flex:1 1 320px;min-width:0;max-width:660px;align-items:center;gap:10px}.management-table-search-form>.management-table-search{min-width:0}.management-table-toolbar input[type=search]:focus{border-color:transparent;box-shadow:none}.management-table-toolbar input[type=search]{box-sizing:border-box;width:100%;min-width:0;height:40px;padding:0 16px;border:1px solid transparent;border-radius:100px;background:#f7f8fa;font:inherit}.management-table-toolbar>input[type=search]{flex:1 1 220px;max-width:660px}.management-table-toolbar label:not(.management-table-search){display:flex;align-items:center;gap:8px}.management-table-toolbar select{height:40px;max-width:240px;border:1px solid #e5e7eb;border-radius:8px;padding:0 12px;background:#fff;font:inherit}.management-table-toolbar>button{order:1}.management-table-toolbar>button:first-of-type{margin-left:auto}.management-table-toolbar>button~button{margin-left:0}.management-table-toolbar button,.management-table-reset{min-height:40px;border-radius:8px}.management-table-reset{padding:8px 20px;border:1px solid #d9d9d9;color:#4b5563;background:#fff;font:inherit;white-space:nowrap;cursor:pointer}.management-table-panel .management-table-scroll{flex:1 1 auto;min-height:0;width:100%;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.management-table-scroll table{width:100%;border-collapse:collapse;font-size:14px;line-height:22px}.management-table-panel .management-table-scroll th{position:sticky;top:0;z-index:1;padding:10px 12px;background:#f8f9fb;color:#374151;font-weight:500;border-bottom:1px solid #edf0f5;white-space:nowrap}.management-table-panel .management-table-scroll td{padding:10px 12px;height:42px;border-bottom:1px solid #edf0f5;vertical-align:middle}.management-table-scroll tbody tr:nth-child(2n){background:#f7faff}.management-table-scroll tbody tr:hover{background:#eef5ff}.management-table-scroll:has(td:last-child :is(button,a)) th:last-child,.management-table-scroll td:last-child:has(:is(button,a)){position:sticky;right:0}.management-table-scroll:has(td:last-child :is(button,a)) th:last-child{z-index:3;background:#f8f9fb}.management-table-scroll td:last-child:has(:is(button,a)){z-index:2;background:#fff;box-shadow:-8px 0 8px -8px #143c6d24}.management-table-scroll tbody tr:nth-child(2n) td:last-child:has(:is(button,a)){background:#f7faff}.management-table-scroll tbody tr:hover td:last-child:has(:is(button,a)){background:#eef5ff}.management-table-scroll td small{display:block}.management-table-scroll:focus-visible,.management-table-toolbar :is(input,select,button):focus-visible,.management-table-pagination button:focus-visible{outline:2px solid #1677ff;outline-offset:2px}.management-table-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px;color:#8b93a1;font-size:12px}.management-table-pagination p{margin:0}.management-table-pagination strong{color:#637eff;font-weight:500}.management-table-pagination nav{display:flex;align-items:center;gap:6px}.management-table-pagination button{min-width:32px;min-height:32px;padding:4px 10px;border:1px solid #edf0f5;border-radius:8px;color:#667085;background:#fff;font:inherit;cursor:pointer}.management-table-pagination button[aria-current=page]{color:#1677ff;background:#eaf3ff;border-color:#eaf3ff}.management-table-pagination button:disabled{color:#b8bec7;background:#fafbfc;cursor:default}.management-table-pagination button:hover:not(:disabled),.management-table-reset:hover{border-color:#91b5ff;color:#1677ff}.management-table-panel .anomaly-monitor-toolbar{padding:0}.management-table-panel .management-table-pagination{font-variant-numeric:tabular-nums}.management-table-panel>.attendance-stat-band{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0;margin:8px 0;background:none}.management-table-panel .attendance-stat{min-height:76px;padding:10px;gap:0;background:#f7faff}.management-table-panel .attendance-stat-icon{display:none}.management-table-panel .attendance-stat>div{padding:0;gap:8px}.management-table-panel .attendance-stat strong{font-size:24px}@media(max-width:800px){.management-table-panel[class]{height:auto;min-height:0;padding:12px}.management-table-panel .management-table-scroll{flex:1 1 auto;max-height:none}.attendance-workspace>.management-table-panel{overflow:auto}.attendance-workspace>.management-table-panel .management-table-scroll{min-height:240px;flex-basis:240px}.management-table-panel .management-table-scroll table{width:max-content;min-width:100%}.management-table-panel .management-table-scroll th,.management-table-panel .management-table-scroll td{white-space:nowrap}.management-table-panel .management-table-scroll th:first-child,.management-table-panel .management-table-scroll td:first-child{position:sticky;left:0;max-width:46vw;overflow:hidden;text-overflow:ellipsis}.management-table-panel .management-table-scroll th:first-child{z-index:4;background:#f8f9fb}.management-table-panel .management-table-scroll td:first-child{z-index:2;background:#fff;box-shadow:8px 0 8px -8px #143c6d24}.management-table-panel .management-table-scroll td:first-child :is(button,a){display:block;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.management-table-scroll tbody tr:nth-child(2n) td:first-child{background:#f7faff}.management-table-scroll tbody tr:hover td:first-child{background:#eef5ff}.management-table-toolbar{gap:8px}.management-table-search,.management-table-toolbar>input[type=search],.management-table-toolbar>.management-table-search-form{flex-basis:100%;max-width:none}.management-table-toolbar select{max-width:100%}.management-table-pagination{flex-direction:column;align-items:stretch;gap:8px;padding-top:12px}.management-table-pagination nav{overflow-x:auto;flex-wrap:nowrap}.management-table-pagination button{min-width:40px;min-height:40px}.management-table-panel>.attendance-stat-band{grid-template-columns:repeat(2,minmax(0,1fr))}}.review-target-picker{border:1px solid #e3e8f2;border-radius:10px;padding:14px;min-width:0;margin:12px 0;color:#27364b;background:#fff}.review-target-picker legend{font-size:14px;font-weight:600;padding:0 5px}.review-target-selected{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;min-height:28px}.review-target-selected>span:not(.review-target-placeholder){display:inline-flex;align-items:center;gap:6px;border-radius:5px;padding:4px 8px;background:#eef4ff;color:#225cc9;font-size:13px}.review-target-selected button{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;padding:0 2px}.review-target-search{box-sizing:border-box;width:100%;min-height:38px;padding:8px 10px;border:1px solid #dce3ef;border-radius:6px;background:#fff}.review-target-options{max-height:280px;overflow:auto;margin-top:8px;overscroll-behavior:contain}.review-target-group{font-size:12px;color:#7b879a;margin:10px 6px 5px}.review-target-choice{display:flex!important;align-items:center;gap:10px;padding:9px 7px;margin:0!important;border-radius:5px;cursor:pointer}.review-target-choice:hover{background:#f6f8fd}.review-target-choice input{width:16px!important;min-height:16px!important;margin:0;flex-shrink:0;accent-color:#386cff}.review-target-picker .review-target-choice{flex-direction:row;min-width:0}.review-target-choice span{display:grid;gap:3px}.review-target-choice strong{font-size:14px;font-weight:500}.review-target-choice small,.review-target-placeholder{font-size:12px;color:#8490a2}.review-target-options>.review-target-placeholder{padding:8px}.review-target-more{width:100%;padding:10px;border:0;background:#f4f7ff;color:#2864d7;cursor:pointer}.review-target-picker:disabled{opacity:.7}.course-grade-panel{display:grid;gap:16px;min-width:0;max-width:100%;padding:20px;border:1px solid #e8ecf2;border-radius:10px;background:#fff;box-shadow:0 1px 2px #1f232906}.course-grade-heading,.course-grade-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.course-grade-heading>div{min-width:0}.course-grade-heading h3{margin:0;font-size:17px;font-weight:600;color:#1f2329;line-height:1.5;overflow-wrap:anywhere}.course-grade-heading p{display:flex;flex-wrap:wrap;gap:4px 14px;margin:6px 0 0;color:#8f959e;font-size:12px;line-height:1.6}.course-grade-heading>button{flex-shrink:0}.course-grade-panel .course-button-primary{background:#1456f0;border-color:#1456f0}.course-grade-panel .course-button-primary:hover:not(:disabled){background:#0f49d8;border-color:#0f49d8}.course-grade-empty,.course-grade-version{margin:0;color:#7c879c;font-size:13px;line-height:1.8}.course-grade-history{display:grid;gap:8px;padding-top:14px;border-top:1px solid #eff0f1}.course-grade-history label{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;color:#4f5c70}.course-grade-history select{max-width:100%;min-height:38px;padding:6px 12px;border:1px solid #dde2ea;border-radius:7px;font:inherit;background:#fff}.course-grade-results{display:grid;gap:14px;min-width:0}.course-grade-table{width:100%;border-collapse:collapse;font-size:13px;color:#4b566a}.course-grade-table th,.course-grade-table td{text-align:left;padding:12px 16px;border-bottom:1px solid #edf0f5;vertical-align:top}.course-grade-table th{position:sticky;top:0;background:#f7f9fc;color:#344057;font-weight:500}.course-grade-table tr:last-child td{border-bottom:0}.course-grade-matrix{min-width:0;display:grid;gap:16px}.course-grade-matrix-toolbar,.course-grade-filters,.course-grade-matrix-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}.course-grade-matrix-toolbar{justify-content:space-between}.course-grade-filters{flex:1}.course-grade-filters .management-table-search{width:250px;max-width:100%}.course-grade-filters select,.course-grade-matrix-pagination select{max-width:100%;min-height:36px;padding:6px 10px;border:1px solid #dee0e3;border-radius:6px;font:inherit;background:#fff;color:#646a73}.course-grade-matrix-scroll{max-width:100%;min-height:260px;max-height:min(520px,calc(100dvh - 300px));overflow:auto;border:1px solid #e8ecf2;border-radius:7px}.course-grade-score-matrix{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;color:#373c43}.course-grade-score-matrix th,.course-grade-score-matrix td{box-sizing:border-box;padding:12px 10px;border-bottom:1px solid #eff0f1;border-right:1px solid #eff0f1;text-align:center;vertical-align:middle}.course-grade-score-matrix thead th{position:sticky;top:0;z-index:2;height:66px;font-weight:500;background:#f5f8ff;color:#373c43}.course-grade-score-matrix thead th>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.course-grade-score-matrix small{display:block;margin-top:5px;color:#8f959e;font-size:11px;line-height:1.6;font-weight:400}.course-grade-score-matrix .course-grade-name-column{position:sticky;left:0;z-index:1;width:150px;min-width:150px;max-width:150px;padding-left:16px;text-align:left;background:#fff;box-shadow:3px 0 5px -4px #385e973b}.course-grade-score-matrix tbody .course-grade-name-column strong{display:block;font-weight:500;overflow-wrap:anywhere}.course-grade-score-matrix .course-grade-task-column{width:120px;min-width:120px;max-width:120px}.course-grade-score-matrix .course-grade-total-column{position:sticky;right:0;z-index:1;width:130px;min-width:130px;max-width:130px;border-right:0;background:#f5f8ff;box-shadow:-3px 0 5px -4px #385e973b}.course-grade-score-matrix thead .course-grade-name-column,.course-grade-score-matrix thead .course-grade-total-column{z-index:3;background:#edf3ff}.course-grade-score-matrix tbody tr:last-child>*{border-bottom:0}.course-grade-score-matrix tbody tr:hover>td,.course-grade-score-matrix tbody tr:hover>th{background:#f8faff}.course-grade-task-cell{display:grid;justify-items:center;align-content:center;gap:2px;min-height:48px;line-height:1.5}.course-grade-task-cell>small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-grade-cell-score{color:#1f2329;font-size:18px;font-weight:500;font-variant-numeric:tabular-nums}.course-grade-cell-status{color:#8f959e;font-size:12px}.course-grade-task-cell.pending_review .course-grade-cell-status{color:#bf841c}.course-grade-task-cell.returned .course-grade-cell-status{color:#cf6054}.course-grade-student-total{display:block;font-size:21px;line-height:1.5;font-weight:600;font-variant-numeric:tabular-nums;color:#1456f0}.course-grade-missing-details{position:relative;margin-top:4px;color:#b37b1b;font-size:11px;line-height:1.6}.course-grade-missing-details summary{cursor:pointer;white-space:nowrap;list-style-position:inside}.course-grade-missing-details ul{position:absolute;right:0;top:100%;z-index:5;width:240px;margin:6px 0 0;padding:12px 16px 12px 28px;text-align:left;line-height:1.8;border:1px solid #f0dfbe;border-radius:6px;background:#fffaf0;box-shadow:0 4px 16px #1f23291a}.course-grade-score-matrix .course-grade-no-missing{color:#8f959e}.course-grade-matrix-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px}.course-grade-matrix-pagination>label{display:flex;align-items:center;gap:8px;color:#8f959e;font-size:12px}.course-grade-matrix-pagination .management-table-pagination{flex:1;min-width:0;margin:0}.course-grade-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border:0;border-radius:14px;padding:0;background:#fff;box-shadow:0 20px 80px #142b542e}.course-grade-dialog::backdrop{background:#10182866}.course-grade-dialog-heading{padding:20px 24px;border-bottom:1px solid #edf0f5}.course-grade-dialog-heading h2{margin:0;font-size:19px}.course-grade-dialog-heading>button{border:0;background:transparent;color:#7b8494;font-size:24px;cursor:pointer}.course-grade-dialog-body{display:grid;gap:18px;padding:24px;max-height:calc(100dvh - 230px);overflow:auto}.course-grade-total-setting{display:grid;gap:8px;width:200px;max-width:100%;font-size:14px}.course-grade-dialog input{min-width:0;min-height:38px;padding:7px 10px;border:1px solid #dde2ea;border-radius:6px;font:inherit;background:#fff}.course-grade-dialog input:focus-visible{outline:2px solid #4996ff;outline-offset:2px}.course-grade-setting-scroll{max-height:340px;overflow:auto;border:1px solid #edf0f5;border-radius:6px}.course-grade-setting-scroll td:first-child{min-width:180px;overflow-wrap:anywhere}.course-grade-setting-scroll input{width:120px;max-width:calc(100% - 20px)}.course-grade-policy{margin:0;color:#8a6b2a;font-size:13px;line-height:1.8}.course-grade-conflict{padding:10px 14px;border-radius:6px;background:#fff7e8;color:#986b20;font-size:13px}.course-grade-conflict p{margin:0 0 6px}.course-grade-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;padding:18px 24px;border-top:1px solid #edf0f5}@media(max-width:600px){.course-grade-panel{padding:14px 12px}.course-grade-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.course-grade-heading h3{font-size:16px}.course-grade-filters .management-table-search{flex-basis:100%;width:100%}.course-grade-matrix-controls{justify-content:flex-end}.course-grade-matrix-scroll{max-height:440px}.course-grade-score-matrix .course-grade-name-column{width:110px;min-width:110px;max-width:110px;padding-left:10px}.course-grade-score-matrix .course-grade-total-column{width:104px;min-width:104px;max-width:104px}.course-grade-matrix-pagination .management-table-pagination{flex-basis:100%}.course-grade-dialog-body{padding:18px}.course-grade-table th,.course-grade-table td{padding:10px 12px}}.course-task-summary{min-width:0;display:grid;gap:16px}.course-summary-tabs{display:flex;gap:8px}.course-summary-tabs [aria-pressed=true]{border-color:#1890ff;color:#1677ff;background:#eaf3ff}.course-summary-panel{padding:20px;min-height:500px}.course-summary-toolbar{gap:10px;flex-wrap:wrap}.course-summary-toolbar .management-table-search{margin-right:auto}.course-summary-scroll{max-height:calc(100dvh - 350px);min-height:280px}.course-summary-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.course-summary-table thead th{position:sticky;top:0;z-index:1;background:#f7f8fb;width:250px;min-width:250px;max-width:300px;white-space:normal}.course-summary-table thead th:first-child{left:0;z-index:3;width:150px;min-width:150px}.course-summary-table tbody th{position:sticky;left:0;z-index:2;background:#fff;width:150px;min-width:150px;font-weight:400;text-align:left}.course-summary-table tbody th small{display:block;margin-top:6px;color:#7b8495}.course-summary-table td{vertical-align:top;min-width:250px;max-width:300px}.course-summary-cell{display:grid;gap:6px;justify-items:start;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.course-summary-status{padding:2px 8px;border-radius:5px;color:#667085;background:#f2f4f7}.course-summary-status.confirmed{color:#16845e;background:#eaf8f1}.course-summary-status.pending_review{color:#a66a0b;background:#fff6df}.course-summary-status.returned{color:#b4453a;background:#fff0ee}.course-summary-score{color:#263552;font-size:17px;font-variant-numeric:tabular-nums}.course-summary-comment{margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.course-task-summary .figma-course-dialog:has(.figma-assignment-sheet){width:min(900px,calc(100vw - 24px))}@media(max-width:640px){.course-summary-panel{padding:12px}.course-summary-toolbar .management-table-search{width:100%;flex-basis:100%;margin:0}.course-summary-scroll{max-height:calc(100dvh - 280px)}.course-summary-table thead th:first-child,.course-summary-table tbody th{min-width:110px;width:110px}}.figma-courses{min-width:0;color:#000000d9;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:14px}.figma-courses button,.figma-courses input,.figma-courses select,.figma-course-dialog button,.figma-course-dialog input,.figma-course-dialog select,.figma-course-dialog textarea{font:inherit}.course-page-heading{margin-bottom:22px}.course-page-heading h2{color:#1e2939;font-size:24px;line-height:32px;font-weight:700}.course-page-heading p{margin-top:6px;color:#00000073;line-height:22px}.course-surface{min-width:0;padding:20px;border-radius:10px;background:#fff;box-shadow:0 0 4px #0000000f}.course-library{min-height:698px;display:flex;flex-direction:column}.course-toolbar{display:flex;align-items:center;gap:24px;margin-bottom:20px;min-height:40px}.course-search{flex:1;min-width:180px;max-width:660px}.course-search input{width:100%;height:40px;border:1px solid transparent;border-radius:100px;background:#f9fafb;padding:0 16px;outline:none;color:#000000d9}.course-search input::placeholder{color:#0000006e}.course-search input:focus{border-color:#91caff;box-shadow:0 0 0 2px #1890ff1a}.course-filter{display:flex;align-items:center;gap:10px;white-space:nowrap}.course-filter>span{font-weight:500}.course-filter select{height:40px;max-width:135px;padding:0 14px;border:0;border-radius:10px;color:#00000073;background:#f9fafb}.course-filter select:disabled{opacity:1;cursor:default}.course-toolbar-actions{margin-left:auto;display:flex;gap:14px}.course-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 24px;border:1px solid #d9d9d9;border-radius:10px;color:#000000a6;background:#fff;white-space:nowrap;line-height:20px}.course-button:hover:not(:disabled){border-color:#1890ff;color:#1890ff}.course-button img{display:block;flex-shrink:0}.course-button-primary{border:0;color:#fff;background:#637eff url(/figma/courses/primary-button.png) center / cover no-repeat}.course-button-primary:hover:not(:disabled),.course-button-save:hover:not(:disabled){color:#fff;filter:brightness(1.04)}.course-table-scroll{width:100%;overflow-x:auto}.course-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center;line-height:22px}.course-table th{padding:9px 8px 8px;background:#fafafa;color:#000000d9;font-weight:500;border-bottom:1px solid rgba(0,0,0,.06);position:relative}.course-table th+th:before{position:absolute;content:"";left:0;top:11px;bottom:11px;border-left:1px solid rgba(0,0,0,.06)}.course-table td{height:40px;padding:8px;border-bottom:1px solid rgba(0,0,0,.06);overflow-wrap:anywhere}.course-table tbody tr:hover{background:#f8fbff}.course-library-table{min-width:880px}.course-directory-table{min-width:900px}.course-directory-workspace .management-table-toolbar{flex-wrap:wrap;gap:12px}.course-directory-workspace .management-table-toolbar>.course-button-primary,.course-offerings-view .management-table-toolbar>.course-button-primary{margin-left:auto;white-space:nowrap}.course-content-excerpt{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-row-actions{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.course-directory-heading{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:14px}.course-directory-heading h2{margin:0;font-size:18px}.course-directory-heading>.course-button{margin-left:auto}.course-definition-facts{margin:0 0 16px;color:#667085;font-size:13px}.course-definition-facts summary{cursor:pointer}.course-definition-facts dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:160px;overflow:auto;margin:12px 0}.course-definition-facts dl>div{display:flex;gap:12px;min-width:0}.course-definition-facts dt{flex:none}.course-definition-facts dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.course-offerings-table{min-width:940px}.course-offerings-view{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.course-offerings-view>:not(.management-table-panel):not(dialog){flex:0 0 auto}.course-library-table th:first-child{width:22%}.course-class-list{display:flex;flex-direction:column;gap:8px;max-height:180px;margin:0;overflow:auto;padding:0}.course-class-list label{display:flex;align-items:center;gap:8px;font-weight:500}.course-date-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.course-date-pair label{display:flex;flex-direction:column;gap:6px;color:#667085;font-size:13px;font-weight:500}.course-name-cell{color:#283448;font-weight:500}.course-unconfigured{color:#00000059}.course-state-unconfigured{display:inline-block;border-radius:100px;padding:0 10px;color:#00000073;background:#f3f4f6;font-size:12px}.course-table-action{padding:0;border:0;background:none;color:#1890ff;white-space:nowrap}.course-table-action:hover{text-decoration:underline}.course-pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;padding-top:24px;color:#8c8c8c;font-size:12px}.course-pagination p strong,.course-result-count strong{color:#1890ff;font-weight:400}.course-pagination nav{display:flex;align-items:center;gap:6px}.course-pagination button{min-width:32px;height:32px;padding:0 8px;border:1px solid transparent;border-radius:10px;background:#fff;color:#000000a6}.course-pagination button:first-child,.course-pagination button:last-child{border-color:#e9e9e9}.course-pagination button.selected{background:#e6f0ff;color:#184eff}.course-pagination button:hover:not(:disabled){background:#f3f7fc}.course-pagination button:disabled{opacity:.4}.course-loading{padding:36px 16px;color:#8c8c8c;text-align:center}.course-surface>.inline-error{margin:0 0 20px}.course-surface>.feature-empty{min-height:260px}.course-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:30px;margin-bottom:16px;color:#00000073;line-height:22px}.course-breadcrumb button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit}.course-breadcrumb button img{display:block}.course-breadcrumb strong{color:#000000d9;font-size:16px;font-weight:500}.course-breadcrumb-owner{margin-left:auto;font-size:12px;color:#00000073;white-space:nowrap}.course-members-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;min-width:0;margin-bottom:10px}.course-members-head .course-breadcrumb{flex:0 1 auto;margin-bottom:0}.course-member-facts{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;color:#00000073;font-size:12px;line-height:20px}.course-member-facts div{display:flex;gap:6px;min-width:0}.course-member-facts dd{margin:0;color:#000000bf}.course-member-facts dd.course-unconfigured{color:#00000059}.course-members-bar{display:flex;align-items:center;gap:12px 16px;min-width:0;margin-bottom:12px}.course-members-bar .course-detail-tabs{flex:none;margin-bottom:0}.course-members-view>.course-member-surface{min-height:0;padding:14px 16px 12px}.course-members-view>.course-member-surface .management-table-toolbar{margin-bottom:10px}.course-members-view>.course-member-surface .management-table-pagination{padding-top:10px}.course-detail-tabs{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;padding:4px;margin-bottom:20px;border-radius:80px;background:#fff9;box-shadow:0 0 4px #0000000f}.course-detail-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;height:40px;padding:0 20px;border:0;border-radius:80px;color:#000000a6;background:transparent;white-space:nowrap}.course-detail-tabs button img{display:block;flex-shrink:0}.course-detail-tabs button.selected{color:#fff;background:#43aeff url(/figma/courses/tab-background.png) center / cover no-repeat}.course-detail-tabs button:disabled{cursor:default}.course-member-surface{min-height:600px;display:flex;flex-direction:column;border-radius:14px}.course-member-toolbar .course-search{max-width:280px}.course-member-toolbar .course-search input{height:36px;border-radius:8px;background:#fff;border-color:#e5e6eb}.course-add-member{margin-left:auto;min-height:36px;padding:6px 18px;border-radius:8px}.course-members-table{min-width:980px}.course-members-table th:nth-child(2),.course-members-table th:nth-child(7){width:14%}.course-data-note{padding-top:16px;color:#9299a5;font-size:12px;line-height:20px}.course-catalog-surface{min-height:780px;display:flex;flex-direction:column;border-radius:14px}.course-catalog-toolbar{gap:26px}.course-catalog-toolbar .course-search{max-width:365px}.course-catalog-toolbar .course-search input,.course-catalog-toolbar .course-filter select{height:34px}.course-reset-filter{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;background:none;color:#00000073;white-space:nowrap}.course-reset-filter img{display:block}.course-result-count{margin-left:auto;font-size:12px;color:#000000a6;white-space:nowrap}.course-result-count strong{font-size:16px}.course-card-list{display:flex;flex-direction:column;gap:14px}.course-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 30px 17px 21px;border:1px solid #f0f1f4;border-radius:14px;background:#fff;box-shadow:0 0 2px #0000000a}.course-card-main{min-width:0}.course-card h3{color:#1e2939;font-size:16px;font-weight:700;line-height:26px;margin-bottom:8px;overflow-wrap:anywhere}.course-card-facts{display:flex;align-items:center;flex-wrap:wrap;gap:8px 26px;color:#000000a6;line-height:20px}.course-card-facts>span{display:inline-flex;align-items:center;gap:6px}.course-card-facts img{display:block;flex-shrink:0}.course-card-facts em{font-style:normal;color:#00000059}.course-card-secondary{margin-top:8px;color:#00000073}.course-card-open{flex-shrink:0;border:1px solid #1890ff;border-radius:10px;min-height:40px;padding:8px 15px;color:#1890ff;background:#fff;font-size:16px;white-space:nowrap}.course-card-open:hover{background:#f0f8ff}.course-card .inline-error{margin-top:12px}.figma-course-dialog{width:min(865px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:20px;background:#fff;color:#000000d9;box-shadow:0 20px 80px #00000026;overflow-y:auto;overscroll-behavior:contain}.figma-course-dialog::backdrop{background:#000000b8}.course-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 32px 12px}.course-dialog-heading h2{margin:0;font-size:22px;font-weight:500;line-height:30px}.course-dialog-close{display:grid;place-items:center;padding:4px;width:40px;height:40px;border:0;background:none;border-radius:8px}.course-dialog-close:hover:not(:disabled){background:#f5f7fa}.course-dialog-close img{display:block}.course-dialog-form{padding:12px 32px 24px}.course-dialog-form>section+section{margin-top:28px}.course-dialog-form h3{margin:0 0 20px;font-size:14px;font-weight:500;line-height:21px}.course-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.course-field{display:flex;flex-direction:column;gap:8px;min-width:0;line-height:21px}.course-field-wide{grid-column:1 / -1}.course-field label,.course-field>span:first-child{font-weight:500}.course-field em{color:#fb2c36;font-style:normal}.course-field input,.course-field select,.course-field textarea,.course-readonly{display:block;width:100%;min-height:39px;margin:0;padding:8px 12px;border:1px solid #e5e7eb;border-radius:4px;background:#fff;color:#000000d9;line-height:21px}.course-field textarea{min-height:84px;resize:vertical}.course-field input::placeholder,.course-field textarea::placeholder{color:#00000059}.course-field input:focus-visible,.course-field select:focus-visible,.course-field textarea:focus-visible{outline:2px solid #1890ff;outline-offset:1px;border-color:#1890ff}.course-readonly{color:#00000059;background:#fafbfc}.course-readonly-value{color:#000000a6}.course-unconfigured-section p,.course-scoring-section p{color:#00000059;line-height:22px}.course-scoring-section{padding:24px 20px;border-radius:8px;background:#f6f7f9;min-height:110px}.course-dialog-actions{display:flex;justify-content:flex-end;gap:20px;padding-top:28px}.course-dialog-actions .course-button{min-width:119px;height:52px;min-height:52px;padding:10px 24px;font-size:18px;line-height:30px}.course-button-save{color:#fff;border:0;background:#637eff url(/figma/courses/save-button.png) center / cover no-repeat}.course-dialog-note{margin-top:20px;color:#8c8c8c;font-size:12px;line-height:21px}.course-member-dialog-form{min-height:300px}.course-add-mode{display:flex;gap:8px;margin:0 0 20px}.course-add-mode button{height:32px;padding:0 14px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#000000d9}.course-add-mode button[aria-checked=true]{border-color:#1890ff;color:#1890ff;background:#f0f8ff}.course-dialog-form>.inline-error{margin-top:20px}@media(max-width:1180px){.course-toolbar{flex-wrap:wrap;gap:14px}.course-toolbar-actions{margin-left:auto}.course-catalog-toolbar .course-search{max-width:none}.course-catalog-toolbar .course-filter{order:3}.course-card{padding-right:20px}.course-card-facts{column-gap:18px;font-size:12px}}@media(max-width:680px){.course-surface{padding:16px}.course-toolbar{gap:12px}.course-search{flex-basis:100%;max-width:none}.course-toolbar-actions{flex:1;justify-content:flex-end;gap:8px}.course-button{padding:8px 13px}.course-pagination{flex-wrap:wrap}.course-pagination nav{margin-left:auto}.course-card{align-items:flex-start;padding:16px;gap:12px}.course-card-facts{gap:6px 12px}.course-card-open{min-height:34px;font-size:12px;padding:6px 10px}.course-result-count{margin-left:0}.course-catalog-surface{min-height:650px}.course-breadcrumb-owner{width:100%;margin-left:0}.course-members-bar{flex-wrap:wrap}.course-detail-tabs{border-radius:16px;gap:4px}.course-detail-tabs button{min-width:0;padding:0 12px;font-size:12px}.course-detail-tabs button:disabled{display:none}.course-dialog-heading{padding:20px 20px 8px}.course-dialog-heading h2{font-size:20px}.course-dialog-form{padding:12px 20px 20px}.course-fields-grid{grid-template-columns:1fr}.course-dialog-actions{gap:12px}.course-dialog-actions .course-button{min-width:96px}}.stage-context{margin-top:20px;padding-top:16px;border-top:1px solid rgba(0,0,0,.06)}.stage-context-heading,.stage-context-actions,.stage-run-actions,.stage-preview-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.stage-context-heading{justify-content:space-between;align-items:flex-start}.stage-context h3,.stage-run h4{margin:0;font-size:16px;font-weight:500;line-height:24px;text-wrap:pretty}.stage-context p,.stage-missing,.stage-keep,.stage-summary{margin:8px 0 0;color:#000000a6;line-height:22px;overflow-wrap:anywhere}.stage-unmapped,.stage-missing,.stage-keep{color:#8a5a00}.stage-run-list{display:grid;gap:16px;margin-top:16px}.stage-run{padding:16px;border:1px solid #e5e7eb;border-radius:10px}.stage-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:12px 0 0}.stage-facts div{min-width:0}.stage-facts dt{color:#00000073;font-size:12px}.stage-facts dd{margin:0;overflow-wrap:anywhere}.stage-rosters ul,.stage-roster-people,.stage-exceptions{margin:8px 0 0;padding-left:18px}.stage-roster-people{list-style:none;padding-left:0}.stage-roster-people li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.stage-line{display:grid;grid-template-columns:1fr 88px 1.4fr auto;gap:8px;align-items:end;margin-bottom:12px}.stage-line label{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:12px}.stage-context button:focus-visible,.figma-course-dialog button:focus-visible{outline:2px solid #1890ff;outline-offset:2px}.stage-context button:disabled,.figma-course-dialog button:disabled{cursor:not-allowed}@media(max-width:680px){.stage-line,.stage-facts{grid-template-columns:1fr}}.figma-course-dialog:has(.course-create-form){width:min(960px,calc(100vw - 40px));border-radius:16px;background:#f7f9fc}.figma-course-dialog:has(.course-create-form)>.course-dialog-heading{position:sticky;top:0;z-index:3;padding:20px 28px;background:#fff;border-bottom:1px solid #e8edf4}.course-create-form{padding:20px 28px 0}.course-create-form>section{padding:20px;border:1px solid #e5eaf2;border-radius:10px;background:#fff}.course-create-form>section+section{margin-top:16px}.course-create-form h3{font-size:16px;font-weight:600;margin-bottom:16px}.course-create-form .course-dialog-note{margin:10px 0 0}.course-create-form .course-class-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:160px;padding:2px}.course-create-form .course-class-list label{display:flex;flex-direction:row;justify-content:flex-start;gap:8px;min-width:0;padding:10px;border:1px solid #e3e8f0;border-radius:6px;font-size:14px;cursor:pointer}.course-create-form .course-class-list label:has(:checked){border-color:#788fff;background:#f2f5ff}.course-create-form .course-class-list input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0;flex:0 0 18px;accent-color:#637eff}.course-create-reviewers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:16px}.course-create-form>.course-dialog-actions{position:sticky;bottom:0;z-index:2;background:#f7f9fc;margin-top:16px;padding:16px 0;gap:12px;border-top:1px solid #e5eaf2}.course-create-form>.course-dialog-actions .course-button{height:44px;min-height:44px;min-width:100px;font-size:14px;line-height:22px;padding:10px 18px}.course-drafts{margin:8px 0 20px;border:1px solid #e3e8f0;padding:14px 18px;border-radius:8px;background:#f8faff}.course-drafts summary{cursor:pointer;font-size:14px;color:#4f61a5}.course-drafts ul{padding:0;list-style:none;margin:12px 0 0}.course-drafts li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #e7ecf5}.course-drafts li>div{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.course-drafts small{color:#8b95a5}@media(max-width:640px){.figma-course-dialog:has(.course-create-form){width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.figma-course-dialog:has(.course-create-form)>.course-dialog-heading{padding:14px 16px}.course-create-form{padding:12px 12px 0}.course-create-form>section{padding:16px}.course-create-form .course-fields-grid,.course-create-reviewers{grid-template-columns:1fr}.course-create-form .course-class-list{grid-template-columns:repeat(2,minmax(0,1fr))}.course-create-form input,.course-create-form select{font-size:16px}.course-create-form>.course-dialog-actions{justify-content:space-between;gap:8px}.course-create-form>.course-dialog-actions .course-button{min-width:0;flex:1;padding:10px 8px}}.course-status-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid #edf0f5}.course-status-filters button{display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 16px;border:1px solid transparent;border-radius:7px;background:#f7f8fb;color:#6b7280;font:inherit;cursor:pointer}.course-status-filters button span{font-size:12px;font-variant-numeric:tabular-nums}.course-status-filters button[aria-pressed=true]{background:#eef4ff;color:#1677ff;border-color:#b8d5ff}.course-status-filters button:hover{border-color:#b8d5ff}.course-status-filters button:focus-visible{outline:2px solid #1890ff;outline-offset:2px}.course-card-title{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:8px}.course-card .course-card-title h3{margin:0}.course-lifecycle{padding:2px 9px;border-radius:5px;font-size:12px;line-height:20px;white-space:nowrap;color:#697386;background:#f1f3f6}.course-lifecycle.upcoming{color:#a66a0b;background:#fff6df}.course-lifecycle.ongoing{color:#1677ff;background:#eaf3ff}.course-lifecycle.completed{color:#20835d;background:#eaf8f1}@media(max-width:640px){.course-status-filters{gap:6px}.course-status-filters button{padding:8px 10px;min-height:44px}}label.workspace-course-filter{display:flex;flex:0 1 360px;flex-direction:column;align-items:stretch;gap:6px;width:360px;max-width:100%;min-width:0;color:#596579;font-size:14px;line-height:20px}label.workspace-course-filter>select{display:block;box-sizing:border-box;width:100%;max-width:none;height:40px;min-height:40px;padding:8px 12px;margin:0;border:1px solid #d9dfe8;border-radius:6px;background:#fff;color:#364256;font:inherit;line-height:22px}label.workspace-course-filter>select:focus-visible{outline:2px solid #1890ff;outline-offset:2px;border-color:#1890ff}@media(max-width:580px){label.workspace-course-filter{width:100%;flex-basis:auto}label.workspace-course-filter>select{height:44px;min-height:44px;font-size:16px}}.form-template-library{min-width:0}.template-library-actions{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}.template-library-table{min-width:650px;text-align:left}.template-library-table th:first-child{width:40%}.template-library-table th:last-child{width:140px}.template-library-table td small{margin-top:4px;color:#98a2b3;font-size:12px}.template-name-button{padding:0;border:0;background:none;color:#293347;text-align:left;font:inherit;font-weight:600;cursor:pointer}.template-name-button:hover{color:#4e6bfa}.template-scope-tag{display:inline-block;max-width:220px;padding:4px 10px;border-radius:6px;background:#eef4ff;color:#526caa;font-size:12px;overflow-wrap:anywhere}.template-scope-tag.course{background:#f2f0ff;color:#7967b4}.template-row-actions{display:flex;gap:18px}.template-row-actions button,.template-field-directory header button,.template-field-properties header button,.template-choice-editor button{border:0;padding:4px 0;background:none;color:#4e6bfa;font:inherit;cursor:pointer}.template-primary-button,.template-secondary-button{min-height:40px;padding:8px 20px;border:1px solid #dce1e9;border-radius:8px;background:#fff;color:#536074;font:inherit;white-space:nowrap;cursor:pointer}.template-primary-button{background:#637eff;border-color:#637eff;color:#fff}.template-primary-button:hover:not(:disabled){background:#5069ed}.template-secondary-button:hover:not(:disabled){border-color:#91b5ff;color:#4e6bfa}.template-primary-button:disabled,.template-secondary-button:disabled{opacity:.45;cursor:default}.template-empty{padding:36px 16px;text-align:center;color:#98a2b3}.template-builder-dialog,.enterprise-dialog.template-preview-dialog{width:min(1040px,calc(100vw - 48px));max-width:none;height:min(800px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:16px;color:#293347;background:#fff;box-shadow:0 20px 70px #1f2a442b;overflow:hidden}.template-builder-dialog[open],.enterprise-dialog.template-preview-dialog[open]{display:flex;flex-direction:column}.template-builder-dialog::backdrop{background:#0006}body:has(.template-builder-dialog[open],.template-preview-dialog[open]){overflow:hidden}.template-builder-heading,.template-preview-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;margin:0;padding:20px 24px;border-bottom:1px solid #edf0f5}.template-builder-heading>div{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.template-builder-heading h2,.template-preview-dialog>header h2{margin:0;font-size:20px;line-height:28px}.template-builder-heading span{color:#98a2b3;font-size:12px}.template-close{width:32px;height:32px;border:0;border-radius:6px;background:#fff;color:#667085;font-size:26px;cursor:pointer}.template-close:hover{background:#f4f6fa}.template-builder-tabs{display:flex;gap:6px;padding:12px 24px;border-bottom:1px solid #edf0f5}.template-builder-tabs button{padding:8px 18px;border:0;border-radius:7px;background:#fff;color:#8b93a1;font:inherit;cursor:pointer}.template-builder-tabs button[aria-pressed=true]{color:#4e6bfa;background:#eef2ff}.template-builder-body{display:flex;flex-direction:column;min-height:0;flex:1;padding:20px 24px;overflow:auto;background:#f7f9fc}.template-builder-body>form:not([hidden]){flex:1;min-height:0}.template-builder-body form[hidden]{display:none}.template-builder-fields{display:flex;flex-direction:column;height:100%;margin:0;padding:0;border:0;min-width:0}.template-basic-fields{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px 20px;margin-bottom:20px}.template-source-field{grid-column:1 / -1}.template-builder-dialog label{display:grid;gap:8px;font-size:13px;color:#536074}.template-builder-dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.template-form-preview :is(input:not([type=checkbox]):not([type=radio]),textarea){box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:9px 12px;border:1px solid #e2e7ef;border-radius:7px;background:#fff;color:#293347;font:inherit}.template-builder-dialog textarea,.template-form-preview textarea{resize:vertical}.template-builder-columns{display:grid;flex:1;grid-template-columns:245px minmax(0,1fr);gap:18px;min-height:240px}.template-field-directory{display:flex;flex-direction:column;min-height:0;border:1px solid #e8ecf3;border-radius:10px;background:#fff;overflow:hidden}.template-field-directory header{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid #edf0f5}.template-field-directory ol{list-style:none;margin:0;padding:6px;overflow:auto;min-height:0}.template-field-directory li button{display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 6px;width:100%;padding:10px 8px;border:0;border-radius:6px;text-align:left;color:#667085;background:#fff;font:inherit;cursor:pointer}.template-field-directory li button:hover{background:#f5f7fb}.template-field-directory li button[aria-current=true]{color:#4e6bfa;background:#eef2ff}.template-field-directory strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.template-field-directory li small{grid-column:2;font-size:11px;color:#98a2b3}.template-field-properties{display:flex;flex-direction:column;gap:16px;min-width:0;padding:18px;border:1px solid #e8ecf3;border-radius:10px;background:#fff;overflow:auto}.template-field-properties header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.template-field-properties h3,.template-field-properties h4{margin:0;font-size:14px}.template-field-properties header>div{display:flex;gap:14px;font-size:12px}.template-field-properties header .template-remove{color:#db6173}.template-field-properties button:disabled,.template-field-directory button:disabled{opacity:.4;cursor:default}.template-builder-dialog .template-required-toggle{display:flex;align-items:center;gap:8px}.template-choice-editor{display:grid;gap:10px}.template-choice-editor>div{display:flex;align-items:center;gap:12px}.template-choice-editor label{flex:1}.template-dialog-footer{display:flex;align-items:center;justify-content:space-between;flex:none;gap:14px;margin:0;padding:16px 24px;border-top:1px solid #edf0f5;background:#fff}.template-dialog-footer>span{color:#98a2b3;font-size:12px}.template-dialog-footer>div{display:flex;gap:10px}.template-preview-dialog{width:min(800px,calc(100vw - 48px))}.template-preview-dialog>.template-preview-meta{display:flex;flex:none;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:12px 24px;color:#8b93a1;font-size:12px}.template-preview-meta>span:first-child{padding:4px 10px;border-radius:5px;background:#eef3ff;color:#657bc0}.template-preview-body{flex:1;min-height:0;padding:24px 32px;overflow:auto;background:#f6f8fc}.template-form-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px 28px;max-width:820px;margin:0 auto;padding:30px 32px;border:1px solid #e8edf5;border-radius:10px;background:#fff;box-shadow:0 2px 8px #25385804}.template-preview-field{display:grid;gap:10px;min-width:0}.template-preview-wide{grid-column:1 / -1}.template-preview-label{position:relative;display:flex;align-items:center;gap:7px;min-height:22px}.template-preview-label>label{font-size:14px;font-weight:500;line-height:22px;color:#3b4658}.template-field-help{position:static}.template-field-help>summary{list-style:none;display:grid;place-items:center;width:15px;height:15px;border:1px solid #cdd5e2;border-radius:50%;color:#9aa6b9;font:11px/1 sans-serif;cursor:pointer}.template-field-help>summary::-webkit-details-marker{display:none}.template-field-help[open]>summary{border-color:#91acff;color:#637eff}.template-field-help>p{box-sizing:border-box;position:absolute;top:26px;left:0;z-index:5;width:min(300px,100%);margin:0;padding:12px 14px;border:1px solid #e2e8f2;border-radius:8px;background:#fff;box-shadow:0 6px 24px #2538581a;color:#7e8b9f;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.template-field-help>summary:focus-visible{outline:2px solid #1677ff;outline-offset:3px}.template-form-preview :is(input:not([type=checkbox]):not([type=radio]),textarea){background:#fafbfe;border-color:#e5eaf2;min-height:42px}.template-form-preview input::placeholder,.template-form-preview textarea::placeholder{color:#b1bac9}.template-preview-field fieldset{display:grid;gap:10px;margin:0;padding:12px;border:1px solid #edf0f5;border-radius:7px}.template-preview-field fieldset label{display:flex;align-items:center;gap:8px}.template-image-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:104px;min-height:112px;border:1px dashed #cdd7e8;border-radius:8px;background:#fafbfe;color:#9aa6b9;font-size:12px}.template-image-preview>span:first-child{color:#a6b4ca;font-size:25px;font-weight:300}.template-required,.template-validation{color:#db6173}.template-validation{font-size:12px}.template-builder-preview>h3{margin:0 0 20px;text-align:center;font-size:18px}.template-builder-preview{flex:none}.template-import-dialog{width:min(540px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:16px;background:#fff;color:#293347;box-shadow:0 20px 70px #1f2a442b;overflow:hidden}.template-import-dialog[open]{display:flex;flex-direction:column}.template-import-dialog::backdrop{background:#0006}body:has(.template-import-dialog[open]){overflow:hidden}.template-import-body{display:grid;gap:14px;min-height:0;margin:0;padding:20px 24px;overflow:auto}.template-import-body fieldset{display:grid;gap:18px;min-width:0;padding:0;margin:0;border:0}.template-import-body label{display:grid;gap:8px;min-width:0;font-size:13px}.template-import-body :is(input,select){box-sizing:border-box;width:100%;min-width:0;padding:10px;border:1px solid #e2e7ef;border-radius:7px;background:#fff;color:inherit;font:inherit}.template-import-body>p{margin:0;color:#8b93a1;font-size:12px;line-height:1.7}.template-import-dialog .template-dialog-footer{justify-content:flex-end}.template-import-review{flex:none;margin-bottom:16px;padding:12px 14px;border:1px solid #dce7ff;border-radius:8px;background:#eff5ff;color:#536b9c;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.template-import-review p{margin:0}.template-import-review details{margin-top:6px}.template-import-review summary{cursor:pointer}.template-import-review ul{max-height:100px;overflow:auto;margin:6px 0 0;padding-left:20px}.form-template-library button:focus-visible,.template-builder-dialog :is(button,input,select,textarea):focus-visible,.template-preview-dialog :is(button,input,textarea):focus-visible{outline:2px solid #1677ff;outline-offset:2px}.template-import-dialog :is(button,input,select):focus-visible{outline:2px solid #1677ff;outline-offset:2px}@media(max-width:720px){.template-builder-dialog,.enterprise-dialog.template-preview-dialog{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.template-builder-heading,.template-preview-dialog>header{padding:16px}.template-builder-body,.template-preview-body{padding:14px}.template-basic-fields{grid-template-columns:1fr}.template-builder-body>form:not([hidden]){flex:none}.template-builder-fields{height:auto}.template-builder-columns{grid-template-columns:1fr;min-height:0}.template-field-directory ol{max-height:180px}.template-field-properties{max-height:none}.template-dialog-footer{padding:12px 14px}.template-dialog-footer>span{max-width:100px}.template-form-preview{grid-template-columns:1fr;padding:20px;gap:22px}.template-library-actions{margin-left:0}.template-import-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.template-import-body{padding:16px}}.action-confirm-dialog{width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;padding:24px;border:1px solid #e2e7f0;border-radius:16px;color:#26334a;background:#fff;box-shadow:0 20px 70px #18294b30}.action-confirm-dialog::backdrop{background:#17284255}.action-confirm-dialog h2{margin:0 0 12px;font-size:18px}.action-confirm-dialog p{margin:0;line-height:1.7;white-space:pre-wrap;color:#647087}.action-confirm-dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.action-confirm-dialog button{border:1px solid #dfe5ef;border-radius:8px;padding:9px 16px;background:#fff;color:#445269;cursor:pointer}.action-confirm-dialog button.primary{background:#526cff;border-color:#526cff;color:#fff}.action-confirm-dialog button.danger{background:#e34e58;border-color:#e34e58;color:#fff}.feature-grid{display:grid;grid-template-columns:252px minmax(0,1fr);gap:18px;align-items:start}.feature-panel{min-width:0;background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}.feature-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:13px;padding:21px 22px 19px;border-bottom:1px solid var(--line)}.feature-panel-heading h2{font-size:15px;font-weight:600;color:#405575;line-height:1.7}.feature-panel-heading p{font-size:11px;color:#8795ae;line-height:1.8;margin-top:6px}.feature-panel-body{padding:23px}.feature-panel>.inline-error{margin:12px}.subtle-badge{font-size:10px;color:#8294b3;background:#f2f5fb;border-radius:4px;padding:4px 7px;white-space:nowrap}.resource-list{display:grid;gap:6px;padding:11px;max-height:560px;overflow:auto}.resource-item{display:grid;gap:7px;background:transparent;border:1px solid transparent;border-radius:6px;width:100%;text-align:left;padding:13px 11px;color:#6f819d;min-width:0}.resource-item strong{font-size:12px;font-weight:500;line-height:1.8;overflow-wrap:anywhere}.resource-item>span{font-size:10px;color:#8e9bb1;line-height:1.7}.resource-item small{font-size:9px;color:#a0abc0;line-height:1.6}.resource-item.selected{background:#f1f5ff;border-color:#e9effe;color:#5577be}.resource-item-title{display:flex;align-items:flex-start;justify-content:space-between;gap:7px}.resource-item-title .status-pill{margin-top:3px;flex-shrink:0}.feature-toolbar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:18px}.segmented-control{display:inline-flex;border:1px solid #e2e8f2;padding:3px;border-radius:7px;background:#edf2f9;gap:3px}.segmented-control button{border:0;border-radius:4px;color:#8a9ab3;background:transparent;font-size:11px;padding:8px 15px}.segmented-control button.selected{background:#fff;color:#5b79b6;box-shadow:0 1px 4px #38568b09}.compact-form{display:flex;flex-direction:column;gap:0}.compact-form fieldset{border:0;margin:0;padding:0;min-width:0}.compact-form label{font-size:12px;font-weight:500;color:#607491;display:flex;align-items:center;gap:8px;line-height:1.7;margin-bottom:8px}.compact-form label span{font-size:10px;color:#9aa7bc;font-weight:400}.compact-form label em{font-size:9px;color:#7d92b9;font-style:normal;background:#f2f5fc;padding:1px 4px;font-weight:400;border-radius:3px}.compact-form input:not([type=checkbox]),.compact-form textarea,.compact-form select{display:block;width:100%;min-height:39px;border:1px solid #dfe6f2;border-radius:5px;padding:9px 10px;background:#fff;color:#4d6382;margin:0 0 20px;font-size:12px;line-height:1.7}.compact-form textarea{resize:vertical;min-height:100px}.compact-form input::placeholder,.compact-form textarea::placeholder{color:#adb8cb}.compact-form input:disabled,.compact-form textarea:disabled,.compact-form select:disabled{background:#f8fafd;color:#7285a3;opacity:1}.compact-form input:focus,.compact-form textarea:focus,.compact-form select:focus{border-color:#a3b8ef}.compact-form input[type=checkbox]{accent-color:var(--blue);width:15px;height:15px;margin:0;flex-shrink:0}.compact-form h3{font-size:12px;font-weight:500;color:#637894;margin-bottom:17px}.compact-form>.button{align-self:flex-start}.form-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-columns>div{min-width:0}.form-note{font-size:11px;color:#8c9bb3;line-height:1.9;margin:0 0 17px}.form-note .text-button{margin-left:7px}.form-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:23px 0 15px;padding-top:21px;border-top:1px solid #eef1f6}.form-section-heading h3{font-size:12px;color:#607695;font-weight:500;margin:0}.form-section-heading p{font-size:10px;color:#94a2b9;line-height:1.8;margin-top:6px}.form-section-heading .text-button{flex-shrink:0}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap}.form-actions>small{color:#a2adc2;font-size:10px}.form-actions .form-note{margin:0 auto 0 0;font-size:10px}.create-course-form{padding:22px;border-top:1px solid var(--line)}.create-course-form h3{margin-bottom:18px}.member-form{margin-top:27px;padding-top:24px;border-top:1px solid var(--line)}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px;text-align:left;color:#657994}.data-table th{background:#f8fafd;font-size:10px;color:#8b9cb6;font-weight:400;padding:11px 12px;border-bottom:1px solid #edf1f7;white-space:nowrap}.data-table td{padding:14px 12px;border-bottom:1px solid #edf1f7;line-height:1.8}.data-table tr:last-child td{border-bottom:0}.data-table .text-button{white-space:nowrap}.quiet-empty{padding:24px 16px;background:#fafbfd;border:1px dashed #e8edf6;border-radius:6px;color:#9ca9be;font-size:11px;text-align:center;line-height:1.9}.feature-empty{min-height:420px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 35px;text-align:center}.feature-empty .empty-emblem{margin-bottom:20px}.feature-empty h3{font-size:16px;font-weight:500;color:#687c9b;line-height:1.8}.feature-empty>div{max-width:390px;font-size:12px;line-height:2;color:#98a6bd;margin-top:12px}.feature-empty .button{margin-top:22px}.field-editor-list{display:grid;gap:10px}.field-editor-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 45px 30px;align-items:center;gap:11px;background:#f8fafd;border:1px solid #eaf0f8;padding:13px;border-radius:6px}.field-editor-row>div{min-width:0}.field-editor-row label{font-size:10px;margin-bottom:5px}.field-editor-row input:not([type=checkbox]),.field-editor-row select{margin:0;min-height:35px;padding:7px 9px;font-size:11px}.field-editor-row .checkbox-label{margin:23px 0 0;gap:4px;color:#899ab6;font-size:10px;white-space:nowrap}.field-editor-row .danger-text{color:#a68d8a;margin-top:22px;font-size:10px}.recipient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-form .recipient-option{display:flex;align-items:flex-start;border:1px solid #e8edf5;border-radius:6px;padding:13px 12px;margin:0;background:#fcfdff;gap:9px;cursor:pointer}.recipient-option input{margin-top:3px!important}.compact-form .recipient-option.selected{border-color:#cbd8f8;background:#f5f8ff}.recipient-option strong{display:block;font-size:11px;font-weight:500;color:#7184a4}.recipient-option small{display:block;font-size:9px;color:#9aa9c2;margin-top:4px;line-height:1.7}.conflict-notice,.state-notice{padding:12px 14px;background:#fffaf2;border:1px solid #f1e6d1;border-radius:5px;color:#a48c61;font-size:11px;line-height:1.9;margin-bottom:20px}.success-note{display:flex;gap:7px;align-items:flex-start;font-size:11px;line-height:1.9;color:#659582;margin:12px 0}.success-note svg{margin-top:3px}.field-error{color:#b57569;font-size:11px;line-height:1.8;margin:-9px 0 15px}.status-pill{display:inline-flex;align-items:center;font-size:9px;font-weight:400;line-height:1.6;color:#95a2b8;background:#f2f5fa;padding:3px 7px;border-radius:4px;white-space:nowrap}.status-pill.pending_review{color:#688bc5;background:#edf4ff}.status-pill.returned{color:#b18c53;background:#fff6e9}.status-pill.confirmed,.status-pill.published{color:#6d9b87;background:#edf7f0}.step-label{color:#91a0b8;font-size:10px;line-height:1.8;display:block;margin-bottom:5px}.publication-preview{margin-top:30px;padding:22px;border:1px solid #dce7fb;background:#fbfcff;border-radius:8px}.publication-preview>header{margin-bottom:19px}.publication-preview h3{font-size:15px;font-weight:500;color:#536f9d;line-height:1.8}.publication-preview header p{font-size:10px;color:#91a1bd;line-height:1.8;margin-top:7px}.missing-fields{background:#fff9ef;border:1px solid #f2e8d7;padding:12px 15px;margin-bottom:20px;border-radius:5px;color:#a38b66;font-size:11px;line-height:1.9}.missing-fields strong{font-weight:500}.missing-fields ul{margin:5px 0 0;padding-left:17px}.preview-details{display:grid;grid-template-columns:66px minmax(0,1fr);font-size:11px;gap:15px 13px;line-height:1.9;margin:0}.preview-details dt{color:#9aa8bf}.preview-details dd{color:#6b7e9d;margin:0}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.field-summary{list-style:none;margin:0;padding:0;display:grid;gap:7px}.field-summary li{display:flex;justify-content:space-between;gap:10px}.field-summary span{font-size:9px;color:#a0adc4}.preview-recipients{margin-top:24px;border-top:1px solid #e7edf9;padding-top:20px}.preview-recipients h4{font-size:11px;font-weight:500;color:#6b82a8;margin-bottom:12px}.preview-recipients h4 span{font-weight:400;color:#9aaac2;margin-left:8px;font-size:10px}.publication-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid #e6ecf8}.publication-actions p{font-size:11px;color:#7c92b6;line-height:1.8}.publication-actions small{font-size:9px;color:#a4b2c8;display:block;margin-top:5px}.publication-actions .button{flex-shrink:0}.success-banner{display:flex;gap:8px;align-items:flex-start;background:#f0f8f3;border:1px solid #ddeee3;color:#6a9a82;font-size:11px;padding:14px;border-radius:6px;line-height:1.9;margin-top:20px}.success-banner svg{margin-top:2px}.assignment-requirements{padding:0 0 24px}.assignment-requirements h3{font-weight:500;font-size:12px;color:#6c809e;margin-bottom:11px}.assignment-requirements>p{font-size:12px;color:#7387a3;line-height:2}.deadline-line{display:flex;gap:6px;color:#9aa8bf;font-size:10px;line-height:1.8;margin-top:16px;align-items:center}.detail-heading-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.submission-history .form-section-heading{margin-top:0}.submission-version{border:1px solid #e7edf7;border-radius:6px;margin-bottom:12px;overflow:hidden}.submission-version summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#fafcfe;list-style:none}.submission-version summary::-webkit-details-marker{display:none}.submission-version summary>span:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.submission-version summary strong{font-size:11px;color:#748aaa;font-weight:500}.submission-version summary time{font-size:9px;color:#a4b1c6}.submission-version-body{padding:20px 18px;border-top:1px solid #edf1f8}.answer-details{margin:0;display:grid;gap:20px}.answer-details dt{color:#9aaac0;font-size:10px;margin-bottom:7px}.answer-details dd{color:#6e83a0;font-size:12px;line-height:2;margin:0}.review-record{display:flex;align-items:flex-start;gap:9px;margin-top:22px;border-top:1px solid #eef2f7;padding-top:17px;color:#6d9d88}.review-record.returned{color:#ae936a}.review-record>svg{margin-top:2px}.review-record strong{font-size:10px;font-weight:500}.review-record p{font-size:11px;line-height:1.9;margin-top:6px}.review-record time{font-size:9px;opacity:.7;display:block;margin-top:9px}.progress-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:20px}.progress-counts>div{padding:14px 12px;border:1px solid #e9eef7;background:#fcfdff;border-radius:6px}.progress-counts strong{font-size:21px;font-weight:500;color:#7089b1;display:block;font-variant-numeric:tabular-nums}.progress-counts span{font-size:9px;color:#a1aec4;display:block;margin-top:7px}.nested-assignment{border:1px solid #e5ecf8;border-radius:7px;overflow:hidden;margin-top:26px}.nested-assignment-close{padding:7px 17px;border-bottom:1px solid #edf1f8;background:#fbfcff;text-align:right}.nested-assignment .feature-panel-body{padding:19px}.run-business-actions{display:grid;gap:9px;margin:15px 0}.business-action-card{display:flex;gap:10px;align-items:center;background:#f9fbff;border:1px solid #e1eafb;border-radius:6px;color:#7c93b9;padding:13px;text-align:left}.business-action-card strong{display:block;font-size:11px;color:#6585bc;font-weight:500}.business-action-card small{display:block;font-size:9px;color:#9dacbf;margin-top:5px}.business-action-card>svg:last-child{margin-left:auto}.logout-button{margin-left:auto}.sidebar-account>span:nth-child(2){min-width:0}.sidebar-account strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:107px}.sidebar-account small{line-height:1.7}.topbar-logout{font-size:10px}@media(hover:hover)and (pointer:fine){.resource-item:hover:not(.selected),.business-action-card:hover{background:#f6f9ff;border-color:#dce7fb}.recipient-option:hover{border-color:#ccdafa}}@media(max-width:1200px){.feature-grid{grid-template-columns:220px minmax(0,1fr);gap:14px}.feature-panel-heading{padding:18px}.feature-panel-body{padding:19px}.field-editor-row{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.field-editor-row .checkbox-label,.field-editor-row .danger-text{margin-top:0}.field-editor-row .danger-text{justify-self:end}.publication-preview{padding:18px}}@media(max-width:1000px){.feature-grid{grid-template-columns:1fr}.resource-list{display:flex;overflow:auto;max-height:160px}.resource-item{min-width:210px;max-width:270px}.create-course-form{display:flex}.course-sidebar .resource-list{max-height:130px}.create-course-form .button{align-self:flex-start}.feature-empty{min-height:300px}.field-editor-row{grid-template-columns:minmax(0,1fr) 120px 50px 30px}.field-editor-row .checkbox-label,.field-editor-row .danger-text{margin-top:21px}}@media(max-width:820px){.sidebar nav{overflow-x:auto}.nav-item{flex-shrink:0}.nav-item span{white-space:nowrap}.topbar-logout{font-size:9px}}@media(max-width:580px){.feature-panel-heading{padding:16px}.feature-panel-heading h2{font-size:14px}.feature-panel-heading p{font-size:10px}.feature-panel-body{padding:17px 15px}.feature-toolbar{gap:8px}.segmented-control button{padding:7px 10px;font-size:10px}.feature-toolbar>.button{font-size:10px;padding:8px 10px}.form-columns{grid-template-columns:1fr;gap:0}.compact-form input:not([type=checkbox]),.compact-form textarea,.compact-form select{font-size:16px;padding:8px 10px}.compact-form label{font-size:11px}.compact-form input:not([type=checkbox]),.compact-form select{min-height:40px}.field-editor-row{grid-template-columns:minmax(0,1fr) 109px;padding:11px;gap:10px}.field-editor-row .checkbox-label,.field-editor-row .danger-text{margin-top:0}.field-editor-row label{font-size:9px}.field-editor-row input:not([type=checkbox]),.field-editor-row select{font-size:13px}.recipient-grid{gap:8px}.compact-form .recipient-option{padding:10px 8px;gap:7px}.recipient-option strong{font-size:10px}.recipient-option small{font-size:8px}.form-section-heading p{font-size:9px}.form-section-heading h3{font-size:11px}.form-actions .form-note{flex-basis:100%;font-size:9px}.publication-preview{padding:15px}.publication-preview h3{font-size:14px}.preview-details{grid-template-columns:55px minmax(0,1fr);gap:12px 9px;font-size:10px}.field-summary li{display:grid;gap:0}.publication-actions{align-items:flex-start;flex-direction:column}.publication-actions .button{align-self:flex-end}.data-table{font-size:11px}.data-table th{padding:9px 8px;font-size:9px}.data-table td{padding:11px 8px}.data-table .text-button{font-size:9px}.assignment-requirements>p,.answer-details dd{font-size:11px}.assignment-requirements h3{font-size:11px}.deadline-line{font-size:9px}.progress-counts{gap:5px}.progress-counts>div{padding:12px 9px}.progress-counts strong{font-size:18px}.progress-counts span{font-size:8px}.detail-heading-actions{gap:3px}.status-pill{font-size:8px;padding:3px 5px}.submission-version summary{padding:12px;gap:6px}.submission-version summary strong{font-size:10px}.submission-version-body{padding:16px 13px}.feature-empty{padding:35px 23px}.feature-empty h3{font-size:15px}.feature-empty>div{font-size:11px}}.responsibility-counts>button{padding:14px 12px;border:1px solid #e9eef7;background:#fcfdff;border-radius:6px;text-align:left;cursor:pointer;font:inherit}.responsibility-counts>button.selected{border-color:#7089b1;background:#f2f6fc}.responsibility-queue .teacher-progress-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.responsibility-role{display:block;color:#8592a8;font-size:12px;margin-top:2px}.responsibility-queue .status-pill+.status-pill{margin-left:6px}.responsibility-restricted h4{margin:0 0 10px}.form-template-banner{margin:8px 0;padding:8px 10px;background:#fff8e8;border:1px solid #f0d48a;border-radius:6px;color:#7a5b12}.form-template-fields,.template-options{display:grid;gap:8px}.template-options label{display:flex;gap:8px;align-items:center}.form-template-manager{display:grid;gap:16px}.template-card-list{display:grid;gap:12px}.template-card{background:#fff;border:1px solid #edf0f4;border-radius:12px;padding:18px 20px}.template-card header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.template-card h3{margin:0;font-size:16px}.template-card header p{margin:4px 0 0;color:#8b919a;font-size:13px}.template-card .field-summary{margin-top:14px}.template-card .field-summary li{align-items:baseline;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.template-card .field-summary small{display:block;color:#98a2b3}.template-field-card{display:grid;gap:10px;padding:14px;border:1px solid #eef0f4;border-radius:8px;background:#fafbfc}.template-field-card .template-field-line{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(120px,.8fr) auto auto;gap:12px;align-items:end}.template-field-card label{display:grid;gap:6px;font-size:13px}.template-options{display:grid;gap:8px}@media(max-width:760px){.template-field-card .template-field-line{grid-template-columns:1fr 1fr}}.form-print-host{position:fixed;inset:0;z-index:90;background:#fff;overflow:auto;padding:24px}.form-print-sheet{max-width:720px;margin:0 auto;color:#1c2430}.form-print-sheet h1{font-size:22px;margin:0 0 8px}.form-print-sheet h2{font-size:16px;margin:18px 0 8px}.form-print-kicker{margin:0;color:#7a5b12}.form-print-sheet dl{display:grid;gap:12px;margin:16px 0}.form-print-sheet dt span,.form-print-sheet dd small{display:block;color:#6b7891;font-size:12px;font-weight:400}.form-print-toolbar{display:flex;gap:8px;max-width:720px;margin:0 auto 16px}@media print{body>*:not(.form-print-host){display:none!important}.form-print-host{position:static;padding:0;overflow:visible}.form-print-toolbar{display:none!important}}.teacher-occurrence-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}.teacher-schedule-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:800px){.teacher-schedule-fields{grid-template-columns:1fr}}.task-scope-line{margin:6px 0 0;color:#6b7891;font-size:13px}.responsibility-workspace>.teacher-progress-filters{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:10px}.process-count-scroll{overflow-x:auto}.process-count-scroll .data-table{min-width:880px}.teacher-figma{--teacher-primary: #1890ff;--teacher-text: rgba(0, 0, 0, .85);--teacher-secondary: rgba(0, 0, 0, .65);--teacher-muted: rgba(0, 0, 0, .45);color:var(--teacher-text)}.teacher-task-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px;min-height:44px}.teacher-task-toolbar>h2{color:var(--teacher-text);font-size:18px;font-weight:500;margin-right:8px}.teacher-task-filters{display:flex;align-items:center;gap:4px;padding:4px;border-radius:100px;background:#ffffffb3}.teacher-task-filters button{border:0;border-radius:100px;background:transparent;color:var(--teacher-secondary);font-size:14px;padding:8px 18px}.teacher-task-filters button.selected{background:#e6f4ff;color:#1890ff}.teacher-task-refresh{margin-left:auto}.teacher-publish-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 22px;background:#f3f7fccc;color:#1890ff;border:0;border-radius:100px;box-shadow:0 0 4px #0000000f;font-size:16px;font-weight:600}.teacher-task-search{display:block;margin-bottom:16px}.teacher-task-search input{width:100%;height:38px;border:1px solid transparent;border-radius:100px;padding:8px 16px;color:var(--teacher-text);background:#fff;font-size:14px;outline:none}.teacher-task-search input::placeholder{color:var(--teacher-muted)}.teacher-task-search input:focus{border-color:#91caff;box-shadow:0 0 0 2px #1890ff14}.teacher-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.teacher-task-card{min-width:0;background:#fff;border-radius:8px;box-shadow:0 0 2px #0000000f;overflow:hidden}.teacher-card-open{display:flex;flex-direction:column;width:100%;min-height:228px;padding:16px;border:1px solid transparent;border-radius:inherit;background:transparent;color:var(--teacher-text);text-align:left}.teacher-card-open>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;width:100%}.teacher-card-open h3{min-width:0;margin:0;font-size:16px;line-height:22px;font-weight:500;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.teacher-task-status{flex-shrink:0;display:inline-flex;align-items:center;min-height:22px;border-radius:100px;padding:2px 8px;font-size:12px;font-weight:400;line-height:18px;white-space:nowrap}.teacher-task-status.published{color:#10b981;background:#d1fae5}.teacher-task-status.draft{color:#a16207;background:#fef3c7}.teacher-task-description{width:100%;color:var(--teacher-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px;margin:8px 0 12px}.teacher-task-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;line-height:18px;color:var(--teacher-secondary)}.teacher-task-meta>span{display:inline-flex;gap:4px;align-items:center}.teacher-task-meta .overdue{color:#ff4d4f}.teacher-task-meta img,.teacher-card-open footer img{display:block;flex-shrink:0}.teacher-card-progress{width:100%;margin-top:12px;padding:10px 0 12px;border-top:1px solid #0000000f}.teacher-card-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;color:var(--teacher-secondary);font-size:14px;line-height:18px;margin-bottom:7px}.teacher-card-progress strong{color:var(--teacher-text);font-size:16px;font-weight:500;font-variant-numeric:tabular-nums}.teacher-progress-track{height:6px;overflow:hidden;border-radius:10px;background:#f0f0f0;width:100%}.teacher-progress-track>span{display:block;height:6px;border-radius:inherit;background:url(/figma/teaching/progress-fill.png) center / 100% 6px no-repeat}.teacher-progress-caption{display:flex;justify-content:space-between;margin-top:10px;gap:8px;font-size:14px;line-height:18px;color:var(--teacher-muted)}.teacher-progress-caption b{color:var(--teacher-text);font-size:15px;font-variant-numeric:tabular-nums;font-weight:500}.teacher-progress-pending{font-size:12px;line-height:18px;color:var(--teacher-muted);margin-top:10px}.teacher-card-open>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:auto;padding-top:10px;border-top:1px solid #0000000f;color:var(--teacher-muted);font-size:13px;line-height:18px}.teacher-card-open>footer>span{display:inline-flex;align-items:center;gap:4px;min-width:0}.teacher-card-open>footer>span:last-child{flex-shrink:0;font-size:12px;color:#1890ff}.teacher-draft-summary{width:100%;border-top:1px solid #0000000f;margin-top:12px;padding:10px 0 12px}.teacher-draft-summary strong{font-size:14px;line-height:20px;font-weight:500;color:#a16207}.teacher-draft-summary p{font-size:13px;line-height:20px;color:var(--teacher-secondary);margin-top:4px}.teacher-draft-summary small{display:block;font-size:12px;line-height:18px;color:var(--teacher-muted);margin-top:3px}.teacher-task-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}.teacher-task-pagination>p{font-size:12px;line-height:18px;color:#7e7367}.teacher-task-pagination strong{font-weight:400;color:#1890ff}.teacher-task-pagination nav{display:flex;align-items:center;gap:8px}.teacher-task-pagination nav button{min-height:32px;border:1px solid #e9e9e9;border-radius:10px;padding:6px 10px;background:transparent;font-size:12px;color:#3b332b}.teacher-task-pagination nav span{min-width:32px;min-height:32px;display:grid;place-items:center;border-radius:10px;color:#1890ff;background:#f5faff;font-size:12px}.teacher-task-pagination nav button:disabled{opacity:.45;cursor:default}.teacher-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.teacher-task-dialog{--teacher-text: rgba(0, 0, 0, .85);--teacher-secondary: rgba(0, 0, 0, .65);--teacher-muted: rgba(0, 0, 0, .45);position:fixed;width:min(1200px,calc(100vw - 64px));max-width:none;max-height:calc(100dvh - 64px);padding:0;border:0;border-radius:18px;background:#f5f5f5;color:var(--teacher-text);box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d;overflow-y:auto;overscroll-behavior:contain}.teacher-task-dialog::backdrop{background:#0006}body:has(.teacher-task-dialog[open]){overflow:hidden}.teacher-dialog-heading{position:sticky;top:0;z-index:2;min-height:72px;padding:20px 24px 20px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #0000000f;background:#fff}.teacher-dialog-heading>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.teacher-dialog-heading h2{color:var(--teacher-text);font-size:20px;line-height:28px;font-weight:500}.teacher-draft-version{color:var(--teacher-muted);font-size:12px}.teacher-dialog-close{display:grid;place-items:center;padding:4px;border:0;background:transparent;border-radius:4px}.teacher-dialog-close img{display:block}.teacher-dialog-close:disabled{opacity:.4}.teacher-draft-body{padding:16px 5.2% 24px}.teacher-draft-dialog[open]{display:flex;flex-direction:column;width:min(1040px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));overflow:hidden}.teacher-draft-dialog>.teacher-dialog-heading{flex:none;position:static}.teacher-draft-dialog>.teacher-draft-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.teacher-draft-steps{display:flex;flex:none;justify-content:center;gap:28px;padding:16px 24px;background:#fff;border-bottom:1px solid #edf0f5}.teacher-draft-steps button{display:flex;align-items:center;gap:8px;padding:4px 0;border:0;background:transparent;color:#8b93a1;font:inherit;cursor:pointer}.teacher-draft-steps button>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f0f2f6}.teacher-draft-steps button[aria-current=step]{color:#4e6bfa;font-weight:600}.teacher-draft-steps button[aria-current=step]>span{background:#637eff;color:#fff}.teacher-draft-footer{display:flex;flex:none;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;border-top:1px solid #edf0f5;background:#fff}.teacher-draft-footer>div{display:flex;gap:10px}.teacher-draft-footer .button{min-height:40px;padding:8px 20px;border-radius:8px}.teacher-draft-footer .button.primary{background:#637eff;color:#fff;border-color:#637eff}.task-recipient-classes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-recipient-classes>label,.task-recipient-members>label{display:flex;align-items:center;gap:10px;min-width:0;padding:14px;border:1px solid #e8ecf4;border-radius:8px;background:#fff}.task-recipient-classes>label:has(:checked),.task-recipient-members>label:has(:checked){border-color:#91acff;background:#f6f8ff}.task-recipient-classes span,.task-recipient-members>label>span{margin-left:auto;color:#8b93a1;font-size:12px}.task-recipient-toolbar{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0}.task-recipient-toolbar>label{flex:1 1 200px}.task-recipient-members{display:grid;gap:8px}.task-recipient-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 10px}.task-recipient-summary strong{font-size:14px}.task-recipient-picker input[type=checkbox],.task-recipient-picker input[type=radio]{accent-color:#637eff}.teacher-draft-steps button:focus-visible,.teacher-draft-footer button:focus-visible{outline:2px solid #1677ff;outline-offset:3px}@media(max-width:720px){.teacher-draft-dialog[open]{width:calc(100vw - 24px);height:calc(100dvh - 24px)}.teacher-draft-steps{gap:12px;padding:12px}.teacher-draft-steps button{font-size:12px;gap:5px}.teacher-draft-steps button>span{width:22px;height:22px}.teacher-draft-footer{padding:12px;gap:8px}.teacher-draft-footer .button{padding:8px 12px;font-size:13px}.task-recipient-classes{grid-template-columns:1fr}.task-recipient-members>label{flex-wrap:wrap}}.teacher-task-form{gap:16px}.teacher-task-form fieldset{display:grid;gap:16px}.teacher-form-section{padding:30px 32px;background:#fff;border-radius:8px;box-shadow:0 0 2px #0000000f}.teacher-form-section>header{margin-bottom:24px}.teacher-form-section>header h3,.teacher-task-form .teacher-form-section h3{color:var(--teacher-text);font-size:16px;font-weight:500;line-height:22px;margin:0}.teacher-form-section>header p{color:var(--teacher-secondary);font-size:14px;line-height:22px;margin-top:8px}.teacher-unavailable-tag{display:inline-flex;border:1px solid #d9d9d9;border-radius:4px;color:var(--teacher-muted);padding:0 6px;font-size:11px;font-weight:400;margin-left:8px;vertical-align:middle}.teacher-task-types{display:flex;align-items:center;flex-wrap:wrap;gap:24px 64px;color:var(--teacher-muted);font-size:14px;line-height:21px}.teacher-task-types>span{display:flex;align-items:center;gap:8px}.teacher-task-types i{width:16px;height:16px;border-radius:50%;border:1px solid #d1d5dc;background:#fafafa}.teacher-task-form label{color:var(--teacher-text);font-size:14px;font-weight:400;line-height:22px;margin-bottom:8px}.teacher-task-form label span{color:var(--teacher-muted);font-size:12px}.teacher-task-form label .teacher-required{color:#ff4d4f;font-size:14px}.teacher-task-form input:not([type=checkbox]):not([type=radio]),.teacher-task-form textarea,.teacher-task-form select{min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:4px;font-size:14px;color:var(--teacher-text);background:#f3f4f6;margin-bottom:24px}.teacher-task-form textarea{min-height:140px}.teacher-task-form input::placeholder,.teacher-task-form textarea::placeholder{color:var(--teacher-muted)}.teacher-task-form input:not([type=checkbox]):not([type=radio]):focus,.teacher-task-form textarea:focus,.teacher-task-form select:focus{border-color:#91caff;outline:0;box-shadow:0 0 0 2px #1890ff14}.teacher-task-form .teacher-form-section>input:last-child{margin-bottom:0}.teacher-task-form input[type=radio]{display:inline-block;width:16px;height:16px;min-height:0;margin:3px 0 0;padding:0;border:0;accent-color:#1890ff}.teacher-scope-options{display:grid;gap:16px}.teacher-scope-options>label{display:flex;align-items:flex-start;gap:12px;border:1px solid #e5e7eb;border-radius:4px;padding:16px;margin:0;cursor:pointer}.teacher-scope-options>label.selected{border-color:#91bfff;background:#f6faff}.teacher-scope-options strong{color:var(--teacher-text);font-size:14px;font-weight:500}.teacher-scope-options small{display:block;color:var(--teacher-secondary);font-size:12px;line-height:20px;margin-top:3px}.teacher-member-selection{border-left:2px solid #91bfff;margin:24px 0 0 18px;padding-left:24px}.teacher-member-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.teacher-member-heading>strong{font-size:14px;line-height:22px;font-weight:500}.teacher-member-heading>strong span{font-size:12px;color:var(--teacher-muted);font-weight:400;margin-left:8px}.teacher-task-form .recipient-option{border:0;border-radius:0;background:transparent;padding:0;gap:10px}.teacher-task-form .recipient-option.selected{border-color:transparent;background:transparent}.teacher-task-form .recipient-option strong{color:var(--teacher-text);font-size:14px;font-weight:400}.teacher-task-form .recipient-option small{color:var(--teacher-muted);font-size:12px;margin-top:2px}.teacher-task-form .recipient-grid{gap:18px 32px}.teacher-section-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.teacher-section-actions .text-button,.teacher-member-heading .text-button,.teacher-task-form .form-note .text-button{color:#1890ff;font-size:13px}.teacher-task-form .field-editor-row{grid-template-columns:minmax(0,1fr) 140px 52px 38px;gap:16px;background:#fafafa;border-color:#f0f0f0;padding:16px}.teacher-task-form .field-editor-row label{font-size:12px}.teacher-task-form .field-editor-row input:not([type=checkbox]),.teacher-task-form .field-editor-row select{background:#fff;border-color:#e5e7eb;margin-bottom:0;font-size:13px}.teacher-task-form .field-editor-row .checkbox-label{font-size:12px;color:var(--teacher-secondary);margin-top:25px}.teacher-task-form .field-editor-row .danger-text{font-size:12px;color:#b45353;margin-top:25px}.teacher-task-form .form-note{color:var(--teacher-muted);font-size:13px}.teacher-editor-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:20px;padding:12px 0 8px}.teacher-editor-actions>.button{min-height:46px;border-radius:10px;padding:10px 24px;font-size:16px;color:var(--teacher-secondary);border-color:#0003}.teacher-editor-actions>small{flex-basis:100%;text-align:center;color:var(--teacher-muted);font-size:12px}.teacher-gradient-button.button.primary{color:#fff;border-color:transparent;background:url(/figma/teaching/publish-button.png) center / 100% 100% no-repeat}.teacher-gradient-button.button.primary:disabled{opacity:.5}.teacher-task-dialog .success-note{color:#168666;font-size:13px}.teacher-task-dialog .state-notice,.teacher-task-dialog .conflict-notice{font-size:13px}.teacher-publication-preview{padding:30px 32px;border:1px solid #91caff;border-radius:8px;background:#fff;margin-top:20px}.teacher-publication-preview>header{border-bottom:1px solid #f0f0f0;padding-bottom:20px;margin-bottom:24px}.teacher-publication-preview .step-label{font-size:12px;color:#1890ff}.teacher-publication-preview h3{color:var(--teacher-text);font-size:20px;line-height:28px}.teacher-publication-preview header p{color:var(--teacher-secondary);font-size:13px}.teacher-publication-preview .preview-details{grid-template-columns:80px minmax(0,1fr);font-size:14px;gap:20px}.teacher-publication-preview .preview-details dt{color:var(--teacher-muted)}.teacher-publication-preview .preview-details dd{color:var(--teacher-text)}.teacher-publication-preview .field-summary span{font-size:12px;color:var(--teacher-muted)}.draft-template-preview{display:grid;gap:12px;min-width:0;margin-top:8px}.teacher-task-form .draft-template-preview .form-note{margin:0}.teacher-task-form .template-form-preview :is(input:not([type=checkbox]):not([type=radio]),textarea){margin-bottom:0;background:#fafbfe;border:1px solid #e5eaf2;min-height:42px}.teacher-task-form .template-preview-label>label,.teacher-task-form .template-preview-field fieldset label{margin-bottom:0}.teacher-task-form .template-form-preview .template-required{color:#db6173;font-size:14px}.teacher-publication-preview .template-form-preview{max-width:none;margin:0;padding:16px}.teacher-publication-preview .preview-recipients{border-color:#f0f0f0}.teacher-publication-preview .preview-recipients h4{color:var(--teacher-text);font-size:14px}.teacher-publication-preview .preview-recipients h4 span{font-size:12px;color:var(--teacher-muted)}.teacher-publication-preview .publication-actions{border-color:#f0f0f0}.teacher-publication-preview .publication-actions p{color:var(--teacher-secondary);font-size:13px}.teacher-publication-preview .publication-actions small{color:var(--teacher-muted);font-size:12px}.teacher-publication-preview .publication-actions .button{min-height:46px;padding:10px 24px;font-size:16px;border-radius:10px}.teacher-publication-preview .success-banner{color:#168666;border-color:#b7eb8f;background:#f6ffed;font-size:14px}.teacher-published-note{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px}.teacher-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 32px;background:#fff;border-bottom:1px solid #f0f0f0}.teacher-progress-heading h2{color:var(--teacher-text);font-size:22px;line-height:32px;font-weight:500;margin-bottom:14px}.teacher-progress-heading .step-label{color:var(--teacher-muted);font-size:13px;margin-bottom:8px}.teacher-progress-heading-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.teacher-progress-heading-actions .button{min-height:38px;padding:8px 16px;font-size:14px;border-radius:8px}.teacher-progress-body{padding:24px 32px 32px;background:#fff}.teacher-progress-overview{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;padding-bottom:24px}.teacher-progress-total>span{font-size:14px;color:var(--teacher-secondary)}.teacher-progress-total>strong{display:block;font-size:38px;line-height:52px;font-weight:500;color:#1890ff;font-variant-numeric:tabular-nums}.teacher-progress-total>strong small{font-size:20px;margin-left:3px}.teacher-progress-total>p{color:var(--teacher-muted);font-size:13px;margin-top:10px}.teacher-progress-total>p b{color:var(--teacher-text);font-weight:500}.teacher-task-progress .progress-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-content:stretch;margin:0}.teacher-task-progress .progress-counts>div{display:flex;flex-direction:column;justify-content:center;padding:18px;background:#fafafa;border:1px solid #f0f0f0;border-radius:8px}.teacher-task-progress .progress-counts strong{color:var(--teacher-text);font-size:28px;font-weight:500}.teacher-task-progress .progress-counts span{color:var(--teacher-muted);font-size:13px;margin-top:12px}.teacher-task-progress .progress-counts .pending_review strong{color:#1890ff}.teacher-task-progress .progress-counts .confirmed strong{color:#10b981}.teacher-task-progress .progress-counts .returned strong{color:#d97706}.teacher-progress-requirements{padding:16px 20px;border:1px solid #f0f0f0;border-radius:8px;margin-bottom:28px}.teacher-progress-requirements summary{cursor:pointer;font-size:14px;color:var(--teacher-secondary)}.teacher-progress-requirements p{font-size:14px;line-height:24px;margin-top:16px;color:var(--teacher-secondary)}.teacher-progress-list-heading h3{color:var(--teacher-text);font-size:16px;font-weight:500}.teacher-progress-list-heading h3 span{font-size:13px;color:var(--teacher-muted);font-weight:400;margin-left:8px}.teacher-progress-list-heading>p{color:var(--teacher-muted);font-size:12px;line-height:20px;margin-top:8px}.teacher-progress-filters{display:flex;gap:12px;margin:20px 0}.teacher-progress-filters>label:first-child{flex:1}.teacher-progress-filters input,.teacher-progress-filters select{width:100%;min-height:38px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;padding:8px 12px;color:var(--teacher-secondary);font-size:14px}.teacher-task-dialog .data-table{color:var(--teacher-text);font-size:14px}.teacher-task-dialog .data-table th{color:var(--teacher-secondary);background:#fafafa;font-size:13px;padding:12px 16px}.teacher-task-dialog .data-table td{border-color:#f0f0f0;padding:16px}.teacher-task-dialog .data-table .text-button{color:#1890ff;font-size:13px}.teacher-task-dialog .status-pill{font-size:12px;border-radius:100px;padding:3px 9px}@media(hover:hover)and (pointer:fine){.teacher-card-open:hover{border-color:#91caff;box-shadow:0 3px 12px #1890ff0a}.teacher-publish-button:hover{background:#e6f4ff}.teacher-dialog-close:hover{background:#f5f5f5}}@media(max-width:1150px){.teacher-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-progress-overview{grid-template-columns:1fr;gap:20px}.teacher-progress-total{max-width:350px}}@media(max-width:760px){.teacher-task-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:12px}.teacher-dialog-heading{min-height:60px;padding:16px 20px}.teacher-dialog-heading h2{font-size:18px}.teacher-draft-body{padding:12px 16px 20px}.teacher-form-section,.teacher-publication-preview{padding:22px 20px}.teacher-task-types{gap:20px 28px}.teacher-task-form .field-editor-row{grid-template-columns:minmax(0,1fr) 120px;gap:12px}.teacher-task-form .field-editor-row .checkbox-label,.teacher-task-form .field-editor-row .danger-text{margin-top:0}.teacher-task-form .field-editor-row .danger-text{justify-self:end}.teacher-progress-heading{padding:22px 20px;flex-direction:column}.teacher-progress-heading-actions{align-self:flex-end}.teacher-progress-body{padding:20px}.teacher-task-progress .progress-counts>div{padding:14px}.teacher-task-progress .progress-counts strong{font-size:24px}}@media(max-width:580px){.teacher-task-grid{grid-template-columns:1fr}.teacher-task-toolbar{flex-wrap:wrap;gap:8px}.teacher-task-toolbar>h2{flex-basis:100%;margin-bottom:8px}.teacher-task-filters button{font-size:12px;padding:7px 12px}.teacher-publish-button{min-height:38px;padding:8px 14px;font-size:13px}.teacher-task-refresh{padding:5px}.teacher-task-search input{font-size:16px}.teacher-task-pagination{align-items:flex-start;flex-direction:column;gap:12px}.teacher-task-pagination nav{align-self:flex-end}.teacher-draft-body{padding:12px 10px 18px}.teacher-form-section,.teacher-publication-preview{padding:20px 16px}.teacher-task-form .recipient-grid{grid-template-columns:1fr;gap:14px}.teacher-member-selection{margin-left:8px;padding-left:14px}.teacher-section-actions{flex-wrap:wrap}.teacher-task-form input:not([type=checkbox]):not([type=radio]),.teacher-task-form textarea,.teacher-task-form select{font-size:16px}.teacher-task-form .field-editor-row{padding:12px;grid-template-columns:minmax(0,1fr) 110px;gap:10px}.teacher-task-form .field-editor-row input:not([type=checkbox]),.teacher-task-form .field-editor-row select{font-size:13px;padding:8px}.teacher-editor-actions{gap:10px}.teacher-editor-actions>.button{padding:9px 16px;min-height:42px;font-size:14px}.teacher-publication-preview .preview-details{grid-template-columns:1fr;gap:8px}.teacher-publication-preview .preview-details dd{margin-bottom:14px}.teacher-publication-preview .field-summary li{gap:3px}.teacher-task-progress .progress-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-progress-filters{flex-direction:column}.teacher-progress-filters input,.teacher-progress-filters select{font-size:16px}.teacher-progress-heading h2{font-size:20px}}.teacher-task-search-row{display:flex;align-items:flex-end;gap:12px;margin-bottom:16px}.teacher-task-search-row .teacher-task-search{flex:1;min-width:0;margin:0}@media(max-width:580px){.teacher-task-search-row{flex-direction:column;align-items:stretch}}.responsibility-workspace>.teacher-progress-filters{margin:0 0 20px}.responsibility-workspace .teacher-progress-filters>label.workspace-course-filter{flex:0 1 360px}@media(max-width:580px){.responsibility-workspace .teacher-progress-filters>label.workspace-course-filter{flex-basis:auto}}.teacher-review-pickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.teacher-review-pickers .review-target-picker{margin:0;padding:12px}.teacher-review-pickers .review-target-options{max-height:190px}.teacher-review-pickers .review-target-choice{padding:7px 5px}.teacher-review-pickers .review-target-choice small{font-size:11px;line-height:1.4}.teacher-review-pickers .review-target-group{margin:8px 4px 4px}.teacher-task-form .teacher-review-pickers .review-target-search{min-height:36px;padding:7px 10px;margin:0}.task-recipient-retained{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border-radius:6px;background:#fff8e8;color:#886522;font-size:12px}.teacher-task-detail-page{min-width:0}.teacher-task-detail-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:14px}.teacher-task-detail-toolbar>span{font-size:16px;font-weight:600}.teacher-task-detail-toolbar .button svg{transform:rotate(180deg)}.teacher-task-detail-page .teacher-task-progress{min-height:calc(100dvh - 280px)}.teacher-task-detail-page .teacher-progress-heading{padding:18px 22px}.teacher-task-detail-page .teacher-progress-body{padding:16px 20px 20px}.portal-content .teacher-task-detail-page .teacher-task-progress .teacher-progress-body{flex:1 1 0;overflow:auto;overscroll-behavior:contain}.portal-content .teacher-task-detail-page .teacher-task-progress .responsibility-queue,.portal-content .teacher-task-detail-page .teacher-task-progress .responsibility-queue>.management-table-panel{flex:0 0 auto;overflow:visible}.portal-content .teacher-task-detail-page .teacher-task-progress .management-table-scroll{flex:0 0 auto;min-height:160px;max-height:clamp(160px,35dvh,360px)}.teacher-task-detail-page .teacher-progress-heading h2{font-size:22px;margin:5px 0}.teacher-task-detail-page .teacher-progress-requirements{margin:0 0 14px}.teacher-task-detail-page .teacher-progress-list-heading{margin:12px 0}.teacher-task-progress .responsibility-counts{gap:8px;margin-bottom:14px}.teacher-task-progress .responsibility-counts>button{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:58px;padding:10px 14px}.teacher-task-progress .responsibility-counts>button strong{font-size:22px;line-height:1}.teacher-task-progress .responsibility-counts>button span{margin:0;font-size:12px}.teacher-student-task-dialog[open]{display:flex;flex-direction:column;width:min(960px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));overflow:hidden}.teacher-student-task-dialog>.teacher-dialog-heading{flex:none;position:static}.teacher-student-task-body{min-height:0;overflow:auto;padding:16px}.teacher-student-task-body .nested-assignment{margin:0;padding:16px}@media(min-width:761px)and (max-height:900px){.teacher-draft-dialog[open]{height:calc(100dvh - 32px);max-height:calc(100dvh - 32px)}.teacher-draft-dialog>.teacher-dialog-heading{min-height:60px;padding:14px 24px}.teacher-draft-steps{padding:10px 20px;gap:24px}.teacher-draft-body{padding:16px 24px}.teacher-draft-body .teacher-form-section,.teacher-draft-body .teacher-publication-preview{padding:20px;margin-bottom:16px}.teacher-draft-footer{padding:12px 24px}}@media(max-width:760px){.teacher-review-pickers{grid-template-columns:1fr;gap:12px}.teacher-draft-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:10px 8px}.teacher-draft-steps button{flex-direction:column;gap:5px;font-size:11px;justify-content:center;text-align:center}.teacher-draft-steps button>span{width:20px;height:20px}.teacher-student-task-dialog[open]{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.teacher-student-task-body{padding:10px}.teacher-task-detail-page .teacher-progress-heading{padding:16px}.teacher-task-detail-page .teacher-progress-body{padding:12px}.teacher-task-progress .responsibility-counts>button{min-height:52px;padding:9px 10px}}.assessment-workspace{display:grid;gap:16px}.assessment-card{display:grid;gap:12px;padding:20px 24px;border:1px solid rgba(0,0,0,.06);border-radius:12px;background:#fff}.assessment-card h3{margin:0;font-size:16px}.assessment-card h4{margin:4px 0 0;font-size:14px}.assessment-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.assessment-card-head p{margin:4px 0 0;color:#8c8c8c;font-size:13px}.assessment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px 16px}.assessment-grid label,.assessment-dialog-form label,.assessment-action-box label{display:grid;gap:6px;color:#000000a6;font-size:13px}.assessment-workspace input,.assessment-workspace select,.assessment-workspace textarea,.assessment-dialog input,.assessment-dialog select,.assessment-dialog textarea{min-height:34px;padding:6px 10px;border:1px solid #d9d9d9;border-radius:8px;font:inherit;background:#fff}.assessment-dialog textarea{min-height:64px;resize:vertical}.assessment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.assessment-spacer{flex:1}.assessment-table{width:100%;border-collapse:collapse;font-size:13px}.assessment-table th,.assessment-table td{padding:8px;border-bottom:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:top}.assessment-table th{background:#fafafa;font-weight:500}.assessment-table th small,.assessment-table td small{display:block;color:#8c8c8c;font-size:12px;font-weight:400}.assessment-table input,.assessment-table select{width:100%;min-width:0}.assessment-inline{display:grid;grid-template-columns:1fr 56px;gap:6px}.assessment-badge{display:inline-block;margin-left:8px;padding:2px 10px;border-radius:999px;background:#e6f4ff;color:#1677ff;font-size:12px;white-space:nowrap}.assessment-badge-demonstration{background:#fff7e6;color:#d46b08}.assessment-badge-formal{background:#f6ffed;color:#389e0d}.assessment-badge-meeting{background:#f5f5f5;color:#595959}.assessment-badge-muted{background:#f5f5f5;color:#8c8c8c}.assessment-blocked{margin:0;padding:8px 12px;border-radius:8px;background:#fff7e6;color:#ad4e00;font-size:13px}.assessment-missing{color:#d46b08}.assessment-muted{color:#bfbfbf}.assessment-calc{display:grid;gap:8px;padding:12px 0;border-top:1px solid rgba(0,0,0,.06)}.assessment-calc.is-effective header strong{color:#1677ff}.assessment-action-box{display:grid;gap:8px;padding:12px;border-radius:8px;background:#fafbff}.assessment-action-box>button{justify-self:start}.assessment-history{margin:0;padding-left:18px;color:#000000a6;font-size:13px;line-height:22px}.assessment-dialog{width:min(640px,calc(100vw - 32px));padding:24px;border:0;border-radius:12px}.assessment-dialog h3{margin:0 0 8px}.assessment-dialog-form{display:grid;gap:12px;margin:12px 0}.assessment-total{font-size:28px;color:#1677ff}.assessment-superseded{opacity:.7}.assessment-course-filter-row{display:flex;margin:0 0 20px}.task-rubric-surface{display:flex;flex-direction:column;height:clamp(440px,calc(100dvh - 275px),780px);box-sizing:border-box;padding:20px;gap:20px}.task-rubric-toolbar{display:flex;gap:12px}.task-rubric-toolbar input{flex:1;min-width:120px;max-width:460px;border:1px solid #e0e7f2;border-radius:20px;padding:10px 16px;background:#f7f9fc}.task-rubric-toolbar .primary{margin-left:auto}.task-rubric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;align-content:start;flex:1;min-height:0;overflow:auto}.task-rubric-card{border:1px solid #e4eaf4;border-radius:12px;padding:18px;background:#fff}.task-rubric-card header,.task-rubric-preview-item header,.task-rubric-editor-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.task-rubric-card h3{font-size:16px;margin:0}.task-rubric-card p,.task-rubric-count,.task-rubric-card header span{font-size:13px;color:#78869c}.task-rubric-card footer{display:flex;gap:10px;margin-top:18px}.task-rubric-empty{grid-column:1/-1;text-align:center;color:#7c8ca2;margin:100px 0}.task-rubric-dialog{width:min(850px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:0;border-radius:14px;color:#29384e}.task-rubric-dialog>header,.task-rubric-dialog>footer{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e9edf4}.task-rubric-dialog h2{font-size:19px;margin:0}.task-rubric-dialog>footer{justify-content:flex-end;gap:12px;border-top:1px solid #e9edf4;border-bottom:0}.task-rubric-editor-body{max-height:calc(100dvh - 210px);overflow:auto;padding:22px 24px}.task-rubric-editor-body fieldset{border:0;margin:0;padding:0;min-width:0}.task-rubric-editor-body label{display:flex;flex-direction:column;gap:8px;font-size:14px;margin-bottom:18px}.task-rubric-editor-body input,.task-rubric-editor-body select,.task-rubric-editor-body textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #dce4ef;border-radius:7px;padding:10px;font:inherit;background:#fff}.task-rubric-editor-heading{margin:12px 0 18px}.task-rubric-editor-item,.task-rubric-preview-item{border:1px solid #e2e9f3;background:#f9fbff;border-radius:10px;padding:16px;margin-bottom:14px}.task-rubric-editor-item>div{display:grid;grid-template-columns:1fr 1.5fr 90px auto;gap:12px;align-items:start}.task-rubric-editor-item>div>button{margin-top:32px}.task-rubric-preview-item p{font-size:13px;color:#73819a;margin-bottom:0}@media(max-width:640px){.task-rubric-toolbar{flex-wrap:wrap}.task-rubric-toolbar input{flex-basis:100%;max-width:none}.task-rubric-surface{padding:16px}.task-rubric-editor-item>div{grid-template-columns:1fr 1fr}.task-rubric-editor-item>div>button{margin-top:30px}.task-rubric-dialog>header,.task-rubric-dialog>footer,.task-rubric-editor-body{padding:16px}}.course-grading-workspace,.course-grading-list{min-width:0;display:grid;gap:16px}.course-grading-modes{display:flex;flex-wrap:wrap;gap:8px}.course-grading-modes button{min-height:36px;padding:7px 14px;border:1px solid #e3e8f0;border-radius:8px;background:#fff;color:#646a73;font:inherit;font-size:13px;cursor:pointer}.course-grading-modes button[aria-pressed=true]{color:#1677ff;border-color:#91caff;background:#eaf3ff}.course-grading-modes button:focus-visible{outline:2px solid #4996ff;outline-offset:2px}.course-grading-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0;margin:0}.course-grading-filters .management-table-search{width:min(380px,100%);flex:1 1 270px}.course-grading-opening-picker{margin-left:auto;display:flex;gap:8px;align-items:center;min-width:0;font-size:13px;color:#646a73}.course-grading-opening-picker select{min-height:36px;width:270px;max-width:100%;border:1px solid #dfe5ee;border-radius:7px;padding:6px 10px;background:#fff;color:#344057;font:inherit}@media(min-width:801px)and (min-height:650px){.portal-page-assessment-grading .portal-content>div:has(>.course-grading-task-view){flex:1;min-height:0;display:flex}.course-grading-task-view{flex:1;min-height:0;grid-template-rows:minmax(0,1fr)}.course-grading-task-view .course-grading-list{min-height:0;grid-template-rows:auto minmax(0,1fr)}.course-grading-task-view .course-grade-panel{min-height:0;display:flex;flex-direction:column;overflow:auto;padding:16px;gap:12px}.course-grading-task-view .course-grade-results,.course-grading-task-view .course-grade-matrix{flex:1;min-height:0;display:flex;flex-direction:column}.course-grading-task-view .course-grade-matrix{gap:12px}.course-grading-task-view .course-grade-matrix-scroll{flex:1;min-height:100px;max-height:none}.course-grading-task-view .course-grade-matrix-toolbar,.course-grading-task-view .course-grade-matrix-pagination{flex:none;margin:0}.course-grading-task-view .course-grade-score-matrix th,.course-grading-task-view .course-grade-score-matrix td{padding-top:7px;padding-bottom:7px}.course-grading-task-view .course-grade-task-cell{min-height:36px}.course-grading-task-view .course-grade-matrix-pagination .management-table-pagination{padding-top:0}}@media(max-width:640px){.course-grading-opening-picker{width:100%;margin-left:0}.course-grading-opening-picker select{flex:1;min-width:0;width:100%}.course-grading-filters .management-table-search{min-width:0;flex-basis:calc(100% - 90px)}}.portfolio-workspace{display:grid;gap:16px}.portfolio-card{display:grid;gap:12px;padding:20px 24px;border:1px solid rgba(0,0,0,.06);border-radius:12px;background:#fff}.portfolio-card h3{margin:0;font-size:16px}.portfolio-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.portfolio-card-head p,.portfolio-note{margin:4px 0 0;color:#8c8c8c;font-size:13px}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 16px}.portfolio-grid label,.portfolio-card label{display:grid;gap:6px;color:#000000a6;font-size:13px}.portfolio-workspace input,.portfolio-workspace select,.portfolio-workspace textarea{min-height:34px;padding:6px 10px;border:1px solid #d9d9d9;border-radius:8px;font:inherit;background:#fff}.portfolio-workspace textarea{min-height:72px;resize:vertical}.portfolio-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.portfolio-table{width:100%;border-collapse:collapse;font-size:13px}.portfolio-table th,.portfolio-table td{padding:8px;border-bottom:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:top}.portfolio-table th{background:#fafafa;font-weight:500}.portfolio-table td small{display:block;margin-top:4px;color:#8b94a3;font-size:12px}.portfolio-badge{display:inline-block;padding:2px 10px;border-radius:999px;background:#fff7e6;color:#d46b08;font-size:12px}.portfolio-badge-confirmed{background:#f6ffed;color:#389e0d}.portfolio-badge-muted{background:#f5f5f5;color:#8c8c8c}.portfolio-timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.portfolio-timeline>li{display:grid;grid-template-columns:16px 1fr;gap:12px}.portfolio-timeline>li:before{content:"";width:10px;height:10px;margin-top:6px;border:2px solid #1677ff;border-radius:50%;background:#fff}.portfolio-timeline article{padding-bottom:16px;border-left:1px solid #d6e4ff;margin-left:-22px;padding-left:22px}.portfolio-timeline h4{margin:0 0 6px;font-size:14px}.wb-school-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:16px}.wb-span{grid-column:1 / -1}.wb-filters{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 16px}.wb-filter{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#595959}.wb-filter input{border:1px solid #d9d9d9;border-radius:8px;padding:6px 8px;min-width:140px}.wb-queue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.wb-queue-card{border:1px solid #edf0f5;border-radius:12px;background:#fafafa;padding:14px;text-align:left;display:flex;flex-direction:column;gap:8px}.wb-queue-card strong{font-size:22px;color:#262626}.wb-queue-total{margin:0 0 12px;color:#595959}.wb-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.wb-board .wb-span{grid-column:1 / -1}.wb-population-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.wb-population-grid article{border:1px solid #edf0f5;border-radius:12px;padding:12px}.wb-population-grid strong{display:block;font-size:28px;margin:4px 0}.wb-undetermined{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:8px 0}.wb-undetermined li{border:1px dashed #d5dbe6;border-radius:8px;padding:8px 10px}.wb-undetermined strong{margin-left:8px}.wb-board article{border:1px solid #edf0f5;border-radius:12px;padding:16px}.wb-board h3{margin:12px 0 8px;font-size:14px}.wb-board-number{font-size:32px}.wb-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.wb-bars li{display:grid;grid-template-columns:88px 1fr auto;gap:8px;align-items:center;font-size:13px}.wb-bars i{display:block;height:8px;background:#1677ff;border-radius:4px}.wb-student-list{display:flex;flex-wrap:wrap;gap:8px}.wb-student-list button,.wb-timeline{border:1px solid #edf0f5;background:#fff;border-radius:8px;padding:6px 10px}.wb-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.wb-timeline li{display:flex;flex-direction:column;gap:4px;padding:8px 0;border-bottom:1px solid #f0f0f0}.wb-panel{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:20px;min-width:0}.wb-heading{font-size:18px;font-weight:600;color:#262626;display:flex;gap:8px;align-items:center}.wb-heading:before{content:"";width:4px;height:18px;background:var(--blue);border-radius:2px;flex:none}.wb-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.wb-link{border:0;background:transparent;color:var(--blue);padding:4px 0;display:inline-flex;gap:4px;align-items:center;font-size:13px;text-align:left}.wb-table-wrap{overflow:auto}.wb-table{border-collapse:collapse;width:100%;font-size:13px}.wb-table th{background:#fafafa;font-weight:500;color:#595959;white-space:nowrap}.wb-table td,.wb-table th{text-align:left;padding:13px 12px;border-bottom:1px solid #f0f0f0}.wb-table td:first-child{min-width:150px}.wb-table-footer{display:flex;justify-content:space-between;gap:12px;color:#8c8c8c;font-size:12px;padding-top:20px}.wb-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.wb-metric{background:#fafbff;border-radius:10px;padding:20px 18px;position:relative;min-height:110px}.wb-metric>span{font-size:13px;color:#8c8c8c}.wb-metric>strong{display:block;font-size:30px;font-weight:600;color:#262626;margin-top:8px}.wb-metric small{font-size:12px;font-weight:400;margin-left:5px}.wb-metric>svg{position:absolute;right:17px;bottom:21px;color:#cdd9ff}.wb-task-feed{display:grid}.wb-task-row{background:#fff;border:0;border-bottom:1px solid #f0f0f0;width:100%;text-align:left;padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:14px}.wb-task-row:last-child{border:0}.wb-task-row strong{font-weight:500;display:block;margin-bottom:7px}.wb-task-row small{color:#8c8c8c}.wb-deadline{font-size:12px;color:#8c8c8c;display:flex;gap:10px;align-items:center;white-space:nowrap}.wb-status-chart{padding:10px 0}.wb-status-row{display:grid;grid-template-columns:62px 1fr 24px;align-items:center;gap:15px;margin:22px 0;font-size:13px}.wb-status-row>span{color:#595959}.wb-status-row>strong{text-align:right;font-weight:500}.wb-status-track{height:8px;border-radius:8px;background:#f0f2f6;overflow:hidden}.wb-status-track i{display:block;height:100%;background:linear-gradient(90deg,#99b7ff,#537bff);border-radius:8px}.wb-footnote,.wb-empty{color:#8c8c8c;font-size:13px;line-height:1.9}.wb-empty{padding:28px 4px;text-align:center}.wb-footnote{margin-top:24px}.wb-student{display:grid;gap:16px}.wb-notice{padding:20px 24px}.wb-notice>p{font-size:13px;color:#8c8c8c;margin-top:17px;padding:15px;background:#fcfaff;border:1px solid #f3edf9;border-radius:8px}.wb-student-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}.wb-student-side{display:grid;align-content:start;gap:16px}.wb-student-side .wb-heading{font-size:17px}@media(max-width:800px){.wb-student-side{grid-template-columns:1fr}.wb-student-side>.attendance-home-card{order:-1}}.wb-course-overview{display:flex;gap:18px;align-items:center;padding:30px 0}.wb-course-symbol{width:66px;height:66px;display:grid;place-items:center;border-radius:16px;background:#f4edff;color:var(--blue);flex:none}.wb-course-overview strong{font-size:17px}.wb-course-overview p{color:#8c8c8c;font-size:12px;margin-top:12px}.wb-course-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.wb-course-tags span{padding:3px 8px;background:#f5f0ff;border-radius:5px;color:#7e57a6;font-size:12px}.wb-student-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.wb-student-metrics .wb-metric{background:#fcfaff;min-height:96px;padding:15px}.wb-student-metrics .wb-metric>strong{font-size:25px}.wb-student-metrics .wb-metric>svg{color:#dfc9ff;right:12px;bottom:20px}.wb-task-heading{padding-top:25px}.wb-todo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wb-todo-card{border:1px solid #ededf3;background:#fff;border-radius:10px;padding:19px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:14px}.wb-todo-card:hover{border-color:var(--blue)}.wb-todo-card strong,.wb-todo-card small,.wb-todo-card em{display:block}.wb-todo-card strong{font-size:14px;line-height:1.6}.wb-todo-card small{color:#8c8c8c;font-size:12px;margin-top:6px}.wb-todo-card em{color:#8c8c8c;font-style:normal;font-size:12px;margin-top:8px}.wb-todo-card em.returned{color:#d97706}.wb-todo-card>svg{color:#aaa;flex:none}.wb-quick-entry{display:flex;align-items:center;gap:12px;border:1px solid #eee5fc;background:#fcfaff;width:100%;padding:20px 12px;text-align:left;margin-top:20px;border-radius:10px;color:var(--blue)}.wb-quick-entry span{flex:1}.wb-quick-entry strong,.wb-quick-entry small{display:block}.wb-quick-entry small{color:#8c8c8c;font-size:12px;margin-top:6px}.wb-guidance{margin-top:15px}.wb-guidance>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #f3f0f5;padding:14px 0;font-size:13px}.wb-guidance strong{font-weight:500;white-space:nowrap}.wb-unavailable>svg{color:#d8c6ee;margin:24px 0 12px}.wb-unavailable>p{font-size:13px;line-height:1.8;color:#8c8c8c}@media(max-width:1000px){.wb-school-grid{grid-template-columns:1fr 1fr}.wb-student-grid{grid-template-columns:1fr}.wb-student-side{grid-template-columns:repeat(3,1fr)}.wb-table-footer{flex-direction:column}.wb-table td,.wb-table th{padding:12px 8px}.wb-task-row{align-items:start}.wb-deadline{white-space:normal}}@media(max-width:700px){.wb-school-grid,.wb-student-side,.wb-todo-grid{grid-template-columns:1fr}.wb-panel{padding:16px}.wb-heading{font-size:16px}.wb-student-metrics{gap:6px}.wb-student-metrics .wb-metric{padding:12px 8px}.wb-metric>svg{display:none}.wb-task-row{flex-direction:column}.wb-panel-toolbar{gap:10px}.wb-notice{padding:16px}}.achievement-board{display:flex;flex-direction:column;gap:16px;min-width:0;color:#1f2329}.achievement-board:fullscreen{overflow:auto;background:#f3f6fb;padding:20px 28px 32px}.achievement-head{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;gap:16px;padding:8px 4px 4px}.achievement-brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.achievement-brand small{display:block;font-size:12px;font-weight:400;color:#8f959e}.achievement-title{text-align:center}.achievement-title h2{margin:0;font-size:28px;letter-spacing:.04em}.achievement-title p{margin:4px 0 0;color:#8f959e;font-size:13px}.achievement-tools{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.achievement-tools button{border:1px solid #d7e3f5;background:#fff;color:#1456f0;border-radius:8px;min-height:32px;padding:4px 12px;font:inherit;font-size:13px}.achievement-tools button.selected{background:#e8f0ff}.achievement-tools small{color:#8f959e;font-size:12px}.achievement-basis{border:1px solid #e6ebf2;border-radius:12px;background:#fff;padding:16px}.achievement-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.achievement-kpis article{background:#fff;border:1px solid #e8eef6;border-radius:12px;padding:14px 16px}.achievement-kpis span{display:block;color:#646a73;font-size:13px}.achievement-kpis strong{display:block;margin:6px 0 2px;color:#1456f0;font-size:28px;font-variant-numeric:tabular-nums;line-height:1.1}.achievement-kpis small{margin-left:2px;font-size:13px;font-weight:500}.achievement-kpis p{margin:0;color:#8f959e;font-size:12px}.achievement-grid{display:grid;grid-template-columns:1.1fr 1.3fr .9fr;gap:12px}.achievement-grid article{background:#fff;border:1px solid #e8eef6;border-radius:12px;padding:16px;min-width:0}.achievement-grid header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.achievement-grid h3{margin:0;font-size:15px}.achievement-note{margin:12px 0 0;color:#8f959e;font-size:12px;line-height:1.6}.achievement-ecology{display:grid;grid-template-columns:148px minmax(0,1fr);gap:16px;align-items:center}.achievement-donut{width:132px;height:132px;border-radius:50%;display:grid;place-items:center}.achievement-donut span{width:84px;height:84px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.achievement-donut strong{font-size:22px;line-height:1}.achievement-donut small{color:#646a73;font-size:11px}.achievement-ecology ul,.achievement-rank,.achievement-sources,.achievement-stages,.achievement-tags{list-style:none;margin:0;padding:0}.achievement-ecology li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:13px;padding:4px 0}.achievement-ecology li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.achievement-ecology i{width:8px;height:8px;border-radius:50%}.achievement-path{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0 14px;color:#1456f0;font-size:13px}.achievement-path i{width:36px;height:1px;background:#c5d7f5}.achievement-path strong{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#e8f0ff}.achievement-stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.achievement-stages li{display:flex;gap:8px;align-items:flex-start;border:1px solid #eef2f7;border-radius:10px;padding:8px;font-size:13px}.achievement-stages li span{display:flex;flex-direction:column;gap:2px;min-width:0}.achievement-stages small{color:#8f959e;font-size:12px}.achievement-stages b{width:20px;height:20px;border-radius:50%;background:#1456f0;color:#fff;display:grid;place-items:center;font-size:12px;flex:none}.achievement-pair{margin:0 0 8px;color:#1456f0}.achievement-pair strong{font-size:24px;margin-right:2px}.achievement-pair small{margin-right:12px;color:#646a73}.achievement-rank li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #f2f4f7;font-size:13px}.achievement-rank span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.achievement-tags{display:flex;flex-wrap:wrap;gap:8px}.achievement-tags li{display:inline-flex;gap:6px;align-items:center;border-radius:999px;background:#f4f7fb;padding:6px 10px;font-size:13px}.achievement-tags b{color:#1456f0}.achievement-outcomes{display:grid;gap:8px}.achievement-outcomes section{border:1px solid #eef2f7;border-radius:10px;padding:10px 12px}.achievement-outcomes h4{margin:0 0 4px;font-size:13px}.achievement-outcomes p{margin:0;color:#646a73;font-size:13px}.achievement-sources li{display:flex;gap:8px;padding:6px 0;font-size:13px;color:#646a73}.achievement-sources b{color:#1f2329;flex:none}@media(max-width:1100px){.achievement-head,.achievement-kpis,.achievement-grid,.achievement-ecology{grid-template-columns:1fr}.achievement-title,.achievement-tools{justify-content:flex-start;text-align:left}}.student-dossier{display:flex;flex-direction:column;gap:12px;min-width:0;color:#1f2329}.student-dossier-picker{display:flex;flex-wrap:wrap;align-items:end;gap:12px;background:#fff;border:1px solid #e6ebf2;border-radius:12px;padding:16px}.student-dossier-picker label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#646a73}.student-dossier-picker input{min-height:32px;border:1px solid #d7e3f5;border-radius:8px;padding:4px 8px;font:inherit;color:#1f2329}.student-dossier-picker button{border:0;background:#1456f0;color:#fff;border-radius:8px;min-height:32px;padding:0 14px;font:inherit}.student-dossier-picker p{flex-basis:100%;margin:0;color:#8f959e;font-size:13px}.student-dossier-head{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid #e6ebf2;border-radius:12px;padding:16px 18px}.student-dossier-person{display:flex;gap:12px;align-items:center;min-width:0}.student-dossier-avatar{width:52px;height:52px;border-radius:50%;background:#e8f0ff;color:#1456f0;display:grid;place-items:center;flex:none}.student-dossier-person h2{margin:0;font-size:22px}.student-dossier-person p{margin:4px 0;color:#8f959e;font-size:13px}.student-dossier-stats{display:grid;grid-template-columns:repeat(4,minmax(88px,1fr));gap:8px}.student-dossier-stats article{min-width:88px;padding:8px 12px;text-align:right}.student-dossier-stats strong{display:block;color:#1456f0;font-size:22px;font-variant-numeric:tabular-nums}.student-dossier-stats small{margin-left:2px;font-size:13px;font-weight:500}.student-dossier-stats span{color:#8f959e;font-size:12px}.student-dossier-top{display:grid;grid-template-columns:minmax(280px,.9fr) 1.4fr;gap:12px}.student-dossier-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.student-dossier article{background:#fff;border:1px solid #e6ebf2;border-radius:12px;padding:16px;min-width:0}.student-dossier article>header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.student-dossier h3{margin:0;font-size:15px}.student-dossier article>header p,.student-dossier-caption{margin:0 0 10px;color:#8f959e;font-size:12px}.student-dossier h4{margin:0;font-size:16px}.student-dossier-role{margin:4px 0;color:#646a73}.student-dossier-period{margin:0 0 12px;padding:8px 10px;border-radius:8px;background:#f4f7fb;color:#1456f0;font-size:13px}.student-dossier dl{display:grid;gap:8px;margin:0}.student-dossier dl div{display:flex;justify-content:space-between;gap:12px;font-size:13px}.student-dossier dt{color:#8f959e}.student-dossier dd{margin:0;text-align:right}.student-dossier article>footer{display:flex;justify-content:space-between;gap:8px;margin-top:14px;color:#8f959e;font-size:12px}.student-dossier-pager{margin-left:auto;display:flex;gap:4px}.student-dossier-pager button{width:28px;height:28px;border:1px solid #d7e3f5;border-radius:50%;background:#fff;color:#1456f0}.student-dossier-pager button:disabled{color:#c5d0e0}.student-dossier-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-dossier-courses section{border:1px solid #eef2f7;border-radius:10px;padding:12px}.student-dossier-courses h4{font-size:15px}.student-dossier-courses>section>p{margin:2px 0 10px;color:#8f959e;font-size:12px}.student-dossier-experience{list-style:none;margin:0;padding:0;display:grid;gap:12px}.student-dossier-experience li{display:grid;gap:2px;padding-left:16px;border-left:2px solid #d7e3f5;font-size:13px}.student-dossier-experience span,.student-dossier-experience small{color:#8f959e}.student-dossier-evidence,.student-dossier-outcomes,.student-dossier-evidence-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.student-dossier-evidence li,.student-dossier-outcomes li,.student-dossier-evidence-list li{display:flex;justify-content:space-between;gap:12px;border:1px solid #eef2f7;border-radius:10px;padding:10px 12px;font-size:13px}.student-dossier-evidence li{align-items:center}.student-dossier-evidence small,.student-dossier-outcomes small,.student-dossier-evidence-list small,.student-dossier-feedback small{display:block;color:#8f959e;font-size:12px}.student-dossier-evidence b{color:#1456f0;white-space:nowrap}.student-dossier-outcomes li,.student-dossier-evidence-list li{display:block}.student-dossier-outcomes p{margin:4px 0;color:#646a73}.student-dossier-feedback{margin-top:12px;padding-top:12px;border-top:1px solid #eef2f7}.student-dossier-feedback header{display:flex;justify-content:space-between;align-items:center}.student-dossier-feedback h4{margin:0;font-size:14px}.student-dossier-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.student-dossier-note{margin:0;color:#8f959e;font-size:12px;line-height:1.6}@media(max-width:1100px){.student-dossier-head,.student-dossier-top,.student-dossier-bottom,.student-dossier-courses,.student-dossier-stats{grid-template-columns:1fr}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.portal-enterprise .portal-banner:before{background-image:url(/figma/enterprise/enterprise-hero-background.png);background-size:cover;opacity:1}.portal-enterprise .portal-sidebar>nav{max-height:calc(100dvh - 164px);overflow-y:auto}.enterprise-workspace{display:grid;gap:20px;min-width:0}.enterprise-panel{background:#fff;border:1px solid #edf0f4;border-radius:8px;padding:24px;min-width:0}.enterprise-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.enterprise-panel-heading h2{font-size:17px;font-weight:600;margin:0;color:#222}.enterprise-panel h3{margin:22px 0 10px;font-size:15px;font-weight:600;color:#222}.enterprise-tabs{display:flex;gap:8px;padding:0 4px}.enterprise-tabs>button{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#8b919a;min-height:44px;padding:10px 24px;font-size:15px}.enterprise-tabs>button.selected{color:#fff;background:#fff url(/figma/enterprise/company-tab-surface.png) center/100% 100% no-repeat;border-radius:6px 6px 0 0}.enterprise-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 36px;margin-bottom:24px}.enterprise-field{display:flex;flex-direction:column;gap:10px;min-width:0;font-size:14px;color:#333;margin-bottom:20px}.enterprise-form-grid>.enterprise-field{margin-bottom:0}.enterprise-field.wide{grid-column:1/-1}.enterprise-field>span{line-height:1.4}.enterprise-workspace input,.enterprise-workspace select,.enterprise-workspace textarea,.enterprise-dialog input,.enterprise-dialog select,.enterprise-dialog textarea,.enterprise-toolbar input,.enterprise-toolbar select{box-sizing:border-box;min-width:0;width:100%;border:1px solid #e2e5eb;border-radius:4px;background:#fff;min-height:38px;padding:8px 12px;color:#333;font:inherit;font-size:14px}.enterprise-dialog textarea,.enterprise-workspace textarea{line-height:1.7;resize:vertical}.enterprise-workspace input:focus,.enterprise-workspace select:focus,.enterprise-workspace textarea:focus,.enterprise-dialog input:focus,.enterprise-dialog select:focus,.enterprise-dialog textarea:focus{outline:2px solid #a8c9ff;outline-offset:1px;border-color:#4285ec}.enterprise-workspace :disabled,.enterprise-dialog :disabled{cursor:default;opacity:.6}.enterprise-workspace input[readonly],.enterprise-dialog input[readonly]{background:#f6f7f9;color:#777}.enterprise-role-choices{display:flex;flex-wrap:wrap;gap:16px 24px}.enterprise-role-choices label{display:flex;align-items:center;gap:8px;min-height:38px}.enterprise-role-choices input{width:auto}.enterprise-form-actions{display:flex;justify-content:center;gap:16px;padding-top:24px;margin-top:20px;border-top:1px solid #f0f1f5}.enterprise-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dce0e8;border-radius:5px;min-height:38px;padding:8px 20px;color:#5b626d;background:#fff;font-size:14px;white-space:nowrap}.enterprise-button.primary{color:#fff;border:1px solid #145dd8;background:#1462de url(/figma/enterprise/modal-save-surface.png) center/100% 100% no-repeat;min-width:118px}.enterprise-link{border:0;padding:2px 0;background:transparent;color:#1763d8;font:inherit;font-size:13px;text-align:left;cursor:pointer}.enterprise-link:hover{text-decoration:underline}.enterprise-link.danger{color:#d74343}.enterprise-map{height:360px;border:1px solid #e2e5eb;border-radius:8px;overflow:hidden}.enterprise-map .leaflet-container{height:100%;width:100%;background:#eef3f8;font:inherit}.enterprise-map img{max-width:none}.enterprise-map-pin{background:#1677ff;border:2px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 1px 4px #143c6d40;transform:rotate(-45deg)}.enterprise-map-locate{justify-content:flex-start;margin-top:12px}.enterprise-empty{text-align:center;color:#9298a3;padding:32px 18px;font-size:13px}.enterprise-warning{color:#936223;background:#fff9eb;border:1px solid #f1dfbb;border-radius:5px;padding:12px 16px;font-size:13px;line-height:1.7}.enterprise-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px}.enterprise-toolbar input{max-width:320px}.enterprise-toolbar select{max-width:150px}.enterprise-toolbar select.enterprise-intern-status,.enterprise-intern-status select{width:132px;max-width:132px;flex:0 0 132px}.enterprise-table-scroll{width:100%;overflow-x:auto}.enterprise-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;color:#555d69}.enterprise-table th{background:#f6f8fb;color:#77808d;font-weight:400;padding:15px 18px;border-bottom:1px solid #e8edf4;white-space:nowrap}.enterprise-table td{padding:20px 18px;border-bottom:1px solid #eef0f4;line-height:1.7;vertical-align:middle}.enterprise-table td strong{color:#333;font-weight:500}.enterprise-table td small{display:block;color:#9a9fa8;font-size:11px;margin-top:3px}.enterprise-table tr.selected td{background:#f1f6ff}.enterprise-actions{display:flex;gap:8px 12px;flex-wrap:wrap;min-width:128px}.enterprise-tag{display:inline-block;border-radius:3px;padding:2px 8px;color:#4a74b0;background:#eff5ff;font-size:11px;white-space:nowrap}.enterprise-tag.success{color:#319e75;background:#eaf8f0}.enterprise-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.enterprise-upload{display:flex;flex-direction:column;align-items:center;gap:14px;border:1px dashed #d8dfea;background:#fcfdff;border-radius:6px;padding:24px 12px;text-align:center;font-size:13px}.enterprise-upload>strong{font-size:14px;font-weight:500}.enterprise-upload>small{color:#969eaa;font-size:11px}.enterprise-upload a{color:#1763d8}.enterprise-upload .enterprise-logo-preview{width:auto;height:auto;max-width:160px;max-height:90px;object-fit:contain}.enterprise-upload-pick{color:#1763d8;cursor:pointer;display:inline-flex;border:1px solid #b7cef0;background:#fff;border-radius:4px;padding:7px 14px}.enterprise-upload-pick input{width:1px;height:1px;position:absolute;clip-path:inset(50%);overflow:hidden}.enterprise-location{padding:20px;border:1px solid #e5eaf0;border-radius:5px;margin:0 0 20px}.enterprise-location legend{padding:0 8px;font-size:13px;color:#687481}.enterprise-dialog{border:0;border-radius:8px;padding:24px 32px 28px;width:793px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 56px);overflow:auto;color:#333;background:#fff;box-shadow:0 12px 80px #143c6d26}.enterprise-dialog::backdrop{background:#0006}.enterprise-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.enterprise-dialog>header h2{font-size:18px;font-weight:500;margin:0}.enterprise-icon-button{display:flex;align-items:center;justify-content:center;background:transparent;color:#999;border:0;width:28px;height:28px;font-size:24px;padding:0}.enterprise-dialog.drawer{width:643px;height:100dvh;max-height:100dvh;max-width:min(643px,100vw);margin:0 0 0 auto;border-radius:0;padding:30px}.enterprise-dialog.result{width:527px}.enterprise-dialog.drawer .enterprise-form-grid{grid-template-columns:1fr}.enterprise-summary{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px 16px;font-size:13px;line-height:1.6;margin:22px 0}.enterprise-summary dt{color:#9a9fa7}.enterprise-summary dd{margin:0;min-width:0;overflow-wrap:anywhere}.enterprise-summary a{color:#1763d8}.enterprise-preserve{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.enterprise-intern-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;min-width:0}.enterprise-intern-layout.with-detail{grid-template-columns:minmax(0,1fr) 277px}.enterprise-intern-detail{background:#fff;border:1px solid #edf0f4;border-radius:8px;padding:20px;min-width:0;font-size:13px}.enterprise-intern-detail>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.enterprise-intern-detail>header h2{font-size:19px;margin:0}.enterprise-intern-detail .enterprise-summary{grid-template-columns:64px minmax(0,1fr);gap:12px 8px}.enterprise-guidance-section{border-top:1px solid #edf0f4;margin-top:24px;padding-top:18px}.enterprise-guidance-section>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.enterprise-guidance-section h3{font-size:14px;margin:0}.enterprise-guidance-section details{margin-top:14px;border:1px solid #edf0f4;border-radius:4px;padding:10px;font-size:12px}.enterprise-guidance-section summary{cursor:pointer;color:#4f6b91;line-height:1.7}.enterprise-guidance-section time,.enterprise-guidance-section small{color:#9299a3;font-size:10px}.enterprise-member-form{display:flex;align-items:flex-end;gap:16px;margin-top:24px}.enterprise-member-form .enterprise-field{flex:1;margin:0}.enterprise-resume-heading{display:flex;align-items:center;gap:18px;padding-bottom:22px;border-bottom:1px solid #edf0f4}.enterprise-material-mode{border:1px solid #ece5f7;border-radius:10px;padding:16px;margin:20px 0}.enterprise-material-mode legend{font-size:14px;color:#59637b;padding:0 6px}.enterprise-material-mode>label{display:inline-flex;align-items:center;gap:6px;margin-right:24px;margin-bottom:10px;cursor:pointer;white-space:nowrap}.enterprise-material-mode>label>input[type=radio]{width:16px;height:16px;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--blue)}.enterprise-material-mode>p{font-size:12px;color:#8c8c8c;line-height:1.8}.enterprise-resume-file-choice{margin:20px 0}.enterprise-resume-file-choice>h3{font-size:15px;font-weight:500}.enterprise-resume-file-choice>.enterprise-link{margin-top:14px}.enterprise-resume-file-choice a{color:#9810fa;text-decoration:underline}.enterprise-resume-file-choice .resume-file-info{margin-top:8px}.enterprise-resume-file-choice .resume-file-option .resume-file-info{margin-top:0}.enterprise-application-attachment .resume-file-card{max-width:450px;margin-top:12px;padding:18px}.enterprise-application-attachment .resume-file-card-actions{margin-top:14px}.enterprise-application-attachment .resume-file-download>button{font-size:14px;line-height:24px;padding:8px 14px;border:1px solid #e3e7ee;border-radius:8px}.enterprise-resume-heading h3{font-size:20px;margin:0 0 6px}.enterprise-resume-heading p{margin:0 0 6px;color:#66707e;font-size:13px}.enterprise-resume-heading small{color:#9b9fa7;font-size:11px}.enterprise-resume-heading>.enterprise-tag{margin-left:auto}.enterprise-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#ecf3ff;color:#4385e3;font-size:24px;flex-shrink:0}.enterprise-material{padding:18px 0;border-bottom:1px solid #edf0f4;font-size:13px}.enterprise-material h3{font-size:15px;font-weight:500;margin:0 0 14px}.enterprise-material summary{cursor:pointer;color:#1763d8}.enterprise-interview-result{border-radius:4px;background:#f4f8ff;padding:16px}.enterprise-interview-result small{color:#959eab}.enterprise-result-options{border:0;padding:12px 0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0}.enterprise-result-options legend{font-size:13px;color:#8993a1;margin-bottom:8px}.enterprise-result-options>label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1px solid #e8ecf2;border-radius:4px;padding:18px 8px;font-size:12px;color:#8b94a2;cursor:pointer}.enterprise-result-options>label.selected{border-color:#4285df;background:#f7faff;color:#1763d8}.enterprise-result-options input{position:absolute;width:1px;height:1px;min-height:0;opacity:0}.enterprise-result-options label:focus-within{outline:2px solid #a8c9ff}.enterprise-job-content{font-size:13px}.enterprise-job-content>h3{font-size:21px;margin:22px 0 16px}.enterprise-job-content h4{font-size:14px;margin:22px 0 8px;font-weight:500}.enterprise-job-content p{color:#697281}.enterprise-job-meta{display:flex;flex-wrap:wrap;gap:8px;color:#8c95a3}.enterprise-job-meta span{padding:4px 9px;background:#f5f7fa;border-radius:3px}.enterprise-job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.enterprise-job-card{text-align:left;background:#fff;border:1px solid #e8edf4;border-radius:6px;padding:22px;color:#535e70;cursor:pointer}.enterprise-job-card:hover{border-color:#79a5eb;box-shadow:0 4px 20px #17428c0a}.enterprise-job-card h3{color:#262e3b;font-weight:500;font-size:18px;margin:16px 0 10px}.enterprise-job-card strong{font-weight:400;font-size:13px}.enterprise-job-card p{font-size:12px;color:#9aa2af;margin:10px 0}.enterprise-job-card small{display:block;color:#1763d8;font-size:12px;border-top:1px solid #f0f2f6;padding-top:14px;margin-top:16px}.enterprise-stats,.enterprise-overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.enterprise-stats>div,.enterprise-overview-stat{background:#fff;border:1px solid #edf0f4;border-radius:8px;padding:22px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.enterprise-stats img,.enterprise-overview-stat img{grid-column:2;grid-row:1/3;width:48px;height:48px;object-fit:contain}.enterprise-stats span,.enterprise-overview-stat span{color:#8d97a6;font-size:13px}.enterprise-stats strong,.enterprise-overview-stat strong{font-size:29px;font-weight:500;color:#354151}.enterprise-overview-stat strong small{font-size:11px;color:#9ea5af;margin-left:6px}.enterprise-overview-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;align-items:start}.enterprise-inbox{margin-bottom:20px}.enterprise-mentor-inbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.enterprise-mentor-inbox-grid .enterprise-inbox-group{min-width:0;margin:0}.enterprise-mentor-inbox-grid .enterprise-inbox-group h3 span{color:#1890ff;margin-left:6px;font-variant-numeric:tabular-nums}@media(max-width:960px){.enterprise-mentor-inbox-grid{grid-template-columns:minmax(0,1fr);gap:12px}}.enterprise-inbox-group+.enterprise-inbox-group{margin-top:8px}.enterprise-inbox-group>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.enterprise-inbox-group h3{margin:0;font-size:14px;font-weight:500;color:#37445a}.enterprise-guidance-feed{display:grid}.enterprise-guidance-feed>button{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;background:none;border:0;border-bottom:1px solid #edf0f4;text-align:left;padding:19px 0;font-size:13px;color:#637188}.enterprise-guidance-feed strong{color:#37445a;font-weight:500}.enterprise-guidance-feed small{grid-column:2;color:#9ca6b5}@media(max-width:1200px){.enterprise-panel{padding:20px}.enterprise-intern-layout.with-detail{grid-template-columns:minmax(0,1fr) 277px}.enterprise-form-grid{gap:18px 24px}.enterprise-table th,.enterprise-table td{padding-left:12px;padding-right:12px}.enterprise-job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise-overview-stats{gap:12px}.enterprise-overview-stat{padding:16px}.enterprise-overview-stat img{width:34px;height:34px}}@media(max-width:1000px){.enterprise-overview-grid,.enterprise-intern-layout.with-detail{grid-template-columns:1fr}.enterprise-intern-detail{max-width:none}.enterprise-upload-grid{gap:12px}}@media(max-width:800px){.portal-enterprise .portal-sidebar>nav{max-height:none;overflow-y:visible}.enterprise-panel{padding:18px}.enterprise-panel-heading{flex-wrap:wrap}.enterprise-form-grid,.enterprise-upload-grid{grid-template-columns:1fr}.enterprise-tabs{gap:0;overflow-x:auto}.enterprise-tabs>button{white-space:nowrap;padding:10px 16px}.enterprise-toolbar{flex-wrap:wrap}.enterprise-toolbar input{max-width:none}.enterprise-dialog{max-width:calc(100vw - 24px);padding:20px;max-height:calc(100dvh - 24px)}.enterprise-dialog.drawer{max-width:100vw}.enterprise-member-form{flex-wrap:wrap;align-items:stretch}.enterprise-member-form .enterprise-field{flex-basis:100%}.enterprise-job-grid{grid-template-columns:1fr}.enterprise-stats,.enterprise-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.enterprise-resume-heading{flex-wrap:wrap}.enterprise-resume-heading>.enterprise-tag{margin-left:0}}@media(prefers-reduced-motion:reduce){.enterprise-workspace *,.enterprise-dialog *{scroll-behavior:auto}}.placement-check-list{margin:6px 0 0;padding-left:18px}.placement-preview{border-top:1px solid #edf0f4;margin-top:18px;padding-top:14px}.placement-preview h3{font-size:14px;margin:0}.placement-student-summary{font-size:13px;line-height:1.6}.placement-student-summary ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.placement-student-summary li{display:grid;gap:2px}.placement-student-summary span,.placement-student-summary small{color:#8b919a}.internship-home-card .enterprise-summary{grid-template-columns:64px minmax(0,1fr);gap:8px 10px;margin:12px 0 0}.internship-home-card small{display:block;color:#9a9fa7}.internship-progress{display:block;height:6px;margin-top:6px;background:#f3edf9;border-radius:99px;overflow:hidden}.internship-progress>i{display:block;height:100%;background:#6d5efc}.enterprise-card-description{margin:6px 0 0;color:#8b919a;font-size:13px;line-height:1.6;font-weight:400}.enterprise-profile-card{border:0;border-radius:12px;padding:28px 32px 32px;box-shadow:0 8px 28px #2f54eb0f}.enterprise-profile-card .enterprise-panel-heading{align-items:flex-start;margin-bottom:28px}.enterprise-profile-card .enterprise-panel-heading h2{display:flex;align-items:center;gap:10px;font-size:16px;color:#1f2329}.enterprise-profile-card .enterprise-panel-heading h2:before{content:"";width:4px;height:16px;border-radius:2px;background:#2f6bff}.enterprise-profile-card .enterprise-field>input,.enterprise-profile-card .enterprise-field>select,.enterprise-profile-card .enterprise-field>textarea{border:0;border-radius:8px;background:#f4f6f8;min-height:42px;color:#1f2329}.enterprise-profile-card .enterprise-field>select{appearance:none;padding-right:36px;background:#f4f6f8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%2398a2b3' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center}.enterprise-profile-card .enterprise-form-actions{border-top:0;margin-top:8px;padding-top:8px}.enterprise-logo-row{display:flex;align-items:center;gap:24px;margin-bottom:28px}.enterprise-logo-box{display:grid;place-items:center;width:88px;height:88px;flex:0 0 88px;border-radius:10px;background:#f4f6f8;overflow:hidden;color:#98a2b3}.enterprise-logo-box img{width:100%;height:100%;object-fit:contain}.enterprise-logo-box svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.enterprise-logo-label{margin:0 0 10px;font-size:14px;color:#1f2329}.enterprise-logo-hint{margin:10px 0 0;color:#98a2b3;font-size:12px}.enterprise-outline-button,.enterprise-text-upload{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;color:#344054;font-size:14px;cursor:pointer}.enterprise-text-upload{border:0;padding:6px 0;color:#667085}.enterprise-outline-button svg,.enterprise-text-upload svg,.enterprise-material-icon svg,.enterprise-punch-delete svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.enterprise-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.enterprise-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px}.enterprise-material{display:flex;align-items:center;gap:12px;min-width:0;padding:16px 18px;border:1px solid #eaecf0;border-radius:10px}.enterprise-material>div{flex:1;min-width:0}.enterprise-material strong{display:block;font-size:15px;font-weight:500;color:#1f2329}.enterprise-material p{margin:4px 0 0;color:#98a2b3;font-size:13px}.enterprise-material a{color:#175cd3}.enterprise-material-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:8px}.enterprise-material-icon.ppt{color:#f79009;background:#fef4e6}.enterprise-material-icon.video{color:#2f6bff;background:#eef4ff}.enterprise-punch-row{display:grid;grid-template-columns:minmax(0,1fr) 150px max-content max-content max-content;gap:12px 16px;align-items:end;margin-bottom:18px}.enterprise-punch-row .enterprise-field{margin-bottom:0}.enterprise-punch-note{color:#667085;font-size:14px;padding-bottom:11px;white-space:nowrap}.enterprise-punch-coordinates{grid-column:1 / -1;margin:-6px 0 0;color:#667085;font-size:13px}.enterprise-punch-delete{display:grid;place-items:center;width:40px;height:40px;margin-bottom:1px;border:0;background:transparent;color:#f04438;cursor:pointer}.enterprise-punch-add{width:100%;min-height:44px;margin-top:8px;border:1px solid #eaecf0;border-radius:8px;background:#fff;color:#1f2329;font:inherit;font-size:14px;cursor:pointer}.enterprise-punch-add:disabled{cursor:default;opacity:.6}@media(max-width:800px){.enterprise-profile-card{padding:18px}.enterprise-logo-row,.enterprise-material{align-items:flex-start}.enterprise-material-grid,.enterprise-punch-row{grid-template-columns:1fr}.enterprise-punch-note{padding-bottom:0}}.enterprise-required{margin-left:2px;color:#d74343;font-style:normal}.enterprise-period-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.enterprise-period-dates span{display:flex;flex-direction:column;gap:6px;color:#667085;font-size:13px}.enterprise-mentor-picker{display:grid;gap:8px}.enterprise-mentor-selected{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0;padding:0;list-style:none}.enterprise-mentor-selected li{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border-radius:16px;background:#eef4ff;color:#175cd3}.enterprise-mentor-selected button{border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.enterprise-school-teacher-field{border:0;padding:0;margin-inline:0}.enterprise-school-teacher-field legend{padding:0;line-height:1.4}.student-internships-table{min-width:1100px}.student-internships-table td{max-width:240px;overflow-wrap:anywhere}.student-internships-table td>.enterprise-link{white-space:normal;line-height:1.7}.student-internship-status{display:inline-block;padding:3px 9px;border-radius:5px;white-space:nowrap;font-size:12px;background:#f2f4f7;color:#7b8494}.student-internship-status.active{background:#e8f8f2;color:#087f60}.student-internship-status.upcoming{background:#f2edff;color:#8051dc}.enterprise-dialog.enterprise-student-management{width:min(820px,calc(100vw - 40px));box-sizing:border-box;border-radius:12px}.enterprise-student-management-body>.enterprise-summary{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px 20px;padding:18px;margin:0 0 24px;background:#f7f9fc;border-radius:8px}.enterprise-student-management-body>.enterprise-summary dd{margin:0;overflow-wrap:anywhere}.enterprise-student-management-body>.enterprise-summary dt{color:#8a94a4}.enterprise-student-management-body>form{padding:18px;border:1px solid #e6ebf2;border-radius:8px}.enterprise-student-management-body>form>.enterprise-button{min-height:42px}@media(max-width:580px){.enterprise-dialog.enterprise-student-management{width:calc(100vw - 24px);padding:18px;max-height:calc(100dvh - 24px)}.enterprise-student-management-body>.enterprise-summary{grid-template-columns:72px minmax(0,1fr);gap:10px 12px;padding:14px}.enterprise-student-management-body>form{padding:14px}}.enterprise-dialog.enterprise-student-manager{width:min(920px,calc(100vw - 48px));max-height:calc(100dvh - 40px);padding:0;overflow:hidden}.enterprise-student-manager[open]{display:flex;flex-direction:column}.enterprise-student-manager>header{flex:none;margin:0;padding:20px 24px;border-bottom:1px solid #edf0f4}.enterprise-student-manager>header h2{font-size:18px;font-weight:600}.enterprise-student-manager>header .enterprise-icon-button{width:36px;height:36px;border-radius:8px}.enterprise-management-scroll{min-height:0;overflow:auto;padding:20px 24px 24px;overscroll-behavior:contain}.enterprise-management-overview{padding:18px 20px;border:1px solid #e7edf5;border-radius:10px;background:#f8faff}.enterprise-management-student{display:flex;align-items:center;gap:12px;margin-bottom:18px}.enterprise-management-avatar{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;background:#e8f1ff;color:#1763d8;font-size:20px;font-weight:600}.enterprise-management-student>div{min-width:0}.enterprise-management-student h3{margin:0 0 4px;font-size:18px;line-height:1.4;color:#263347;overflow-wrap:anywhere}.enterprise-management-student p{margin:0;font-size:12px;color:#8893a5}.enterprise-management-student>.student-internship-status{margin-left:auto}.enterprise-management-overview>.enterprise-summary{display:grid;grid-template-columns:64px minmax(0,1fr) 72px minmax(0,1fr);gap:12px 16px;margin:0;font-size:13px;line-height:1.65}.enterprise-management-overview>.enterprise-summary dt{color:#7b879b}.enterprise-management-overview>.enterprise-summary dd{margin:0;min-width:0;color:#354258;overflow-wrap:anywhere}.enterprise-student-manager .enterprise-management-tabs{margin:20px 0 0;padding:0 0 16px;flex-shrink:0}.enterprise-management-section{padding:2px 0 0;min-width:0}.enterprise-management-section-heading{margin-bottom:18px}.enterprise-management-section-heading h3,.enterprise-management-readonly h3{margin:0 0 6px;font-size:15px;font-weight:600;color:#263347}.enterprise-management-section-heading p{margin:0;font-size:13px;color:#8893a5}.enterprise-management-mentor-form>.enterprise-form-grid{gap:16px 20px;margin-bottom:12px}.enterprise-management-mentor-form .enterprise-field{gap:8px;font-size:13px}.enterprise-management-mentor-form :is(input,select,textarea){border-radius:7px;min-height:42px}.enterprise-management-mentor-form textarea{min-height:86px}.enterprise-management-mentor-form>.enterprise-note{padding:10px 12px;margin:12px 0 0;border-radius:7px;background:#f7f8fa;color:#7c8798;font-size:12px}.enterprise-management-section>.enterprise-guidance-section:first-child{margin-top:0;border-top:0;padding-top:0}.enterprise-management-section .enterprise-preserve{line-height:1.8;overflow-wrap:anywhere}.enterprise-management-readonly{padding:16px;border:1px solid #edf0f4;border-radius:8px}.enterprise-management-readonly p{color:#354258;font-size:14px}.enterprise-management-readonly small{color:#8893a5;font-size:12px}.enterprise-management-footer{display:flex;flex:none;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #edf0f4;background:#fff}.enterprise-management-footer>span{margin-right:auto;color:#8a94a5;font-size:12px}.enterprise-management-footer>button{min-height:42px;padding:9px 20px;border-radius:8px}.enterprise-student-manager :is(button,select,input,textarea):focus-visible{outline:2px solid #91baff;outline-offset:2px}@media(max-width:640px){.enterprise-dialog.enterprise-student-manager{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:0}.enterprise-student-manager>header{padding:14px 16px}.enterprise-management-scroll{padding:16px}.enterprise-management-overview{padding:14px}.enterprise-management-overview>.enterprise-summary{grid-template-columns:66px minmax(0,1fr);gap:10px 12px}.enterprise-management-mentor-form>.enterprise-form-grid{grid-template-columns:minmax(0,1fr);gap:16px}.enterprise-management-mentor-form :is(input,select,textarea){font-size:16px;min-height:44px}.enterprise-student-manager .enterprise-management-tabs{gap:6px}.enterprise-student-manager .enterprise-management-tabs>button{padding:0 8px;min-height:42px;font-size:12px}.enterprise-management-footer{padding:12px 16px;gap:10px}.enterprise-management-footer>span{display:none}.enterprise-management-footer>button{flex:1;min-height:44px;padding:9px 12px}}.portal-content .attendance-workspace.student-attendance-page{display:block;flex:none;width:100%;max-width:860px;min-height:0;margin:0 auto;overflow:visible}.portal-content .attendance-workspace.student-attendance-page>:is(.student-attendance-primary,.student-attendance-history){flex:none;min-height:0;max-height:none;overflow:visible}.student-attendance-primary{min-width:0}.student-attendance-page{--punch-primary: #8051dc;--punch-soft: #f5f0ff;--punch-border: #e9e2f4}.student-attendance-panel{padding:24px;border-radius:12px}.student-attendance-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.student-attendance-heading h2{margin:0;color:#283142;font-size:20px;line-height:1.5}.student-attendance-heading>span{color:#8c849a;font-size:12px;padding-top:6px;white-space:nowrap}.student-placement-summary{display:flex;align-items:center;gap:12px;padding:14px;background:#faf9fc;border:1px solid #f0edf5;border-radius:8px}.student-placement-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:8px;background:#efe8fb;color:var(--punch-primary)}.student-placement-summary>div{min-width:0}.student-placement-summary strong{display:block;color:#384255;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.student-placement-summary p{margin:3px 0;font-size:13px;color:#747d8f;overflow-wrap:anywhere}.student-attendance-page .student-placement-picker{margin:0 0 16px}.student-attendance-page .student-punch-form{max-width:none;margin:0}.student-punch-date{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#616c80;font-size:13px;margin:14px 0 10px;font-variant-numeric:tabular-nums}.student-punch-date>span{color:#9198a6;font-size:12px}.student-punch-form .student-punch-today{margin:0 0 14px;gap:12px}.student-punch-today>label{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex-wrap:nowrap;gap:5px;min-width:0;min-height:90px;padding:14px 16px;box-sizing:border-box;background:#faf8fe;border:1px solid #eee8f7;border-radius:8px}.student-punch-today>label>span{font-size:12px;color:#8a8198}.student-punch-today>label>strong{font-size:21px;color:#3f3650;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums}.student-punch-today>label>small{width:auto;text-align:left;font-size:12px}.student-punch-selection{padding:0;margin:0;border:0;min-width:0}.student-punch-today>label{position:relative;cursor:pointer}.student-punch-today>label.selected{border-color:#bd96f4;background:#faf7ff}.student-punch-today>label>input{position:absolute;top:14px;right:12px;margin:0;accent-color:var(--punch-primary)}.student-punch-today>label:has(input:disabled){cursor:default}.student-punch-form .attendance-field{margin:12px 0;font-size:13px;gap:8px}.student-punch-form .attendance-position{padding:14px;margin:12px 0;background:#fafbfe;border-radius:8px}.student-punch-form .attendance-position-heading{flex-wrap:nowrap;gap:8px}.student-punch-form .attendance-position-heading h3{color:#596579;font-size:13px}.student-punch-form .attendance-position-heading button{min-height:44px;padding:8px 12px;color:var(--punch-primary);border-color:var(--punch-border);background:#fff;white-space:nowrap}.student-punch-form .attendance-position>p{margin-top:10px}.student-punch-form .attendance-position .student-position-ready{color:#098563;font-size:13px}.student-position-evidence{margin-top:10px;font-size:12px;color:#818a9b}.student-position-evidence>summary{min-height:32px;cursor:pointer}.student-position-evidence .attendance-position-details{margin-top:8px}.student-punch-note{margin:8px 0;color:#6e7789;font-size:13px}.student-punch-note>summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;list-style:none}.student-punch-note>summary::-webkit-details-marker,.student-attendance-history>summary::-webkit-details-marker{display:none}.student-punch-note>summary>span{color:#969daa;font-size:12px}.student-punch-note>summary>svg{margin-left:auto}.student-punch-note[open]>summary>svg,.student-attendance-history[open]>summary>svg{transform:rotate(90deg)}.student-punch-form .student-punch-note .attendance-field{margin:4px 0 0}.student-punch-form .student-punch-note textarea{min-height:96px}.student-punch-form .attendance-submit-area{gap:10px;margin:8px 0 0}.student-punch-form .attendance-submit-area>.attendance-button{width:100%;min-width:0;min-height:54px;padding:12px;border-radius:9px;background:var(--punch-primary);font-size:16px;font-weight:600}.student-punch-form .attendance-submit-area>.attendance-button>img{width:24px;height:24px}.student-punch-form .attendance-submit-area>.attendance-button:disabled{opacity:1;color:#fff;background:#b9a5de}.student-punch-form .attendance-confirm-exception{align-items:flex-start;font-size:13px;line-height:1.7}.student-punch-form .attendance-confirm-exception input{flex:none;margin-top:4px;accent-color:var(--punch-primary)}.student-attendance-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0;border:1px solid #edf0f5;border-radius:12px;background:#fff}.student-attendance-actions>button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:64px;padding:12px 8px;border:0;border-right:1px solid #f0edf5;background:none;font:inherit;font-size:13px;color:#736584;cursor:pointer}.student-attendance-actions>button:last-child{border-right:0}.student-attendance-actions>button>svg{color:var(--punch-primary);flex:none}.student-attendance-actions>button:disabled{opacity:.45;cursor:default}.student-attendance-history{border:1px solid #edf0f5;border-radius:12px;background:#fff}.student-attendance-history>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;min-height:24px;cursor:pointer;list-style:none;color:#536076;font-size:14px}.student-attendance-history>summary>span{display:flex;align-items:center;gap:10px}.student-attendance-history .attendance-panel{border:0;padding:0 18px 18px}.student-attendance-history>.attendance-panel>.attendance-panel-heading{display:none}.student-attendance-history .attendance-month-filter{flex-wrap:wrap}.student-attendance-history .attendance-month-card{width:100%;max-width:430px;box-sizing:border-box}.student-attendance-history .attendance-table-scroll{max-width:100%;overflow:auto}.student-attendance-page :is(button,summary,select,textarea):focus-visible{outline:2px solid var(--punch-primary);outline-offset:3px}@media(min-width:1100px){.portal-content .attendance-workspace.student-attendance-page:has(.student-attendance-history){display:grid;max-width:1480px;grid-template-columns:minmax(360px,420px) minmax(0,1fr);align-items:start;gap:18px 24px}.student-attendance-page>.student-attendance-primary{grid-column:1}.student-attendance-primary>.student-attendance-actions{margin:18px 0 0}.student-attendance-page>.student-attendance-history{grid-column:2;min-width:0}.student-attendance-history>summary{padding:20px 24px;font-size:16px;font-weight:600}.student-attendance-history .attendance-panel{padding:0 24px 24px}.student-attendance-history .attendance-month-records{grid-template-columns:minmax(0,1fr);gap:16px}.student-attendance-history .attendance-month-filter{justify-content:space-between;margin:0}.student-attendance-history .attendance-month-card{max-width:none;border:1px solid #edf0f5}.student-attendance-history .attendance-month-card>header{min-height:0;padding:16px}.student-attendance-history .attendance-calendar{padding:16px}.student-attendance-history .attendance-calendar h4{margin-bottom:12px}.student-attendance-history .attendance-calendar-grid>button{min-height:44px}.student-attendance-history .attendance-daily-records{padding:0}.student-attendance-history .attendance-table-scroll{border:1px solid #edf0f5;border-radius:8px}}@media(max-width:580px){.student-attendance-page .student-attendance-panel{padding:18px}.student-attendance-heading h2{font-size:18px}.student-attendance-heading{margin-bottom:12px}.student-placement-summary{padding:12px}.student-placement-icon{width:34px;height:34px}.student-punch-today>label{padding:12px;min-height:76px}.student-attendance-actions>button{flex-direction:column;gap:6px;min-height:76px}.student-attendance-history>summary{padding:16px}.student-attendance-history .attendance-panel{padding:0 12px 14px}}.enterprise-internship-records .management-table-toolbar{gap:12px}.enterprise-record-filter{min-width:124px}.enterprise-record-filter select{min-height:38px;border:1px solid #e2e7f0;border-radius:8px;background:#fff;padding:0 12px}.enterprise-record-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:240px;line-height:1.6}.enterprise-record-dates{display:flex;flex-direction:column;gap:4px;white-space:nowrap;font-size:12px}.enterprise-record-number{font-variant-numeric:tabular-nums}.enterprise-record-number small,.enterprise-record-dates small{display:block;color:#8993a2;font-size:11px;margin-top:4px}.enterprise-record-muted{color:#8d97a8}.enterprise-record-state{border-radius:5px;padding:3px 8px;font-size:12px;white-space:nowrap;background:#eef2f8;color:#65748b}.enterprise-record-state.active{color:#13926d;background:#e7f7f0}.enterprise-record-state.upcoming{color:#347ce6;background:#eef5ff}.enterprise-record-state.needs_check{color:#b27b12;background:#fff5df}.enterprise-record-detail{padding:20px}.enterprise-record-detail dl{display:grid;grid-template-columns:110px 1fr;gap:12px;margin:0 0 24px}.enterprise-record-detail dt{color:#7c8798}.enterprise-record-detail dd{margin:0}@media(max-width:800px){.enterprise-internship-records .attendance-table{min-width:900px}}.enterprise-leave-records .management-table-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 140px minmax(330px,390px) auto;align-items:end;gap:16px}.enterprise-leave-records .management-table-search{grid-column:1;grid-row:1;min-width:0;max-width:none}.enterprise-leave-records .management-table-toolbar>.management-table-reset{grid-column:4;grid-row:1;margin-left:0}.enterprise-leave-records .management-table-toolbar .enterprise-leave-status{display:grid;grid-column:2;grid-row:1;gap:8px;min-width:0}.enterprise-leave-status>span{white-space:nowrap;font-size:13px;color:#667085}.enterprise-leave-records .enterprise-leave-status select{width:100%;max-width:none;height:40px}.enterprise-leave-date{grid-column:3;grid-row:1;min-width:0;padding:0;margin:0;border:0}.enterprise-leave-date legend{padding:0;margin-bottom:8px;font-size:13px;color:#667085}.enterprise-leave-date-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.enterprise-leave-date-range>span{color:#8b93a1;font-size:13px}.enterprise-leave-records .enterprise-leave-date-range input[type=date]{width:100%;min-width:0;height:40px;box-sizing:border-box;padding:0 10px}.enterprise-leave-records .management-table-scroll{border:1px solid #edf0f5;border-radius:8px;box-sizing:border-box}.enterprise-leave-records .management-table-scroll .enterprise-leave-table{width:100%;min-width:1120px;table-layout:fixed}.enterprise-leave-table th{box-sizing:border-box}.enterprise-leave-table th:nth-child(1){width:10%}.enterprise-leave-table th:nth-child(2){width:17%}.enterprise-leave-table th:nth-child(3){width:17%}.enterprise-leave-table th:nth-child(4){width:10%}.enterprise-leave-table th:nth-child(5){width:11%}.enterprise-leave-table th:nth-child(6){width:14%}.enterprise-leave-table th:nth-child(7){width:15%}.enterprise-leave-table th:nth-child(8){width:6%}.enterprise-leave-text{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enterprise-leave-empty{position:sticky;left:0;box-sizing:border-box;width:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center}.enterprise-leave-empty strong{color:#667085;font-size:14px;font-weight:500}.enterprise-leave-empty p{margin:0;color:#98a2b3;font-size:13px;line-height:1.7}@media(max-width:1100px){.enterprise-leave-records .management-table-toolbar{grid-template-columns:minmax(0,1fr) 140px auto}.enterprise-leave-records .management-table-toolbar>.management-table-reset{grid-column:3}.enterprise-leave-date{grid-column:1 / -1;grid-row:2;width:min(100%,390px)}}@media(max-width:580px){.enterprise-leave-records .management-table-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:12px}.enterprise-leave-records .management-table-search{grid-column:1 / -1}.enterprise-leave-records .management-table-toolbar .enterprise-leave-status{grid-column:1;grid-row:2}.enterprise-leave-records .management-table-toolbar>.management-table-reset{grid-column:2;grid-row:2}.enterprise-leave-date{grid-row:3;width:100%}.enterprise-leave-records .enterprise-leave-date-range input[type=date]{padding-inline:6px;font-size:14px}}.monthly-table-toolbar>.management-table-search-form{flex:1 1 260px;min-width:220px;max-width:380px}.monthly-table-toolbar>label{flex:1 1 210px;min-width:190px;max-width:260px;white-space:nowrap}.monthly-table-toolbar>label>span{flex:none;white-space:nowrap}.monthly-table-toolbar>label:has(input[type=month]){flex:0 0 190px}.monthly-table-toolbar input[type=month]{flex:0 0 154px;width:154px;height:40px;padding:0 10px}.monthly-table-toolbar>label>select{flex:1 1 auto;width:0;min-width:120px;max-width:none}.monthly-table-toolbar>.attendance-button.primary{flex:none;margin-left:0;white-space:nowrap}.monthly-attendance-workspace .attendance-table td:last-child{min-width:94px;white-space:nowrap}.monthly-attendance-workspace .attendance-table td:last-child>.attendance-link{display:inline-flex;align-items:center;gap:6px}.monthly-attendance-workspace .attendance-table td:last-child>.attendance-link+.attendance-link{margin-left:12px}.monthly-status{display:inline-block;padding:2px 8px;border-radius:5px;font-size:12px;color:#667085;background:#f2f4f7;white-space:nowrap}.monthly-status.confirmed{color:#008563;background:#e7f7f1}.monthly-status.draft{color:#ad6b15;background:#fff6df}.monthly-attendance-dialog{box-sizing:border-box;width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid #e6eaf0;border-radius:12px;color:#344054;box-shadow:0 18px 64px #1f29372b}.monthly-attendance-dialog::backdrop{background:#11182766}.monthly-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #edf0f5}.monthly-dialog-heading h2{margin:0;font-size:20px;color:#1f2937}.monthly-dialog-heading p{margin:6px 0 0;font-size:13px;color:#8b93a1}.monthly-dialog-heading>button{width:32px;height:32px;padding:0;border:0;background:none;color:#667085;font-size:26px;cursor:pointer}.monthly-dialog-body{padding:20px 24px;max-height:calc(100dvh - 240px);overflow:auto}.monthly-dialog-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;padding:16px 24px;border-top:1px solid #edf0f5;background:#fff}.monthly-attendance-dialog .attendance-button{min-height:38px}.monthly-student-picker{margin:0 0 18px;padding:0;border:0}.monthly-student-picker legend{margin-bottom:10px;font-weight:600}.monthly-student-picker>input{box-sizing:border-box;width:100%;padding:9px 12px;border:1px solid #e4e8ef;border-radius:7px;background:#f9fafb;font:inherit}.monthly-candidates{display:flex;flex-wrap:wrap;gap:8px 16px;max-height:160px;overflow:auto;padding:12px 0 0}.monthly-candidates>label{display:flex;align-items:center;gap:8px;min-width:160px;padding:4px 0;font-size:14px;cursor:pointer}.monthly-candidates small{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8b93a1;font-size:12px}.monthly-candidates input{accent-color:#1677ff}.monthly-entry-scroll{width:100%;overflow:auto;max-height:340px;border:1px solid #edf0f5;border-radius:8px}.monthly-entry-table{min-width:820px}.monthly-entry-table th{position:sticky;top:0;z-index:1;background:#f8f9fb;white-space:nowrap}.monthly-entry-table th,.monthly-entry-table td{padding:10px 12px}.monthly-entry-table td:first-child{min-width:150px}.monthly-entry-table td small{display:block;max-width:220px;color:#8b93a1;font-size:12px}.monthly-entry-table :is(input,select,textarea){box-sizing:border-box;width:100%;min-width:110px;min-height:36px;padding:6px 8px;border:1px solid #dfe4ec;border-radius:6px;background:#fff;color:#344054;font:inherit;font-size:13px}.monthly-entry-table td:last-child{width:30%;min-width:280px}.monthly-entry-table textarea{min-width:280px;min-height:96px;line-height:1.75;resize:vertical}.monthly-entry-table textarea:focus{min-height:180px}.monthly-entry-table :is(input,select,textarea):focus{outline:2px solid #c7dafe;outline-offset:1px}.monthly-entry-table td{vertical-align:top}.monthly-confirmation{margin-top:22px;padding-top:16px;border-top:1px solid #e5eaf0}.monthly-confirmation h3{margin:0 0 12px;font-size:16px}.monthly-confirmation>button{display:block;margin:16px 0 0 auto}.monthly-readonly-table{min-width:780px}.monthly-note-cell{max-width:260px;white-space:pre-wrap;word-break:break-word}.monthly-readonly-table small{display:block;color:#8b93a1}.monthly-discard{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;margin-bottom:16px;border:1px solid #f4d7a5;border-radius:8px;background:#fffaef;font-size:14px}.monthly-discard>span{flex:1}.monthly-report-detail .monthly-version-summary{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#8b93a1;font-size:13px;padding:0 0 14px}.monthly-report-detail .monthly-version-summary strong{color:#344054}.monthly-report-detail>.management-table-panel>.monthly-return-records{flex:0 1 auto;max-height:180px;overflow:auto}@media(max-width:800px){.monthly-attendance-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.monthly-dialog-heading,.monthly-dialog-actions{padding:14px}.monthly-dialog-body{padding:14px;max-height:calc(100dvh - 210px)}.monthly-dialog-actions{gap:8px;flex-wrap:wrap}.monthly-dialog-actions>button{flex:1}.monthly-candidates{max-height:140px}.monthly-table-toolbar>.management-table-search-form{flex-basis:100%;min-width:0;max-width:none}.monthly-table-toolbar>label{max-width:none}.monthly-table-toolbar>.attendance-button.primary{margin-left:0}}.attendance-statistics-toolbar{align-items:flex-end;gap:12px;flex-wrap:wrap}.attendance-statistics-toolbar label{display:grid;gap:7px;min-width:140px;flex:1}.attendance-statistics-toolbar .attendance-statistics-search{flex:2;min-width:210px}.attendance-statistics-toolbar input,.attendance-statistics-toolbar select{width:100%;height:40px;min-width:0;border:1px solid #dce2ef;border-radius:8px;background:#fff;padding:0 12px;font:inherit;color:#344359}.attendance-statistics-toolbar label>span{font-size:12px;color:#71809c}.attendance-statistics .attendance-table{min-width:850px}.attendance-statistics .attendance-table small{display:block;font-size:11px;color:#8b98ae;margin-top:5px}.attendance-statistic-dialog{border:0;border-radius:16px;width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;color:#344359}.attendance-statistic-dialog::backdrop{background:#15253c60}.attendance-statistic-dialog>header{padding:20px 24px;border-bottom:1px solid #e9edf5;display:flex;justify-content:space-between;align-items:center}.attendance-statistic-dialog h2{margin:0;font-size:18px}.attendance-statistic-dialog>header>button{border:0;background:none;font-size:24px;color:#7d89a1;cursor:pointer}.attendance-statistic-dialog>form{padding:20px 24px}.attendance-statistic-context{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;font-size:13px;margin:0 0 22px}.attendance-statistic-context dt{color:#8491a9}.attendance-statistic-context dd{margin:0;overflow-wrap:anywhere}.attendance-statistic-dialog .attendance-field{margin:14px 0}.attendance-statistic-dialog .attendance-field input{border:1px solid #dce2ef;border-radius:8px;padding:10px;font:inherit}.attendance-statistic-dialog footer{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.attendance-statistic-history{margin-top:22px;border-top:1px solid #e9edf5;padding-top:10px}.attendance-statistic-history h3{font-size:14px}.attendance-statistic-history article{border-bottom:1px solid #edf0f7;padding:12px 0;font-size:13px}.attendance-statistic-history article>span{display:block;color:#8b98ae;font-size:12px;margin-top:5px}.attendance-statistic-history article>p{white-space:pre-wrap}@media(max-width:600px){.attendance-statistics-toolbar label{min-width:calc(50% - 12px)}.attendance-statistics-toolbar .attendance-statistics-search{min-width:100%}.attendance-statistics-toolbar>button{margin-left:auto}.attendance-statistic-context{grid-template-columns:100px minmax(0,1fr)}}.attendance-workspace{display:grid;gap:22px;min-width:0}.attendance-panel{border:1px solid #edf0f4;border-radius:10px;background:#fff;padding:24px;min-width:0}.attendance-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.attendance-panel-heading h2,.attendance-panel-heading h3{font-size:18px;font-weight:600;margin:0}.attendance-panel-heading p{color:#8b929e;font-size:13px;line-height:1.7;margin:8px 0 0}.attendance-subtle{color:#8b929e;font-size:12px;line-height:1.75;margin:12px 0}.attendance-empty{text-align:center;padding:26px 12px;color:#929aa7;font-size:13px}.attendance-warning{background:#fff8ea;border:1px solid #f2dfb7;border-radius:6px;color:#96682c;padding:12px 16px;font-size:13px;line-height:1.75}.attendance-warning p{margin:0 0 6px}.attendance-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:8px 18px;min-height:38px;border:1px solid #dfe5ed;border-radius:7px;background:#fff;color:#657183;font:inherit;font-size:13px;cursor:pointer}.attendance-button.primary{border:0;color:#fff;background:linear-gradient(92deg,#ad72f1,#9a66ff);font-weight:500}.attendance-button:disabled{opacity:.5;cursor:default}.attendance-link{border:0;background:none;color:#1680eb;padding:0;font:inherit;font-size:12px;cursor:pointer;text-align:left}.attendance-link:hover{text-decoration:underline}.attendance-field{display:grid;gap:9px;font-size:14px;color:#3b4555;margin:20px 0;min-width:0}.attendance-workspace input:not([type=radio]):not([type=checkbox]),.attendance-workspace select,.attendance-workspace textarea,.attendance-drawer input:not([type=radio]):not([type=checkbox]),.attendance-drawer select{width:100%;min-width:0;border:1px solid #e4e8ef;background:#fff;border-radius:6px;min-height:38px;padding:8px 12px;font:inherit;font-size:13px;color:#455268;box-sizing:border-box}.attendance-workspace textarea{line-height:1.75;resize:vertical}.attendance-workspace input:focus,.attendance-workspace select:focus,.attendance-workspace textarea:focus,.attendance-drawer input:focus{outline:2px solid #c7dafe;outline-offset:1px}.attendance-workspace :disabled{cursor:default}.attendance-home-card>.attendance-button.primary{width:100%;border-radius:100px;margin-top:16px;min-height:42px}.attendance-today-slots{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0 22px}.attendance-today-slots>div{position:relative;border-radius:10px;background:#faf8fd;min-height:74px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px 12px;padding:15px 12px}.attendance-today-slots span{color:#8b8495;font-size:12px}.attendance-today-slots strong{color:#453a50;font-size:14px;font-weight:500}.attendance-today-slots small{width:100%;color:#36835d;text-align:center;font-size:11px}.attendance-today-slots small.exception{color:#b27a28}.attendance-today-slots img{position:absolute;right:6px;top:6px}.attendance-punch-form{max-width:800px;margin:0 auto}.attendance-kind-options{display:flex;gap:16px;border:0;padding:0;margin:24px 0}.attendance-kind-options legend{color:#485569;font-size:14px;margin-bottom:12px}.attendance-kind-options label{display:flex;align-items:center;gap:8px;border:1px solid #e6e2ef;border-radius:7px;padding:12px 20px;color:#8b809b;font-size:14px}.attendance-kind-options label.selected{color:#9d58e8;background:#fcf9ff;border-color:#c8a0ed}.attendance-kind-options input{accent-color:#a06be8}.attendance-position{background:#f9fbfe;border:1px solid #e8edf6;border-radius:9px;padding:20px;margin:24px 0}.attendance-position-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.attendance-position-heading h3{font-size:15px;font-weight:500;margin:0}.attendance-position>p{font-size:12px;color:#9199a7;line-height:1.75;margin:16px 0 0}.attendance-position-details{display:grid;grid-template-columns:96px minmax(0,1fr);font-size:13px;gap:12px;margin-top:20px}.attendance-position-details dt{color:#9199a7}.attendance-position-details dd{margin:0;color:#4b596f;overflow-wrap:anywhere}.attendance-position>.attendance-warning{margin-top:16px}.attendance-confirm-exception{display:flex;align-items:flex-start;gap:10px;padding:14px;background:#fff9ee;border-radius:7px;font-size:13px;line-height:1.8;color:#9f712f}.attendance-confirm-exception input{margin-top:5px}.attendance-submit-area{display:flex;align-items:center;flex-direction:column;gap:14px;margin:24px 0 0;text-align:center}.attendance-submit-area>.attendance-button{min-width:240px;border-radius:100px;min-height:44px}.attendance-submit-area p{margin:0;font-size:12px;color:#8c96a5}.attendance-receipt{border:1px solid #cde9d9;border-radius:9px;background:#f3fbf6;padding:20px;color:#357254;margin-top:22px}.attendance-receipt.exception{color:#986b2f;border-color:#f0dfbe;background:#fff9ef}.attendance-receipt h3{font-size:16px;margin:0 0 14px}.attendance-receipt p{font-size:13px;line-height:1.75}.attendance-filters{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}.attendance-filters>label{display:grid;gap:8px;min-width:140px;flex:1;max-width:260px;font-size:12px;color:#6e798b}.attendance-filters>label:has(input[type=date]){flex:0 0 150px}.attendance-stat-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px;border-radius:14px;background:#eaf4ff url(/figma/enterprise/enterprise-stat-background.png) center/100% 100% no-repeat;margin:20px 0}.attendance-stat{display:flex;align-items:center;gap:18px;background:#fff;border-radius:12px;min-height:102px;padding:10px 16px;min-width:0;box-shadow:0 1px 3px #457ad90a}.attendance-stat>div{display:grid;gap:10px;min-width:0}.attendance-stat>div>span{color:#8c93a0;font-size:12px}.attendance-stat strong{font-size:28px;line-height:1;font-weight:600;color:#303a4c}.attendance-stat-icon{width:81px;height:77px;flex:none;position:relative;display:block}.attendance-stat-icon>img{position:absolute;left:0;top:0}.attendance-stat-icon>.attendance-stat-overlay{left:36px;top:27px}.attendance-stat-icon.check>i{position:absolute;left:10px;top:13px;width:44.595px;height:44.595px;background:linear-gradient(153deg,#7da1ff,#254edb);border-radius:14px;transform:rotate(-25deg);box-shadow:inset 1px 1px 3px #90a8ff}.attendance-stat-icon.check:after{content:"";position:absolute;width:42.811px;height:42.811px;left:29px;top:25px;border-radius:10px;background:#b6d6ff66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 3px #90adffcc}.attendance-stat-icon.check>img{top:33px;left:36px;z-index:1}.attendance-table-scroll{min-width:0;width:100%;overflow-x:auto}.attendance-table{width:100%;min-width:760px;border-collapse:collapse;color:#535f72;font-size:12px;text-align:left}.attendance-table.with-person{min-width:1050px}.attendance-table .attendance-nowrap{white-space:nowrap}.attendance-table th{background:#fafafa;font-weight:400;color:#737d8c;border-bottom:1px solid #edf0f4;padding:13px 12px;white-space:nowrap}.attendance-table td{border-bottom:1px solid #edf0f4;padding:15px 12px;line-height:1.75;vertical-align:middle;min-width:88px}.attendance-table small{display:block;color:#9aa2af;font-size:10px;margin-top:4px}.attendance-table .attendance-record-note{white-space:pre-wrap;overflow-wrap:anywhere;min-width:120px;max-width:250px}.attendance-status{display:inline-block;white-space:nowrap;background:#fff2d6;color:#bf8d24;border-radius:100px;padding:2px 10px;font-size:11px}.attendance-status.inside{color:#319b76;background:#dff8ec}.attendance-status.unavailable{color:#9a6bd0;background:#f3eafd}.attendance-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;color:#969eaa;padding-top:22px}.attendance-pagination>div{display:flex;gap:10px}.attendance-pagination .attendance-button{min-height:30px;padding:5px 12px;font-size:11px}.attendance-drawer{position:fixed;margin:0 0 0 auto;width:526px;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0;background:#f3f7fc;color:#344154;overflow:auto;box-sizing:border-box}.attendance-drawer::backdrop{background:#0009}.attendance-drawer>header{display:grid;grid-template-columns:1fr auto;gap:12px;padding:28px;border-bottom:1px solid #e1e8f1}.attendance-drawer>header h2{font-size:22px;font-weight:600;margin:0}.attendance-drawer>header p{grid-column:1/-1;font-size:13px;color:#8993a2;line-height:1.7;margin:0}.attendance-drawer>header button{border:0;padding:0;background:none;display:flex;align-items:center;cursor:pointer}.attendance-drawer-body{padding:20px 24px 28px}.attendance-month-records{display:grid;grid-template-columns:minmax(300px,478px) minmax(0,1fr);gap:20px;align-items:start}.attendance-drawer .attendance-month-records{display:block}.attendance-month-filter{grid-column:1/-1;display:flex;align-items:center;gap:12px;font-size:13px;color:#647184;margin-bottom:6px}.attendance-month-filter input{max-width:180px}.attendance-drawer .attendance-month-filter{margin-bottom:22px}.attendance-month-card{border-radius:10px;background:#fff;overflow:hidden;max-width:478px;width:100%}.attendance-month-card>header{min-height:140px;padding:16px 20px;box-sizing:border-box;position:relative;isolation:isolate}.attendance-month-card>header:before{content:"";position:absolute;inset:0;z-index:-1;background:url(/figma/attendance/month-background.png) bottom/100% 100% no-repeat;-webkit-mask:url(/figma/attendance/month-mask.svg) top/100% 100% no-repeat;mask:url(/figma/attendance/month-mask.svg) top/100% 100% no-repeat}.attendance-month-card>header h3{font-size:18px;font-weight:500;margin:0}.attendance-month-card>header>p{margin:6px 0 10px;font-size:11px;color:#6a86a8}.attendance-month-totals{display:grid;grid-template-columns:repeat(4,1fr);background:#fff9;border-radius:6px;padding:12px 4px;gap:6px}.attendance-month-totals>div{display:grid;justify-items:center;gap:7px}.attendance-month-totals span{font-size:11px;color:#7c8a9d;text-align:center}.attendance-month-totals strong{font-size:20px;font-weight:600;color:#334052}.attendance-month-totals strong.exception{color:#e49a35}.attendance-calendar{padding:20px}.attendance-calendar h4{font-size:14px;font-weight:500;margin:0 0 20px}.attendance-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px 0;align-items:start}.attendance-calendar-grid>.weekday{text-align:center;font-size:11px;color:#8e9aac;padding-bottom:10px}.attendance-calendar-grid>button{display:flex;align-items:center;flex-direction:column;gap:3px;min-height:54px;padding:4px 0;border:1px solid transparent;background:none;border-radius:5px;position:relative;color:#556174;font-size:12px}.attendance-calendar-grid>button.selected{background:#f1f6ff;border-color:#98b9f1}.attendance-calendar-grid small{display:inline-block;padding:1px 5px;font-size:9px;border-radius:2px;background:#e6f4ff;color:#2475ce}.attendance-calendar-grid i{position:absolute;top:0;right:8px;width:5px;height:5px;border-radius:50%;background:#ed9a35}.attendance-daily-records{background:#fff;border-radius:10px;padding:20px;min-width:0}.attendance-drawer .attendance-daily-records{margin-top:20px}.attendance-daily-records h3{font-size:15px;font-weight:500}@media(max-width:1100px){.attendance-stat{gap:8px;padding:8px}.attendance-stat-band{gap:12px;padding:12px}.attendance-month-records{grid-template-columns:1fr}.attendance-month-card{justify-self:center}}@media(max-width:800px){.attendance-filters{display:grid;grid-template-columns:1fr;align-items:stretch;gap:12px}.attendance-filters>label,.attendance-filters>label:has(input[type=date]){flex:none;width:100%;min-width:0;max-width:none}.attendance-workspace :is(input:not([type=radio]):not([type=checkbox]),select),.attendance-drawer :is(input:not([type=radio]):not([type=checkbox]),select){min-height:44px;font-size:16px}.attendance-panel{padding:18px}.attendance-stat-band{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-stat{flex-direction:column;align-items:flex-start;gap:0;padding:8px 12px}.attendance-stat-icon{transform-origin:left center}.attendance-stat>div{padding:0 6px 14px}.attendance-filters{gap:12px}.attendance-filters>label{max-width:none;min-width:120px}.attendance-filters>label:has(input[type=date]){flex:1}.attendance-kind-options{gap:10px}.attendance-kind-options label{padding:12px}.attendance-position{padding:15px}.attendance-position-heading{flex-wrap:wrap}.attendance-drawer-body{padding:20px 16px}.attendance-drawer>header{padding:24px 20px}.attendance-drawer>header h2{font-size:20px}.attendance-today-slots{gap:9px}.attendance-today-slots>div{padding:18px 8px 12px}.attendance-pagination{flex-wrap:wrap}}.attendance-request-new-actions{display:flex;gap:12px;flex-wrap:wrap}.attendance-request-dialog{width:793px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);overflow:auto;border:0;border-radius:10px;padding:28px 32px;background:#fff;color:#364256;box-shadow:0 12px 80px #234b8026}.attendance-request-dialog::backdrop{background:#0006}.attendance-request-dialog>header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.attendance-request-dialog>header h2{font-size:20px;font-weight:500;margin:0}.attendance-request-dialog>header button{padding:0;border:0;background:none;display:flex;align-items:center;cursor:pointer}.attendance-request-dialog input,.attendance-request-dialog select,.attendance-request-dialog textarea{width:100%;min-width:0;padding:10px 12px;min-height:40px;box-sizing:border-box;border:1px solid #e2e7ef;border-radius:7px;font:inherit;font-size:13px;color:#4a566a;background:#fff}.attendance-request-dialog textarea{resize:vertical;line-height:1.8}.attendance-request-dialog input:focus,.attendance-request-dialog select:focus,.attendance-request-dialog textarea:focus{outline:2px solid #c4dafe;outline-offset:1px}.attendance-request-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.attendance-request-character-count{font-size:11px;color:#9b9fa8;text-align:right}.attendance-request-reviewer{background:#f4f8ff;border-radius:8px;padding:16px;margin:20px 0;display:grid;grid-template-columns:120px 1fr;gap:12px;font-size:13px}.attendance-request-reviewer>span{color:#8d98a9}.attendance-request-reviewer strong{font-weight:500;color:#426898}.attendance-request-reviewer p{grid-column:1/-1;margin:0;color:#8e9bb0;font-size:12px;line-height:1.7}.attendance-request-form-actions{display:flex;justify-content:center;gap:16px;border-top:1px solid #eef1f6;padding-top:22px;margin:24px 0 16px}.attendance-request-form-actions .attendance-button.primary{min-width:160px}.attendance-request-source{padding:18px;border:1px solid #e6edf7;border-radius:8px;background:#fbfdff;font-size:13px;margin:20px 0}.attendance-request-source h3{font-size:15px;font-weight:500;margin:0 0 16px}.attendance-request-source dl,.attendance-request-facts{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px 18px;font-size:13px;line-height:1.7}.attendance-request-source dt,.attendance-request-facts dt{color:#8b95a4}.attendance-request-source dd,.attendance-request-facts dd{margin:0;min-width:0;overflow-wrap:anywhere}.attendance-request-source>p{color:#929dab;font-size:12px;line-height:1.8;margin:16px 0 0}.attendance-request-tabs{display:flex;gap:24px;border-bottom:1px solid #edf0f5;margin:0 0 24px}.attendance-request-tabs>button{background:none;border:0;border-bottom:3px solid transparent;color:#959ba7;font:inherit;font-size:14px;padding:0 6px 12px}.attendance-request-tabs>button[aria-current=page]{border-bottom-color:#2785ef;color:#2785ef}.attendance-request-status{display:inline-block;padding:3px 10px;border-radius:100px;font-size:11px;white-space:nowrap;font-weight:400;background:#fff2d5;color:#bf8b29}.attendance-request-status.approved{color:#329a76;background:#def8eb}.attendance-request-status.rejected{color:#db6459;background:#fff0ed}.attendance-request-table{min-width:1040px}.attendance-request-detail{display:grid;gap:20px;min-width:0}.attendance-request-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start;min-width:0}.attendance-request-detail-main{display:grid;gap:20px;min-width:0}.attendance-request-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:26px;border-radius:12px;background:#ebf4ff url(/figma/enterprise/enterprise-stat-background.png) center/100% 100% no-repeat}.attendance-request-summary>div{display:grid;gap:10px;padding:12px;background:#ffffffb3;border-radius:7px;min-width:0}.attendance-request-summary span{color:#7f8a9c;font-size:12px}.attendance-request-summary strong{font-size:14px;font-weight:500;line-height:1.7;color:#344359;overflow-wrap:anywhere}.attendance-request-section-title{display:flex;align-items:center;gap:12px;margin-bottom:22px}.attendance-request-section-title h2{font-size:16px;font-weight:500;margin:0}.attendance-request-subheading{font-size:15px;font-weight:500;margin:24px 0 14px}.attendance-request-preserve{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;color:#647286}.attendance-request-review-panel{position:sticky;top:80px}.attendance-request-review-panel>h2{font-size:17px;font-weight:500;border-left:4px solid #4388f5;padding-left:10px;margin:0 0 24px}.attendance-request-current-status{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e8edf3;border-radius:8px;padding:14px;font-size:12px;color:#97a0ad}.attendance-request-review-panel textarea{width:100%;min-width:0;box-sizing:border-box;padding:14px;border:1px solid #e8edf4;border-radius:7px;resize:vertical;font:inherit;font-size:13px;line-height:1.8;background:#f8fafc;min-height:150px}.attendance-request-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.attendance-request-review-actions>button{display:flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;min-height:46px;border:1px solid #ffc8c1;background:#fff;color:#e66d60;padding:10px 5px;font:inherit;font-size:13px}.attendance-request-review-actions>.attendance-request-approve{color:#fff;border-color:transparent;background:#7592ff url(/figma/attendance-requests/button-background.png) center/100% 100% no-repeat}.attendance-request-review-actions>button:disabled{opacity:.5;cursor:default}.attendance-request-reviewed{border:1px solid #d8e8df;background:#f6fcf8;border-radius:8px;padding:16px;color:#4d8062;font-size:13px;line-height:1.75}.attendance-request-reviewed time{color:#8a9e92;font-size:12px}.attendance-request-timeline{display:grid;gap:18px;margin-top:22px}.attendance-request-timeline article{display:flex;align-items:flex-start;gap:15px;padding-bottom:18px;border-bottom:1px solid #eef1f6}.attendance-request-timeline article>span{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:#eaf3ff;color:#4481da;font-size:13px}.attendance-request-timeline strong{font-size:14px;font-weight:500;color:#46556c}.attendance-request-timeline time{display:block;margin-top:8px;font-size:12px;color:#9ca5b3}.attendance-request-timeline p{font-size:12px;line-height:1.8;color:#8691a2;margin:8px 0}.attendance-request-timeline small{color:#a4aebd;font-size:11px}.attendance-home-requests{border-top:1px solid #f2ebfb;padding-top:16px;margin-top:20px}.attendance-home-request-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.attendance-home-request-buttons>button{display:flex;align-items:center;gap:12px;border:1px solid #f0e7fd;background:#fff;border-radius:9px;padding:10px;min-height:66px;color:#57466a;font-size:13px}.attendance-leave-icon{position:relative;display:block;width:44px;height:44px;flex:none}.attendance-leave-icon>img{position:absolute;left:0;top:0}.attendance-leave-icon>img:nth-child(2){left:10px;top:9px}.attendance-leave-icon>img:nth-child(3){left:16.25px;top:18.38px}.attendance-application-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:18px 0}@media(max-width:1100px){.attendance-request-detail-layout{grid-template-columns:1fr}.attendance-request-review-panel{position:static}.attendance-request-review-actions{max-width:400px}}.attendance-leave-sheet{display:flex;flex-direction:column;min-height:0}.attendance-leave-mobile{display:flex;flex-direction:column;gap:12px;min-height:0}.attendance-request-kind-filters{display:flex;gap:6px;flex-wrap:wrap}.attendance-request-kind-filters>button{flex:1 1 auto;min-height:44px;padding:7px 8px;border:1px solid #edf0f5;border-radius:7px;background:#fff;color:#7b8494;font:inherit;font-size:12px;cursor:pointer}.attendance-request-kind-filters>button[aria-pressed=true]{color:#8051dc;background:#f5f0ff;border-color:#cbb5f4}.attendance-request-kind-filters>button:focus-visible{outline:2px solid #8051dc;outline-offset:2px}.attendance-leave-mobile-tools{display:flex;justify-content:flex-end}.attendance-leave-cards{display:grid}.attendance-leave-card{border-bottom:1px solid #f0f2f5}.attendance-leave-card>button{display:grid;gap:8px;width:100%;border:0;background:#fff;padding:16px 4px 14px;text-align:left;font:inherit;color:#1f2329}.attendance-leave-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.attendance-leave-card header strong{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.attendance-leave-card time{color:#8f959e;font-size:12px;white-space:nowrap}.attendance-leave-card p{display:flex;gap:12px;margin:0;color:#1f2329;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.attendance-leave-card p>span{flex:none;width:4.5em;color:#8f959e}.attendance-leave-card footer{font-size:14px;color:#8f959e}.attendance-leave-card footer.approved{color:#00b578}.attendance-leave-card footer.rejected{color:#f54a45}.attendance-leave-dock{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1fr;margin-top:auto;border-top:1px solid #f0f2f5;background:#fff}.attendance-leave-dock button{display:grid;justify-items:center;gap:4px;min-height:56px;padding:8px 0;border:0;background:transparent;color:#1f2329;font:inherit;font-size:12px}.attendance-leave-dock button[aria-current=page]{color:#1677ff}@media(max-width:800px){.attendance-request-dialog{max-width:calc(100vw - 20px);padding:20px;max-height:calc(100dvh - 20px)}.attendance-request-dialog>header h2{font-size:18px}.attendance-request-time-grid{grid-template-columns:1fr;gap:0}.attendance-request-reviewer{grid-template-columns:1fr;gap:8px}.attendance-request-facts,.attendance-request-source dl{grid-template-columns:100px minmax(0,1fr);gap:10px}.attendance-request-summary{padding:16px;gap:12px}.attendance-request-new-actions{gap:8px}.attendance-request-new-actions>.attendance-button{font-size:12px;padding:8px 12px}.attendance-request-summary strong{font-size:13px}.attendance-home-request-buttons>button{flex-wrap:wrap;justify-content:center;gap:5px}}.attendance-leave-duration{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 0;border-block:1px solid #eef1f6;margin:4px 0 18px;font-size:14px}.attendance-leave-duration strong{font-weight:500;color:#57466a}.attendance-leave-duration small{grid-column:1/-1;color:#8f959e;font-size:12px}@media(max-width:800px){.portal-content .attendance-workspace>.attendance-panel.attendance-leave-sheet{overflow:visible;min-height:260px;max-height:none}.attendance-leave-mobile{flex:1}.attendance-leave-dock{position:static;flex-shrink:0}.attendance-request-dialog input,.attendance-request-dialog select,.attendance-request-dialog textarea{font-size:16px;min-height:44px}.attendance-request-dialog .attendance-request-form-actions{position:sticky;bottom:-20px;background:#fff;padding:14px 0;margin-bottom:0}.attendance-request-dialog .attendance-request-form-actions button{min-height:44px}}.attendance-request-top-status{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.attendance-request-top-status>div:last-child:not(.attendance-request-context){margin-left:auto}.attendance-outing-files ul{margin:8px 0;padding-left:20px}.attendance-outing-files li{overflow-wrap:anywhere}.attendance-request-status.withdrawn{color:#64748b;background:#f1f5f9}.attendance-request-top-status{padding:16px 20px}.attendance-request-context{display:grid;gap:5px;flex:1;min-width:180px}.attendance-request-context>span{font-size:14px;font-weight:600;color:#344359}.attendance-request-context small{font-size:12px;color:#8791a0;overflow-wrap:anywhere}.attendance-request-history{margin-top:24px;border-top:1px solid #edf0f5;padding-top:4px}.attendance-request-history .attendance-request-timeline{gap:12px;margin-top:14px}.attendance-request-history .attendance-request-timeline article{gap:10px;padding-bottom:12px}.attendance-request-history .attendance-request-timeline article>span{width:22px;height:22px;font-size:12px}.attendance-request-review-panel{padding:20px}.attendance-request-review-panel textarea{min-height:100px}.attendance-period-create{border:1px solid #edf0f4;border-radius:9px;background:#fbfcfe;padding:20px;margin-bottom:22px}.attendance-period-students{border:0;padding:0;margin:0 0 16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.attendance-period-students legend{color:#485569;font-size:14px;margin-bottom:10px}.attendance-period-students label{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;border:1px solid #e6eaf0;border-radius:7px;padding:10px 12px;font-size:13px;color:#3b4555;background:#fff}.attendance-period-students small{width:100%;color:#9aa2af;font-size:11px;padding-left:24px}.attendance-period-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:16px}.attendance-period-actions .attendance-subtle{margin:0 auto 0 0}.attendance-period-people{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.attendance-period-people button{display:grid;gap:3px;text-align:left;border:1px solid #e6eaf0;border-radius:7px;background:#fff;padding:8px 14px;font:inherit;font-size:13px;color:#455268;cursor:pointer}.attendance-period-people button[aria-current=page]{border-color:#c8a0ed;background:#fcf9ff;color:#8a4fd6}.attendance-period-people small{color:#9aa2af;font-size:11px}.attendance-period-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:18px}.attendance-period-totals>div{background:#f9fbfe;border:1px solid #e8edf6;border-radius:8px;padding:10px 14px;display:grid;gap:4px}.attendance-period-totals span{color:#8b929e;font-size:12px}.attendance-period-totals strong{color:#3b4555;font-size:13px;font-weight:500}.attendance-period-days td{vertical-align:top}.attendance-period-days input,.attendance-period-days select{min-height:32px!important;padding:4px 8px!important;margin-bottom:6px}.attendance-period-units{display:grid;grid-template-columns:70px 72px;gap:6px}.attendance-period-edited{box-shadow:inset 3px 0 #a06be8}.attendance-period-fact{display:block;white-space:nowrap}.attendance-period-gap{display:inline-block;border-radius:10px;padding:1px 8px;margin:0 4px 4px 0;font-size:11px;background:#fff3e2;color:#a86b1d}.attendance-period-gap.request_pending{background:#eef4ff;color:#3367c4}.attendance-period-gap.school_return{background:#fdecee;color:#b53a4b}.attendance-period-gap.difference{background:#f4f0fb;color:#7b55b5}.attendance-period-returns ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.attendance-period-returns li{border:1px solid #f0e2e4;border-radius:8px;padding:10px 14px;font-size:13px;display:grid;gap:4px}.attendance-period-returns small{color:#9aa2af}.attendance-period-return{font-size:11px;color:#b53a4b}.attendance-period-return.superseded{color:#36835d}.attendance-period-correction,.attendance-period-return-form,.attendance-period-confirm{border-top:1px solid #edf0f4;margin-top:20px;padding-top:8px}.attendance-period-basis{display:flex;align-items:flex-end;gap:12px}.attendance-period-basis .attendance-field{flex:1;margin:0}.attendance-period-preview{display:grid;gap:14px}@media(max-width:800px){.attendance-period-basis{flex-direction:column;align-items:stretch}}.anomaly-back{margin:0 0 12px;border:0;background:none;color:#1677ff;font:inherit;font-size:13px;cursor:pointer;padding:0}.portal-page-resume-center,.portal-page-account-settings{background:#fbfaff}.portal-page-resume-center .portal-banner,.portal-page-account-settings .portal-banner{min-height:104px;padding-top:24px;padding-bottom:24px}.portal-page-resume-center .portal-banner h1,.portal-page-account-settings .portal-banner h1{font-size:24px;line-height:32px}.portal-page-resume-center .portal-banner-description,.portal-page-account-settings .portal-banner-description{font-size:14px;line-height:20px;margin-top:4px}.portal-student.portal-page-resume-center .portal-banner:before,.portal-student.portal-page-account-settings .portal-banner:before{-webkit-mask-image:url(/figma/student-center/hero-mask.svg);mask-image:url(/figma/student-center/hero-mask.svg)}.directory-resume-layout{display:grid;grid-template-columns:288px minmax(0,1fr);gap:16px;align-items:stretch;color:#000000d9}.directory-attachments,.directory-editor,.directory-account-panel{min-width:0;border:1px solid #f3f4f6;border-radius:14px;background:#fff;box-shadow:0 0 2px #00000008}.directory-attachments{padding:22px 18px;min-height:620px}.directory-attachments h2,.directory-editor h2{margin:0;font-size:18px;line-height:28px;font-weight:600}.directory-editor{min-height:620px}.directory-editor-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 18px;border-bottom:1px solid #f3f4f6;min-width:0}.directory-editor-header>div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:18px;min-width:0}.directory-editor-header>div:first-child>span{color:#8c8c8c;font-size:12px}.directory-editor-actions{display:flex;align-items:center;gap:12px;flex:none}.directory-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 16px;border:1px solid #e5e7eb;border-radius:10px;color:#000000a6;background:#fff;white-space:nowrap;font-size:14px}.school-directory{display:grid;gap:16px}.school-account-state{display:inline-block;padding:3px 9px;border-radius:5px;background:#f3f4f6;color:#8c8c8c;font-size:12px;white-space:nowrap}.school-account-state.active{background:#ecf9f2;color:#389768}.school-account-active{display:flex;align-items:center;gap:8px;font-size:14px}.school-account-active input{width:16px;height:16px}.school-private-fact{display:contents}.school-directory .directory-account-panel{padding:22px 24px 18px}.school-directory .directory-tabs{padding:0}.school-directory p{margin:0 0 12px;color:#98a2b3;font-size:13px;line-height:1.6}.school-directory-card{border:0;border-radius:12px;box-shadow:0 8px 28px #2f54eb0f}.school-directory-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px}.school-directory-toolbar input{flex:1;min-width:0;height:40px;border:1px solid #e6e8ee;border-radius:8px;background:#fff;padding:0 14px;font:inherit;font-size:14px}.school-directory-toolbar input:focus{outline:2px solid #a8c9ff;outline-offset:1px;border-color:#4285ec}.school-directory .directory-button.primary{color:#fff;border-color:#184eff;background:#184eff}.school-directory-table{width:100%;overflow-x:auto}.school-directory table{width:100%;border-collapse:collapse;margin:0}.school-directory th{background:#f7f8fa;color:#667085;font-weight:500;padding:14px 16px;border-bottom:1px solid #eef0f4;font-size:13px;white-space:nowrap;text-align:left}.school-directory td{text-align:left;padding:16px;border-bottom:1px solid #f2f4f7;font-size:14px;color:#1f2329;vertical-align:middle}.school-directory-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.directory-text{border:0;padding:0;background:transparent;color:#184eff;font:inherit;font-size:14px;cursor:pointer}.directory-text.danger{color:#f04438}.directory-text:disabled{color:#d0d5dd;cursor:default}.school-directory select{width:100%;height:44px;border:1px solid transparent;background:#f9fafb;border-radius:10px;padding:0 12px;font:inherit}.school-directory-pager{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;color:#98a2b3;font-size:13px}.school-directory-pager p{margin:0}.school-directory-pager strong{color:#184eff;font-weight:500}.school-directory-pager nav{display:flex;align-items:center;gap:6px}.school-directory-pager button{min-width:32px;height:32px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:#fff;color:#344054;font:inherit;font-size:13px}.school-directory-pager button:first-child,.school-directory-pager button:last-child{border-color:#e6e8ee}.school-directory-pager button[aria-current=page]{background:#e8f0ff;color:#184eff}.school-directory-pager button:disabled{opacity:.45}.school-directory-dialog{width:min(520px,calc(100vw - 32px));border:0;border-radius:12px;padding:24px 28px 28px;background:#fff;color:#1f2329;box-shadow:0 12px 80px #143c6d26}.school-directory-dialog::backdrop{background:#0006}.school-directory-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.school-directory-dialog h2{margin:0;font-size:18px;font-weight:600}.school-directory-dialog form{display:grid;gap:16px}.school-directory-dialog-actions{display:flex;justify-content:flex-end}@media(max-width:720px){.school-directory-toolbar,.school-directory-pager{flex-wrap:wrap}.school-directory-pager nav{margin-left:auto}}.directory-button.primary,.directory-remove-period{color:#fff;background:linear-gradient(270deg,#a06aff 3%,#b77cf2);border-color:transparent}.directory-icon{display:block;flex:none}.directory-tabs{display:flex;gap:8px;padding:16px 18px 0;overflow-x:auto}.directory-tabs>button{border:0;background:#f9fafb;color:#000000a6;padding:8px 24px;height:36px;font-size:14px;line-height:20px;border-radius:10px;white-space:nowrap}.directory-tabs>button.selected{color:#9810fa;background:#faf5ff}.directory-editor-body{padding:24px 18px;min-height:450px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:19px;row-gap:28px}.directory-grid.two,.directory-grid.personal{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-field{display:flex;flex-direction:column;min-width:0;gap:5px;font-size:14px;color:#000000d9}.directory-field>span:first-child{font-weight:500;line-height:20px}.directory-field.wide,.directory-grid>.wide{grid-column:1/-1}.directory-field input,.directory-field select,.directory-field textarea{width:100%;min-width:0;border:1px solid transparent;background:#f9fafb;padding:11px 15px;border-radius:10px;font:inherit;font-weight:400;color:#000000d9}.directory-field input,.directory-field select{height:44px}.directory-field textarea{resize:vertical;line-height:1.6;min-height:90px}.directory-field input:focus,.directory-field select:focus,.directory-field textarea:focus{outline:2px solid #dfbdff;outline-offset:1px;border-color:#bb85f1}.directory-field input[readonly]{color:#93909b;border:1px solid #eee9f2}.directory-month{position:relative;display:block;min-width:0}.directory-month input{padding-right:42px}.directory-month .directory-icon{position:absolute;right:15px;top:14px;pointer-events:none}.directory-month input::-webkit-calendar-picker-indicator{position:absolute;right:0;top:0;height:44px;width:42px;opacity:0;cursor:pointer}.directory-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.directory-entry{border-bottom:1px solid #f3f4f6;margin-bottom:20px;padding-bottom:16px}.directory-entry>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;padding:0 0 20px}.directory-entry>summary::-webkit-details-marker{display:none}.directory-entry>summary strong{font-size:16px;line-height:26px;font-weight:500}.directory-entry>summary small{display:block;font-size:14px;line-height:20px;margin-top:4px;color:#00000073}.directory-entry[open]>summary>.directory-icon{transform:rotate(180deg)}.directory-entry fieldset,.directory-entries{margin:0;padding:0;border:0;min-width:0}.directory-add-entry{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 18px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#000000d9;min-height:40px}.directory-remove-period{display:block;margin:28px auto 0;min-width:168px;min-height:38px;border:0;border-radius:10px;font-size:14px}.directory-line-entry{display:grid;align-items:end;gap:19px;margin-bottom:28px}.directory-line-entry.skills{grid-template-columns:minmax(0,1fr) 180px 44px}.directory-line-entry.certificates{grid-template-columns:repeat(3,minmax(0,1fr)) 44px}.directory-certificate-entry{display:grid;gap:18px;padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #f3f4f6}.directory-certificate-proof{display:grid;gap:8px;min-width:0}.directory-certificate-proof small{color:#8c8c8c;font-size:12px;line-height:1.7}.directory-certificate-proof-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;min-width:0}.directory-certificate-proof .resume-file-download{max-width:100%}.directory-certificate-proof .resume-file-download button{max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}.directory-certificate-upload{position:relative;display:inline-block;padding:8px 14px;border:1px solid #e5e7eb;border-radius:8px;color:#9810fa;cursor:pointer;font-size:13px}.directory-certificate-upload input{position:absolute;width:1px;height:1px;opacity:0}.directory-certificate-upload:focus-within{outline:2px solid #b77cf2;outline-offset:3px}.directory-certificate-upload.disabled{cursor:default;opacity:.5}.directory-certificate-remove{display:flex;align-items:center;justify-self:end;gap:8px;border:0;padding:4px 0;background:none;color:#8c8c8c;font-size:13px}.directory-delete-entry{display:grid;place-items:center;border:0;border-radius:8px;background:transparent;width:44px;height:44px}.directory-section-heading{font-size:16px;font-weight:500;line-height:28px;margin:0 0 22px}.directory-empty{color:#8c8c8c;padding:28px 0;font-size:14px;line-height:1.8}.directory-muted{color:#8c8c8c;font-size:12px;line-height:1.8}.directory-preview-scope{margin-bottom:18px}.directory-conflict{border:1px solid #f2d9a5;border-radius:10px;background:#fffaf0;padding:14px;margin-bottom:20px;color:#8b652b;font-size:13px;line-height:1.8}.directory-conflict button{border:0;background:none;color:#7754af;text-decoration:underline;padding:6px 0;margin-right:18px;text-align:left;white-space:normal}.directory-account-tabs{display:flex;align-items:center;gap:10px;padding:4px;border-radius:80px;background:#fff9;width:max-content;max-width:100%;margin-bottom:16px}.directory-account-tabs>button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;min-width:150px;padding:8px 24px;background:none;border:0;border-radius:80px;color:#000000a6}.directory-account-tabs>button.selected{color:#fff;background:linear-gradient(270deg,#a06aff 3%,#b77cf2)}.directory-account-panel{padding:40px 32px}.directory-avatar-notice{display:flex;gap:24px;align-items:center;padding-bottom:28px;border-bottom:1px solid #f3f4f6;margin-bottom:28px}.directory-avatar-notice>span{display:block;width:96px;height:96px;flex:none;border-radius:50%;background:#f4f5f7}.directory-avatar-notice h2{font-size:18px;line-height:28px;font-weight:600}.directory-avatar-notice p{font-size:14px;color:#8c8c8c;margin-top:4px}.directory-authority-note{margin-top:18px}.directory-account-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:28px;padding-inline-end:128px}.directory-security{min-height:430px;padding:50px 32px}.directory-security>div{max-width:672px;margin:0 auto}.directory-security h2{display:flex;gap:8px;align-items:center;font-size:18px;line-height:28px;margin-bottom:28px}.directory-security p{line-height:1.8;margin-bottom:16px}.directory-security form{display:grid;gap:18px;max-width:420px}.directory-security form .directory-account-actions{margin-top:0;padding-inline-end:0;justify-content:flex-start}.directory-security form .inline-error{margin:0}.directory-account-facts{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;margin-top:24px}.directory-account-facts dt{color:#8c8c8c}.directory-account-facts dd{margin:0;overflow-wrap:anywhere}.directory-preview{width:850px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);border:1px solid #eee5f5;border-radius:14px;padding:0;background:#fff;color:#242e43}.directory-preview::backdrop{background:#24233680}.directory-preview-actions{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 26px;border-bottom:1px solid #f3f4f6}.directory-preview-actions h2{font-size:18px;line-height:28px}.directory-preview-actions p{font-size:12px;color:#8c8c8c;margin-top:4px}.directory-preview-actions>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.directory-preview-copy{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.9 Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;margin:0;padding:24px 32px 40px}.directory-print-note{color:#8c8c8c;font-size:12px;padding:14px 32px 0;line-height:1.7}.directory-resume-picker{margin:18px 0;display:grid;justify-items:start;gap:10px}.directory-resume-picker .directory-conflict{margin:0;width:100%}.resume-attachment-library>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.resume-attachment-library>header h2{font-size:16px;flex:none}.resume-file-upload{display:inline-block;position:relative;cursor:pointer;font-size:12px;color:#9810fa;line-height:20px;text-align:right}.resume-file-upload.disabled{opacity:.55;cursor:not-allowed}.resume-file-upload:focus-within{outline:2px solid #b77cf2;outline-offset:4px;border-radius:3px}.resume-file-upload input{position:absolute;width:1px;height:1px;opacity:0}.resume-file-upload-help{font-size:12px;color:#8c8c8c;line-height:1.7;margin-bottom:16px}.resume-file-library-list{display:grid;gap:12px;max-height:560px;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.resume-file-card{min-width:0;padding:12px 10px;border:1px solid #f3f4f6;border-radius:10px;background:#fff}.resume-file-info{display:flex;gap:6px;align-items:center;min-width:0}.resume-file-icon{display:block;flex:none}.resume-file-info>div{min-width:0;flex:1}.resume-file-info strong{display:block;font-size:14px;line-height:22px;font-weight:500;overflow-wrap:anywhere}.resume-file-info small{display:block;font-size:12px;line-height:20px;color:#000000a6;overflow-wrap:anywhere}.resume-file-card-actions{display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;margin-top:8px}.resume-file-card-actions>button,.resume-file-download>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0;border:0;background:none;color:#000000a6;font-size:12px;line-height:20px;text-decoration:none}.resume-file-download{min-width:0}.resume-file-download .inline-error{margin-top:8px;font-size:12px}.resume-file-options{width:347px;max-width:100%;padding:18px;border-radius:20px;background:#fff;box-shadow:0 1px 14px #00000014;display:grid;gap:2px;margin-top:12px}.resume-file-option{position:relative;display:block;padding:16px 28px 16px 12px;border-radius:10px;cursor:pointer;min-width:0}.resume-file-option.selected{background:#f2f1ff}.resume-file-option:focus-within{outline:2px solid #b77cf2;outline-offset:2px}.resume-file-option input{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0}.resume-file-option .resume-file-info{padding-right:4px}.resume-file-selected{position:absolute;top:calc(50% - 7.5px);right:4px;display:block}.resume-file-remove-dialog{width:520px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid #eee5f5;border-radius:14px;background:#fff;color:#262626}.resume-file-remove-dialog::backdrop{background:#24233680}.resume-file-remove-dialog h2{font-size:18px;line-height:28px;margin-bottom:18px}.resume-file-remove-dialog p{font-size:14px;line-height:1.8;margin:12px 0}.resume-file-remove-name{font-weight:500;overflow-wrap:anywhere}.resume-file-remove-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px}@media(max-width:1200px){.directory-resume-layout{grid-template-columns:230px minmax(0,1fr)}.directory-editor-header{align-items:flex-start;flex-wrap:wrap}.directory-tabs>button{padding:8px 18px}}@media(max-width:800px){.directory-resume-layout{grid-template-columns:1fr}.directory-attachments{min-height:0;padding:18px}.resume-file-library-list{max-height:360px}.directory-editor{min-height:480px}.directory-grid,.directory-grid.two,.directory-grid.personal,.directory-period{grid-template-columns:1fr}.directory-line-entry.skills,.directory-line-entry.certificates{grid-template-columns:minmax(0,1fr) 44px;gap:12px}.directory-line-entry .directory-field{grid-column:1}.directory-line-entry .directory-delete-entry{grid-column:2;grid-row:1/-1}.directory-account-panel{padding:24px 18px}.directory-account-actions{padding-inline-end:56px;flex-wrap:wrap}.directory-preview-actions{align-items:flex-start;flex-direction:column;padding:20px}.directory-preview-copy{padding:22px 20px}.directory-print-note{padding:14px 20px 0}.directory-avatar-notice>span{width:72px;height:72px}.directory-editor-actions{flex-wrap:wrap;gap:8px}.directory-button{padding:8px 12px}}@media print{@page{size:A4;margin:18mm}body *{visibility:hidden}.directory-preview,.directory-preview *{visibility:visible}.directory-preview{position:absolute;inset:0 auto auto 0;width:100%;max-width:none;max-height:none;overflow:visible;border:0;margin:0;padding:0;box-shadow:none}.directory-preview-actions,.directory-print-note{display:none}.directory-preview-copy{padding:0;color:#000;font-size:11pt;line-height:1.6}}.directory-avatar-editor{display:flex;gap:20px;align-items:center}.directory-avatar-picture{width:80px;height:80px;border-radius:50%;background:#eef2fa;overflow:hidden;flex:none}.directory-avatar-picture img{width:100%;height:100%;object-fit:cover}.directory-avatar-editor small{display:block;color:#7a8496;margin-top:8px}.directory-avatar-editor .directory-button{position:relative;display:inline-flex;overflow:hidden;cursor:pointer}.directory-avatar-input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.sms-password-form{display:grid;gap:20px}.sms-password-form label{display:grid;gap:8px}.sms-password-form input{min-width:0;box-sizing:border-box;width:100%;padding:12px;border:1px solid #dce3ef;border-radius:8px}.sms-password-code{display:flex;gap:8px}.sms-password-code button{flex:none;padding:8px 12px;border:1px solid #dce3ef;border-radius:8px;background:#fff;color:#5968f4}.settlement-banner{margin:0;padding:10px 12px;border-radius:8px;background:#fff7e6;color:#ad4e00;font-size:13px}.settlement-review{margin:0;padding:10px 12px;border-radius:8px;background:#fff1f0;color:#a8071a;font-size:13px}.settlement-choices{display:grid;gap:6px;max-height:220px;overflow:auto}.settlement-choices label{display:flex;gap:8px;align-items:flex-start}.mentor-review-dimension{display:grid;gap:6px;margin:10px 0;padding:8px 0;border:0;border-top:1px solid var(--line, #e6e1d8)}.mentor-review-dimension legend{font-weight:650}.mentor-review-dimension textarea{width:100%}.mentor-review-history{margin:6px 0;padding-left:1.1rem}.mentor-sheet-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:8px 0 12px}.mentor-sheet-counts label{display:grid;gap:4px}.mentor-sheet-grade{margin:6px 0;font-weight:650}.academic-import{display:grid;gap:16px}.academic-import-card{display:grid;gap:12px;padding:20px 24px;border:1px solid rgba(0,0,0,.06);border-radius:12px;background:#fff}.academic-import-card h3{margin:0;font-size:16px}.academic-import-card p{margin:0;color:#000000a6;font-size:13px;line-height:1.6}.academic-import-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 16px}.academic-import-grid label{display:grid;gap:6px;color:#000000a6;font-size:13px}.academic-import input,.academic-import select{min-height:34px;padding:6px 10px;border:1px solid #d9d9d9;border-radius:8px;font:inherit;background:#fff}.academic-import-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.academic-import table{width:100%;border-collapse:collapse;font-size:13px}.academic-import th,.academic-import td{padding:8px;border-bottom:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:top}.academic-import th{background:#fafafa;font-weight:500}.academic-import-error{color:#ad4e00}.academic-import-note{padding:8px 12px;border-radius:8px;background:#f6ffed;color:#135200}.academic-import-warn{padding:8px 12px;border-radius:8px;background:#fff7e6;color:#ad4e00}.allocation-page{display:grid;gap:16px}.allocation-page h2{margin:0}.allocation-editor{display:grid;gap:8px;min-width:220px}.allocation-editor label{display:grid;gap:4px;font-size:12px;color:#5b626d}.allocation-editor select,.allocation-editor input{min-height:32px}.message-center{background:#fff;border:1px solid #edf0f5;border-radius:16px;padding:18px 20px 16px;display:flex;flex-direction:column;gap:14px}.message-toolbar{display:flex;align-items:center}.message-filters{display:flex;align-items:center;gap:8px}.message-filters button{border:0;background:transparent;color:#595959;border-radius:999px;min-height:36px;padding:0 16px;display:inline-flex;align-items:center;gap:6px;font-size:14px}.message-filters button.selected{background:var(--blue);color:#fff}.message-unread-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff4d4f;color:#fff;font-size:12px;line-height:18px;text-align:center}.message-search{position:relative;display:block}.message-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#bfbfbf}.message-search input{width:100%;height:40px;border:1px solid #edf0f5;border-radius:999px;background:#fff;color:#262626;padding:0 16px 0 38px;outline:none}.message-search input::placeholder{color:#bfbfbf}.message-search input:focus{border-color:var(--blue)}.message-empty{margin:0;color:#595959}.message-list{list-style:none;margin:0;padding:0}.message-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px 4px;border-top:1px solid #f0f0f0}.message-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue)}.message-copy{min-width:0}.message-copy h3{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:600;line-height:22px;color:#262626}.message-tag{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:6px;background:var(--blue-soft);color:var(--blue);font-size:12px;font-weight:400;line-height:20px}.message-copy>p{margin:4px 0 0;color:#595959;font-size:13px;line-height:20px}.message-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;color:#8c8c8c;font-size:12px}.message-side{display:flex;align-items:flex-start;padding-top:2px}.message-open{border:0;background:transparent;color:var(--blue);padding:0;display:inline-flex;align-items:center;gap:2px;font-size:14px}.message-open:disabled{color:#8c8c8c}.message-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;color:#8c8c8c;font-size:12px}.message-pagination strong{color:var(--blue);font-weight:400}.message-pagination nav{display:flex;align-items:center;gap:6px}.message-pagination button{min-width:32px;height:32px;padding:0 8px;border:1px solid transparent;border-radius:10px;background:#fff;color:#595959}.message-pagination button:first-child,.message-pagination button:last-child{border-color:#e9e9e9}.message-pagination button.selected{background:var(--blue-soft);color:var(--blue)}.message-pagination button:disabled{opacity:.4}@media(max-width:720px){.message-center{padding:14px}.message-search input{font-size:16px}.message-row{grid-template-columns:40px minmax(0,1fr)}.message-side{grid-column:2;padding-top:0}.message-pagination{align-items:flex-start;flex-direction:column}.message-pagination nav{align-self:flex-end}}.message-top-unread-dot{display:inline-block;width:7px;height:7px;margin:0 0 5px 5px;border-radius:50%;background:#f04438;flex:none;vertical-align:top}.message-publish,.message-return{min-height:36px;border:1px solid #e0e6f1;border-radius:7px;padding:7px 14px;background:#fff;color:#386cff;font:inherit;cursor:pointer}.message-publish{margin-left:auto;background:#586bff;border-color:#586bff;color:#fff}.student-home-notifications .wb-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-profile-reminder{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #dae7ff;background:#f3f7ff;color:#526c91;border-radius:8px;padding:12px;font:inherit;cursor:pointer}.student-profile-reminder>span{flex:1;font-size:13px;line-height:1.6}.student-profile-reminder strong{display:block;color:#2b578e;font-size:14px}.student-profile-reminder svg{flex:none}.student-notice-list{margin:10px 0 0;padding:0;list-style:none}.student-notice-list li+li{border-top:1px solid #edf1f7}.student-notice-list button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;width:100%;background:none;border:0;text-align:left;font:inherit;color:#43546e;cursor:pointer}.student-notice-list button>span{min-width:0;overflow-wrap:anywhere}.student-notice-list i{display:inline-block;width:6px;height:6px;margin:0 7px 2px 0;border-radius:50%;background:#f04438}.school-notice-detail article{margin-top:22px}.school-notice-detail h2{margin:12px 0;color:#27364b;font-size:23px;overflow-wrap:anywhere}.school-notice-detail header p{color:#8794a8;font-size:13px}.school-notice-body{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:24px;color:#43546e;line-height:1.8}.school-notice-composer{width:min(700px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:12px;color:#27364b;background:#fff;box-shadow:0 16px 60px #13284d33}.school-notice-composer::backdrop{background:#1a294d66}.school-notice-composer>form{display:flex;flex-direction:column;max-height:calc(100dvh - 32px)}.school-notice-composer header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #edf1f7}.school-notice-composer h2{margin:0;font-size:19px}.school-notice-composer header button{border:0;background:none;font-size:24px;color:#8a96aa;cursor:pointer}.school-notice-editor{overflow:auto;min-height:0;padding:18px 22px}.school-notice-editor>p{font-size:13px;color:#8794a8;margin:0 0 16px}.school-notice-editor label{display:grid;gap:8px;margin:16px 0;font-size:14px}.school-notice-editor input,.school-notice-editor textarea{box-sizing:border-box;width:100%;border:1px solid #dce3ef;border-radius:6px;background:#f9fbff;padding:10px 12px;font:inherit;color:#27364b}.school-notice-editor textarea{resize:vertical;min-height:160px}.school-notice-composer footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid #edf1f7}.school-notice-composer footer button{padding:8px 18px;border:1px solid #dce3ef;border-radius:7px;background:#fff;color:#52647d;font:inherit;cursor:pointer}.school-notice-composer footer .primary{background:#586bff;border-color:#586bff;color:#fff}.school-notice-composer button:disabled{opacity:.5;cursor:default}@media(max-width:600px){.message-toolbar{flex-wrap:wrap;gap:12px}.message-publish{margin-left:0}.school-notice-composer header,.school-notice-editor{padding:16px}.school-notice-editor input,.school-notice-editor textarea{font-size:16px}}.change-rule{margin:0 0 16px;padding:8px 12px;border-radius:999px;background:#fff7e6;color:#d46b08;font-size:13px}.change-card{display:grid;gap:12px}.change-card-current{outline:2px solid #1462de}.change-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.change-files-panel{display:grid;gap:8px}.change-files{display:grid;gap:8px;margin:0;padding:0;list-style:none}.change-files li,.change-file-choice{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.change-file-sha{font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;overflow-wrap:anywhere}.change-card textarea{min-height:72px}.change-review-filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:0 0 20px}.change-review-filters label{display:flex;align-items:center;gap:8px;font-size:13px;color:#595959}.change-review-filters .change-review-search{flex:1;min-width:240px}.change-review-filters input,.change-review-filters select{min-height:36px;border:1px solid #edf0f5;border-radius:8px;background:#fafbfc;padding:7px 12px;color:#262626;font:inherit}.change-review-search input{width:100%}.change-review-table-wrap{overflow-x:auto}.change-review-table{width:100%;min-width:1020px;border-collapse:collapse;text-align:left;font-size:13px}.change-review-table th{padding:12px;background:#fafafa;font-weight:500;white-space:nowrap}.change-review-table td{padding:14px 12px;border-bottom:1px solid #f0f0f0;vertical-align:middle}.change-review-table td strong,.change-review-table td small{display:block;font-weight:400}.change-review-table td small{margin-top:4px;color:#8c8c8c}.change-review-reason{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.change-review-status{display:inline-block;padding:3px 8px;border-radius:6px;white-space:nowrap;font-size:12px;background:#fff7e6;color:#ad6800}.change-review-status-approved{background:#e6fff5;color:#087f5b}.change-review-status-rejected{background:#fff1f0;color:#c03631}.change-review-status-withdrawn{background:#f0f0f0;color:#595959}.change-review-selected{background:#f0f7ff}.change-review-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;font-size:12px;color:#8c8c8c}.change-review-pagination>div{display:flex;gap:8px}.change-review-rules{margin-top:18px;font-size:12px;color:#8c8c8c}.change-review-rules summary{cursor:pointer;padding:8px 0}.change-card{scroll-margin-top:80px}@media(max-width:700px){.change-review-filters{gap:10px}.change-review-filters .change-review-search{flex-basis:100%;min-width:0}.change-review-filters label{flex-wrap:wrap}}.change-rule-roles{border:1px solid #edf0f5;border-radius:10px;margin:16px 0;padding:12px;display:flex;flex-wrap:wrap;gap:16px}.change-rule-roles legend{padding:0 6px;font-size:13px}.change-rule-roles label{display:flex;align-items:center;gap:8px}.change-rule-order{display:grid;gap:8px;padding-left:20px}.change-rule-order li{display:flex;gap:8px;align-items:center}.change-rule-order li span{flex:1}.change-approval-progress{border:1px solid #edf0f5;border-radius:12px;padding:16px}.change-approval-progress h3{margin:0 0 12px;font-size:14px}.change-approval-progress ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.change-approval-progress li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#fafbfc;border-radius:8px}.change-approval-progress strong,.change-approval-progress li div>span{display:block;font-size:13px}.change-approval-progress li div>span{color:#8c8c8c;margin-top:6px}.semester-credit-panel{background:#fff;border:1px solid #edf0f5;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.semester-credit-panel h2,.semester-credit-panel h3{margin:0}.semester-credit-panel p{margin:0;color:#595959}.semester-credit-form,.semester-credit-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.semester-credit-form label,.semester-credit-edit label{display:flex;flex-direction:column;gap:6px;color:#262626}.semester-credit-form input,.semester-credit-form select,.semester-credit-edit input{border:1px solid #d9d9d9;border-radius:8px;min-height:36px;padding:6px 10px}.semester-credit-actions{display:flex;flex-wrap:wrap;gap:8px}.semester-credit-actions button,.semester-credit-record button{border:1px solid #d9d9d9;background:#fff;border-radius:8px;padding:6px 12px;cursor:pointer}.semester-credit-actions button:disabled,.semester-credit-record button:disabled{cursor:default;color:#8c8c8c}.semester-credit-standing{border:1px solid #edf0f5;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}.semester-credit-record{display:flex;flex-direction:column;gap:4px;padding-top:8px;border-top:1px solid #f0f0f0}.semester-credit-record strong{color:#262626}@media(max-width:720px){.semester-credit-form,.semester-credit-edit{grid-template-columns:1fr}}.figma-platform-root{--blue:#1890ff;--blue-soft:#e6f4ff;--line:#edf0f4;--muted:#8c8c8c;--text:#262626;background:#f3f7fc;color:#262626;height:100dvh;overflow:hidden;display:flex;flex-direction:column;font-family:PingFang SC,Microsoft YaHei,sans-serif}.portal-student{--blue:#9810fa;--blue-soft:#faf5ff;background:#fbfaff}.portal-topbar{height:60px;background:#fff;display:flex;align-items:center;gap:48px;padding:0 28px;position:fixed;top:0;left:0;right:0;z-index:20;border-bottom:1px solid #f5f5f5}.figma-platform-root{padding-top:60px}.portal-brand{display:flex;gap:22px;align-items:center;flex:none}.portal-brand>img{display:block;object-fit:contain}.portal-brand>i{height:24px;width:1px;background:#e8e8e8}.portal-brand>strong{color:#2b3a95;font-family:Ma Shan Zheng Platform Title,KaiTi,STKaiti,serif;font-size:26px;font-weight:400;line-height:1.25;white-space:nowrap}.portal-top-navigation{display:flex;gap:20px;align-self:stretch;align-items:stretch;min-width:0;overflow-x:auto;overflow-y:hidden}.portal-top-navigation>button{padding:0 12px;white-space:nowrap;background:none;border:0;border-bottom:3px solid transparent;color:#8c8c8c;font-size:15px}.portal-top-navigation>button.selected{color:var(--blue);border-bottom-color:var(--blue)}.portal-top-navigation>button:hover{color:var(--blue)}.portal-top-account{margin-left:auto;display:flex;align-items:center;gap:16px;flex:none}.portal-account{position:relative}.portal-account>summary{display:flex;gap:8px;align-items:center;cursor:pointer;list-style:none}.portal-account>summary::-webkit-details-marker{display:none}.portal-account>summary>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--blue);background:var(--blue-soft)}.portal-account b{font-weight:400;font-size:13px}.portal-account small{color:#8c8c8c}.portal-account-menu{position:absolute;right:0;top:42px;background:#fff;border:1px solid #eee;box-shadow:0 6px 20px #0000000d;border-radius:8px;min-width:180px;padding:16px;display:grid;gap:8px}.portal-account-menu>strong{font-size:14px}.portal-account-menu>button{display:flex;gap:8px;align-items:center;border:0;border-top:1px solid #f0f0f0;background:#fff;margin-top:8px;padding:12px 0 0;color:#595959;text-align:left}.portal-sidebar{width:208px;background:#fff;position:fixed;left:0;top:60px;bottom:0;border-right:1px solid #f0f0f0;display:flex;flex-direction:column;z-index:10}.portal-sidebar>nav{padding:0}.portal-sidebar nav>button{display:flex;gap:12px;align-items:center;background:#fff;border:0;border-right:3px solid transparent;width:100%;height:50px;padding:0 18px;color:#262626;text-align:left;font-size:14px}.portal-sidebar nav>button img{display:block;flex:none;opacity:.78}.portal-sidebar nav>button.selected{border-right-color:var(--blue);background:#e6f0ff;color:#184eff}.portal-sidebar nav>button:hover{background:#f7faff}.portal-sidebar-foot{margin-top:auto;padding:24px 18px;display:grid;gap:8px;border-top:1px solid #f5f5f5;font-size:12px;color:#8c8c8c}.portal-sidebar-foot>small{font-size:11px;color:#b0b0b0}.portal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.portal-banner,.portal-section-nav,.portal-view-switch,.portal-footer{flex:0 0 auto}.portal-school>.portal-body,.portal-enterprise>.portal-body{margin-left:208px}.portal-banner{min-height:110px;position:relative;padding:27px 24px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px;isolation:isolate}.portal-banner:before{content:"";position:absolute;left:0;right:0;top:0;height:180px;background:url(/figma/shared/teacher-hero-background.png) 0 0/100% 175.08% no-repeat;-webkit-mask-image:url(/figma/shared/mask-management.svg);mask-image:url(/figma/shared/mask-management.svg);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;z-index:-1;pointer-events:none}.portal-school .portal-banner:before{background-image:url(/figma/shared/school-hero-background.png);background-size:100% 100%;transform:scaleX(-1)}.portal-student .portal-banner:before{background-image:url(/figma/shared/student-hero-background.png);background-size:100% 100%;-webkit-mask-image:url(/figma/shared/mask-student.svg);mask-image:url(/figma/shared/mask-student.svg);height:205px;transform:scaleY(-1);opacity:.8}.portal-banner-copy{min-width:0}.portal-banner h1{font-size:22px;font-weight:600;line-height:1.6}.portal-banner-description{font-size:13px;color:#7c8595;margin-top:5px}.portal-school-logo{display:block;width:233px;height:auto;object-fit:contain;flex:none}.portal-content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:auto;padding:0 24px 24px;position:relative;z-index:1;outline:none}.portal-footer{font-size:11px;color:#a6adba;padding:0 24px 18px;display:flex;justify-content:space-between;gap:20px}.portal-ai-button{position:fixed;right:24px;bottom:26px;border:1px solid #e4dcff;background:#fff;color:var(--blue);height:48px;border-radius:24px;padding:0 18px;box-shadow:0 4px 18px #4c31aa18;display:flex;align-items:center;gap:8px;z-index:30;font-size:13px}.portal-ai-button:hover{border-color:var(--blue)}.portal-ai-dialog{border:1px solid #e6eaf1;border-radius:14px;width:650px;max-width:calc(100vw - 28px);height:min(850px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);margin:auto 20px auto auto;padding:0;background:#f9faff;overflow:auto;color:#262626;box-shadow:0 18px 70px #1c2d6329}.portal-ai-dialog::backdrop{background:#13203a40}.portal-ai-dialog>header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;padding:18px 20px;border-bottom:1px solid #edf0f5;z-index:2}.portal-ai-dialog>header>span{font-size:16px;font-weight:500}.portal-ai-dialog>header>button{border:0;background:none;font-size:25px;color:#8c8c8c;line-height:1;padding:0 5px}.portal-ai-dialog .service-strip,.portal-ai-dialog .assistant-panel{margin:14px}.figma-platform-root .feature-panel{border-color:#edf0f4;box-shadow:none}.figma-platform-root .button.primary{background:var(--blue);box-shadow:none}.figma-platform-root .empty-state>span{color:var(--blue)}.figma-platform-root .field input:focus,.figma-platform-root .field textarea:focus,.figma-platform-root .field select:focus{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.portal-student .status-pill.confirmed{color:#438f70;background:#edf9f0}@media(min-width:1600px){.portal-content{max-width:1720px;margin:auto}.portal-banner{padding-left:32px;padding-right:32px}}@media(max-width:1100px){.portal-topbar{gap:24px;padding:0 20px}.portal-top-navigation{gap:8px}.portal-top-navigation>button{padding:0 8px;font-size:13px}.portal-brand{gap:14px}.portal-brand>strong{font-size:24px}.portal-top-account{gap:8px}.portal-account b{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-school-logo{width:200px;height:auto}.portal-sidebar{width:180px}.portal-school>.portal-body,.portal-enterprise>.portal-body{margin-left:180px}}.portal-nav-toggle,.portal-drawer-head,.portal-sidebar-extra{display:none}@media(min-width:801px){.portal-student>.portal-sidebar,.portal-personal>.portal-sidebar{display:none}}@media(max-width:800px){.figma-platform-root{padding-top:56px}.portal-topbar{height:56px;min-height:56px;flex-wrap:nowrap;gap:8px;padding:0 12px}.portal-nav-toggle{display:inline-flex;flex:none;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:8px;background:transparent;color:#262626}.portal-top-navigation,.portal-topbar .portal-settings,.portal-section-nav{display:none}.portal-brand{min-width:0;gap:10px;margin-bottom:0}.portal-brand>img{width:30px;height:30px}.portal-brand>i{height:20px}.portal-brand{flex:1 1 auto}.portal-brand>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:20px}.portal-top-account{margin-left:auto;margin-bottom:0}.portal-sidebar{position:fixed;z-index:40;top:0;bottom:0;left:0;width:min(320px,86vw);transform:translate(-105%);visibility:hidden;border-right:1px solid #f0f0f0;border-bottom:0;background:#fff;transition:transform .18s ease}.portal-nav-open .portal-sidebar{transform:none;visibility:visible}.portal-nav-backdrop{position:fixed;z-index:35;inset:0;border:0;padding:0;background:#13203a59}.portal-drawer-head{display:flex;flex:none;align-items:center;justify-content:space-between;height:56px;padding:0 8px 0 18px;border-bottom:1px solid #f0f0f0}.portal-drawer-head>strong{font-size:16px;font-weight:500}.portal-drawer-head>button{width:40px;height:40px;border:0;border-radius:8px;background:transparent;color:#595959;font-size:24px;line-height:1}.portal-sidebar-extra{display:flex;flex-direction:column;gap:12px;padding:8px 0 12px;border-top:1px solid #f5f5f5}.portal-sidebar-extra p{margin:0;padding:8px 18px 0;color:#8c8c8c;font-size:12px}.portal-sidebar-extra button{display:flex;align-items:center;width:100%;height:40px;padding:0 18px;border:0;background:#fff;color:#595959;text-align:left;font-size:14px}.portal-sidebar-extra button.selected{background:#e6f0ff;color:#184eff}.portal-school>.portal-body,.portal-enterprise>.portal-body{margin-left:0}.portal-banner{padding:16px;min-height:0}.portal-school-logo{display:none}.portal-banner h1{font-size:20px}.portal-school-logo{width:170px}.portal-content{padding:0 16px 20px}.portal-footer{padding:0 16px 20px;flex-direction:column;gap:6px}.portal-ai-button{right:15px;bottom:18px}}@media(max-width:520px){.portal-account b{max-width:70px}.portal-school-logo{width:130px}.portal-banner{gap:12px;align-items:flex-start}.portal-banner-description{font-size:12px;line-height:1.7}.portal-banner h1{font-size:18px}.portal-school-logo{margin-top:5px}.portal-content{padding-left:12px;padding-right:12px}.portal-ai-button{width:44px;padding:0;justify-content:center}.portal-ai-button>span{display:none}.portal-ai-dialog{margin:auto}.portal-banner:before{height:170px}}.portal-nav-tree{display:flex;flex-direction:column;min-height:0;overflow:auto}.portal-nav-group-label,.portal-nav-children>button,.portal-nav-standalone>button{display:flex;gap:12px;align-items:center;width:100%;border:0;border-right:3px solid transparent;background:#fff;color:#262626;text-align:left;font-size:14px}.portal-nav-group-label{height:48px;padding:0 18px;font-weight:500}.portal-nav-mark{display:flex;flex:none;align-items:center;justify-content:center;width:18px;height:18px}.portal-nav-mark img,.portal-nav-mark svg{display:block;width:18px;height:18px}.portal-nav-mark img{opacity:.78}.portal-nav-chevron{display:flex;flex:none;margin-left:auto;color:#8c8c8c}.portal-nav-chevron>svg{transition:transform .16s ease}.portal-nav-group.open>.portal-nav-group-label .portal-nav-chevron>svg{transform:rotate(90deg)}.portal-nav-children>button{height:40px;padding:0 18px 0 48px;color:#595959;font-size:13px}.portal-nav-standalone{margin-top:8px;padding-top:8px;border-top:1px solid #f5f5f5}.portal-nav-standalone>button{height:48px;padding:0 18px 0 48px}.portal-nav-group-label.selected,.portal-nav-children>button.selected,.portal-nav-standalone>button.selected{border-right-color:#184eff;background:#e6f0ff;color:#184eff}.portal-nav-group.current>.portal-nav-group-label{color:#184eff}.portal-nav-tree button:hover{background:#f7faff}.portal-nav-tree button:focus-visible,.portal-section-nav button:focus-visible,.portal-view-switch button:focus-visible,.portal-aux-button:focus-visible,.portal-settings>summary:focus-visible,.portal-nav-toggle:focus-visible,.portal-drawer-head>button:focus-visible,.portal-sidebar-extra button:focus-visible,.portal-nav-backdrop:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.portal-aux-button,.portal-settings>summary{border:0;background:transparent;color:#595959;font-size:13px;white-space:nowrap;cursor:pointer}.portal-aux-button.selected,.portal-settings>summary.selected{color:var(--blue)}.portal-section-nav,.portal-view-switch{display:flex;gap:8px;align-items:center;overflow-x:auto;margin:0 24px;padding:0 0 12px}.portal-section-nav>button,.portal-view-switch>button{flex:none;height:36px;padding:0 14px;border:1px solid #edf0f4;border-radius:8px;background:#fff;color:#595959;font-size:13px}.portal-section-nav>button.selected,.portal-view-switch>button.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.portal-body:has(.course-members-view)>.portal-view-switch{display:none}.portal-page-workbench-board .portal-banner,.portal-page-workbench-student .portal-banner{display:none}@media(max-width:800px){.portal-sidebar>nav.portal-nav-tree{display:flex;flex:1;flex-direction:column;overflow:auto}.portal-view-switch{margin:0 16px}.portal-topbar{gap:6px;padding:0 8px}.portal-nav-toggle{width:32px;height:36px}.portal-brand{gap:6px}.portal-brand>img{width:24px;height:24px}.portal-brand>i{display:none}.portal-brand>strong{overflow:visible;text-overflow:clip;font-size:clamp(14px,4vw,20px)}.portal-top-account{gap:6px}.portal-top-account>.portal-account>summary>:is(b,small){display:none}}@media(prefers-reduced-motion:reduce){.portal-sidebar,.portal-nav-chevron>svg{transition:none}}.account-avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}@font-face{font-family:Ma Shan Zheng Platform Title;src:url(/brand/ma-shan-zheng-platform-title.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}:root{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:#242e43;background:#f6f8fc;font-synthesis:none;font-optical-sizing:auto;font-size:14px;--blue:#184eff;--blue-soft:#edf2ff;--line:#e7ebf3;--muted:#778198;--text:#242e43;--green:#238269;--red:#b74747 }*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,a{touch-action:manipulation}button{transition:background-color .14s ease,color .14s ease,border-color .14s ease,transform .14s ease}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #90abff;outline-offset:3px}h1,h2,h3,h4,p{margin:0}svg{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:12px;padding:10px 16px;background:#fff;z-index:50;border:1px solid var(--blue);border-radius:6px;transform:translateY(-160%)}.skip-link:focus{transform:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:224px minmax(0,1fr)}.sidebar{min-width:0;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:30px 18px 0;background:#fff;border-right:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;padding:0 10px 31px}.brand strong{display:block;font-size:20px;letter-spacing:2px;font-weight:700;line-height:1.4}.brand small{display:block;font-size:10px;color:#8992a7;letter-spacing:.7px;margin-top:3px}.brand-mark{width:37px;height:39px;border-radius:10px;background:var(--blue);display:flex;flex-direction:column;justify-content:center;gap:5px;padding:9px;box-shadow:0 4px 12px #184eff21}.brand-mark span{height:2px;background:#fff;border-radius:3px;width:100%}.brand-mark span:nth-child(2){width:63%}.workspace-label{display:flex;justify-content:space-between;align-items:center;margin:0 11px 14px;color:#8c96a9;font-size:11px;letter-spacing:.6px}.workspace-label>span{background:#f3f5f9;color:#9099aa;font-size:10px;padding:2px 5px;letter-spacing:0;border-radius:3px}.sidebar nav{display:grid;gap:7px}.nav-item{height:46px;display:flex;align-items:center;gap:12px;padding:0 13px;width:100%;border:0;border-radius:7px;background:transparent;color:#6d788f;text-align:left;font-size:13px;font-weight:500}.nav-item.active{color:var(--blue);background:var(--blue-soft)}.nav-soon{margin-left:auto;color:#a1a9ba;font-size:10px;font-weight:400}.sidebar-caption{margin-top:auto;padding:24px 12px 36px}.caption-line{display:block;width:22px;height:2px;background:#c8d6fb;margin-bottom:14px}.sidebar-caption p{font-size:11px;line-height:1.9;color:#a2aabc}.sidebar-account{display:flex;align-items:center;gap:10px;padding:18px 7px 22px;border-top:1px solid var(--line)}.account-avatar,.topbar-avatar{display:grid;place-items:center;flex-shrink:0;background:#edf2ff;color:#5c7dd9;border-radius:50%;width:33px;height:33px;font-size:12px;font-weight:500}.sidebar-account strong{font-size:12px;font-weight:500;display:block}.sidebar-account small{font-size:10px;color:#9ba4b7;display:block;margin-top:4px}.main-shell{min-width:0}.topbar{height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 38px;background:#ffffffd9;border-bottom:1px solid var(--line)}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;color:#99a2b4}.breadcrumb strong{color:#66718a;font-weight:500}.topbar-meta{display:flex;gap:20px;align-items:center}.topbar-avatar{width:29px;height:29px;font-size:10px;background:#f0f3f9;color:#8693ae}.environment-badge{display:flex;align-items:center;gap:7px;color:#7c88a0;font-size:11px}.environment-badge i,.foundation-label>span{width:5px;height:5px;border-radius:50%;background:#94a8d6}.main-content{max-width:1600px;margin:0 auto;padding:34px 38px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{font-size:11px;letter-spacing:1.2px;color:#8894ad}.page-heading h1{font-weight:600;font-size:25px;line-height:1.5;letter-spacing:.1px;margin-top:5px}.page-heading p{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.8}.foundation-label{display:flex;align-items:center;gap:7px;border:1px solid #dfe5f0;border-radius:4px;font-size:11px;color:#8b96ac;padding:6px 10px;white-space:nowrap}.section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:11px;color:#9ca5b7}.section-label strong{font-size:11px;color:#74829d;margin-left:8px;font-weight:500}.text-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:5px 0;color:#6e809f;font-size:11px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.service-card{padding:17px 15px;display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0}.service-icon{color:#8d9bb6;display:flex}.service-name{font-size:12px;font-weight:500;white-space:nowrap}.service-card p{font-size:10px;color:#a0a9ba;margin-top:5px;white-space:nowrap}.connection-state{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap;margin-left:auto;color:#9a8b72}.connection-state i{height:5px;width:5px;background:currentColor;border-radius:50%}.connection-state.ready{color:#328b75}.connection-state.checking,.connection-state.waiting{color:#9ba6b8}.connection-state.unavailable{color:#a88147}.mode-label{background:#f0f3fa;color:#7c89a1;font-size:10px;line-height:1.6;padding:3px 8px;border-radius:4px;white-space:nowrap}.mode-label.diagnostic{background:#eef3ff;color:#6380be}.mode-label.live{color:#287964;background:#eaf6f0}.mode-card .mode-label{margin-left:auto}.connection-error{display:flex;align-items:center;gap:7px;font-size:11px;color:#a28354;margin:10px 0 0;line-height:1.7}.service-section{margin-bottom:27px}.assistant-workspace{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 3px 14px #2f497403}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 23px}.panel-heading-title{display:flex;align-items:center;gap:12px}.assistant-emblem{display:grid;place-items:center;width:38px;height:38px;border:1px solid #e4ebff;border-radius:10px;color:var(--blue);background:#f4f7ff;flex-shrink:0}.panel-heading h2{font-size:15px;font-weight:600}.panel-heading p{font-size:11px;color:#9aa4b7;margin-top:5px}.mode-notice{display:flex;gap:8px;align-items:flex-start;padding:11px 24px;background:#f7f9fe;border-top:1px solid #edf1fa;border-bottom:1px solid #edf1fa;color:#7d8daa}.mode-notice svg{margin-top:2px;color:#8aa0cd}.mode-notice p{font-size:11px;line-height:1.8}.mode-notice.live{background:#f1f9f5;color:#608675}.assistant-layout{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:538px}.conversation-sidebar{border-right:1px solid var(--line);padding:18px 13px 13px;display:flex;flex-direction:column;min-height:100%}.button{border:1px solid #dfe5f1;background:#fff;color:#677997;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border-radius:6px;font-size:12px;font-weight:500;min-height:37px}.button.primary{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 2px 5px #184eff13}.new-conversation{width:100%;color:#5f78af;background:#f9fbff;border-style:dashed;border-color:#cfd9ed;min-height:37px}.conversation-list-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 6px 9px}.conversation-list-heading h3{font-size:10px;color:#9ba5b9;font-weight:400;letter-spacing:.5px}.icon-button{border:0;background:transparent;color:#98a4bb;padding:6px;display:inline-grid;place-items:center;border-radius:4px;min-width:28px;min-height:28px}.conversation-list{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:5px;max-height:322px;overflow:auto}.conversation-item{background:transparent;border:0;text-align:left;padding:11px 9px;border-radius:6px;display:flex;align-items:center;gap:8px;width:100%;color:#8b99b1}.conversation-item>span:not(.selection-dot){min-width:0}.conversation-item strong{display:block;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;color:#74819a}.conversation-item time{display:block;font-size:9px;color:#a3adbf;margin-top:6px;font-variant-numeric:tabular-nums}.conversation-item.selected{background:#f0f4ff;color:#6787db}.conversation-item.selected strong{color:#5574be}.selection-dot{width:4px;height:4px;border-radius:50%;background:#7391e8;margin-left:auto;flex-shrink:0}.persistence-note{margin-top:auto;display:flex;gap:6px;align-items:flex-start;color:#adb6c7;font-size:9px;line-height:1.8;padding:10px 7px 0}.persistence-note svg{margin-top:1px}.subtle-message{font-size:11px;color:#a1aabc;line-height:1.9;padding:7px 8px}.conversation-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 30px;text-align:center;background:linear-gradient(180deg,#fff 0,#fbfcff)}.empty-emblem{width:68px;height:68px;background:#f2f6ff;color:#708bce;display:grid;place-items:center;border-radius:19px;border:1px solid #e8eeff;margin-bottom:22px}.conversation-empty h3{font-size:17px;font-weight:500;color:#5c6c8a}.conversation-empty p{font-size:12px;color:#99a4ba;line-height:2;margin:12px 0 23px}.empty-footnote{font-size:10px;color:#b0b8c9;margin-top:19px}.conversation-thread{display:flex;flex-direction:column;min-width:0;min-height:538px;max-height:740px}.thread-header{padding:18px 25px 15px;display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #f0f2f7}.thread-header h3{font-size:12px;font-weight:500;color:#687893}.thread-header p{font-size:9px;color:#a8b0c0;margin-top:5px}.message-scroll{flex:1;overflow:auto;padding:24px;min-height:220px;scrollbar-width:thin;scrollbar-color:#dce3f1 transparent}.thread-introduction{padding:28px 7%;color:#8c9bb7}.thread-introduction .assistant-emblem{margin-bottom:17px}.thread-introduction h4{font-size:15px;font-weight:500;color:#637694}.thread-introduction p{font-size:12px;line-height:1.9;margin:10px 0 22px;max-width:410px}.suggestion{padding:11px 12px;border:1px solid #e4eaf6;background:#fff;border-radius:6px;display:flex;gap:9px;align-items:center;color:#8b9cba;font-size:11px;max-width:100%}.suggestion svg:last-child{margin-left:20px}.message{display:flex;gap:11px;margin-bottom:25px;min-width:0}.message-avatar{height:29px;width:29px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;background:#f1f4fa;color:#8296b7;font-size:10px}.message.assistant .message-avatar{background:#eef3ff;color:#6386dc}.message-body{min-width:0;flex:1}.message-body header{display:flex;gap:12px;align-items:center;margin:4px 0 9px;color:#a5aec0;font-size:9px}.message-body strong{font-weight:500;font-size:11px;color:#7d8ba5}.message-body p{font-size:12px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere;color:#63728d}.message.user .message-body p{display:inline-block;padding:10px 14px;background:#f5f7fc;border:1px solid #edf0f6;border-radius:0 8px 8px}.run-status{display:flex;align-items:flex-start;gap:9px;background:#f7f9fd;border:1px solid #eaf0f8;padding:11px 13px;border-radius:6px;color:#8896b0;margin:12px 0}.run-status-icon{display:flex;margin-top:2px}.run-status strong{font-size:11px;font-weight:500}.run-status p{font-size:10px;line-height:1.9;margin-top:4px}.run-status.succeeded{color:#6a9688;background:#f5faf7;border-color:#e7f1ec}.run-status.failed,.run-status.timed_out{color:#b37a6b;background:#fdf8f6;border-color:#f3e8e3}.run-status .text-button{margin-left:auto;flex-shrink:0}.message-composer{padding:0 24px 19px}.message-composer textarea{display:block;resize:vertical;min-height:83px;max-height:220px;width:100%;border:1px solid #e3e9f3;border-radius:7px 7px 0 0;padding:13px 14px;font-size:12px;color:#536780;line-height:1.8;outline-offset:1px;background:#fff}.message-composer textarea::placeholder{color:#b0b9cb}.message-composer textarea:disabled{background:#fbfcfe;resize:none}.composer-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e3e9f3;border-top:0;border-radius:0 0 7px 7px;padding:8px 10px 9px 14px}.composer-footer>span{font-size:9px;color:#adb6c7}.composer-footer .button{font-size:11px;min-height:33px;padding:6px 12px}.composer-mode{color:#9cabc7}.inline-error{background:#fff8f6;border:1px solid #f2e6e0;border-radius:5px;display:flex;gap:7px;padding:10px;margin:8px 0;color:#ac796c;min-width:0}.inline-error p{font-size:11px;line-height:1.8;overflow-wrap:anywhere}.inline-error svg{margin-top:2px}.inline-error .text-button{color:#ac796c}.queue-note{display:flex;align-items:center;gap:5px;color:#a58d6b;font-size:10px;margin-bottom:8px;line-height:1.8}.identity-error{display:flex;align-items:center;gap:8px;padding:12px 15px;border:1px solid #f0e5dd;background:#fffaf4;border-radius:7px;margin-bottom:16px;color:#a7865b;font-size:11px}.identity-error .text-button{margin-left:auto;white-space:nowrap}.module-placeholder{display:flex;align-items:center;flex-direction:column;text-align:center;padding:56px 30px;background:#fff;border:1px solid var(--line);border-radius:10px;min-height:480px}.module-placeholder .empty-emblem{margin-bottom:15px}.module-stage{font-size:10px;color:#9faac0;background:#f4f7fc;padding:3px 8px;border-radius:3px;margin-bottom:15px}.module-placeholder h2{font-size:19px;font-weight:500;color:#63728e}.module-placeholder>p{font-size:12px;line-height:1.9;max-width:490px;color:#9aa6bb;margin:14px 0 20px}.next-steps{display:flex;gap:22px;font-size:11px;color:#8f9fbb;margin:10px 0 28px}.next-steps div{display:flex;align-items:center;gap:6px}.next-steps span{font-size:10px;color:#c2cde2;font-variant-numeric:tabular-nums}.page-footer{display:flex;justify-content:space-between;gap:16px;padding:22px 0;font-size:9px;color:#abb4c7;line-height:1.8}@media(hover:hover)and (pointer:fine){.nav-item:hover:not(.active){background:#f7f9fd;color:#5f7399}.button:hover:not(:disabled){background:#f5f8ff;border-color:#cbd8f4}.button.primary:hover:not(:disabled){background:#1647e8;border-color:#1647e8}.text-button:hover:not(:disabled),.icon-button:hover:not(:disabled){color:var(--blue)}.conversation-item:hover:not(.selected){background:#f7f9fd}.suggestion:hover:not(:disabled){border-color:#cbd8f4;background:#fafcff}}@media(min-width:1450px){.main-content{padding:38px 50px 0}.topbar{padding:0 50px}.assistant-layout,.conversation-thread{min-height:580px}.service-card{padding:20px}.service-grid{gap:16px}}@media(max-width:1200px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding-left:13px;padding-right:13px}.main-content{padding:28px 25px 0}.topbar{padding:0 25px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:14px 16px}.assistant-layout{grid-template-columns:180px minmax(0,1fr)}.conversation-item strong{max-width:110px}.service-section{margin-bottom:23px}.next-steps{gap:14px}}@media(max-width:820px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{height:auto;position:static;padding:17px 22px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0;gap:10px;align-self:flex-start}.brand-mark{height:31px;width:31px;border-radius:8px;padding:8px;gap:4px}.brand strong{font-size:17px;line-height:1.3}.brand small{font-size:9px;margin-top:2px}.workspace-label,.sidebar-caption,.sidebar-account{display:none}.sidebar nav{display:flex;gap:5px;margin-top:18px}.nav-item{height:38px;width:auto;flex:1;padding:0 10px;gap:7px;justify-content:center;font-size:12px}.nav-item svg{width:16px;height:16px}.nav-soon{display:none}.topbar{height:53px}.topbar-meta{gap:12px}.topbar-avatar{display:none}.main-content{padding:25px 22px 0}.page-heading{margin-bottom:21px}.page-heading h1{font-size:23px}.foundation-label,.eyebrow{font-size:10px}.assistant-layout{grid-template-columns:160px minmax(0,1fr)}.conversation-sidebar{padding:15px 10px 12px}.conversation-item{gap:6px;padding:10px 6px}.conversation-item strong{max-width:100px;font-size:10px}.conversation-item svg{width:14px}.message-scroll{padding:20px 18px}.message-composer{padding:0 17px 16px}.thread-header{padding:15px 18px}.panel-heading{padding:17px 20px}.panel-heading h2{font-size:14px}.page-footer{font-size:8px;gap:10px}.thread-introduction{padding:20px 0}.suggestion{font-size:10px}.suggestion svg:last-child{margin-left:0}.composer-mode{display:none}}@media(max-width:580px){.sidebar{padding:15px 15px 10px}.sidebar nav{gap:2px;margin-top:14px}.nav-item{font-size:11px;padding:0 6px;gap:5px}.nav-item svg{width:15px}.topbar{padding:0 17px}.breadcrumb{font-size:10px;gap:8px}.environment-badge{font-size:9px}.main-content{padding:22px 15px 0}.page-heading{align-items:flex-start;gap:10px}.page-heading h1{font-size:22px}.page-heading p{font-size:11px;max-width:255px}.foundation-label{padding:4px 6px;font-size:9px;margin-top:20px}.service-grid{gap:8px}.service-card{padding:12px 10px;gap:7px;align-items:flex-start;position:relative;min-height:82px}.service-icon{margin-top:1px}.service-icon svg{width:16px}.service-name{font-size:11px}.service-card p{font-size:9px;margin-top:6px}.connection-state,.mode-card .mode-label{position:absolute;left:33px;bottom:11px;margin:0;font-size:9px}.service-card p{display:none}.mode-card .mode-label{padding:1px 5px}.service-section{margin-bottom:20px}.section-label{margin-bottom:9px;font-size:10px}.text-button{font-size:10px}.panel-heading{padding:15px}.panel-heading p{font-size:10px}.panel-heading .mode-label{font-size:9px;padding:3px 6px}.assistant-emblem{width:34px;height:34px;border-radius:9px}.panel-heading-title{gap:9px}.mode-notice{padding:10px 15px;gap:7px}.mode-notice p{font-size:10px}.assistant-layout{display:flex;flex-direction:column;min-height:570px}.conversation-sidebar{min-height:auto;display:grid;grid-template-columns:120px minmax(0,1fr);gap:7px 10px;padding:12px;border-right:0;border-bottom:1px solid var(--line)}.new-conversation{font-size:10px;min-height:32px;padding:7px 8px}.conversation-list-heading{display:none}.conversation-list{display:flex;max-height:75px;margin:0;overflow:auto;grid-column:2;grid-row:1}.conversation-list li{min-width:135px}.conversation-item{height:36px;padding:7px 8px;gap:5px}.conversation-item time{display:none}.conversation-item strong{font-size:10px;max-width:105px}.conversation-list .selection-dot,.persistence-note{display:none}.conversation-sidebar>.subtle-message{grid-column:2;grid-row:1;padding:0 5px;align-self:center;font-size:9px}.conversation-sidebar>.inline-error{grid-column:1 / -1}.conversation-empty{flex:1;min-height:400px;padding:35px 20px}.conversation-empty h3{font-size:16px}.conversation-empty p{font-size:11px}.empty-emblem{width:60px;height:60px;border-radius:17px}.conversation-thread{min-height:480px;max-height:690px}.thread-header{padding:12px 15px}.message-scroll{padding:20px 14px;min-height:200px}.message-composer{padding:0 12px 13px}.message{gap:8px;margin-bottom:20px}.message-body p{font-size:11px}.message-avatar{width:26px;height:26px;font-size:9px}.message-body header{gap:8px}.message-body strong{font-size:10px}.message-body time{font-size:8px}.composer-footer{padding:7px 7px 8px 10px}.composer-footer>span{font-size:8px}.message-composer textarea{font-size:12px;padding:11px;min-height:80px}.composer-footer .button{font-size:10px;min-height:31px;padding:6px 10px}.thread-introduction h4{font-size:14px}.thread-introduction p{font-size:11px}.run-status{padding:10px;font-size:10px}.run-status strong{font-size:10px}.run-status p,.run-status .text-button{font-size:9px}.module-placeholder{padding:40px 20px;min-height:420px}.module-placeholder h2{font-size:17px}.module-placeholder>p{font-size:11px}.next-steps{display:grid;gap:12px;text-align:left}.next-steps div{gap:10px}.page-footer{flex-direction:column;gap:2px;padding:17px 0;font-size:8px}.identity-error{font-size:10px;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active:not(:disabled){transform:none}}.school-brand-mark{filter:brightness(1.1) contrast(1.05);mix-blend-mode:multiply}
