:root{--t-bg:#06112b;--t-bg2:#081632;--t-surface:#0b1935;--t-surface2:#101f40;--t-surface3:#15264a;--t-text:#f5f8ff;--t-muted:#9ba9c5;--t-dim:#6f7e9d;--t-border:#7ca1dc29;--t-border2:#3291ff57;--t-blue:#3197ff;--t-cyan:#2dd8ff;--t-purple:#8065ff;--t-green:#38d39f;--t-orange:#ff9c4a;--t-red:#f36a87;--t-shadow:0 18px 55px #0000003d}html[data-theme=light]{--t-bg:#eef4fc;--t-bg2:#e7eef8;--t-surface:#fff;--t-surface2:#f5f8fd;--t-surface3:#eaf0f8;--t-text:#17243a;--t-muted:#5c6d84;--t-dim:#7a8aa1;--t-border:#2b497026;--t-border2:#236fc24d;--t-shadow:0 16px 40px #27487317}*{box-sizing:border-box}.teacher-body{background:var(--t-bg);color:var(--t-text);margin:0;font-family:Inter,system-ui,sans-serif}.teacher-shell{background:var(--t-bg);min-height:100vh}.teacher-sidebar{z-index:50;background:var(--t-surface);border-right:1px solid var(--t-border);flex-direction:column;width:250px;padding:20px 14px;display:flex;position:fixed;inset:0 auto 0 0}.teacher-brand{justify-content:space-between;align-items:center;padding:2px 8px 22px;display:flex}.teacher-brand>a{color:var(--t-text);align-items:center;gap:10px;text-decoration:none;display:flex}.teacher-brand img{object-fit:contain;filter:drop-shadow(0 0 12px #3197ff4d);width:38px;height:38px}.teacher-brand span{letter-spacing:-.5px;font:700 18px Poppins,sans-serif}.teacher-brand span span{color:var(--t-blue)}.teacher-brand small{color:var(--t-muted);letter-spacing:.7px;margin-top:2px;font:500 9px Inter;display:block}.teacher-brand button{color:var(--t-muted);background:0 0;border:0;font-size:24px;display:none}.teacher-nav-label,.teacher-eyebrow{letter-spacing:1.6px;color:var(--t-blue);text-transform:uppercase;font-size:9px;font-weight:800}.teacher-sidebar nav{flex-direction:column;gap:5px;display:flex}.teacher-nav-link{color:var(--t-muted);border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.teacher-nav-link i{text-align:center;width:24px;font-size:17px;font-style:normal}.teacher-nav-link:hover{color:var(--t-text);border-color:var(--t-border);background:#3197ff12}.teacher-nav-link.active{color:#fff;box-shadow:inset 3px 0 0 var(--t-blue);background:#3197ff29;border-color:#3197ff59}html[data-theme=light] .teacher-nav-link.active{color:#17345c}.teacher-side-bottom{border-top:1px solid var(--t-border);gap:4px;margin-top:auto;padding-top:12px;display:grid}.teacher-topbar{z-index:40;background:color-mix(in srgb, var(--t-bg) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--t-border);justify-content:space-between;align-items:center;height:78px;padding:0 32px;display:flex;position:fixed;top:0;left:250px;right:0}.teacher-top-left{align-items:center;gap:16px;display:flex}.teacher-top-left h1{color:var(--t-text);margin:3px 0 0;font:700 17px Poppins}.teacher-menu{display:none}.teacher-top-actions{align-items:center;gap:14px;display:flex}.teacher-notify-wrap{position:relative}.teacher-icon-btn{border:1px solid var(--t-border);background:var(--t-surface);width:42px;height:42px;color:var(--t-text);cursor:pointer;border-radius:12px;font-size:16px;position:relative}.teacher-icon-btn:hover{border-color:var(--t-border2);box-shadow:none}.teacher-icon-btn b{background:var(--t-red);color:#fff;border:2px solid var(--t-bg);border-radius:99px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:9px;display:grid;position:absolute;top:-4px;right:-3px}.teacher-notify-panel{background:var(--t-surface);border:1px solid var(--t-border2);width:370px;box-shadow:var(--t-shadow);border-radius:15px;position:absolute;top:51px;right:0;overflow:hidden}.teacher-notify-head{border-bottom:1px solid var(--t-border);background:var(--t-surface2);justify-content:space-between;gap:12px;padding:15px;display:flex}.teacher-notify-head strong{font-size:12px;display:block}.teacher-notify-head small{color:var(--t-muted);margin-top:3px;font-size:9px;display:block}.teacher-notify-head button{color:var(--t-blue);cursor:pointer;background:0 0;border:0;font-size:9px}.teacher-notice{color:var(--t-text);border-bottom:1px solid var(--t-border);gap:10px;padding:13px 15px;text-decoration:none;display:flex}.teacher-notice:hover,.teacher-notice.unread{background:#3197ff12}.teacher-notice>span{color:var(--t-blue);font-size:22px;line-height:1}.teacher-notice strong,.teacher-notice small,.teacher-notice time{display:block}.teacher-notice strong{font-size:11px}.teacher-notice small{color:var(--t-muted);margin-top:3px;font-size:9px;line-height:1.4}.teacher-notice time{color:var(--t-dim);margin-top:4px;font-size:8px}.teacher-notify-empty{text-align:center;color:var(--t-green);gap:5px;padding:35px;display:grid}.teacher-notify-empty strong{color:var(--t-text);font-size:12px}.teacher-notify-empty small{color:var(--t-muted);font-size:9px}.teacher-user{color:var(--t-text);align-items:center;gap:9px;text-decoration:none;display:flex}.teacher-user>span,.teacher-user>img{background:var(--t-surface2);border:1px solid var(--t-border2);object-fit:cover;border-radius:12px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.teacher-user strong,.teacher-user small{display:block}.teacher-user small{color:var(--t-muted);margin-top:2px;font-size:9px}.teacher-main{max-width:1600px;margin-left:250px;padding:106px 32px 38px}.teacher-page-hero{border:1px solid var(--t-border2);background:var(--t-surface);box-shadow:none;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:25px 28px;display:flex}.teacher-page-hero.compact{padding:20px 24px}.teacher-page-hero h2{color:var(--t-text);margin:6px 0;font:700 25px Poppins}.teacher-page-hero p{color:var(--t-muted);max-width:760px;margin:0;font-size:11px;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:8px;display:flex}.hero-inline-badge{color:var(--t-blue);border:1px solid var(--t-border2);vertical-align:middle;border-radius:7px;padding:5px 8px;font:600 10px Inter}.teacher-btn{border:1px solid var(--t-border2);background:var(--t-surface2);min-height:37px;color:var(--t-text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:10px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.teacher-btn:hover{border-color:var(--t-blue);transform:translateY(-1px)}.teacher-btn.primary{color:#fff;background:#245fc2;border-color:#0000}.teacher-btn.danger,.table-danger{color:var(--t-red)}.teacher-btn.small{min-height:30px;padding:0 10px;font-size:9px}.teacher-metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.teacher-metric{border:1px solid var(--t-border);background:var(--t-surface);box-shadow:none;border-radius:14px;align-items:center;gap:12px;padding:17px;display:flex}.teacher-metric>span{width:38px;height:38px;color:var(--t-blue);background:#3197ff1a;border-radius:11px;place-items:center;font-size:18px;display:grid}.teacher-metric.warning>span{color:var(--t-red);background:#f36a871a}.teacher-metric small,.teacher-metric em{color:var(--t-muted);font-size:9px;font-style:normal;display:block}.teacher-metric strong{margin:2px 0;font-size:21px;display:block}.teacher-metric em{color:var(--t-dim);font-size:8px}.teacher-grid{gap:18px;margin-bottom:18px;display:grid}.teacher-card{border:1px solid var(--t-border);background:var(--t-surface);min-width:0;box-shadow:none;border-radius:15px;padding:20px}.teacher-card-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px;display:flex}.teacher-card-head h3{margin:5px 0 0;font:700 15px Poppins}.teacher-card-head>a{color:var(--t-blue);font-size:9px;text-decoration:none}.teacher-note{color:var(--t-muted);font-size:9px;line-height:1.5}.teacher-empty{text-align:center;color:var(--t-muted);padding:30px 18px;font-size:10px}.teacher-empty.success{color:var(--t-green)}.class-progress-row{border-bottom:1px solid var(--t-border);color:var(--t-text);grid-template-columns:1.4fr 1fr auto auto;align-items:center;gap:12px;padding:12px 0;text-decoration:none;display:grid}.class-progress-row:last-child{border-bottom:0}.class-progress-row strong,.class-progress-row small{display:block}.class-progress-row strong{font-size:10px}.class-progress-row small{color:var(--t-muted);margin-top:3px;font-size:8px}.class-progress-row b{font-size:10px}.class-progress-row em{color:var(--t-dim);font-size:8px;font-style:normal}.class-progress-meter,.table-progress{background:var(--t-surface3);border-radius:99px;height:7px;overflow:hidden}.class-progress-meter span,.table-progress span{border-radius:inherit;background:var(--t-blue);height:100%;display:block}.teacher-bars{align-items:end;gap:12px;height:190px;padding:20px 5px 0;display:flex}.teacher-bars>div{flex-direction:column;flex:1;justify-content:end;align-items:center;height:100%;display:flex;position:relative}.teacher-bars span{background:var(--t-blue);border-radius:7px 7px 2px 2px;width:60%;max-width:34px;min-height:4px}.teacher-bars small{color:var(--t-muted);margin-top:7px;font-size:8px}.teacher-bars b{color:var(--t-dim);font-size:8px;position:absolute;top:0}.attention-row{border-bottom:1px solid var(--t-border);color:var(--t-text);grid-template-columns:34px 1fr auto auto;align-items:center;gap:10px;padding:10px 0;text-decoration:none;display:grid}.attention-row:last-child{border-bottom:0}.attention-row strong,.attention-row small{display:block}.attention-row strong{font-size:10px}.attention-row small{color:var(--t-muted);margin-top:2px;font-size:8px}.teacher-avatar{background:var(--t-surface3);border:1px solid var(--t-border2);border-radius:10px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.teacher-avatar.xl{border-radius:18px;width:72px;height:72px;font-size:35px}.status-badge{border:1px solid var(--t-border);white-space:nowrap;border-radius:99px;align-items:center;padding:4px 7px;font-size:8px;font-weight:700;display:inline-flex}.status-badge.on,.status-badge.active,.status-badge.completed{color:var(--t-green);background:#38d39f1a;border-color:#38d39f33}.status-badge.needs,.status-badge.needs-attention,.status-badge.overdue{color:var(--t-red);background:#f36a871a;border-color:#f36a8733}.status-badge.recently-active,.status-badge.on-track{color:var(--t-blue);background:#3197ff1a}.status-badge.muted,.status-badge.inactive,.status-badge.assigned{color:var(--t-muted);background:#7d8da614}.teacher-activity-feed>div{border-bottom:1px solid var(--t-border);gap:9px;padding:9px 0;display:flex}.teacher-activity-feed>div:last-child{border-bottom:0}.teacher-activity-feed>div>span{color:var(--t-blue)}.teacher-activity-feed p{margin:0;font-size:9px;line-height:1.5}.teacher-activity-feed strong{font-size:10px}.teacher-activity-feed small{color:var(--t-muted);font-size:8px;display:block}.teacher-form{gap:13px;display:grid}.teacher-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.teacher-form label,.teacher-filterbar label,.teacher-upload-form label{color:var(--t-muted);gap:6px;font-size:9px;font-weight:700;display:grid}.teacher-form label.full{grid-column:1/-1}.teacher-form input,.teacher-form select,.teacher-form textarea,.teacher-filterbar input,.teacher-filterbar select,.teacher-upload-form input[type=file]{border:1px solid var(--t-border);background:var(--t-surface2);width:100%;min-width:0;color:var(--t-text);border-radius:9px;outline:0;padding:10px 11px;font:500 10px Inter}.teacher-form textarea{resize:vertical;min-height:80px}.teacher-form input:focus,.teacher-form select:focus,.teacher-form textarea:focus,.teacher-filterbar input:focus,.teacher-filterbar select:focus{border-color:var(--t-blue);box-shadow:0 0 0 3px #3197ff17}.teacher-class-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.teacher-class-card{border:1px solid var(--t-border);background:var(--t-surface2);border-radius:13px;min-width:0;padding:16px}.teacher-class-card.archived{opacity:.65}.class-card-top{justify-content:space-between;align-items:center;display:flex}.class-icon{width:34px;height:34px;color:var(--t-blue);background:#3197ff1a;border-radius:10px;place-items:center;display:grid}.teacher-class-card h3{margin:14px 0 3px;font:700 14px Poppins}.teacher-class-card p{color:var(--t-muted);margin:0;font-size:9px}.class-card-meta{color:var(--t-dim);justify-content:space-between;gap:5px;margin:14px 0;font-size:8px;display:flex}.class-card-actions{flex-wrap:wrap;gap:6px;display:flex}.class-card-actions form{display:contents}.teacher-table-wrap{width:100%;overflow:auto}.teacher-table{border-collapse:collapse;width:100%;min-width:780px}.teacher-table th{text-align:left;background:var(--t-surface2);color:var(--t-muted);text-transform:uppercase;letter-spacing:.8px;padding:10px 8px;font-size:8px}.teacher-table td{border-bottom:1px solid var(--t-border);vertical-align:middle;padding:10px 8px;font-size:9px}.teacher-table tr:last-child td{border-bottom:0}.table-person{align-items:center;gap:8px;display:flex}.table-person strong,.table-person small{display:block}.table-person strong{font-size:9px}.table-person small{color:var(--t-muted);margin-top:2px;font-size:7px}.table-progress{vertical-align:middle;width:80px;margin-right:5px;display:inline-block}.table-link{color:var(--t-blue);font-weight:700;text-decoration:none}.table-danger{cursor:pointer;background:0 0;border:0;font-size:8px}.teacher-filterbar{flex-wrap:wrap;align-items:end;gap:9px;margin-bottom:16px;display:flex}.teacher-filterbar label{min-width:180px}.teacher-filterbar .teacher-btn{align-self:end}.teacher-class-card a,.assignment-row a{color:var(--t-blue)}.assignment-row{border-bottom:1px solid var(--t-border);justify-content:space-between;gap:10px;padding:11px 0;display:flex}.assignment-row:last-child{border-bottom:0}.assignment-row strong,.assignment-row small{display:block}.assignment-row strong{font-size:10px}.assignment-row small{color:var(--t-muted);margin-top:3px;font-size:8px}.teacher-prose{color:var(--t-muted);font-size:10px;line-height:1.7}.student-hero{border:1px solid var(--t-border2);background:var(--t-surface);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:22px;display:flex}.student-profile-large{align-items:center;gap:16px;display:flex}.student-profile-large h2{margin:5px 0 4px;font:700 22px Poppins}.student-profile-large p{color:var(--t-muted);margin:0;font-size:9px}.student-class-tags{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.student-class-tags span{border:1px solid var(--t-border);color:var(--t-muted);border-radius:6px;padding:5px 7px;font-size:8px}.student-hero-metrics{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.student-hero-metrics div{background:var(--t-surface2);border:1px solid var(--t-border);text-align:center;border-radius:10px;min-width:70px;padding:10px}.student-hero-metrics small,.student-hero-metrics strong{display:block}.student-hero-metrics small{color:var(--t-muted);font-size:8px}.student-hero-metrics strong{margin-top:3px;font-size:15px}.detail-stat-list{gap:10px;display:grid}.detail-stat-list div{border-bottom:1px solid var(--t-border);justify-content:space-between;gap:8px;padding-bottom:9px;display:flex}.detail-stat-list span{color:var(--t-muted);font-size:9px}.detail-stat-list b{font-size:9px}.achievement-list{gap:8px;display:grid}.achievement-list>div{border:1px solid var(--t-border);background:var(--t-surface2);border-radius:9px;gap:8px;padding:8px;display:flex}.achievement-list>div>span{font-size:19px}.achievement-list p{margin:0}.achievement-list strong,.achievement-list small{display:block}.achievement-list strong{font-size:9px}.achievement-list small{color:var(--t-muted);margin-top:2px;font-size:7px}.timeline{padding-left:20px;position:relative}.timeline:before{content:"";background:var(--t-border2);width:1px;position:absolute;top:5px;bottom:5px;left:5px}.timeline-item{padding:0 0 17px;position:relative}.timeline-item>span{background:var(--t-blue);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-19px;box-shadow:0 0 0 4px #3197ff1a}.timeline-item time{color:var(--t-dim);font-size:8px}.timeline-item strong{margin-top:4px;font-size:10px;display:block}.timeline-item p{color:var(--t-muted);margin:3px 0;font-size:9px}.timeline-item small{color:var(--t-dim);font-size:8px}.teacher-back{margin-bottom:10px}.teacher-back a{color:var(--t-blue);font-size:9px;text-decoration:none}.teacher-lesson-grid{gap:12px;display:grid}.teacher-lesson-card{border:1px solid var(--t-border);background:var(--t-surface2);border-radius:12px;grid-template-columns:42px 1fr;gap:14px;padding:15px;display:grid}.lesson-number{width:42px;height:42px;color:var(--t-blue);background:#3197ff1a;border-radius:11px;place-items:center;font-weight:800;display:grid}.teacher-lesson-card h3{margin:4px 0;font:700 13px Poppins}.teacher-lesson-card p{color:var(--t-muted);margin:0;font-size:9px;line-height:1.5}.teacher-lesson-card small{color:var(--t-dim);margin:8px 0;font-size:8px;display:block}.teacher-lesson-card>div>div{gap:6px;display:flex}.announcement-row{border-bottom:1px solid var(--t-border);justify-content:space-between;gap:10px;padding:13px 0;display:flex}.announcement-row:last-child{border-bottom:0}.announcement-row h4{margin:8px 0 5px;font:700 12px Poppins}.announcement-row p{color:var(--t-muted);margin:0;font-size:9px;line-height:1.5}.announcement-row time{color:var(--t-dim);margin-top:7px;font-size:8px;display:block}.announcement-row small{color:var(--t-muted);margin-left:6px;font-size:8px}.report-tabs{flex-wrap:wrap;gap:5px;margin-bottom:15px;display:flex}.report-tabs a{background:var(--t-surface2);border:1px solid var(--t-border);color:var(--t-muted);border-radius:7px;padding:7px 9px;font-size:8px;text-decoration:none}.report-tabs a.active{color:var(--t-blue);border-color:var(--t-border2);background:#3197ff1a}.report-dot{background:var(--t-blue);border-radius:50%;width:7px;height:7px;display:block}.teacher-profile-grid{grid-template-columns:1.3fr 1fr;gap:18px;display:grid}.teacher-profile-cover{background:var(--t-surface2);border:1px solid var(--t-border);border-radius:13px;align-items:center;gap:16px;padding:18px;display:flex}.teacher-profile-avatar{border:1px solid var(--t-border2);background:var(--t-surface3);border-radius:20px;place-items:center;width:82px;height:82px;font-size:40px;display:grid;overflow:hidden}.teacher-profile-avatar img{object-fit:cover;width:100%;height:100%}.teacher-profile-cover h2{margin:5px 0 3px;font:700 20px Poppins}.teacher-profile-cover p{color:var(--t-muted);margin:0;font-size:9px}.teacher-mini-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.teacher-mini-stats div{text-align:center;border:1px solid var(--t-border);background:var(--t-surface2);border-radius:9px;padding:10px}.teacher-mini-stats strong,.teacher-mini-stats span{display:block}.teacher-mini-stats strong{font-size:15px}.teacher-mini-stats span{color:var(--t-muted);margin-top:2px;font-size:8px}.teacher-avatar-options{flex-wrap:wrap;gap:8px;display:flex}.teacher-avatar-options form{margin:0}.teacher-avatar-choice{border:1px solid var(--t-border);background:var(--t-surface2);cursor:pointer;color:var(--t-text);border-radius:10px;place-items:center;gap:4px;padding:8px;display:grid}.teacher-avatar-choice.selected{border-color:var(--t-blue);box-shadow:0 0 0 2px #3197ff1f}.teacher-avatar-choice span{font-size:24px}.teacher-avatar-choice small{color:var(--t-muted);font-size:7px}.teacher-upload-form{border-top:1px solid var(--t-border);gap:8px;margin-top:14px;padding-top:14px;display:grid}.teacher-upload-form small{color:var(--t-muted);font-size:8px}.teacher-theme-switch{grid-template-columns:1fr 1fr;gap:8px;display:grid}.teacher-theme-switch form{display:contents}.teacher-theme-switch button{text-align:left;border:1px solid var(--t-border);background:var(--t-surface2);color:var(--t-text);cursor:pointer;border-radius:11px;padding:14px}.teacher-theme-switch button.active{border-color:var(--t-blue);background:#3197ff14}.teacher-theme-switch strong,.teacher-theme-switch small{display:block}.teacher-theme-switch strong{margin-top:5px;font-size:10px}.teacher-theme-switch small{color:var(--t-muted);margin-top:2px;font-size:8px}.logout-card{justify-content:space-between;align-items:center;gap:15px;display:flex}.teacher-alert{border:1px solid var(--t-border);border-radius:10px;margin-bottom:15px;padding:11px 13px;font-size:9px}.teacher-alert.error{color:var(--t-red);background:#f36a8714;border-color:#f36a8733}.teacher-alert.success{color:var(--t-green);background:#38d39f14;border-color:#38d39f33}.teacher-form-actions{justify-content:flex-end;gap:8px;margin-top:15px;display:flex}.teacher-toast{z-index:100;background:var(--t-surface);border:1px solid var(--t-border2);box-shadow:var(--t-shadow);border-radius:9px;padding:11px 14px;font-size:9px;display:none;position:fixed;bottom:20px;right:20px}.teacher-login{background:var(--t-bg);min-height:100vh;color:var(--t-text);grid-template-columns:1.1fr .9fr;font-family:Inter;display:grid}.teacher-login-visual{background:#081632;flex-direction:column;justify-content:space-between;padding:70px;display:flex}.teacher-login-brand{align-items:center;gap:12px;font:700 20px Poppins;display:flex}.teacher-login-brand img{width:46px}.teacher-login-brand span{color:var(--t-blue)}.teacher-login-visual h1{margin:12px 0;font:800 50px/1.08 Poppins}.teacher-login-visual h1 span{color:var(--t-blue)}.teacher-login-visual p{color:#9ba9c5;max-width:540px;font-size:13px;line-height:1.7}.teacher-login-panel{place-items:center;padding:35px;display:grid}.teacher-login-card{border:1px solid var(--t-border);background:var(--t-surface);width:min(430px,100%);box-shadow:var(--t-shadow);border-radius:18px;gap:13px;padding:34px;display:grid}.teacher-login-card h2{margin:0;font:700 25px Poppins}.teacher-login-card p{color:var(--t-muted);margin:-6px 0 6px;font-size:10px}.teacher-login-card label{color:var(--t-muted);gap:6px;font-size:9px;display:grid}.teacher-login-card input{border:1px solid var(--t-border);background:var(--t-surface2);width:100%;color:var(--t-text);border-radius:9px;outline:0;padding:12px}.teacher-login-help{color:var(--t-dim);text-align:center;font-size:8px}.teacher-eyebrow{color:var(--t-blue)}@media (max-width:1100px){.teacher-sidebar{width:220px}.teacher-topbar{left:220px}.teacher-main{margin-left:220px}.teacher-class-grid{grid-template-columns:repeat(2,1fr)}.teacher-profile-grid{grid-template-columns:1fr}.teacher-profile-card{grid-row:auto}.teacher-grid.two{grid-template-columns:1fr}}@media (max-width:850px){.teacher-sidebar{transition:all .25s;transform:translate(-100%)}.teacher-sidebar.open{transform:none;box-shadow:20px 0 60px #0000004d}.teacher-brand button{display:block}.teacher-topbar{padding:0 16px;left:0}.teacher-menu{border:1px solid var(--t-border);background:var(--t-surface);width:38px;height:38px;color:var(--t-text);border-radius:9px;display:block}.teacher-main{margin-left:0;padding:98px 16px 30px}.teacher-metric-grid{grid-template-columns:repeat(2,1fr)}.student-hero{flex-direction:column;align-items:flex-start}.student-hero-metrics{width:100%}.teacher-notify-panel{right:-90px}}@media (max-width:620px){.teacher-user div,.teacher-user>svg{display:none}.teacher-page-hero{flex-direction:column;align-items:flex-start}.teacher-page-hero h2{font-size:21px}.teacher-metric-grid,.teacher-grid.three,.teacher-form-grid{grid-template-columns:1fr}.teacher-form label.full{grid-column:auto}.teacher-class-grid{grid-template-columns:1fr}.class-progress-row{grid-template-columns:1fr auto}.class-progress-meter{grid-column:1/-1}.class-progress-row em{display:none}.teacher-profile-cover{flex-direction:column;align-items:flex-start}.teacher-theme-switch{grid-template-columns:1fr}.teacher-notify-panel{width:auto;position:fixed;top:68px;left:10px;right:10px}.student-hero-metrics{grid-template-columns:repeat(2,1fr)}.teacher-login{grid-template-columns:1fr}.teacher-login-visual{min-height:35vh;padding:30px}.teacher-login-visual h1{font-size:32px}.teacher-login-panel{padding:18px}.teacher-login-visual p{font-size:10px}.teacher-user{gap:0}.teacher-top-actions{gap:7px}.teacher-top-left h1{font-size:14px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.pagination{justify-content:flex-end;gap:5px;margin-top:15px;display:flex}.pagination a{border:1px solid var(--t-border);min-width:28px;height:28px;color:var(--t-muted);background:var(--t-surface2);border-radius:7px;place-items:center;font-size:8px;text-decoration:none;display:grid}.pagination a.active{color:#fff;background:var(--t-blue);border-color:var(--t-blue)}html[data-theme=light] .pagination a.active{color:#fff}:root{--t-radius-sm:10px;--t-radius-md:14px;--t-radius-lg:20px;--t-content-max:1500px;--t-focus:0 0 0 3px #3197ff2e}html{background:var(--t-bg);color:var(--t-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body.teacher-body{min-width:0;line-height:1.5;overflow-x:hidden}.teacher-shell{isolation:isolate;min-height:100svh}.teacher-sidebar{scrollbar-width:thin;overflow:hidden auto}.teacher-sidebar nav{min-width:0}.teacher-nav-link{white-space:nowrap;min-width:0}.teacher-nav-link i{flex:0 0 24px}.teacher-nav-link:not(.active):focus-visible,.teacher-btn:focus-visible,.teacher-icon-btn:focus-visible,.teacher-user:focus-visible,.teacher-menu:focus-visible,.teacher-avatar-choice:focus-visible,.teacher-theme-switch button:focus-visible{box-shadow:var(--t-focus);outline:none}.teacher-topbar,.teacher-top-left,.teacher-top-left>div{min-width:0}.teacher-top-left h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-top-actions{flex:none}.teacher-user{min-width:0;max-width:230px}.teacher-user>div{min-width:0}.teacher-user strong,.teacher-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-main{width:100%;min-width:0;max-width:1600px}.teacher-main>*,.teacher-page-hero,.teacher-card,.teacher-metric,.teacher-page-hero>*,.teacher-card>*{min-width:0}.teacher-page-hero h2,.teacher-card h3,.teacher-card h4,.teacher-page-hero p,.teacher-note,.teacher-empty{overflow-wrap:anywhere}.teacher-grid,.teacher-grid.two,.teacher-grid.three,.teacher-profile-grid,.teacher-metric-grid,.teacher-class-grid,.teacher-content-grid{align-items:stretch}.teacher-card{height:100%;overflow:hidden}.teacher-table-wrap{-webkit-overflow-scrolling:touch;border-radius:10px;width:100%;overflow-x:auto}.teacher-table{border-collapse:separate;border-spacing:0;width:100%;min-width:640px}.teacher-table th,.teacher-table td{vertical-align:middle;white-space:normal;overflow-wrap:anywhere}.teacher-table th{z-index:1;background:var(--t-surface2);position:sticky;top:0}.teacher-form label,.teacher-login-card label,.teacher-upload-form label{min-width:0}.teacher-form input,.teacher-form select,.teacher-form textarea,.teacher-login-card input,.teacher-upload-form input,.teacher-form-actions input{min-width:0;max-width:100%;font:inherit}.teacher-form textarea{resize:vertical}.teacher-btn{white-space:nowrap;-webkit-user-select:none;user-select:none}.teacher-form-actions{flex-wrap:wrap}.teacher-form-actions form{margin:0}.teacher-notify-panel{z-index:120;max-height:min(70vh,620px);overflow:auto}.teacher-notice,.teacher-notice>div{min-width:0}.teacher-notice small,.teacher-notice strong{overflow-wrap:anywhere}.teacher-profile-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,1fr)}.teacher-profile-card{grid-row:span 2}.teacher-profile-cover,.teacher-profile-cover>div:last-child{min-width:0}.teacher-profile-cover p{overflow-wrap:anywhere}.teacher-profile-avatar{flex:0 0 82px}.teacher-avatar-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.teacher-avatar-options form{min-width:0}.teacher-avatar-choice{width:100%;min-height:82px}.teacher-upload-form{min-width:0}.teacher-upload-form input[type=file]{border:1px dashed var(--t-border2);background:var(--t-surface2);width:100%;color:var(--t-text);border-radius:10px;padding:10px;font-size:9px}.teacher-theme-switch button{min-height:82px;transition:all .2s}.teacher-theme-switch button:hover{border-color:var(--t-border2);transform:translateY(-1px)}.teacher-alert{overflow-wrap:anywhere}.pagination{flex-wrap:wrap}html[data-theme=light] .teacher-shell{background:var(--t-bg)}html[data-theme=light] .teacher-sidebar{box-shadow:8px 0 30px #28466e0d}html[data-theme=light] .teacher-topbar{background:#eef4fceb}html[data-theme=light] .teacher-card,html[data-theme=light] .teacher-metric,html[data-theme=light] .teacher-page-hero{box-shadow:none}html[data-theme=light] .teacher-login-visual{color:#17243a;background:#e8f1fc}html[data-theme=light] .teacher-login-visual p{color:#526680}html[data-theme=light] .teacher-login-card{box-shadow:0 18px 45px #2748731f}html[data-theme=light] .teacher-notify-panel{box-shadow:0 18px 45px #27487324}html[data-theme=light] .teacher-icon-btn b{border-color:var(--t-bg)}.teacher-login{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-width:0;min-height:100svh;overflow:hidden}.teacher-login-visual{min-width:0;min-height:100svh;padding:clamp(32px,6vw,78px);position:relative;overflow:hidden}.teacher-login-visual:after{content:"";pointer-events:none;background:0 0;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-180px;right:-160px}.teacher-login-brand,.teacher-login-visual>div:last-child{z-index:1;position:relative}.teacher-login-visual h1{letter-spacing:-1.5px;max-width:720px;font-size:clamp(34px,4vw,58px)}.teacher-login-visual p{max-width:580px;font-size:clamp(12px,1.1vw,14px)}.teacher-login-panel{background:var(--t-bg2);min-width:0;min-height:100svh;padding:clamp(20px,5vw,56px)}.teacher-login-card{gap:15px;width:min(460px,100%);padding:clamp(24px,4vw,38px)}.teacher-login-card h2{letter-spacing:-.5px;font-size:clamp(25px,3vw,31px)}.teacher-login-card label{font-size:10px;font-weight:700}.teacher-login-card .teacher-btn{min-height:48px;font-size:11px}.teacher-login-help{font-size:9px;line-height:1.5}.teacher-bars{min-width:0;overflow:hidden}.teacher-bars>div,.attention-row,.attention-row>div{min-width:0}.attention-row strong,.attention-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-activity-feed,.teacher-activity-feed>div{min-width:0}.teacher-activity-feed p{overflow-wrap:anywhere}@media (max-width:1200px){.teacher-main{padding-left:24px;padding-right:24px}.teacher-profile-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}.teacher-login{grid-template-columns:minmax(0,1fr) minmax(390px,.78fr)}}@media (max-width:1024px){.teacher-sidebar{width:230px}.teacher-topbar{left:230px}.teacher-main{margin-left:230px}.teacher-profile-grid{grid-template-columns:1fr}.teacher-profile-card{grid-row:auto}.teacher-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-login{grid-template-columns:1fr .8fr}.teacher-login-visual{padding:44px}}@media (max-width:850px){.teacher-sidebar{width:min(300px,88vw);box-shadow:none;transform:translate(-105%)}.teacher-sidebar.open{transform:translate(0);box-shadow:20px 0 60px #00000040}.teacher-topbar{height:72px;padding:0 18px;left:0}.teacher-main{margin-left:0;padding:94px 18px 30px}.teacher-top-left{gap:10px}.teacher-top-left>div>span{font-size:8px}.teacher-menu{border:1px solid var(--t-border);background:var(--t-surface);width:40px;height:40px;color:var(--t-text);cursor:pointer;border-radius:11px;flex:0 0 40px;place-items:center;display:grid!important}.teacher-profile-grid,.teacher-grid.two,.teacher-grid.three{grid-template-columns:1fr}.teacher-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-login{grid-template-columns:1fr;overflow:auto}.teacher-login-visual{justify-content:flex-start;gap:40px;min-height:42svh;padding:34px 26px}.teacher-login-visual h1{font-size:clamp(32px,8vw,48px)}.teacher-login-panel{min-height:auto;padding:28px 20px 40px}.teacher-login-card{margin:auto}}@media (max-width:620px){.teacher-main{padding:88px 12px 24px}.teacher-topbar{height:64px;padding:0 12px}.teacher-top-left h1{font-size:14px}.teacher-top-left>div>span{display:none}.teacher-top-actions{gap:7px}.teacher-user{max-width:42px}.teacher-user>span,.teacher-user>img{border-radius:11px;width:36px;height:36px}.teacher-user div{display:none}.teacher-user{font-size:0}.teacher-icon-btn{border-radius:11px;width:38px;height:38px}.teacher-page-hero{border-radius:15px;align-items:flex-start;padding:20px 18px}.teacher-page-hero.compact{padding:18px}.teacher-page-hero h2{font-size:21px}.teacher-page-hero p{font-size:10px}.teacher-card{border-radius:13px;padding:16px}.teacher-card-head{flex-wrap:wrap;gap:10px}.teacher-card-head h3{font-size:14px}.teacher-metric-grid{grid-template-columns:1fr}.teacher-metric{padding:14px}.teacher-metric strong{font-size:19px}.teacher-form-grid{grid-template-columns:1fr}.teacher-form-actions{justify-content:stretch}.teacher-form-actions .teacher-btn{flex:auto}.teacher-profile-cover{gap:12px;padding:15px}.teacher-profile-avatar{flex-basis:70px;width:70px;height:70px;font-size:32px}.teacher-avatar-options{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-theme-switch{grid-template-columns:1fr}.logout-card{flex-direction:column;align-items:flex-start}.logout-card .teacher-btn{width:100%}.teacher-notify-panel{width:auto;max-height:calc(100svh - 82px);position:fixed;top:70px;left:10px;right:10px}.teacher-notify-head{padding:13px}.teacher-notice{padding:12px 13px}.teacher-login-visual{gap:25px;min-height:36svh;padding:28px 20px}.teacher-login-brand img{width:40px}.teacher-login-brand{font-size:18px}.teacher-login-visual p{font-size:11px;line-height:1.6}.teacher-login-panel{padding:18px 12px 28px}.teacher-login-card{border-radius:16px;padding:22px 18px}.teacher-login-card input{min-height:44px}.teacher-login-card .teacher-btn{min-height:46px}}@media (max-width:380px){.teacher-metric-grid{grid-template-columns:1fr}.teacher-avatar-options{grid-template-columns:1fr 1fr}.teacher-top-left h1{max-width:110px}}:root{--t-content-max:1540px;--t-space-1:6px;--t-space-2:10px;--t-space-3:14px;--t-space-4:18px;--t-space-5:24px;--t-space-6:32px;--t-radius-card:18px}html,body{width:100%;min-height:100%}body.teacher-body{background:var(--t-bg);color:var(--t-text);overflow-x:hidden}.teacher-shell{width:100%;min-height:100svh}.teacher-sidebar{gap:0;width:248px;padding:22px 14px 16px}.teacher-brand{margin-bottom:4px;padding:2px 9px 24px}.teacher-brand>a{min-width:0}.teacher-brand>a>span{min-width:0;line-height:1.05}.teacher-brand small{white-space:nowrap}.teacher-sidebar nav{gap:6px}.teacher-nav-label{padding:0 12px 7px;display:block}.teacher-nav-link{gap:12px;min-height:44px;padding:10px 12px}.teacher-nav-link span{text-overflow:ellipsis;min-width:0;overflow:hidden}.teacher-side-bottom{gap:6px;margin-top:auto;padding-top:14px}.teacher-topbar{height:76px;padding:0 clamp(18px,3vw,34px);left:248px}.teacher-top-left{flex:1;min-width:0}.teacher-top-left>div{min-width:0}.teacher-top-left h1{max-width:min(60vw,760px);font-size:18px;line-height:1.2}.teacher-top-left>div>span{letter-spacing:1.5px;color:var(--t-dim);font-size:8px;font-weight:800}.teacher-top-actions{gap:12px}.teacher-user{border-radius:13px;max-width:250px;padding:5px 7px 5px 5px;transition:all .2s}.teacher-user:hover{background:#3197ff0f}.teacher-user>span,.teacher-user>img{border-radius:12px;flex:0 0 40px;width:40px;height:40px}.teacher-user strong{font-size:11px}.teacher-user small{font-size:8px}.teacher-icon-btn{place-items:center;width:42px;height:42px;display:grid}.teacher-main{width:min(calc(100% - 248px), var(--t-content-max));margin-left:248px;margin-right:0;padding:102px clamp(18px,3vw,34px) 44px}.teacher-main>*+*{margin-top:0}.teacher-page-hero{width:100%;min-height:124px;margin-bottom:20px;padding:24px 26px}.teacher-page-hero>div:first-child{flex:1;min-width:0}.teacher-page-hero h2{font-size:26px;line-height:1.15}.teacher-page-hero p{max-width:820px}.hero-actions{flex:none;justify-content:flex-end}.teacher-grid,.teacher-metric-grid,.teacher-class-grid,.teacher-profile-grid{width:100%}.teacher-grid{gap:18px;margin-bottom:18px}.teacher-grid.two{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.teacher-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.teacher-metric{min-width:0;min-height:92px;padding:16px}.teacher-metric>div{min-width:0}.teacher-metric strong,.teacher-metric small,.teacher-metric em{overflow-wrap:anywhere}.teacher-card{border-radius:var(--t-radius-card);min-width:0;padding:20px;overflow:hidden}.teacher-card-head,.teacher-card-head>div{min-width:0}.teacher-card-head h3{overflow-wrap:anywhere;line-height:1.3}.teacher-form{width:100%}.teacher-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-form label,.teacher-filterbar label,.teacher-upload-form label{min-width:0}.teacher-form input,.teacher-form select,.teacher-form textarea,.teacher-filterbar input,.teacher-filterbar select,.teacher-upload-form input[type=file]{min-height:42px}.teacher-form textarea{min-height:110px}.teacher-form-actions{align-items:center}.teacher-btn{min-width:0}.teacher-filterbar{align-items:end;gap:10px;padding-bottom:2px}.teacher-filterbar label{flex:170px;min-width:150px}.teacher-filterbar .teacher-btn{flex:none}.teacher-table-wrap{border:1px solid var(--t-border);background:var(--t-surface);border-radius:12px}.teacher-table{min-width:820px}.teacher-table th{padding:12px 10px;font-size:8px}.teacher-table td{padding:12px 10px}.teacher-table tbody tr:hover{background:#3197ff09}.table-person{min-width:180px}.table-person>span:last-child{min-width:0}.table-person strong,.table-person small{overflow-wrap:anywhere}.class-progress-row{grid-template-columns:minmax(150px,1.35fr) minmax(120px,1fr) auto auto}.teacher-bars{min-height:190px}.teacher-activity-feed>div{min-width:0}.teacher-profile-grid{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:stretch;gap:18px;display:grid}.teacher-profile-grid>.teacher-profile-card{grid-area:1/1/span 2;height:auto}.teacher-profile-grid>.teacher-profile-card+.teacher-card{grid-area:1/2}.teacher-profile-grid>.teacher-profile-card+.teacher-card+.teacher-card{grid-area:2/2}.teacher-profile-grid>.teacher-profile-card+.teacher-card+.teacher-card+.teacher-card{grid-area:3/1}.teacher-profile-grid>.logout-card{grid-area:3/2}.teacher-profile-grid>.teacher-card{height:auto}.teacher-profile-cover{align-items:center;display:flex}.teacher-profile-cover>div:last-child{min-width:0}.teacher-profile-cover h2{overflow-wrap:anywhere}.teacher-mini-stats{margin:16px 0}.teacher-avatar-options{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-avatar-choice{min-height:90px}.teacher-upload-form{margin-top:16px}.teacher-theme-switch button{min-height:88px}.logout-card{min-height:100%}.student-hero,.student-hero>div,.student-hero-metrics,.detail-stat-list,.timeline-item,.timeline-item>div{min-width:0}.teacher-lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-lesson-card{grid-template-columns:42px minmax(0,1fr);min-width:0}.teacher-lesson-card>div{overflow-wrap:anywhere;min-width:0}.teacher-lesson-card>div>div{flex-wrap:wrap}.teacher-lesson-card .teacher-btn{white-space:normal;text-align:center;max-width:100%}@media (max-width:850px){.teacher-lesson-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:620px){.teacher-lesson-card{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:12px}.teacher-lesson-card .lesson-number{width:32px;height:32px}}.announcement-row,.assignment-row{align-items:flex-start;min-width:0}.announcement-row>div,.assignment-row>div{flex:1;min-width:0}.announcement-row p{overflow-wrap:anywhere}.teacher-notify-panel{width:min(390px,100vw - 28px)}.teacher-notice{align-items:flex-start}.teacher-notice>div{flex:1;min-width:0}.teacher-notice strong,.teacher-notice small,.teacher-notice time{overflow-wrap:anywhere}.teacher-login{background:var(--t-bg);grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);width:100%;min-height:100svh;display:grid;overflow:hidden}.teacher-login-visual{flex-direction:column;justify-content:space-between;gap:48px;min-width:0;min-height:100svh;padding:clamp(34px,5vw,76px);display:flex}.teacher-login-brand{align-items:center;gap:11px;display:flex}.teacher-login-brand img{object-fit:contain;width:46px;height:46px}.teacher-login-brand b{font-size:21px;line-height:1}.teacher-login-visual>div:last-child{max-width:760px;margin-top:auto;margin-bottom:auto}.teacher-login-visual h1{margin:14px 0 16px;font-size:clamp(38px,4.2vw,60px);line-height:1.04}.teacher-login-visual p{max-width:590px;margin:0;font-size:13px;line-height:1.75}.teacher-login-panel{background:var(--t-bg2);place-items:center;min-width:0;min-height:100svh;padding:clamp(24px,5vw,64px);display:grid}.teacher-login-card{border-radius:20px;gap:16px;width:min(440px,100%);padding:clamp(26px,3.5vw,40px)}.teacher-login-card h2{margin:0;font-size:30px;line-height:1.15}.teacher-login-card p{margin:-5px 0 7px;line-height:1.6}.teacher-login-card label{color:var(--t-text);gap:7px;font-size:10px}.teacher-login-card input{min-height:48px;padding:12px 13px;font-size:13px}.teacher-login-card input::placeholder{color:var(--t-dim);opacity:1}.teacher-login-card input:focus{border-color:var(--t-blue);box-shadow:0 0 0 3px #3197ff1f}.teacher-login-card .teacher-btn{width:100%;min-height:50px;margin-top:3px;font-size:11px}.teacher-login-help{padding-top:2px;line-height:1.6;display:block}@media (max-width:850px){.teacher-sidebar{z-index:200;width:min(310px,88vw)}.teacher-sidebar.open:after{content:"";z-index:-1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0309166b;width:calc(100vw - 100%);height:100vh;position:fixed;top:0;left:100%}.teacher-topbar{z-index:180;height:72px;left:0}.teacher-main{width:100%;margin-left:0;padding:96px 18px 32px}.teacher-page-hero{padding:22px}.teacher-page-hero p{max-width:none}.teacher-grid.two,.teacher-grid.three{grid-template-columns:1fr}.teacher-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-profile-grid{grid-template-rows:auto;grid-template-columns:1fr}.teacher-profile-grid>.teacher-profile-card,.teacher-profile-grid>.teacher-profile-card+.teacher-card,.teacher-profile-grid>.teacher-profile-card+.teacher-card+.teacher-card,.teacher-profile-grid>.teacher-profile-card+.teacher-card+.teacher-card+.teacher-card,.teacher-profile-grid>.logout-card{grid-area:auto/1}.teacher-profile-card{height:auto}.teacher-login{grid-template-columns:1fr;overflow:auto}.teacher-login-visual{justify-content:flex-start;gap:30px;min-height:44svh;padding:34px 28px}.teacher-login-visual>div:last-child{margin:auto 0 0}.teacher-login-panel{min-height:auto;padding:28px 22px 44px}}@media (max-width:620px){.teacher-sidebar{width:min(300px,92vw)}.teacher-topbar{height:64px;padding:0 12px}.teacher-main{padding:84px 12px 26px}.teacher-top-left{gap:8px}.teacher-top-left h1{max-width:44vw;font-size:14px}.teacher-top-actions{gap:6px}.teacher-icon-btn{border-radius:10px;width:38px;height:38px}.teacher-user{padding:2px}.teacher-user>span,.teacher-user>img{border-radius:10px;flex-basis:36px;width:36px;height:36px}.teacher-page-hero{border-radius:15px;min-height:0;margin-bottom:14px;padding:18px}.teacher-page-hero h2{font-size:21px}.teacher-page-hero p{font-size:10px}.hero-actions{justify-content:flex-start;width:100%}.hero-actions .teacher-btn{flex:auto}.teacher-card{border-radius:14px;padding:16px}.teacher-card-head{margin-bottom:13px}.teacher-metric-grid{grid-template-columns:1fr}.teacher-metric{min-height:78px}.teacher-form-grid{grid-template-columns:1fr}.teacher-form label.full{grid-column:auto}.teacher-form-actions{justify-content:stretch}.teacher-form-actions .teacher-btn{flex:140px}.teacher-filterbar{grid-template-columns:1fr;align-items:stretch;display:grid}.teacher-filterbar label{min-width:0}.teacher-filterbar .teacher-btn{width:100%}.teacher-table-wrap{border-radius:10px}.teacher-profile-cover{gap:13px;padding:14px}.teacher-profile-avatar{flex-basis:72px;width:72px;height:72px;font-size:34px}.teacher-profile-cover h2{font-size:18px}.teacher-mini-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-avatar-options{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-theme-switch{grid-template-columns:1fr}.logout-card{align-items:flex-start}.logout-card .teacher-btn{width:100%}.teacher-notify-panel{width:auto;max-height:calc(100svh - 82px);position:fixed;top:70px;left:10px;right:10px}.teacher-login-visual{gap:22px;min-height:38svh;padding:28px 20px}.teacher-login-brand img{width:40px;height:40px}.teacher-login-brand b{font-size:19px}.teacher-login-visual h1{margin:10px 0 12px;font-size:clamp(32px,10vw,44px)}.teacher-login-visual p{font-size:11px;line-height:1.65}.teacher-login-panel{padding:18px 12px 32px}.teacher-login-card{border-radius:16px;gap:14px;padding:22px 18px}.teacher-login-card h2{font-size:25px}.teacher-login-card input{min-height:46px;font-size:13px}}@media (max-width:380px){.teacher-top-left h1{max-width:38vw;font-size:13px}.teacher-profile-cover{flex-direction:column;align-items:flex-start}.teacher-mini-stats strong{font-size:13px}.teacher-mini-stats span{font-size:7px}.teacher-login-visual{min-height:35svh;padding:24px 16px}.teacher-login-panel{padding-left:10px;padding-right:10px}}.teacher-auth-body{--t-bg:var(--bg);--t-bg2:var(--bg2);--t-text:var(--text)}.teacher-auth-layout .auth-visual-copy{max-width:650px}.teacher-auth-card{width:min(440px,100%)}.teacher-auth-card .auth-form{flex-direction:column;gap:14px;display:flex}.teacher-auth-card .auth-form label{flex-direction:column;gap:6px;display:flex}.teacher-auth-card .auth-form input{background:var(--surface-soft);width:100%;min-height:48px;color:var(--text);border:1px solid var(--border);border-radius:9px;padding:12px 13px}.teacher-auth-card .auth-form input::placeholder{color:var(--muted)}.teacher-auth-card .auth-form input:focus{border-color:#168bff;outline:none;box-shadow:0 0 0 3px #168bff2e}.teacher-auth-card .auth-help{font-size:11px;line-height:1.6}@media (max-width:850px){.teacher-auth-layout .auth-visual{min-height:42svh}.teacher-auth-layout .auth-panel{min-height:auto}}@media (max-width:520px){.teacher-auth-layout .auth-visual{min-height:36svh}.teacher-auth-card{width:100%}}.teacher-shell :is(h1,h2,h3,h4,strong){color:var(--t-text)!important}.teacher-shell code{color:var(--t-cyan)}.teacher-shell[data-theme=light]{--t-bg:#eef4fc;--t-bg2:#e7eef8;--t-surface:#fff;--t-surface2:#f5f8fd;--t-surface3:#eaf0f8;--t-text:#17243a;--t-muted:#5c6d84;--t-dim:#7a8aa1;--t-border:#2b497026;--t-border2:#236fc24d;--t-shadow:0 16px 40px #27487317}.teacher-shell[data-theme=light] .teacher-nav-link.active{color:#17345c}.teacher-shell[data-theme=light] .pagination a.active{color:#fff}.teacher-shell[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--t-bg)}.teacher-shell[data-theme=light] .teacher-sidebar{box-shadow:8px 0 30px #28466e0d}.teacher-shell[data-theme=light] .teacher-topbar{background:#eef4fceb}.teacher-shell[data-theme=light] .teacher-card,.teacher-shell[data-theme=light] .teacher-metric,.teacher-shell[data-theme=light] .teacher-page-hero{box-shadow:none}.teacher-shell[data-theme=light] .teacher-notify-panel{box-shadow:0 18px 45px #27487324}.teacher-shell[data-theme=light] .teacher-icon-btn b{border-color:var(--t-bg)}.teacher-loading{gap:18px;animation:.18s ease-out both teacher-loading-in;display:grid}.teacher-loading-hero{border:1px solid var(--t-border2);background:var(--t-surface);border-radius:18px;justify-content:space-between;align-items:center;min-height:126px;padding:24px;display:flex}.teacher-loading-hero>div{gap:11px;width:min(520px,70%);display:grid}.teacher-loading-hero i{width:110px;height:9px}.teacher-loading-hero span{width:min(360px,84%);height:28px}.teacher-loading-hero b{width:min(480px,100%);height:12px}.teacher-loading-hero em{border-radius:10px;width:116px;height:40px}.teacher-loading-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.teacher-loading-metrics span{border:1px solid var(--t-border);border-radius:14px;height:96px}.teacher-loading-columns{grid-template-columns:1.15fr .85fr;gap:16px;display:grid}.teacher-loading-columns section,.teacher-loading-table{border:1px solid var(--t-border);background:var(--t-surface);border-radius:16px;gap:13px;padding:20px;display:grid}.teacher-loading-columns section{min-height:230px}.teacher-loading-columns i,.teacher-loading-table i{width:92px;height:8px}.teacher-loading-columns b,.teacher-loading-table b{width:42%;height:21px}.teacher-loading-columns span{height:13px}.teacher-loading-columns span:last-child{width:68%}.teacher-loading-table{min-height:245px}.teacher-loading-table>div{gap:10px;margin-top:8px;display:grid}.teacher-loading-table span{border-radius:8px;height:32px}.teacher-loading :is(.teacher-loading-hero i,.teacher-loading-hero span,.teacher-loading-hero b,.teacher-loading-hero em,.teacher-loading-metrics span,.teacher-loading-columns i,.teacher-loading-columns b,.teacher-loading-columns span,.teacher-loading-table i,.teacher-loading-table b,.teacher-loading-table span){background:linear-gradient(100deg, var(--t-surface2) 18%, var(--t-surface3) 42%, var(--t-surface2) 66%);background-size:240% 100%;animation:1.15s linear infinite teacher-loading-shimmer;display:block}@keyframes teacher-loading-shimmer{to{background-position:-240% 0}}@keyframes teacher-loading-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (max-width:1000px){.teacher-loading-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-loading-columns{grid-template-columns:1fr}}@media (max-width:620px){.teacher-loading-hero{padding:18px}.teacher-loading-hero>div{width:100%}.teacher-loading-hero em{display:none}.teacher-loading-metrics{grid-template-columns:1fr 1fr}.teacher-loading-metrics span{height:78px}}@media (prefers-reduced-motion:reduce){.teacher-loading,.teacher-loading :is(.teacher-loading-hero i,.teacher-loading-hero span,.teacher-loading-hero b,.teacher-loading-hero em,.teacher-loading-metrics span,.teacher-loading-columns i,.teacher-loading-columns b,.teacher-loading-columns span,.teacher-loading-table i,.teacher-loading-table b,.teacher-loading-table span){animation:none}}:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual{color:#f5f8ff}:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-logo,:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-logo span,:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-visual-content h1,:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-feature-grid b{color:#f5f8ff!important}:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-logo strong{color:#2c9eff!important}:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-visual-content p{color:#aebddd}:is(.teacher-auth-layout,.admin-auth-layout) .auth-visual .auth-feature-grid small{color:#91a4c4}:is(.teacher-auth-layout,.admin-auth-layout) .auth-panel{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#17233c;--text-soft:#52627b;--muted:#607089;--surface-soft:#f1f5fb;--border:#c5cfdf;color:var(--text)}:is(.teacher-auth-layout,.admin-auth-layout) .auth-card{color:var(--text)}:is(.teacher-auth-layout,.admin-auth-layout) .auth-form input{background:var(--surface-soft);color:var(--text);border-color:var(--border)}:is(.teacher-auth-layout,.admin-auth-layout) .auth-form input::placeholder{color:var(--muted);opacity:1}:is(.teacher-auth-layout,.admin-auth-layout) :is(.auth-help,.auth-trust-row){color:var(--muted)}.assignment-tracker-card{padding:22px}.assignment-tracker-table{table-layout:fixed;min-width:980px}.assignment-tracker-table .assignment-col-main{width:34%}.assignment-tracker-table .assignment-col-target{width:17%}.assignment-tracker-table .assignment-col-content{width:16%}.assignment-tracker-table .assignment-col-due{width:11%}.assignment-tracker-table .assignment-col-progress{width:15%}.assignment-tracker-table .assignment-col-actions{width:7%}.assignment-tracker-table th{white-space:nowrap;padding:13px 12px}.assignment-tracker-table td{vertical-align:top;overflow-wrap:normal;word-break:normal;padding:15px 12px}.assignment-main-cell,.assignment-target-cell,.assignment-completion{gap:5px;min-width:0;display:grid}.assignment-main-cell strong{color:var(--t-text);font:700 10px/1.45 Poppins,sans-serif}.assignment-main-cell p{color:var(--t-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:8px;line-height:1.55;display:-webkit-box;overflow:hidden}.assignment-target-cell strong{color:var(--t-text);font-size:9px;line-height:1.4}.assignment-target-cell small{color:var(--t-muted);font-size:8px;line-height:1.35}.assignment-content-pill{border:1px solid var(--t-border);max-width:100%;color:var(--t-text);background:#3197ff0f;border-radius:7px;padding:5px 8px;font-size:8px;line-height:1.4;display:inline-flex}.assignment-due{color:var(--t-text);font-size:9px;line-height:1.4;display:inline-flex}.assignment-due.empty{color:var(--t-dim)}.assignment-completion>div{justify-content:space-between;align-items:center;gap:6px;display:flex}.assignment-completion strong{color:var(--t-text);font-size:9px}.assignment-completion>div span,.assignment-completion small{color:var(--t-muted);font-size:7px}.assignment-progress-track{background:var(--t-surface3);border-radius:99px;height:5px;display:block;overflow:hidden}.assignment-progress-track i{border-radius:inherit;background:var(--t-blue);height:100%;display:block}.assignment-action-cell{text-align:right;white-space:nowrap}.assignment-action-cell form{display:inline-block}.assignment-delete{min-width:52px;color:var(--t-red);cursor:pointer;white-space:nowrap;background:#f36a8712;border:1px solid #f36a873d;border-radius:7px;padding:6px 9px;font-size:8px;font-weight:700;transition:all .2s}.assignment-delete:hover{border-color:var(--t-red);background:#f36a8724;transform:translateY(-1px)}@media (max-width:620px){.assignment-tracker-card{padding:15px}.assignment-tracker-table{min-width:920px}}.assignment-filter-note{color:var(--t-dim);margin-top:-1px;font-size:8px;font-weight:500;display:block}.run-summary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin:24px 0;display:grid}.run-summary small,.run-summary strong{display:block}.run-summary strong{margin-top:8px;font-size:1.15rem}.run-history-item{border:1px solid var(--t-border,#26395b);border-radius:12px;margin-top:12px;overflow:hidden}.run-history-item>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:16px;padding:18px;display:flex}.run-history-item>summary:before{content:"▸"}.run-history-item[open]>summary:before{content:"▾"}.run-history-body{padding:0 18px 18px}.run-history-body p{margin:12px 0}.run-source{background:var(--t-bg2,#071226);max-height:480px;color:var(--t-text,#e4edff);white-space:pre;tab-size:4;border-radius:10px;padding:18px;font:14px/1.7 Consolas,monospace;overflow:auto}.run-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.run-pagination,.run-session-links{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.run-session-links [aria-current=page]{outline:2px solid #398dff}@media (max-width:700px){.run-comparison{grid-template-columns:1fr}}.session-results-card{min-width:0}.teacher-filterbar.session-result-filters{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:16px;display:grid}.session-result-filters label{min-width:0}.session-result-filters input,.session-result-filters select{box-sizing:border-box;width:100%;min-width:0}.session-filter-actions{flex-wrap:wrap;gap:10px;display:flex}.session-result-count{margin-top:18px}.teacher-table-wrap.session-table-wrap{max-width:100%;max-height:65vh;overflow:auto}.teacher-table.session-results-table{table-layout:auto;min-width:1450px}.teacher-table.session-readable-table{table-layout:auto;min-width:1180px}.teacher-table.session-results-table th,.teacher-table.session-results-table td,.teacher-table.session-readable-table th,.teacher-table.session-readable-table td{white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}.teacher-table.session-results-table th,.teacher-table.session-results-table td{padding:14px 16px}.teacher-table.session-results-table .session-text-cell{white-space:normal;min-width:150px;max-width:250px}.teacher-table.session-results-table td small{margin-top:4px;display:block}.session-section{display:block}.session-table-wrap:focus-visible{outline:2px solid var(--t-accent,#268dff);outline-offset:3px}@media (max-width:900px){.teacher-filterbar.session-result-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.teacher-filterbar.session-result-filters{grid-template-columns:minmax(0,1fr)}}.teacher-card.monitoring-guide{margin-block:20px 24px}.monitoring-guide>summary{cursor:pointer;padding-block:6px;font-size:14px;font-weight:600;line-height:1.5}.monitoring-guide>summary:focus-visible{outline:2px solid var(--t-accent,#268dff);outline-offset:3px;border-radius:3px}.monitoring-guide-content{border-top:1px solid var(--t-border);color:var(--t-muted);margin-top:16px;padding-top:16px;font-size:13px;line-height:1.65}.monitoring-guide-content>p,.monitoring-guide-content>ol{max-width:80ch;margin:0 0 16px}.monitoring-guide-content>:last-child{margin-bottom:0}.monitoring-guide-content ol{padding-left:22px}.monitoring-guide-content li+li{margin-top:10px}.monitoring-guide-content strong{color:var(--t-text)}.teacher-table th{word-break:normal;overflow-wrap:normal;font-size:11px;line-height:1.5}.teacher-table td{font-size:12px;line-height:1.55}.teacher-table .table-person strong{font-size:12px}.teacher-table .table-person small,.teacher-table .status-badge{font-size:11px}.teacher-card-head{flex-wrap:wrap}.teacher-card-head>a{font-size:12px}.teacher-empty{font-size:13px;line-height:1.6}.teacher-table :is(.teacher-btn,.table-link,.status-badge){word-break:normal;overflow-wrap:normal}.teacher-table .table-link{white-space:nowrap}.teacher-table-wrap{max-width:100%}.teacher-form label,.teacher-filterbar label{font-size:13px;line-height:1.5}.teacher-note{font-size:13px;line-height:1.65}.teacher-form :is(input,select,textarea),.teacher-filterbar :is(input,select){min-width:0;max-width:100%}.teacher-btn{text-align:center;line-height:1.4}.teacher-btn:focus-visible,.teacher-main summary:focus-visible,.teacher-main .table-link:focus-visible{outline:2px solid var(--t-blue);outline-offset:3px}.teacher-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:600px){.teacher-filterbar label{flex-basis:100%;min-width:0}.teacher-form :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.teacher-filterbar :is(input,select){font-size:16px}}@media (pointer:coarse){.teacher-btn{min-height:44px}}@media (prefers-reduced-motion:reduce){.teacher-btn{transition:none}.teacher-btn:hover,.teacher-btn:active{transform:none}}.teacher-table.student-roster-table{table-layout:auto;min-width:1080px}.student-roster-table th{white-space:nowrap}.student-roster-table td{overflow-wrap:normal;word-break:normal;padding:12px 10px}.student-roster-table td:first-child{min-width:240px}.student-roster-table .table-person{min-width:220px}.student-roster-table td:nth-child(2){min-width:100px}.student-roster-table td:nth-child(3),.student-roster-table td:nth-child(4),.student-roster-table td:nth-child(6),.student-roster-table td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.student-roster-table td:nth-child(4){min-width:64px}.student-roster-table td:nth-child(5){min-width:100px}.student-roster-table td:nth-child(7){font-variant-numeric:tabular-nums;min-width:155px}.student-roster-table td:nth-child(8){min-width:205px;max-width:240px}.student-roster-table .teacher-note{margin:4px 0 0;font-size:12px;line-height:1.5}.teacher-main>.teacher-card+:is(.teacher-card,.teacher-grid,#history){margin-top:20px}@media (max-width:650px){.teacher-main>.teacher-card+:is(.teacher-card,.teacher-grid,#history){margin-top:16px}}
