:root{color:#243330;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#edf1e8;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,system-ui,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}#root{min-height:100vh}.account-page{--account-ink:#153b33;--account-muted:#7c817c;--account-line:#1e38312e;--account-amber:#b87924;min-height:100vh;color:var(--account-ink);background-color:#f7f2e9;background-image:var(--account-desk-image);background-position:50%;background-size:cover;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;position:relative;overflow:hidden auto}.account-page:after{content:"";pointer-events:none;background:#30363124;width:1px;position:fixed;inset:0 17.5% 0 auto}.account-header{z-index:2;justify-content:space-between;align-items:center;min-height:116px;padding:30px 4.2% 24px 3.7%;display:flex;position:relative}.account-brand{align-items:center;gap:14px;display:inline-flex}.account-brand-mark{color:#fffdf8;background:#1f5549;border-radius:10px;place-items:center;width:44px;height:44px;display:inline-grid;box-shadow:0 7px 18px #153b3329}.account-brand>span:last-child{gap:1px;display:grid}.account-brand small{color:#858984;letter-spacing:.04em;font-size:13px}.account-brand strong{color:#172d28;letter-spacing:.02em;font-size:20px;font-weight:650}.account-mode-link{color:#263630;align-items:center;gap:12px;font-size:15px;display:flex}.account-mode-link button,.account-login-actions button,.account-forgot-link,.account-back{color:#1f5f51;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:650}.account-stage{z-index:2;width:min(540px,46vw);margin:90px 0 100px 10.5%;position:relative}.account-progress{border-bottom:2px solid #243e3721;grid-template-columns:repeat(3,1fr);margin:0 0 76px;padding:0;list-style:none;display:grid}.account-progress li{color:#989b96;text-align:center;letter-spacing:.05em;padding:0 0 16px;font-size:16px;position:relative}.account-progress li:not(:last-child):after{content:"·";color:#6f746e;position:absolute;right:-2px}.account-progress li.active,.account-progress li.done{color:#1b5549;font-weight:650}.account-progress li.active:before{content:"";background:#1e5b4e;height:3px;position:absolute;bottom:-2px;left:0;right:0}.account-rule{background:#243e3721;width:100%;height:2px;margin-bottom:74px}.account-form{gap:24px;width:min(500px,100%);display:grid}.account-form>label,.account-form>.account-primary,.account-form>.account-feedback{width:100%;max-width:500px}.account-heading{gap:14px;margin-bottom:12px;display:grid}.account-heading.compact{gap:8px;margin-bottom:2px}.account-heading>span{color:var(--account-amber);letter-spacing:.14em;font-size:13px;font-weight:650}.account-heading h1{color:#102d27;letter-spacing:.015em;max-width:640px;margin:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-size:clamp(34px,3vw,45px);font-weight:720;line-height:1.25}.account-heading p{color:var(--account-muted);margin:0;font-size:15px;line-height:1.8}.account-form label{color:#263b35;gap:10px;font-size:14px;font-weight:620;display:grid}.account-label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-label-row small{color:#7f857f;align-items:center;gap:5px;font-size:12px;font-weight:450;display:inline-flex}.account-form input,.account-form select{box-sizing:border-box;color:#19372f;width:100%;height:56px;font:inherit;background:#fffdf8eb;border:1px solid #36453f3b;border-radius:8px;outline:none;padding:0 17px;font-weight:450;transition:border-color .16s,box-shadow .16s,background .16s}.account-form input::placeholder{color:#a2a59f}.account-form input:focus,.account-form select:focus{background:#fffdf8;border-color:#2c6b5d;box-shadow:0 0 0 3px #2c6b5d1c}.account-code-field,.account-password-field{background:#fffdf8eb;border:1px solid #36453f3b;border-radius:8px;align-items:center;display:flex;overflow:hidden}.account-code-field:focus-within,.account-password-field:focus-within{border-color:#2c6b5d;box-shadow:0 0 0 3px #2c6b5d1c}.account-code-field input,.account-password-field input{min-width:0;box-shadow:none;background:0 0;border:0}.account-code-field input:focus,.account-password-field input:focus{box-shadow:none;background:0 0;border:0}.account-code-field button{min-width:124px;height:32px;color:var(--account-amber);font:inherit;cursor:pointer;background:0 0;border:0;border-left:1px solid #36453f2e;flex:none;padding:0 16px;font-size:14px;font-weight:650}.account-code-field button:disabled{color:#9b9e98;cursor:not-allowed}.account-password-field button{color:#6f7a74;cursor:pointer;background:0 0;border:0;flex:0 0 48px;place-items:center;width:48px;height:48px;display:grid}.account-forgot-link{flex:none;font-size:13px}.account-login-actions{width:100%;max-width:500px;color:var(--account-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:-8px;font-size:13px;display:flex}.account-login-actions>span{align-items:center;gap:6px;display:inline-flex}.account-primary{color:#fffdf8;width:100%;min-height:60px;font:inherit;cursor:pointer;background:#194e43;border:1px solid #1b5146;border-radius:8px;justify-content:center;align-items:center;gap:14px;font-size:16px;font-weight:650;transition:background .16s,transform .16s;display:flex;box-shadow:0 9px 22px #184b4021}.account-primary:hover:not(:disabled){background:#123e35;transform:translateY(-1px)}.account-primary:disabled{opacity:.68;cursor:wait}.account-feedback{border-left:3px solid;margin:-8px 0 0;padding:9px 12px;font-size:13px;line-height:1.6}.account-feedback.error{color:#9a3831;background:#a03b3212}.account-feedback.success{color:#276253;background:#27625312}.account-email-suggestion{flex-wrap:wrap;gap:9px;margin-top:-14px;display:flex}.account-email-suggestion button{color:#6f4d1f;font:inherit;cursor:pointer;background:#fff9ed;border:1px solid #9d7b45;border-radius:8px;padding:8px 13px;font-size:13px;font-weight:700}.account-email-suggestion button:first-child{color:#fff;background:#8a6228;border-color:#8a6228}.account-grid-two{grid-template-columns:1fr 1fr;gap:18px;display:grid}.account-back{color:#63716b;align-items:center;gap:7px;width:fit-content;font-size:13px;display:inline-flex}.account-complete{align-items:start;max-width:510px}.account-complete-icon{color:#fffdf8;background:#1f594c;border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.account-footnote{z-index:2;color:#21342dad;letter-spacing:.08em;margin:0;font-family:Songti SC,STSong,serif;font-size:13px;position:fixed;bottom:24px;right:3.5%}@media (width>=921px){.account-heading h1{white-space:nowrap;width:650px;max-width:none}}@media (height<=800px) and (width>=921px){.account-stage{margin-top:54px;margin-bottom:48px}.account-rule{margin-bottom:44px}.account-form{gap:18px}.account-heading{gap:10px;margin-bottom:4px}}@media (width<=920px){.account-page{background-position:60%}.account-page:before{content:"";background:#f7f2e9db;position:fixed;inset:0}.account-page:after,.account-footnote{display:none}.account-stage{width:min(540px,100% - 48px);margin:60px auto 80px}}@media (width<=620px){.account-page{background-image:none;min-height:100svh}.account-page:before{display:none}.account-header{align-items:flex-start;min-height:88px;padding:20px 18px}.account-brand{gap:10px}.account-brand-mark{width:40px;height:40px}.account-brand strong{font-size:17px}.account-mode-link{justify-items:end;gap:2px;font-size:12px;display:grid}.account-mode-link button{min-height:28px}.account-stage{width:auto;margin:28px 20px 56px}.account-progress{margin-bottom:46px}.account-progress li{padding-bottom:13px;font-size:13px}.account-rule{margin-bottom:44px}.account-heading{gap:10px}.account-heading h1{font-size:31px}.account-form{gap:20px}.account-login-actions{margin-top:-4px}.account-label-row{align-items:flex-start}.account-label-row small{text-align:right;justify-content:flex-end;max-width:160px}.account-code-field{align-items:stretch}.account-code-field button{min-width:112px;height:auto;padding:0 10px;font-size:13px}.account-grid-two{grid-template-columns:1fr}}.today-course-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin-bottom:16px;display:grid}.today-course-list article{border:1px solid var(--line,#e4e7e3);border-radius:12px;gap:7px;padding:14px;display:grid}.today-course-list article>span,.today-course-list article>small{color:var(--muted,#65706a)}#personal-week-timetable{margin-top:16px}.shell{grid-template-columns:272px minmax(0,1fr);min-height:100vh;display:grid}.shell>*,.today-layout>*,.today-bottom>*{min-width:0}.sidebar{color:#f8f4e8;background:#20312f;flex-direction:column;gap:24px;padding:24px 18px;display:flex}.brand{align-items:center;gap:12px;padding:4px 4px 16px;display:flex}.brand-mark{color:#1f2a28;background:#f4c36b;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.brand span,.eyebrow{color:#6b7b78;letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:700;display:block}.brand span{color:#bac8bf}.brand strong{letter-spacing:0;margin-top:2px;font-size:18px;display:block}nav{gap:6px;display:grid}.nav-item{color:#dfe9e2;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.nav-item:hover,.nav-item.active{background:#ffffff1a}.nav-item span{gap:2px;font-size:15px;font-weight:700;display:grid}.nav-item small{color:#a7b8ad;font-size:12px;font-weight:500}.sidebar-note{color:#dfebdf;background:#f4c36b1f;border:1px solid #f4c36b3d;border-radius:8px;margin-top:auto;padding:14px;font-size:13px;line-height:1.65}.sidebar-note span{color:#f4c36b;margin-bottom:6px;font-weight:800;display:block}.workspace{color:#243330;background:linear-gradient(#ffffffdb,#fffffff0),#edf1e8;min-width:0;padding:28px}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}h1,h2,h3{letter-spacing:0;margin:0}.topbar h1{color:#162320;font-size:30px;line-height:1.15}.operator{align-items:end;gap:10px;display:flex}label{color:#63716e;gap:6px;font-size:12px;font-weight:700;display:grid}input,select,textarea{box-sizing:border-box;color:#1d2926;font:inherit;letter-spacing:0;background:#fffdf8;border:1px solid #dfe4dc;border-radius:8px;min-height:42px;padding:10px 12px}textarea{resize:vertical;width:100%;min-height:96px;line-height:1.65}button{font:inherit;letter-spacing:0}.icon-button,.primary,.secondary{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 14px;font-weight:800;display:inline-flex}.icon-button{color:#263431;background:#fffdf8;border:1px solid #dfe4dc;width:42px}.primary{color:#fff;background:#2f6f67;border:1px solid #2f6f67}.primary:disabled{cursor:wait;opacity:.7}.secondary{color:#2f6f67;background:#fffdf8;border:1px solid #dfe4dc}.stack{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.student-space-toolbar{background:linear-gradient(115deg,#2f6f671a,#f4c36b1f),#fffdf8;border:1px solid #d9e3d8;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.student-space-toolbar>div{gap:3px;display:grid}.student-space-toolbar strong{color:#1d2926;font-size:18px}.student-space-toolbar small{color:#6c7b77}.student-space-toolbar button{flex:none}.student-space-create-panel{border-color:#cddfd3;box-shadow:0 20px 54px #2f6f671a}.panel,.class-hero,.analysis-block,.student-mode,.empty-state{background:#fffdf8eb;border:1px solid #dde5d8;border-radius:8px;padding:22px;box-shadow:0 18px 48px #2f463f14}.panel-title{justify-content:space-between;align-items:start;gap:12px;margin-bottom:18px;display:flex}.panel-title h3,.evidence-column h3{color:#1d2926;font-size:19px}.panel-title>div{gap:4px;display:grid}.panel-title span,.muted{color:#6c7b77;font-size:14px}.class-hero{background:linear-gradient(120deg,#2f6f671f,#f4c36b29),#fffdf8;justify-content:space-between;align-items:center;display:flex}.class-hero.compact{align-items:start}.class-hero h2{color:#14211e;margin:4px 0 8px;font-size:34px}.class-hero p{color:#60716d;margin:0}.hero-actions{text-align:center;background:#fffdf8;border:1px solid #dfe4dc;border-radius:8px;align-items:center;min-width:118px;padding:16px;display:grid}.hero-actions strong{color:#2f6f67;font-size:34px;line-height:1}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.compact-panel{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.invite-code{color:#2f6f67;letter-spacing:.08em;margin-top:4px;font-size:28px;display:block}.member-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.member-list span{color:#2f6f67;background:#edf6ef;border:1px solid #d6e6db;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:800}.collaboration-management-panel{gap:14px;display:grid}.collaboration-management-panel .invite-code{margin:0 0 0 6px;font-size:16px;display:inline}.collaboration-member-list{gap:8px;display:grid}.collaboration-member-list article{background:#f8faf7;border:1px solid #dce6df;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.collaboration-member-list article>div,.collaboration-member-list article small{gap:3px;display:grid}.collaboration-member-list small{color:#71807c}.compact-action{flex:none;align-items:center;gap:5px;display:inline-flex}.student-space-danger-zone{background:#fff9f8;border:1px solid #e5c5c0;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:13px;display:flex}.student-space-danger-zone>div,.student-space-danger-zone span{align-items:center;gap:10px;display:flex}.student-space-danger-zone span{flex-direction:column;align-items:flex-start;gap:2px}.student-space-danger-zone small{color:#8e6a64}.student-space-danger-zone button{color:#9b4035;background:#fff;border-color:#d9a8a0;flex:none}.metric{background:#fffdf8;border:1px solid #dde5d8;border-radius:8px;padding:18px}.metric span{color:#6c7b77;margin-bottom:10px;font-size:13px;display:block}.metric strong{color:#1b2a27;font-size:28px}.split{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.bars{gap:14px;display:grid}.bar div{justify-content:space-between;margin-bottom:7px;display:flex}.bar span{color:#34423f;font-weight:700}.bar b{color:#60716d}.bar i{background:linear-gradient(90deg,#2f6f67,#f0b85f);border-radius:999px;height:8px;display:block}.tag-list,.student-strip,.mini-bars,.evidence-help{flex-wrap:wrap;gap:10px;display:flex}.tag-list span,.mini-bars span,.evidence-help span{color:#2e413d;background:#f3f6ef;border:1px solid #dfe8dc;border-radius:8px;gap:8px;padding:10px 12px;display:inline-flex}.tag-list b,.mini-bars b{color:#2f6f67}.student-card{background:#f9f6ee;border:1px solid #e5dfd1;border-radius:8px;gap:6px;min-width:148px;padding:14px;display:grid}.student-card strong{color:#1d2926}.student-card span,.student-card small{color:#6c7b77}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.upload-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.join-row{grid-template-columns:minmax(180px,280px) auto;justify-content:start;align-items:end;gap:12px;display:grid}.file-drop{color:#2f6f67;cursor:pointer;background:#f6f8f2;border:1px dashed #9cb5aa;border-radius:8px;flex-direction:row;align-items:center;gap:10px;min-height:44px;padding:0 14px;font-size:15px;display:inline-flex;position:relative;overflow:hidden}.file-drop input{cursor:pointer;opacity:0;width:100%;height:100%;padding:0;font-size:16px;display:block;position:absolute;inset:0}.file-drop.is-loading{cursor:wait;opacity:.72}.upload-format-help{color:#74817d;margin:8px 0 0;font-size:12px;line-height:1.55}.upload-notice{border-radius:8px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.55}.upload-notice.success{color:#295f57;background:#edf6f1;border:1px solid #c8dfd3}.upload-notice.error{color:#7b5318;background:#fff5e8;border:1px solid #edcf9b}.roster-import-summary{color:#49605a;background:#f6f8f5;border:1px solid #dce6df;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;padding:11px 13px;font-size:13px;display:flex}.roster-import-summary>strong{color:#274c46}.roster-import-summary b{color:#23695e;font-size:15px}.roster-import-summary small{color:#74817d;flex-basis:100%;line-height:1.5}.mobile-table-hint{color:#74817d;margin-bottom:8px;font-size:12px;display:none}.inline-choice{flex-direction:row;align-items:center;gap:8px;display:flex}.table-wrap{max-height:360px;margin-bottom:16px;overflow:auto}.privacy-note{color:#53645f;background:#f3f6ef;border-left:3px solid #2f6f67;margin:0 0 14px;padding:9px 12px;font-size:13px}.roster-issues{color:#80591d;background:#fff6e5;border:1px solid #eed39a;border-radius:8px;gap:4px;margin-bottom:14px;padding:12px 14px;font-size:13px;display:grid}.row-invalid{background:#fff9ed}.status-chip{color:#63716e;white-space:nowrap;background:#eef2eb;border:1px solid #dbe3d8;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.status-chip.boarding{color:#2f6f67;background:#e7f2ed;border-color:#bfd7cc}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;border-bottom:1px solid #e6eadf;padding:12px}th{color:#52635f;font-size:13px}td{color:#23332f}.student-checklist{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.student-checklist label{color:#263431;background:#fffdf8;border:1px solid #dfe4dc;border-radius:8px;flex-direction:row;align-items:center;gap:8px;min-height:42px;padding:0 12px;font-size:14px;display:flex}.student-checklist input{min-height:auto;padding:0}.evidence-help{margin:14px 0 16px}.ai-action-row{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 16px;display:flex}.ai-action-row span{color:#64736f;font-size:14px;line-height:1.5}.evidence-help span{font-size:13px;display:grid}.profile-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.profile-head label{width:min(360px,100%)}.analysis-block{border-color:#c9ded4;gap:10px;display:grid}.analysis-meta{color:#2f6f67;align-items:center;gap:8px;font-weight:800;display:flex}.analysis-block p{color:#2f3c39;margin:0;line-height:1.75}.evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.evidence-column{align-content:start;gap:12px;display:grid}.evidence-column.direct{border-left:4px solid #22a06b}.evidence-column.inferred{border-left:4px solid #e6a642}.evidence-column.signal{border-left:4px solid #9aa39b}.evidence-column.inferred article{opacity:.92}.evidence-column.signal article{opacity:.78}.evidence-column article,.timeline article{background:#f9f6ee;border:1px solid #e8e0d3;border-radius:8px;gap:8px;padding:14px;display:grid}.evidence-column span,.timeline span{color:#2f6f67;font-size:13px;font-weight:800}.evidence-column p,.timeline p{color:#2f3c39;margin:0;line-height:1.65}.evidence-column small,.timeline small{color:#71807c}.timeline{gap:12px;display:grid}.student-mode{color:#3d514c;background:#edf6ef;font-weight:700}.student-mode span{color:#2f6f67;margin-bottom:6px;display:block}.question-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.question-grid article{background:#f9f6ee;border:1px solid #e8e0d3;border-radius:8px;gap:10px;padding:14px;display:grid}.question-grid span{color:#2f6f67;font-size:13px;font-weight:800}.question-grid strong{color:#21302d}.question-grid label{color:#34423f;flex-direction:row;align-items:center;gap:8px;font-size:14px;display:flex}.question-grid input{min-height:auto;padding:0}.empty-state{color:#5f706c;text-align:center;place-items:center;gap:14px;max-width:560px;margin:8vh auto;display:grid}.empty-state h2{color:#172521}.toast{color:#fff;background:#1f312e;border-radius:8px;margin-bottom:16px;padding:12px 14px}.auth-loading{color:#6c7b77;justify-content:center;align-items:center;height:100vh;display:flex}.auth-page{background:linear-gradient(135deg,#20312f 0%,#2a4a44 40%,#1d3530 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:#fffdf8f7;border-radius:16px;width:100%;max-width:440px;padding:40px 36px 32px;box-shadow:0 24px 80px #00000040,0 0 0 1px #ffffff1a}.auth-brand{align-items:center;gap:14px;margin-bottom:12px;display:flex}.auth-brand .brand-mark{color:#fff;background:#2f6f67;border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.auth-brand strong{color:#162320;font-size:20px;display:block}.auth-subtitle{color:#6c7b77;letter-spacing:.06em;font-size:12px;font-weight:700;display:block}.auth-desc{color:#6c7b77;margin:0 0 24px;font-size:14px;line-height:1.65}.auth-tabs{border-bottom:2px solid #e6eadf;gap:0;margin-bottom:20px;display:flex}.auth-tabs button{color:#6c7b77;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 20px;font-size:15px;font-weight:700}.auth-tabs button.active{color:#2f6f67;border-bottom-color:#2f6f67}.auth-error{color:#a23b3b;background:#fff0f0;border:1px solid #f5c6c6;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:14px}.auth-form{gap:14px;display:grid}.auth-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.auth-submit{width:100%;min-height:48px;margin-top:4px;font-size:16px}.auth-footer{color:#a0b0a8;justify-content:center;align-items:center;gap:8px;margin-top:28px;font-size:12px;display:flex}.sidebar-user{color:#dfe9e2;background:#ffffff14;border-radius:8px;align-items:center;gap:4px;padding:4px;display:flex}.sidebar-user.active{background:#f4c36b29;box-shadow:inset 0 0 0 1px #f4c36b52}.sidebar-user-main{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;padding:8px;display:flex}.sidebar-user-main>span{flex:1;min-width:0}.sidebar-user strong{font-size:14px;display:block}.sidebar-user small{color:#a7b8ad;font-size:12px;display:block}.sidebar-logout{color:#a7b8ad;background:0 0;border-color:#ffffff26;width:34px;height:34px;min-height:34px}.sidebar-logout:hover{color:#f4c36b;background:#ffffff1a}.survey-link-box{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.survey-url{color:#2f6f67;text-overflow:ellipsis;white-space:nowrap;word-break:break-all;background:#f3f6ef;border:1px solid #dfe8dc;border-radius:8px;flex:1;min-width:200px;padding:12px 14px;font-size:13px;overflow:hidden}.survey-results{gap:14px;display:grid}.survey-result-card{background:#f9f6ee;border:1px solid #e8e0d3;border-radius:8px;gap:10px;padding:16px;display:grid}.survey-result-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.survey-result-head strong{color:#1d2926;font-size:16px}.survey-result-head small{color:#6c7b77}.survey-result-item{border-top:1px solid #e8e0d3;padding-top:10px}.survey-result-item p{color:#2f3c39;white-space:pre-line;margin:0 0 4px;line-height:1.65}.survey-result-item small{color:#71807c}.survey-page{background:linear-gradient(135deg,#20312f 0%,#2a4a44 40%,#1d3530 100%);justify-content:center;align-items:flex-start;min-height:100vh;padding:24px 16px;display:flex}.survey-card{background:#fffdf8f7;border-radius:16px;width:100%;max-width:640px;padding:32px 28px 28px;box-shadow:0 24px 80px #00000040,0 0 0 1px #ffffff1a}.survey-header{align-items:center;gap:14px;margin-bottom:12px;display:flex}.survey-header .brand-mark{color:#fff;background:#2f6f67;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.survey-header strong{color:#162320;font-size:20px;display:block}.survey-class{color:#6c7b77;font-size:12px;font-weight:700;display:block}.survey-desc{color:#6c7b77;margin:0 0 20px;font-size:14px;line-height:1.65}.survey-name-select{margin-bottom:20px}.survey-name-select select{width:100%;font-size:16px}.survey-questions{grid-template-columns:1fr;margin-bottom:16px}.survey-done{color:#2f6f67;text-align:center;place-items:center;gap:14px;padding:60px 32px;display:grid}.survey-done h2{color:#162320}.survey-done p{color:#6c7b77}.survey-footer{color:#a0b0a8;text-align:center;margin-top:24px;font-size:12px}.survey-error{color:#a23b3b;text-align:center;background:#fff0f0;border:1px solid #f5c6c6;border-radius:8px;padding:14px;font-size:14px}.usage-hint{color:#34423f;background:linear-gradient(135deg,#2f6f670f,#f4c36b1a);border:1px solid #c9ded4;border-left:4px solid #2f6f67;border-radius:8px;padding:18px 20px;font-size:14px;line-height:1.75}.usage-hint strong{color:#2f6f67;margin-bottom:6px;font-size:15px;display:block}.usage-hint span{color:#2f6f67;background:#2f6f6714;border-radius:6px;margin-top:10px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-block}.admin-nav{border-top:1px solid #ffffff14;margin-top:8px;padding-top:14px}.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-chart{align-items:flex-end;gap:12px;height:180px;padding:12px 0;display:flex}.admin-chart-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.admin-chart-value{color:#2f6f67;font-size:13px;font-weight:800}.admin-chart-fill{background:linear-gradient(#2f6f67,#62b3a0);border-radius:4px 4px 0 0;width:100%;min-height:4px}.admin-chart-label{color:#6c7b77;font-size:12px}.admin-delete-btn{color:#b04040;cursor:pointer;background:0 0;border:1px solid #e8d8d8;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.admin-delete-btn:hover{background:#fff0f0;border-color:#d4a0a0}.admin-delete-btn:disabled{cursor:wait;opacity:.5}.section-tabs{background:#e9eee6;border:1px solid #d9e1d6;gap:4px;padding:5px;display:flex;overflow-x:auto}.section-tabs button,.task-tabs button{color:#66736f;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:10px 14px;font-weight:800}.section-tabs button.active,.task-tabs button.active{color:#255c55;background:#fffdf8;box-shadow:0 3px 10px #2a3d3714}.feature-opening{margin-top:2vh}.desk-hero{background:linear-gradient(90deg,#fffdf8fa,#f7f1e2f0),repeating-linear-gradient(0deg,#0000,#0000 29px,#3e60520f 30px);border:1px solid #dedecf;border-left:5px solid #2f6f67;justify-content:space-between;align-items:center;min-height:150px;padding:26px 28px;display:flex}.desk-hero h2{color:#192824;margin:5px 0 8px;font-family:STSong,Songti SC,serif;font-size:36px}.desk-hero p{color:#65736f;max-width:650px;margin:0;line-height:1.7}.today-summary{border-left:1px solid #d9ded4;min-width:150px;padding:8px 0 8px 28px;display:grid}.today-summary strong{color:#2f6f67;font-family:Georgia,serif;font-size:46px;line-height:1}.today-summary span{color:#3c4d48;font-weight:800}.today-summary small{color:#a26720;margin-top:7px}.today-layout{grid-template-columns:minmax(440px,1.15fr) minmax(320px,.85fr);gap:18px;min-width:0;display:grid}.calendar-panel,.todo-composer,.task-board{box-shadow:0 12px 32px #2f463f0f}.calendar-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.calendar-head strong{color:#24332f;font-family:STSong,Songti SC,serif;font-size:20px}.calendar-head .icon-button{width:34px;height:34px;min-height:34px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{color:#87908d;text-align:center;padding:5px;font-size:11px;font-weight:800}.calendar-grid{border-top:1px solid #e8e7dc;border-left:1px solid #e8e7dc}.calendar-grid button{color:#34423f;cursor:pointer;text-align:left;background:0 0;border:1px solid #e8e7dc;border-top:0;border-left:0;grid-template-rows:auto minmax(0,1fr);place-items:flex-start stretch;gap:4px;min-height:88px;padding:7px 6px;display:grid;position:relative}.calendar-grid button:hover,.calendar-grid button:focus-visible{background:#f3f6ef}.calendar-grid button:focus-visible{outline-offset:-3px;z-index:3;outline:2px solid #d49a3a}.calendar-grid button:hover,.calendar-grid button:focus-within{z-index:2}.calendar-grid button.outside{color:#b4bab5}.calendar-grid button.selected{color:#1d5049;background:#e2eee8;font-weight:900;box-shadow:inset 0 0 0 2px #2f6f67}.calendar-date-number{justify-self:start;font-size:13px;font-weight:800;line-height:1.1}.calendar-grid button.today .calendar-date-number{border-bottom:2px solid #d49a3a}.calendar-day-todos,.calendar-day-todos-desktop,.calendar-day-todos-mobile{gap:3px;min-width:0;display:grid}.calendar-day-todos-mobile{display:none}.calendar-todo-chip,.calendar-todo-overflow{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;line-height:1.35;display:block;overflow:hidden}.calendar-todo-chip{color:#315a53;background:#edf3eb;border-left:2px solid #6b968e;border-radius:2px;padding:2px 4px;font-weight:700}.calendar-todo-chip.completed{color:#7e8782;background:#f1f0e9;border-left-color:#a8aea8;text-decoration:line-through}.calendar-todo-overflow{color:#a26720;padding-left:2px;font-size:10px;font-weight:800}.calendar-preview{color:#34423f;opacity:0;overscroll-behavior:contain;pointer-events:auto;visibility:hidden;z-index:5;background:#fffdf6;border:1px solid #ddd7c8;border-radius:8px;gap:8px;width:min(320px,100vw - 32px);max-width:320px;max-height:288px;padding:12px;transition:opacity .14s,transform .14s,visibility .14s;display:grid;position:absolute;top:calc(100% - 1px);left:-1px;overflow-y:auto;transform:translateY(-4px);box-shadow:0 18px 35px #23302b3d}.calendar-preview::-webkit-scrollbar{width:6px}.calendar-preview::-webkit-scrollbar-thumb{background:#b8c2b8;border-radius:999px}.calendar-preview>strong{color:#23483f;font-family:STSong,Songti SC,serif;font-size:13px;line-height:1.35}.calendar-preview-list{gap:8px;display:grid}.calendar-preview-item{border-top:1px solid #ece8db;gap:4px;padding-top:8px;display:grid}.calendar-preview-title{color:#32433e;overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.45;display:block}.calendar-preview-title b{color:#2f6f67;margin-right:5px;font-size:10px}.calendar-preview-item.completed .calendar-preview-title{color:#7e8782;text-decoration:line-through}.calendar-preview-item.completed .calendar-preview-title b{color:#8b938d}.calendar-preview-item small{color:#697670;overflow-wrap:anywhere;font-size:11px;line-height:1.45}.calendar-grid button:hover .calendar-preview,.calendar-grid button:focus-within .calendar-preview{opacity:1;visibility:visible;transform:translateY(0)}.calendar-grid button.calendar-day--preview-right .calendar-preview{left:auto;right:-1px}.calendar-selected-agenda{display:none}.calendar-today{color:#2f6f67;cursor:pointer;background:0 0;border:0;margin:12px auto 0;font-size:12px;font-weight:800;display:block}.todo-composer{align-content:start;gap:13px;display:grid}.todo-composer .panel-title{margin-bottom:0}.todo-form-row{grid-template-columns:1fr 145px;gap:12px;display:grid}.todo-form-row.solo{grid-template-columns:1fr}.todo-composer textarea{min-height:76px}.private-hint{color:#7c8884;text-align:center}.personal-timetable-panel{min-width:0;overflow:hidden}.personal-timetable-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px;display:flex}.personal-timetable-head h3{color:#1d2926;margin:3px 0 6px;font-family:STSong,Songti SC,serif;font-size:24px}.personal-timetable-head p{color:#6c7b77;margin:0;line-height:1.6}.personal-timetable-actions{flex:none;place-items:end;gap:7px;display:grid}.personal-timetable-actions small{color:#87918d;font-size:11px}.personal-timetable-scroll{overscroll-behavior-inline:contain;border:1px solid #dfe4d9;border-radius:8px;max-width:100%;overflow-x:auto}.personal-timetable-scroll:focus-visible{outline-offset:3px;outline:2px solid #d49a3a}.personal-timetable-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:760px}.personal-timetable-grid th,.personal-timetable-grid td{text-align:center;border-bottom:1px solid #e3e6dc;border-right:1px solid #e3e6dc;padding:0}.personal-timetable-grid tr:last-child th,.personal-timetable-grid tr:last-child td{border-bottom:0}.personal-timetable-grid tr>:last-child{border-right:0}.personal-timetable-grid thead th{color:#53635e;letter-spacing:.04em;background:#edf1e9;height:48px;font-size:12px}.personal-timetable-grid thead th small{color:#fffdf8;letter-spacing:0;background:#d49a3a;border-radius:999px;margin-left:5px;padding:2px 5px;font-size:9px;display:inline-block}.personal-timetable-grid thead th.is-today{color:#245c54;background:#e1ede6}.personal-timetable-grid tbody th,.personal-timetable-period-head{z-index:2;width:104px;position:sticky;left:0}.personal-timetable-grid tbody th{color:#5f6e69;background:#f6f6ef;font-size:11px;font-weight:800}.personal-timetable-grid tbody th span{padding:12px 8px;display:block}.personal-timetable-grid .personal-timetable-period-head{z-index:3;background:#e6ece4}.personal-timetable-grid td{height:70px;vertical-align:stretch;background:#fffdf8}.personal-timetable-grid td.is-today{background:#f1f7f1}.personal-timetable-grid td>button{color:#34443f;text-align:left;background:0 0;border:0;align-content:center;gap:5px;width:100%;height:100%;min-height:69px;padding:7px 8px;display:grid}.personal-timetable-grid td>button:not(:disabled){cursor:pointer}.personal-timetable-grid td>button:not(:disabled):hover{background:#eef4eb}.personal-timetable-grid td>button:focus-visible{z-index:1;outline:0;position:relative;box-shadow:inset 0 0 0 3px #d49a3a}.personal-timetable-grid td>button.has-course{background:#ecf3ebc7;box-shadow:inset 3px 0 #6b968e}.personal-timetable-grid td.is-today>button.has-course{background:#e5f0e8;box-shadow:inset 3px 0 #2f6f67}.personal-timetable-grid td>button.is-selected{background:#fff7e5;box-shadow:inset 0 0 0 2px #d49a3a}.personal-timetable-grid td>button strong{color:#23443e;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.personal-timetable-grid td>button>span:not(.personal-timetable-empty){flex-wrap:wrap;gap:3px 7px;display:flex}.personal-timetable-grid td>button small{color:#71807b;align-items:center;gap:2px;font-size:9px;line-height:1.25;display:inline-flex}.personal-timetable-empty{color:#b1b8b3;text-align:center;font-size:10px}.personal-timetable-editor{background:linear-gradient(110deg,#edf3ebf0,#faf7ecf5);border:1px solid #d8e0d5;border-left:4px solid #2f6f67;border-radius:8px;gap:14px;margin-top:16px;padding:16px;display:grid}.personal-timetable-editor-title{color:#2f6f67;justify-content:space-between;align-items:center;display:flex}.personal-timetable-editor-title h4{color:#253630;margin:3px 0 0;font-size:16px}.personal-timetable-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.personal-timetable-fields input:focus-visible{outline-offset:1px;border-color:#2f6f67;outline:2px solid #2f6f6733}.personal-timetable-editor-hint{color:#697873;margin:0;font-size:13px}.personal-timetable-editor-actions{align-items:center;gap:9px;display:flex}.personal-timetable-clear{color:#9a5c32;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:8px 3px;font-size:12px;font-weight:800;display:inline-flex}.personal-timetable-status{color:#687670;flex:auto;min-width:80px;font-size:11px;line-height:1.4}.task-tabs{border-bottom:1px solid #e4e7dd;gap:4px;margin:-8px -6px 14px;padding:0 6px 8px;display:flex;overflow-x:auto}.task-tabs button{align-items:center;gap:7px;display:inline-flex}.task-tabs b{background:#e8ede6;border-radius:999px;min-width:20px;padding:2px 6px;font-size:11px}.todo-list{gap:8px;display:grid}.todo-list article{background:#fbfaf4;border:1px solid #e7e5da;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:13px 14px;display:grid}.todo-list article.overdue{background:#fff8e9;border-left:4px solid #d49a3a}.todo-list article>div{gap:3px;display:grid}.todo-list article strong{color:#25332f}.todo-list article span,.todo-list article p{color:#74807c;margin:0;font-size:12px}.todo-check,.todo-delete{color:#2f6f67;cursor:pointer;background:0 0;border:0;padding:1px}.todo-delete{color:#a28e73}.quiet-empty{color:#87908d;text-align:center;padding:26px 12px}.today-bottom{grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr);gap:18px;display:grid}.today-workbench{grid-template-columns:minmax(300px,.86fr) minmax(430px,1.14fr);grid-template-areas:"hero hero""timetable calendar""quick calendar""focus task-board""focus composer";align-items:start;gap:16px;display:grid}.today-workbench .desk-hero{grid-area:hero;min-height:0;padding:18px 22px}.today-workbench .desk-hero h2{margin:3px 0 5px;font-size:29px}.today-workbench .desk-hero p{font-size:14px;line-height:1.55}.today-workbench .today-summary{min-width:124px;padding:4px 0 4px 20px}.today-workbench .today-summary strong{font-size:36px}.today-workbench .today-layout,.today-workbench .today-bottom{display:contents}.today-workbench .personal-timetable-panel{grid-area:timetable;align-self:start;padding:18px}.today-workbench .personal-timetable-head{gap:14px;margin-bottom:13px}.today-workbench .personal-timetable-head h3{font-size:22px}.today-workbench .personal-timetable-head p{font-size:13px;line-height:1.45}.today-workbench .today-course-list{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:9px;margin-bottom:12px}.today-workbench .today-course-list article{gap:4px;padding:11px}.today-workbench .calendar-panel{grid-area:calendar;align-self:start;padding:18px}.today-workbench .calendar-head{margin-bottom:8px}.today-workbench .calendar-grid button{min-height:68px;padding:6px 5px}.today-workbench .task-board{grid-area:task-board;align-self:start;max-height:350px;padding:18px;overflow-y:auto}.today-workbench .todo-composer{grid-area:composer;align-self:start;padding:18px}.today-workbench .quick-actions{grid-area:quick;align-self:start;padding:18px}.today-workbench .focus-list{grid-area:focus;align-self:start;padding:18px}@media (width<=1080px){.today-workbench{grid-template-columns:minmax(0,1fr);grid-template-areas:none}.today-workbench .desk-hero,.today-workbench .personal-timetable-panel,.today-workbench .task-board{grid-area:auto}.today-workbench .personal-timetable-panel{order:1}.today-workbench .today-layout{order:2;grid-template-columns:minmax(0,1fr);display:grid}.today-workbench .calendar-panel,.today-workbench .todo-composer,.today-workbench .quick-actions,.today-workbench .focus-list{grid-area:auto}.today-workbench .task-board{order:3}.today-workbench .today-bottom{order:4;grid-template-columns:minmax(0,1fr);display:grid}}.quick-actions,.focus-list{align-content:start;gap:9px;display:grid}.quick-actions .panel-title,.focus-list .panel-title{margin-bottom:5px}.quick-actions>button{color:#2f6f67;cursor:pointer;text-align:left;background:#f8f7ef;border:1px solid #e5e4d8;align-items:center;gap:12px;padding:12px;display:flex}.quick-actions button span,.focus-list article>div:nth-child(2){display:grid}.quick-actions button strong{color:#2b3a36}.quick-actions button small,.focus-list article span{color:#7a8783;font-size:12px}.focus-list article{border-bottom:1px solid #e8e7dd;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 2px;display:grid}.student-avatar{color:#2f6f67;background:#e4eee8;justify-content:center;align-items:center;width:38px;height:38px;font-family:STSong,Songti SC,serif;font-size:18px;font-weight:900;display:flex}.focus-list article b{color:#9a6822;background:#fff4dd;padding:5px 7px;font-size:11px}.family-layout{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:18px;display:grid}.student-directory{max-height:calc(100vh - 120px);position:sticky;top:24px}.filter-pills{gap:5px;margin-bottom:12px;display:flex}.filter-pills button{color:#70807a;cursor:pointer;background:#f0f3ed;border:1px solid #e0e5dc;padding:6px 9px;font-size:12px;font-weight:800}.filter-pills button.active{color:#fff;background:#2f6f67;border-color:#2f6f67}.directory-list{gap:5px;max-height:calc(100vh - 270px);display:grid;overflow-y:auto}.directory-list>button{color:#34423f;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.directory-list>button.active{background:#edf4ef;border-color:#cadad2}.directory-list>button>span:nth-child(2){display:grid}.directory-list small{color:#7f8b87}.directory-list b{color:#9b7a47;font-size:12px}.contact-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:20px;display:grid}.student-avatar.large{width:54px;height:54px;font-size:24px}.contact-heading h2{color:#1e2d29;margin:2px 0;font-family:STSong,Songti SC,serif;font-size:28px}.contact-heading p{color:#76837f;margin:0}.owner-badge,.read-only-badge{color:#2f6f67;background:#e4eee8;border:1px solid #c6d9cf;padding:6px 9px;font-size:12px;font-weight:900}.read-only-badge{color:#737d79;background:#f0f1ed;border-color:#dedfd9}.guardian-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.guardian-grid article{background:#f8f7ef;border:1px solid #e5e4d8;gap:7px;padding:14px;display:grid}.guardian-grid article>div,.guardian-grid a{align-items:center;gap:7px;display:flex}.guardian-grid article b{color:#8d6326;background:#fff0ca;padding:3px 5px;font-size:10px}.guardian-grid article span,.guardian-grid article small{color:#7a8783;font-size:12px}.guardian-grid a{color:#2f6f67;font-size:17px;font-weight:900;text-decoration:none}.contact-editor{border-top:1px solid #e5e7de;margin-top:18px;padding-top:14px}.contact-editor summary{color:#2f6f67;cursor:pointer;margin-bottom:14px;font-weight:900}.contact-editor>label{max-width:220px}.family-ai-assistant{background:linear-gradient(145deg,#fffdf8 0%,#f4f8f3 100%);border-color:#cbdcd2}.family-ai-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.family-ai-heading h2{color:#1f3b34;align-items:center;gap:9px;margin:4px 0 7px;font-family:STSong,Songti SC,serif;font-size:28px;display:flex}.family-ai-heading p{color:#677773;margin:0;line-height:1.7}.family-ai-cost{color:#2f6f67;white-space:nowrap;background:#e4eee8;border:1px solid #bfd5c9;padding:9px 12px;font-weight:900}.family-ai-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:19px 0;display:grid}.family-ai-steps span{color:#586964;background:#ffffffb8;border:1px solid #dbe5dd;align-items:center;gap:8px;padding:10px 12px;font-weight:800;display:flex}.family-ai-steps b{color:#fff;background:#2f6f67;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:inline-flex}.family-ai-options{grid-template-columns:repeat(3,minmax(0,1fr))}.family-ai-facts,.family-ai-action{margin-top:14px}.family-ai-facts textarea{min-height:130px}.family-ai-submit{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.family-ai-submit span{color:#7a6b52;font-size:13px}.family-ai-results{border-top:1px solid #d8e2da;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;padding-top:18px;display:grid}.family-ai-review{color:#72582f;background:#fff5dc;border:1px solid #e7d5ac;grid-column:1/-1;align-items:center;gap:10px;padding:12px 14px;display:flex}.family-ai-review span{gap:3px;display:grid}.family-ai-results article{background:#fff;border:1px solid #dfe6df;padding:13px}.family-ai-results article header{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.family-ai-results article header button{min-height:36px;padding:7px 10px}.family-ai-results article textarea{min-height:140px}.guardian-editor-row{grid-template-columns:1fr .8fr 1.1fr auto auto;align-items:center;gap:8px;margin-top:9px;display:grid}.primary-contact{white-space:nowrap;flex-direction:row;align-items:center;display:flex}.primary-contact input,.student-picker input{min-height:auto}.editor-actions,.save-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.save-row span{color:#8b6a36;font-size:12px}.contact-timeline{gap:0;display:grid}.contact-timeline article{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:13px 0;display:grid}.contact-timeline article+article{border-top:1px solid #e8e7dd}.timeline-marker{color:#2f6f67;background:#e7f0eb;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.contact-timeline p{color:#43524e;margin:5px 0;line-height:1.7}.contact-timeline small{color:#7d8985}.points-balance-pill{color:#6f5226;cursor:pointer;background:#fffdf8;border:1px solid #d8c99f;align-items:center;gap:9px;min-height:48px;padding:7px 9px 7px 12px;display:flex}.points-balance-pill>span{text-align:left;line-height:1.05;display:grid}.points-balance-pill small{color:#8a785c;font-size:11px;font-weight:800}.points-balance-pill strong{font-size:17px}.points-balance-pill>b{color:#fff;background:#a87524;padding:7px 9px;font-size:12px}.points-modal-backdrop{z-index:1200;background:#161c1a85;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.points-modal{background:#fbfaf5;border:1px solid #d9d5c6;width:100%;max-width:860px;max-height:calc(100vh - 44px);padding:25px;overflow-y:auto;box-shadow:0 28px 90px #16221e40}.points-modal>header{justify-content:space-between;align-items:start;display:flex}.points-modal>header h2{align-items:center;gap:9px;margin:3px 0 6px;font-family:STSong,Songti SC,serif;font-size:30px;display:flex}.points-modal>header p{color:#6f7b77;margin:0}.points-current-balance{color:#fff;background:linear-gradient(135deg,#213d36,#346d60);margin:20px 0;padding:19px 21px}.points-current-balance>span{color:#c8ddd6;font-size:13px;font-weight:800}.points-current-balance>strong{margin:4px 0;font-size:38px;display:block}.points-current-balance>strong small{font-size:16px}.points-current-balance p{color:#d7e6e1;margin:0}.points-center-panel{gap:18px;display:grid}.points-center-heading{grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);align-items:stretch;gap:18px;display:grid}.points-center-heading>div:first-child{align-content:center;display:grid}.points-center-heading h2{align-items:center;gap:9px;margin:4px 0 7px;font-family:STSong,Songti SC,serif;font-size:30px;display:flex}.points-center-heading>div:first-child p{color:#6f7b77;margin:0}.points-center-heading .points-current-balance{margin:0}.points-package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.points-package-grid article{background:#fff;border:1px solid #ddd7c5;gap:8px;padding:18px;display:grid}.points-center-panel .points-package-grid article{border-radius:14px}.points-package-grid article>span{color:#4c5a56;font-weight:900}.points-package-grid article>strong{color:#7f581d;font-size:30px}.points-package-grid article>b{color:#865c1f;background:#fff0c9;justify-self:start;padding:5px 8px}.points-package-grid article p{color:#687570;margin:3px 0}.points-package-grid article button{justify-content:center}.points-payment-disabled,.points-payment-status{color:#785b2c;background:#fff3d9;margin:14px 0 0;padding:11px 13px}.points-ledger{border-top:1px solid #dddcd2;margin-top:20px;padding-top:18px}.points-ledger>div:not(.panel-title){border-top:1px solid #eceae1;justify-content:space-between;align-items:center;padding:11px 3px;display:flex}.points-ledger>div>span{gap:3px;display:grid}.points-ledger small{color:#858f8b}.points-modal>footer{color:#69736f;background:#f0f1ea;margin-top:18px;padding:11px 13px;line-height:1.7}.points-center-panel>footer{color:#69736f;background:#f0f1ea;padding:11px 13px;line-height:1.7}.tools-hero .owner-badge,.tools-hero .read-only-badge{align-self:center}.tool-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tool-tabs button{color:#67746f;cursor:pointer;background:#f5f5ed;border:1px solid #dee3da;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:900;display:flex}.tool-tabs button.active{color:#fff;background:#2f6f67;border-color:#2f6f67}.blackboard{color:#e9eee8;letter-spacing:.2em;text-align:center;background:#263d38;border:7px solid #9c7b4b;max-width:560px;margin:0 auto 24px;padding:12px;font-family:STSong,Songti SC,serif}.seat-grid-scroll{max-width:100%;overflow-x:auto}.seat-layout-controls{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.seat-layout-controls label{gap:5px;display:grid}.seat-layout-controls input{width:90px}.seat-waiting{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.seat-waiting .is-selected{outline:2px solid #9a6f2e}.seat-grid{grid-template-columns:repeat(var(--seat-cols,6), minmax(86px, 1fr));gap:10px;display:grid}.seat-layout-note{color:#6c7b77;margin:-8px 0 12px;font-size:13px}.seat-grid article{background:#faf8ef;border:1px solid #e3e0d3;min-height:84px;padding:9px;display:grid;position:relative}.seat-grid article>small{color:#9ba29f}.seat-grid article>strong{color:#2c3b37;text-align:center;align-self:center}.seat-grid article>span{color:#2f6f67;text-align:center;font-size:10px}.seat-grid article>div{justify-content:center;gap:4px;margin-top:5px;display:flex}.seat-grid article button,.affair-list article>button,.cadre-grid article>button{color:#64736e;cursor:pointer;background:0 0;border:1px solid #dfe2db;justify-content:center;align-items:center;padding:3px;display:flex}.seat-grid article button:disabled{opacity:.3}.tool-save{margin-top:18px}.affair-editor{background:#f5f5ed;border:1px solid #e2e4dc;margin-bottom:16px;padding:14px}.affair-editor-row,.cadre-editor{grid-template-columns:180px minmax(220px,1fr);align-items:end;gap:10px;display:grid}.student-picker{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.student-picker label{background:#fffdf8;border:1px solid #e0e2da;flex-direction:row;align-items:center;gap:5px;padding:6px 8px;font-size:12px;display:flex}.affair-list{gap:8px;display:grid}.affair-list article{border-bottom:1px solid #e6e7df;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 3px;display:grid}.affair-list article>span{color:#2f6f67;font-weight:900}.affair-list p{color:#74817d;margin:3px 0 0}.cadre-editor{grid-template-columns:180px minmax(200px,1fr) auto;margin-bottom:18px}.cadre-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.cadre-grid article{background:#f8f7ef;border:1px solid #e4e3d8;place-items:center;gap:5px;padding:15px;display:grid;position:relative}.cadre-grid article span{color:#2f6f67;font-size:12px;font-weight:900}.cadre-grid article>button{position:absolute;top:5px;right:5px}.timetable-wrap{overflow-x:auto}.timetable{min-width:760px}.timetable th{text-align:center;background:#edf1e9}.timetable td{padding:5px}.timetable input{text-align:center;border-color:#0000;width:100%;min-height:38px}.timetable input:disabled{color:#33423e;opacity:1;background:0 0}.profile-private-context{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.profile-private-context>span:not(.status-chip){color:#52615d;background:#fffdf8b8;border:1px solid #dde3d9;padding:5px 8px;font-size:12px}.broadcast-workspace{gap:16px;display:grid}.broadcast-state,.broadcast-onboarding{text-align:center;background:radial-gradient(circle at 12% 8%,#f4c36b33,#0000 30%),linear-gradient(145deg,#fffdf8fa,#eef4ecf5);border:1px solid #d8e2d4;border-left:5px solid #2f6f67;border-radius:10px;place-items:center;min-height:340px;padding:44px;display:grid;box-shadow:0 22px 56px #2f463f1a}.broadcast-state h2,.broadcast-onboarding h2{color:#1e312c;font-family:STSong,Songti SC,serif;font-size:30px}.broadcast-state p,.broadcast-onboarding p,.broadcast-muted{color:#687873;margin:0;line-height:1.7}.broadcast-state-error{border-left-color:#a64b45}.broadcast-state-error>svg{color:#a64b45}.broadcast-onboarding{text-align:left;justify-items:stretch;gap:20px}.broadcast-onboarding-copy{gap:8px;display:grid}.broadcast-kicker{color:#2f6f67;align-items:center;gap:7px;font-size:12px;font-weight:800;display:flex}.broadcast-create-row{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;display:grid}.broadcast-advanced-link{color:#2f6f67;justify-self:start;align-items:center;gap:6px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.broadcast-command-bar{color:#f6f3e8;background:linear-gradient(110deg,#20312ffa,#284a44f5),#20312f;border:1px solid #ffffff14;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:15px 17px;display:flex;box-shadow:0 16px 36px #1f342f29}.broadcast-class-status,.broadcast-command-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.broadcast-class-status label{color:#c7d6ce}.broadcast-class-status select{color:#fff;background:#ffffff17;border-color:#ffffff29;min-height:36px;padding-block:7px}.broadcast-online,.broadcast-bind-code{color:#c8d4cf;background:#ffffff14;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;display:inline-flex}.broadcast-online.on{color:#bce3cc;background:#68bc9024}.broadcast-bind-code strong{color:#f4c36b;letter-spacing:.08em;font-family:Georgia,serif;font-size:14px}.broadcast-command-actions button,.broadcast-command-actions a{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:7px;min-height:38px;padding:8px 11px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.broadcast-grid{grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr);gap:16px;display:grid}.broadcast-grid>*{min-width:0}.broadcast-section-title{justify-content:space-between;align-items:start;margin-bottom:16px;display:flex}.broadcast-section-title>div{gap:3px;display:grid}.broadcast-section-title span,.broadcast-section-title small{color:#71807b;font-size:12px;font-weight:800}.broadcast-section-title h2{color:#20312d;font-family:STSong,Songti SC,serif;font-size:24px}.broadcast-section-title>svg{color:#b17b31}.broadcast-compose textarea{background:linear-gradient(#fffdf8,#fffdf8) padding-box padding-box,repeating-linear-gradient(0deg,#0000,#0000 28px,#2f6f6714 29px);min-height:142px}.broadcast-templates,.broadcast-rules{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.broadcast-templates button,.broadcast-sync,.broadcast-rules button{color:#4b5b56;cursor:pointer;background:#f7f5ed;border:1px solid #dedfd3;border-radius:999px;padding:7px 10px;font-size:12px}.broadcast-send-row{justify-content:space-between;align-items:end;gap:12px;margin-top:12px;display:flex}.broadcast-send-row select{min-height:38px}.broadcast-sync{color:#2f6f67;border-color:#bdd2c4;align-items:center;gap:7px;margin:0 0 14px;font-weight:800;display:inline-flex}.broadcast-field{margin-bottom:12px}.broadcast-rules{margin:12px 0 0}.broadcast-rules button{border-radius:8px;align-items:center;gap:6px;padding:9px 11px;display:inline-flex}.broadcast-rules button span{font-family:Georgia,serif;font-size:16px;font-weight:800}.broadcast-rules button.positive{color:#2f6f49;background:#eef7f0;border-color:#c7dfce}.broadcast-rules button.negative{color:#9b5243;background:#fff3ef;border-color:#ead2c9}.broadcast-lists{grid-template-columns:repeat(2,minmax(0,1fr))}.broadcast-list{gap:0;display:grid}.broadcast-list article{border-top:1px solid #e7e7dd;gap:4px;padding:11px 0;display:grid}.broadcast-list article:first-child{border-top:0;padding-top:0}.broadcast-list article strong{color:#33433f;overflow-wrap:anywhere;font-size:14px;line-height:1.55}.broadcast-list article small{color:#7a8782;font-size:12px}.positive-text{color:#2f7650}.negative-text{color:#a54d43}.spin{animation:1s linear infinite broadcast-spin}@keyframes broadcast-spin{to{transform:rotate(360deg)}}.seat-grid article[draggable=true]{cursor:grab;-webkit-user-select:none;user-select:none}.seat-grid article[draggable=true]:hover{outline:1.5px dashed #9a6f2e}.seat-grid article.seat-dragging{opacity:.35;outline:2px dashed #9a6f2e}.personal-timetable-grid .is-weekend,.timetable .is-weekend{background:#9a6f2e0d}.personal-timetable-grid th.is-weekend,.timetable th.is-weekend{color:#a3926f}.teacher-day-campaign-backdrop,.release-notices-backdrop{z-index:80;background:#1b272385;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.teacher-day-campaign-modal{box-sizing:border-box;color:#33433f;text-align:center;background:linear-gradient(145deg,#fffdf7,#f9f2e4);border:1px solid #e7cf9e;border-radius:20px;width:min(100%,640px);max-height:min(780px,100vh - 32px);padding:34px;overflow:auto;box-shadow:0 24px 70px #1b272347}.teacher-day-campaign-kicker{color:#9a6f2e;letter-spacing:.12em;font-size:13px;font-weight:700;display:block}.teacher-day-campaign-modal h2{color:#354c44;margin:12px 0 18px;font-size:clamp(24px,4vw,32px)}.teacher-day-campaign-modal p{color:#52615b;text-align:left;white-space:pre-wrap;max-width:33em;margin:0 auto 26px;line-height:1.85}.teacher-day-campaign-modal button{min-width:142px}.release-notices-modal{box-sizing:border-box;color:#33433f;background:linear-gradient(145deg,#fffdf7,#f9f2e4);border:1px solid #e7cf9e;border-radius:20px;width:min(100%,640px);max-height:min(780px,100vh - 32px);padding:34px;overflow:auto;box-shadow:0 24px 70px #1b272347}.release-notices-kicker{color:#9a6f2e;letter-spacing:.12em;font-size:13px;font-weight:700;display:block}.release-notices-modal h2{color:#354c44;margin:12px 0 20px;font-size:clamp(24px,4vw,32px)}.release-notices-list{gap:12px;margin-bottom:26px;display:grid}.release-notices-list article{background:#ffffff94;border:1px solid #9a6f2e33;border-radius:12px;padding:18px}.release-notices-list h3{color:#354c44;margin:0 0 8px;font-size:17px}.release-notices-list p{color:#52615b;white-space:pre-wrap;margin:0;line-height:1.75}@media (width<=520px){.teacher-day-campaign-modal,.release-notices-modal{border-radius:16px;padding:26px 22px}}@media (width<=1080px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:static}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.class-hero,.profile-head{flex-direction:column;align-items:stretch}.operator,.split,.today-layout,.today-bottom,.family-layout,.metric-grid,.admin-metrics,.compact-panel,.join-row,.form-grid,.student-checklist,.evidence-grid,.question-grid,.family-ai-options,.family-ai-results{grid-template-columns:1fr}.student-directory{max-height:none;position:static}.directory-list{grid-template-columns:repeat(3,minmax(0,1fr));max-height:280px}.guardian-editor-row,.cadre-editor{grid-template-columns:1fr 1fr}.seat-grid{grid-template-columns:repeat(var(--seat-cols,6), minmax(82px, 1fr))}.operator{align-items:stretch;display:grid}.desk-hero{flex-direction:column;align-items:stretch;gap:18px}.today-summary{border-top:1px solid #d9ded4;border-left:0;padding:16px 0 0}.personal-timetable-head{flex-direction:column;align-items:stretch;gap:14px}.personal-timetable-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.broadcast-command-bar{flex-direction:column;align-items:stretch}.broadcast-grid,.broadcast-lists{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){nav{gap:6px;margin:0 -12px;padding:0 12px 5px;display:flex;overflow-x:auto}.nav-item{flex:none;gap:7px;min-height:44px;padding:9px 10px}.nav-item span{font-size:13px}.nav-item small,.sidebar-note{display:none}.icon-button,.sidebar-logout{width:44px;height:44px;min-height:44px}.panel-title{gap:8px;display:grid}.panel-title>div,.panel-title h3{min-width:0}.panel-title>span{line-height:1.6}.family-ai-heading,.family-ai-submit{flex-direction:column;align-items:stretch}.family-ai-cost{align-self:flex-start}.family-ai-steps{grid-template-columns:1fr}.family-ai-submit button{justify-content:center;width:100%}.family-ai-results article textarea{min-height:170px}.points-balance-pill{justify-content:space-between;width:100%}.points-modal-backdrop{align-items:flex-end;padding:0}.points-modal{max-height:94vh;padding:18px 15px}.points-package-grid,.points-center-heading{grid-template-columns:1fr}.points-center-heading h2,.points-modal>header h2{font-size:27px}.points-current-balance>strong{font-size:32px}.upload-row{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.file-drop,.upload-row>.secondary,.upload-row>.inline-choice{box-sizing:border-box;justify-content:center;width:100%}.upload-row>.inline-choice{align-items:stretch;display:grid}.mobile-table-hint{display:block}.table-wrap{-webkit-overflow-scrolling:touch}.student-space-toolbar{align-items:stretch;display:grid}.student-space-toolbar button{justify-content:center;width:100%}.desk-hero,.panel,.class-hero,.analysis-block,.student-mode,.empty-state{padding:17px}.todo-form-row{grid-template-columns:1fr}.personal-timetable-panel{padding-left:0;padding-right:0}.personal-timetable-head,.personal-timetable-editor{margin-left:17px;margin-right:17px}.personal-timetable-head{align-items:stretch}.personal-timetable-actions{place-items:stretch stretch;display:grid}.personal-timetable-actions small{text-align:left}.personal-timetable-scroll{border-left:0;border-right:0;border-radius:0}.personal-timetable-fields{grid-template-columns:1fr}.personal-timetable-editor{border-left-width:1px;padding:14px}.personal-timetable-editor-actions{grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.personal-timetable-clear,.personal-timetable-status{grid-column:1/-1}.personal-timetable-status{min-height:16px}.contact-heading,.guardian-grid,.guardian-editor-row,.affair-editor-row,.cadre-editor,.cadre-grid{grid-template-columns:1fr}.directory-list,.tool-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-heading .owner-badge{justify-self:start}.seat-grid{grid-template-columns:repeat(var(--seat-cols,6), minmax(74px, 1fr))}.calendar-grid button{aspect-ratio:auto;min-height:64px;padding:5px 4px}.calendar-date-number{font-size:12px}.calendar-day-todos,.calendar-day-todos-desktop,.calendar-day-todos-mobile{gap:0}.calendar-day-todos-desktop{display:none}.calendar-day-todos-mobile{display:grid}.calendar-todo-chip{padding:1px 3px;font-size:10px}.calendar-todo-overflow--mobile{text-overflow:clip;white-space:nowrap;justify-self:start;inline-size:fit-content;max-inline-size:100%;padding:0;font-size:9px;display:inline-block;overflow:visible}.calendar-preview{display:none}.calendar-selected-agenda{background:#f7f6ee;border:1px solid #e5e1d4;border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.calendar-selected-agenda>div:first-child{gap:3px;display:grid}.calendar-selected-agenda>div:first-child strong{color:#29443e;font-family:STSong,Songti SC,serif;font-size:15px}.calendar-selected-agenda>p{color:#728079;margin:0;font-size:12px;line-height:1.5}.calendar-selected-list{gap:8px;display:grid}.calendar-selected-list article{border-top:1px solid #e3e1d6;padding-top:8px}.calendar-selected-list article>strong{color:#34453f;overflow-wrap:anywhere;font-size:12px;line-height:1.45;display:block}.calendar-selected-list article>strong span{color:#2f6f67;margin-right:5px;font-size:10px}.calendar-selected-list article.completed>strong{color:#7e8782;text-decoration:line-through}.calendar-selected-list article.completed>strong span{color:#8b938d}.calendar-selected-list article p{color:#6f7b75;overflow-wrap:anywhere;margin:3px 0 0;font-size:11px;line-height:1.45}.broadcast-state,.broadcast-onboarding{min-height:280px;padding:24px 18px}.broadcast-state h2,.broadcast-onboarding h2{font-size:25px}.broadcast-create-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.broadcast-create-row .primary,.broadcast-sync{justify-content:center;width:100%}.broadcast-class-status,.broadcast-command-actions,.broadcast-send-row{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.broadcast-class-status label,.broadcast-command-actions button,.broadcast-command-actions a,.broadcast-send-row .primary{justify-content:center;width:100%}.broadcast-online,.broadcast-bind-code{justify-content:center}.broadcast-templates{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.broadcast-templates button{border-radius:8px;min-height:42px}.mini-program-promo,.sidebar-note{display:none}.sidebar{gap:8px;padding:10px 12px}.brand{padding:0 2px 4px}.brand-mark{width:32px;height:32px}.brand strong{font-size:15px}.task-toolbox summary{min-height:38px;padding:8px 10px}.sidebar-user{padding:6px 8px}.workspace{padding:14px 12px 28px}.topbar{gap:10px;margin-bottom:12px}.topbar h1{font-size:24px}.desk-hero{gap:10px;padding:16px}.desk-hero h2{font-size:22px}.desk-hero p,.personal-timetable-head p{display:none}.today-summary strong{font-size:30px}}@media (width>=561px){.desk-hero,.class-hero,.broadcast-console-head{padding:20px 24px}.broadcast-console-head h2{font-size:24px}.desk-hero p,.broadcast-console-head p{color:#6b7a6e;font-size:13px}}.shell,.nav-item span{font-size:17px}.nav-item small,.muted,.eyebrow,.panel-title span,.sidebar-user small,.sidebar-note,.operator label,.field-help,small{font-size:max(14px,.82em);line-height:1.55}button,input,select,textarea{font-size:16px}label{font-size:15px;line-height:1.5}.panel p,.workspace p,.workspace li,.workspace td,.workspace th{line-height:1.7}@media (width<=720px){.shell,.nav-item span,button,input,select,textarea{font-size:16px}small{font-size:max(13px,.82em)}}.session-recovery{z-index:1000;background:#f5f4ef;position:fixed;inset:0;overflow:auto}.session-recovery-note{color:#513c12;text-align:center;background:#fff2d7;margin:0;padding:16px 24px}.task-toolbox{color:inherit;border:1px solid #ffffff30;border-radius:8px;margin:8px 0;padding:12px 14px}.task-toolbox summary{cursor:pointer;font-size:16px}.task-toolbox a{color:inherit;padding:10px 0;text-decoration:none;display:block}.task-toolbox a:hover,.task-toolbox a:focus-visible{text-decoration:underline}.mini-program-promo{color:#f8f4e8;cursor:pointer;text-align:left;background:#f4c36b1f;border:1px solid #f4c36b57;border-radius:10px;align-items:center;gap:11px;width:100%;margin:0;padding:12px 13px;display:flex}.mini-program-promo:hover,.mini-program-promo:focus-visible{background:#f4c36b33;border-color:#f4c36ba3}.mini-program-promo>svg{color:#f4c36b;flex:none}.mini-program-promo span{gap:2px;min-width:0;display:grid}.mini-program-promo small{color:#bac8bf;font-size:12px}.mini-program-promo strong{color:#f4c36b;font-size:16px;line-height:1.25}.mini-program-promo em{color:#dfe9e2;font-size:12px;font-style:normal;line-height:1.45}@media (width<=560px){.mini-program-promo{margin:0;padding:10px 12px}.mini-program-promo em{display:none}}.resume-task{align-self:flex-start;margin-bottom:12px}
