/* Student homework dashboard — scoped so teacher/admin pages stay unchanged. */
.student-homework-shell .product-content{padding:20px 44px 28px!important}
.student-homework-shell .product-content:before{opacity:.25;height:115px}
.hw-page-head{margin-bottom:16px}
.hw-page-head>span{color:#a064ff;font-size:9px;font-weight:800;letter-spacing:1.1px}
.hw-page-head h1{margin:5px 0 2px;color:#fff;font-size:30px;line-height:1.15;letter-spacing:-.8px}
.hw-page-head p{margin:0;color:#91a2c1;font-size:11px}
.hw-layout{display:grid;grid-template-columns:minmax(720px,1fr) 402px;gap:18px}
.hw-board,.hw-deadlines,.hw-subjects,.hw-activity{border:1px solid #21466f;border-radius:12px;background:linear-gradient(145deg,rgba(6,22,41,.97),rgba(5,18,35,.94));box-shadow:inset 0 0 34px rgba(25,71,139,.05)}
.hw-board{min-height:580px;padding:16px}
.hw-tabs{display:flex;gap:12px;margin-bottom:14px}
.hw-tabs button{height:42px;padding:0 30px;border:1px solid #1d3d65;border-radius:9px;background:#091b31;color:#c4cde0;font:700 11px Manrope;cursor:pointer;transition:.16s}
.hw-tabs button:hover{border-color:#784dff;color:#fff}.hw-tabs button.active{border-color:#8b50ff;background:linear-gradient(135deg,#8e4cff,#6b20ef);color:#fff;box-shadow:0 7px 20px rgba(102,37,232,.28)}
.hw-tools{display:grid;grid-template-columns:1fr 270px;gap:14px;margin-bottom:16px}
.hw-tools label{position:relative;display:flex;align-items:center;height:45px;border:1px solid #23456e;border-radius:9px;background:#081a30;color:#98a8c5}
.hw-tools label>.ui-icon:first-child{position:absolute;left:14px;width:18px}.hw-tools input,.hw-tools select{width:100%!important;height:100%!important;padding:0 42px!important;border:0!important;background:transparent!important;color:#dbe5f7!important;font-size:11px!important;outline:0}
.hw-tools select{appearance:none;padding-left:47px!important}.hw-tools label>.ui-icon:last-child{position:absolute;right:14px;width:13px;pointer-events:none}
.hw-table-head,.hw-row{display:grid;grid-template-columns:minmax(310px,1.7fr) 126px 126px 166px 64px 25px;align-items:center;column-gap:12px}
.hw-table-head{height:51px;padding:0 14px;border-radius:8px;background:linear-gradient(90deg,#0a1d35,#0b213d);color:#a9b8d3;font-size:10px;font-weight:700}
.hw-row{width:100%;min-height:96px;padding:10px 14px;border:0;border-bottom:1px dashed #183958;background:transparent;color:#dfe8f8;font-family:inherit;text-align:left;text-decoration:none;cursor:pointer;transition:.16s}
.hw-row:hover{background:rgba(17,47,83,.45)}.hw-row[hidden]{display:none!important}
.hw-task{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:13px;min-width:0}.hw-task>i,.hw-deadlines>button>i,.hw-subjects>button>i{display:grid;place-items:center;width:56px;height:56px;border-radius:12px;background:#102c58;color:#70aaff;font-style:normal}.hw-task>i .ui-icon,.hw-deadlines>button>i .ui-icon{width:28px}.hw-task>span{display:grid;min-width:0;gap:5px}.hw-task b{overflow:hidden;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.hw-task small{overflow:hidden;color:#899bb9;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.hw-task>i.web,.hw-deadlines>button>i.web,.hw-subjects>button>i.web{background:#351276;color:#bb82ff}.hw-task>i.ai,.hw-deadlines>button>i.ai,.hw-subjects>button>i.ai{background:#075d5b;color:#61ebd6}.hw-task>i.design,.hw-deadlines>button>i.design,.hw-subjects>button>i.design{background:#612044;color:#ff78bd}.hw-task>i.data,.hw-deadlines>button>i.data,.hw-subjects>button>i.data{background:#4f3514;color:#ffbd55}
.hw-subject{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:120px;padding:8px 13px;border-radius:17px;background:#102a60;color:#8e9dff;font-size:10px}.hw-subject .ui-icon{width:16px}.hw-subject.web{background:#2a155f;color:#ba81ff}.hw-subject.ai{background:#073e49;color:#58e3d2}.hw-subject.design{background:#4d1a3d;color:#ff72b9}.hw-subject.data{background:#453015;color:#ffc063}
.hw-row time{display:grid;gap:2px;color:#e2e8f6;font-size:10px;font-weight:700}.hw-row time small{color:#8f9eb8;font-size:9px;font-weight:500}
.hw-status{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:max-content;padding:8px 14px;border:1px solid #087f79;border-radius:9px;background:#073a40;color:#41eee0;font-size:10px;font-weight:700}.hw-status .ui-icon{width:17px}.hw-status.review{border-color:#9b6b13;background:#3c2e10;color:#ffc94f}.hw-status.done{border-color:#345778;background:#102840;color:#c4d3ea}
.hw-row>strong{text-align:center;font-size:12px}.hw-more{color:#8fa1be;font-size:14px;font-style:normal;letter-spacing:2px}.hw-no-results{display:grid;place-items:center;height:120px;color:#93a2bc;font-size:11px}
.hw-aside{display:grid;align-content:start;gap:16px}.hw-deadlines,.hw-subjects{padding:18px}.hw-deadlines header,.hw-subjects header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.hw-deadlines h2,.hw-subjects h2{margin:0;color:#fff;font-size:16px}.hw-deadlines header button,.hw-subjects header button{display:flex;align-items:center;gap:8px;padding:4px;border:0;background:transparent;color:#ad65ff;font:700 9px Manrope;cursor:pointer}.hw-deadlines header .ui-icon,.hw-subjects header .ui-icon{width:13px}
.hw-deadlines>button{display:grid;grid-template-columns:57px 1fr;align-items:center;gap:13px;width:100%;min-height:90px;padding:0;border:0;border-bottom:1px dashed #1a3b5c;background:transparent;color:#fff;font-family:inherit;text-align:left;cursor:pointer}.hw-deadlines>button:last-child{border-bottom:0}.hw-deadlines>button:hover{background:rgba(84,53,170,.12)}.hw-deadlines>button>span{display:grid;gap:4px}.hw-deadlines b{font-size:11px}.hw-deadlines small{color:#8fa1c0;font-size:9px}.hw-deadlines em{display:flex;align-items:center;gap:7px;color:#afbeda;font-size:9px;font-style:normal}.hw-deadlines em .ui-icon{width:15px}
.hw-subjects>button{display:grid;grid-template-columns:36px 64px 1fr 20px;align-items:center;gap:10px;width:100%;min-height:41px;padding:3px;border:0;border-radius:8px;background:transparent;color:#e3e9f7;font-family:inherit;text-align:left;cursor:pointer}.hw-subjects>button:hover,.hw-subjects>button.active{background:rgba(126,73,255,.14)}.hw-subjects>button.active{box-shadow:inset 0 0 0 1px rgba(155,91,255,.45)}.hw-subjects>button>i{width:34px;height:34px;border-radius:8px}.hw-subjects>button>i .ui-icon{width:18px}.hw-subjects b{font-size:10px}.hw-subjects progress{width:100%;height:8px}.hw-subjects strong{text-align:right;font-size:10px}
.hw-activity{margin-top:16px;padding:15px 20px}.hw-activity>header{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:13px}.hw-activity>header>span{display:grid;place-items:center;width:43px;height:43px;border-radius:9px;background:#3c1da0;color:#aa85ff}.hw-activity>header>span .ui-icon{width:23px}.hw-activity h2{margin:0 0 3px;color:#fff;font-size:14px}.hw-activity p{margin:0;color:#8fa0bc;font-size:9px}.hw-activity header button{display:flex;align-items:center;gap:8px;height:38px;padding:0 15px;border:1px solid #24456c;border-radius:8px;background:#081a30;color:#c0cae0;font:600 9px Manrope}.hw-activity header button .ui-icon{width:15px}
.hw-activity>div{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:18px}.hw-activity>div:before{content:"";position:absolute;left:26px;right:7%;top:4px;border-top:1px dashed #24476c}.hw-activity article{position:relative;display:grid;grid-template-columns:40px 1fr;gap:10px}.hw-activity article>i{z-index:1;display:grid;place-items:center;width:36px;height:36px;border:1px solid #0c8880;border-radius:50%;background:#073a40;color:#43e6d5;font-style:normal}.hw-activity article>i.review{border-color:#a36b11;background:#3b2c0f;color:#ffc44a}.hw-activity article>i.active{border-color:#5930bd;background:#28136b;color:#b790ff}.hw-activity article>i .ui-icon{width:17px}.hw-activity article>span{display:grid;gap:3px}.hw-activity article small{color:#7f92b2;font-size:8px}.hw-activity article b{color:#becae0;font-size:9px}.hw-activity article em{color:#a7b5cf;font-size:9px;font-style:normal}
.hw-activity article[hidden]{display:none!important}.hw-task-modal{display:grid;gap:18px;min-width:min(440px,76vw);padding:4px 2px 2px}.hw-task-modal-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.hw-task-modal>p{margin:0;color:#aab8cf;line-height:1.7}.hw-task-modal dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.hw-task-modal dl>div{padding:12px;border:1px solid #27466b;border-radius:10px;background:#071a30}.hw-task-modal dt{color:#7f92b2;font-size:10px}.hw-task-modal dd{margin:5px 0 0;color:#fff;font-weight:700}.hw-task-modal dd small{display:block;color:#93a4c0;font-size:9px}.hw-task-modal>.btn{justify-self:stretch}
@media(max-width:1280px){.student-homework-shell .product-content{padding:18px 24px 28px!important}.hw-layout{grid-template-columns:1fr}.hw-aside{grid-template-columns:1fr 1fr}.hw-board{min-height:0}}
@media(max-width:850px){.hw-table-head{display:none}.hw-row{grid-template-columns:1fr auto auto;row-gap:9px;padding:14px}.hw-task{grid-column:1/4}.hw-subject{grid-column:1}.hw-row time{grid-column:2}.hw-status{grid-column:3}.hw-row>strong,.hw-more{display:none}.hw-activity>div{grid-template-columns:1fr 1fr}.hw-aside{grid-template-columns:1fr}.hw-tools{grid-template-columns:1fr}.hw-tabs{overflow-x:auto}.hw-tabs button{flex:0 0 auto;padding:0 20px}}
@media(max-width:560px){.student-homework-shell .product-content{padding:16px 12px 90px!important}.hw-page-head h1{font-size:25px}.hw-board{padding:11px}.hw-tabs{gap:7px}.hw-tabs button{height:38px;padding:0 14px;font-size:9px}.hw-row{grid-template-columns:1fr auto}.hw-task{grid-column:1/3;grid-template-columns:47px 1fr}.hw-task>i{width:46px;height:46px}.hw-subject{display:none}.hw-row time{grid-column:1}.hw-status{grid-column:2}.hw-activity{padding:13px}.hw-activity>header{grid-template-columns:40px 1fr}.hw-activity header button{display:none}.hw-activity>div{grid-template-columns:1fr}.hw-activity>div:before{display:none}}
