:root{--ink:#243d3a;--muted:#7a8885;--green:#267665;--paper:#f6f8f6;--line:#e4ebe6;--nav:#192f2c}*{box-sizing:border-box}body{margin:0;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.65}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d6a44d;outline-offset:3px}.skip{position:absolute;left:260px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:var(--nav);color:#e7f0eb;padding:30px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#f3f8f4;font-weight:600;font-size:18px;letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:#9db3ac;margin-top:3px}.brand-mark{width:41px;height:45px;border:1px solid #799b85;border-radius:12px 12px 12px 3px;display:grid;place-items:center;color:#b9d7ab;font-size:25px}.workspace-name{font-size:12px;margin:34px 4px 22px;color:#c1d0c9;display:flex;gap:8px;align-items:center}.dot,.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a9c993}.sidebar nav{display:grid;gap:7px}.sidebar nav a{color:#b8cac3;padding:12px 14px;border-radius:8px;font-size:13px;display:flex;gap:14px;align-items:center}.sidebar nav a span{font-size:10px;opacity:.6}.sidebar nav a[aria-current]{background:#365047;color:#f8fffa;box-shadow:inset 3px 0 #b9d694}.sidebar nav a:hover{background:#29413b;text-decoration:none}.sidebar-foot{margin-top:auto;padding:20px 5px 0;font-size:11px;color:#9db4aa}.sidebar-foot strong{font-size:12px;color:#d6e5dc;font-weight:500}.sidebar-foot p{line-height:1.9}.shell{margin-left:238px;min-height:100vh}.topbar{height:72px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff;font-size:12px;gap:12px}.topbar .muted{padding:0 13px}.badge{background:#eff4ef;border:1px solid #dce5d9;border-radius:20px;padding:4px 12px;color:#5d775b;white-space:nowrap}.demo-banner{padding:11px 38px;font-size:11px;background:#f1f0e6;color:#7c7654;display:flex;align-items:center;gap:12px}.demo-banner span{font-weight:600;white-space:nowrap}main{max-width:1530px;padding:35px 38px 20px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 27px;gap:20px}.eyebrow{font-size:11px;letter-spacing:1.3px;color:var(--green);margin-bottom:7px}h1{font-size:29px;font-weight:600;letter-spacing:-.5px;line-height:1.4;margin:0 0 10px}h2{font-size:17px;font-weight:600;margin:0 0 5px}p{margin:0 0 10px}.page-heading p,.section-head p{color:var(--muted);font-size:12px;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:11px 18px;border-radius:7px;border:1px solid transparent;font-weight:500;font-size:12px;white-space:nowrap}.button:hover{text-decoration:none;filter:brightness(.96)}.primary{background:var(--green);color:#fff}.secondary{color:var(--green);background:#fff;border-color:#d5e3d8}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.stat{border:1px solid var(--line);border-radius:11px;padding:21px 25px;background:#fff}.stat>span{font-size:12px;color:#6e817a}.stat strong{display:block;font-size:35px;font-weight:550;line-height:1.65;letter-spacing:-1px}.stat small{font-size:12px;font-weight:400;letter-spacing:0;margin-left:9px;color:var(--muted)}.stat p{font-size:11px;color:var(--muted);margin:0}.panel{border:1px solid var(--line);border-radius:11px;background:white;padding:25px;min-width:0}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(255px,1fr);gap:24px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.section-head>a{font-size:11px;white-space:nowrap}.student-preview{display:grid;grid-template-columns:1fr 1fr;gap:12px}.student-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:14px 12px;color:var(--ink)}.student-card:hover{background:#f8faf7;text-decoration:none}.avatar{width:38px;height:40px;display:inline-grid;place-items:center;background:#e8efeb;border-radius:9px;color:#65897c;font-size:12px;flex-shrink:0}.avatar.rose{color:#a9887f;background:#f5ede8}.student-card strong{display:block;font-size:12px;font-weight:500}.student-card small{display:block;font-size:9px;color:#8a9791;margin-top:3px}.arrow{margin-left:auto;color:#94a79d}.panel-note{font-size:10px;color:#8a978f;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.guide{background:#f0f4eb}.guide ol{padding-left:22px;margin:20px 0 25px}.guide li{padding:0 0 14px 7px;color:var(--green);font-size:12px}.guide li strong,.guide li span{display:block}.guide li strong{font-weight:500;color:var(--ink)}.guide li span{font-size:11px;color:#7a8a7d;margin-top:4px}.guide>p{font-size:12px;color:#718275}.roadmap{margin-top:25px}.tag{display:inline-block;border-radius:5px;background:#eef3ef;color:#587a64;font-size:11px;padding:4px 10px;white-space:nowrap}.roadmap-items{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.roadmap-items>div{border-top:2px solid #e9eee9;padding-top:13px}.roadmap-items>div.current{border-color:#7d9b65}.roadmap-items b{display:block;font-size:10px;color:#8b9a90;margin-bottom:5px}.roadmap-items strong{font-size:12px;display:block;font-weight:500}.roadmap-items small{font-size:10px;color:var(--muted)}footer{max-width:1530px;margin:auto;display:flex;justify-content:space-between;padding:20px 38px 25px;color:#8a968f;font-size:10px}.muted{color:var(--muted)}.filters{display:flex;gap:16px;align-items:end;margin-bottom:22px}.filters>div:first-child{flex:1}.filters>div:nth-child(2){width:210px}label{display:block;font-size:12px;font-weight:500;margin-bottom:7px}input,select,textarea{border:1px solid #d8e3dc;background:white;border-radius:6px;padding:11px 12px;color:var(--ink);width:100%;font-size:12px;min-height:43px}textarea{resize:vertical;font-size:14px}.reset{padding:10px 0;font-size:12px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}th{background:#f5f8f4;font-weight:500;color:#77887d;padding:12px}td{border-bottom:1px solid #edf1ed;padding:12px}tr:last-child td{border-bottom:0}.table-name{display:flex;align-items:center;gap:12px}.avatar.small{width:28px;height:30px;border-radius:6px;font-size:10px}.note-cell{white-space:normal;min-width:150px;max-width:300px;overflow-wrap:anywhere}.empty{text-align:center;padding:45px;color:var(--muted);white-space:normal}.detail-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:25px}.back-link{display:block;font-size:12px;margin-bottom:20px}.edit-panel>p{font-size:12px;margin:10px 0 22px}.form-actions{display:flex;align-items:center;gap:20px;margin-top:18px;font-size:12px}.success{padding:12px;margin:15px 0;background:#eef6ed;color:#396741;border:1px solid #c8dfc6;border-radius:6px;font-size:12px}.errorlist{color:#9f3935;font-size:12px;background:#fff1ed;padding:12px 25px;border-radius:6px}.info-row{display:flex;justify-content:space-between;font-size:12px;gap:15px;border-bottom:1px solid #dce5d7;padding:13px 0}.info-row span{color:#748470}.info-row strong{font-weight:500}.hint{margin-top:20px}.coming{text-align:center;padding:65px 25px}.coming-symbol{display:inline-grid;place-items:center;background:#eef3ea;color:#7f9774;font-size:25px;width:70px;height:70px;border-radius:18px;margin-bottom:25px}.coming p{color:var(--muted);margin:13px 0 25px;font-size:13px}@media(min-width:1500px){main{padding-top:45px}.student-card{padding:20px}.stats{margin-bottom:30px}.stat{padding:25px}}@media(max-width:1100px){.sidebar{width:205px;padding:26px 14px}.shell{margin-left:205px}main{padding:28px 24px}.topbar,.demo-banner{padding-left:24px;padding-right:24px}.dashboard-grid{grid-template-columns:1fr}.guide ol{display:flex;gap:20px}.guide li{flex:1}.detail-grid{grid-template-columns:1fr}.page-heading h1{font-size:25px}}@media(max-width:700px){.sidebar{position:static;width:auto;padding:15px 18px}.brand{font-size:16px}.brand-mark{height:34px;width:34px;font-size:20px}.brand small{font-size:7px}.workspace-name,.sidebar-foot{display:none}.sidebar nav{display:flex;overflow:auto;margin:15px -5px -3px;gap:4px;padding-bottom:4px}.sidebar nav a{padding:8px 12px;white-space:nowrap;font-size:12px}.sidebar nav a span{display:none}.shell{margin:0}.topbar{height:53px;padding:0 18px;font-size:10px}.demo-banner{padding:10px 18px;font-size:10px;align-items:flex-start}main{padding:25px 18px 10px}.page-heading{display:block;margin-bottom:20px}.page-heading h1{font-size:24px}.page-heading>.button,.page-heading>.tag{margin-top:17px}.stats{gap:9px;margin-bottom:18px}.stat{padding:13px 10px;border-radius:8px}.stat>span{font-size:10px}.stat strong{font-size:28px}.stat small{font-size:9px;margin-left:4px}.stat p{font-size:9px}.dashboard-grid{gap:18px}.panel{padding:18px}.student-preview{grid-template-columns:1fr}.student-card{padding:12px}.guide ol{display:block}.guide li{padding-bottom:15px}.roadmap{margin-top:18px}.roadmap-items{grid-template-columns:1fr 1fr}.section-head{gap:12px}.section-head p{font-size:10px}.filters{flex-wrap:wrap;gap:12px}.filters>div:first-child{flex-basis:100%}.filters>div:nth-child(2){width:auto;flex:1}.filters .button{padding:10px 14px}.reset{padding-right:6px}.form-actions{align-items:flex-start;flex-direction:column;gap:13px}.coming{padding:45px 18px}footer{padding:20px 18px;font-size:9px}.skip{left:10px}.detail-grid{gap:18px}}
