.student-body{background:#f4f7fb;color:var(--ink)}
.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-panel{padding:55px clamp(28px,7vw,110px);display:flex;flex-direction:column;justify-content:center;background:white}.login-logo img{width:120px;height:72px;object-fit:contain;margin-bottom:30px}.student-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--green);font-weight:800}.login-panel h1{font-size:clamp(32px,4.5vw,52px);line-height:1.08;letter-spacing:-.045em;margin:8px 0 13px}.login-panel>p{color:var(--muted);font-size:14px}.login-form{display:grid;gap:17px;margin-top:30px}.login-form label{font-size:11px;font-weight:700}.login-form input{display:block;width:100%;border:1px solid var(--border);border-radius:11px;padding:14px;margin-top:7px;font:inherit}.login-error{font-size:11px;color:#b42318;min-height:16px}.demo-access{margin-top:22px;padding:15px;background:var(--soft);border-radius:12px}.demo-access span{display:block;font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800}.demo-access button{border:0;background:none;color:var(--blue);font:inherit;font-size:12px;font-weight:800;margin-top:4px;cursor:pointer}.return-home{font-size:11px;color:var(--muted);margin-top:24px}.login-visual{padding:70px;background:linear-gradient(145deg,var(--blue),#0a5ba6);color:white;display:grid;place-items:center}.login-visual>div{max-width:500px}.login-visual h2{font-size:clamp(34px,4vw,54px);line-height:1.12;letter-spacing:-.04em}.login-visual ul{list-style:none;margin-top:30px;display:grid;gap:15px}.login-visual li:before{content:'✓';display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--green);margin-right:12px}
.student-layout{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.student-sidebar{background:#071f48;color:white;padding:24px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30}.student-brand img{width:105px;height:62px;object-fit:contain;background:white;border-radius:11px;padding:3px;margin:0 auto 30px}.student-nav{display:grid;gap:6px}.student-nav-link{border:0;background:none;color:rgba(255,255,255,.65);font:inherit;font-size:12px;text-align:left;padding:12px;border-radius:10px;cursor:pointer}.student-nav-link span{display:inline-block;width:25px}.student-nav-link.active,.student-nav-link:hover{background:rgba(255,255,255,.11);color:white}.sidebar-profile{display:flex;align-items:center;gap:10px;margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:18px}.profile-avatar{width:38px;height:38px;border-radius:12px;background:var(--green);display:grid;place-items:center;font-size:11px;font-weight:800}.sidebar-profile strong,.sidebar-profile small{display:block}.sidebar-profile strong{font-size:11px}.sidebar-profile small{font-size:8px;color:rgba(255,255,255,.55)}.logout-button{margin-top:14px;border:0;background:none;color:rgba(255,255,255,.55);font:inherit;font-size:10px;text-align:left;cursor:pointer}.student-main{min-width:0}.student-topbar{height:75px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.student-topbar>div{margin-right:auto}.student-topbar small,.student-topbar strong{display:block}.student-topbar small{font-size:9px;color:var(--muted)}.student-topbar strong{font-size:11px}.student-menu{display:none}.notification-button{border:0;background:var(--soft);color:var(--green);width:36px;height:36px;border-radius:10px}.student-section{padding:34px;max-width:1300px;margin:auto}.student-section[hidden]{display:none}.student-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.student-welcome h1,.section-title h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.04em;margin:3px 0}.student-welcome p,.section-title p{font-size:12px;color:var(--muted)}
.student-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.student-stats article,.student-card{background:white;border:1px solid var(--border);border-radius:17px;padding:20px}.student-stats article>span,.student-stats article>strong,.student-stats article>em{display:block}.student-stats article>span{font-size:10px;color:var(--muted)}.student-stats article>strong{font-size:30px;color:var(--blue);margin:7px 0}.student-stats small{font-size:12px}.student-stats em{font-style:normal;font-size:9px;color:var(--green)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.card-heading span{font-size:9px;color:var(--muted)}.card-heading h2{font-size:16px;margin-top:3px}.status-badge{font-size:9px!important;font-weight:800;padding:6px 9px;border-radius:20px;white-space:nowrap}.status-badge.open{color:#087a31;background:#e8f8ed}.status-badge.upcoming{color:#9a6700;background:#fff4d7}.status-badge.done{color:var(--blue);background:#eaf2fc}.test-details{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0}.test-details span{font-size:11px;font-weight:700}.test-details small{display:block;color:var(--muted);font-size:8px;font-weight:400}.score-chart{height:175px;display:flex;align-items:flex-end;gap:12px;margin-top:14px;border-bottom:1px solid var(--border)}.score-chart div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.score-chart i{display:block;width:70%;height:var(--score);max-height:125px;background:linear-gradient(180deg,var(--green),var(--blue-2));border-radius:7px 7px 0 0}.score-chart span,.score-chart small{font-size:8px}.trend-value{color:var(--green)}.week-preview{margin-top:14px}.text-action{border:0;background:none;color:var(--blue);font:inherit;font-size:10px;font-weight:800;cursor:pointer}.schedule-list{margin-top:15px}.schedule-list>div{display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:15px;padding:12px 0;border-top:1px solid var(--border)}.schedule-list time{font-size:9px;color:var(--muted)}.schedule-list time b{display:block;font-size:17px;color:var(--blue)}.schedule-list strong,.schedule-list small{display:block}.schedule-list strong{font-size:11px}.schedule-list small{font-size:9px;color:var(--muted)}.schedule-list em{font-size:9px;font-style:normal;color:var(--muted)}
.section-title{margin-bottom:24px}.full-schedule>div{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:20px;padding:20px;border-bottom:1px solid var(--border)}.full-schedule>div:last-child{border:0}.full-schedule time{font-size:11px;font-weight:700;color:var(--blue)}.full-schedule time small,.full-schedule span small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.full-schedule span b{font-size:13px}.full-schedule em{font-size:10px;font-style:normal;color:var(--green);font-weight:700}.test-list{display:grid;gap:12px}.test-row{display:grid;grid-template-columns:48px 1fr auto auto;align-items:center;gap:15px}.test-subject{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;color:white;font-weight:800}.test-subject.math{background:var(--blue)}.test-subject.physics{background:var(--green)}.test-subject.english{background:linear-gradient(145deg,var(--blue),var(--green))}.test-row h2{font-size:15px}.test-row small,.test-row p{font-size:9px;color:var(--muted)}.disabled-button{opacity:.45;cursor:not-allowed}.results-table-wrap{overflow-x:auto}.results-table{width:100%;border-collapse:collapse;min-width:650px}.results-table th,.results-table td{text-align:left;padding:15px;border-bottom:1px solid var(--border);font-size:11px}.results-table th{color:var(--muted);font-size:9px;text-transform:uppercase}.results-table strong{color:var(--blue)}
.test-demo-page{max-width:850px;margin:0 auto;padding:45px 18px}.test-intro{text-align:center;padding:42px}.test-intro img{width:110px;height:65px;object-fit:contain;margin:0 auto 20px}.test-intro h1{font-size:clamp(28px,5vw,44px);margin:7px 0}.test-intro>p{color:var(--muted);font-size:12px}.test-intro>a:not(.button){display:block;font-size:10px;color:var(--muted);margin-top:18px}.test-running header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:18px}.test-running header h1{font-size:25px}.test-running header>strong{font-size:24px;color:var(--blue);background:var(--soft);padding:10px 15px;border-radius:12px}.test-running fieldset{border:0;border-bottom:1px solid var(--border);padding:25px 0}.test-running legend{font-size:14px;font-weight:700;margin-bottom:14px}.test-running fieldset label{display:block;border:1px solid var(--border);border-radius:10px;padding:12px;margin:8px 0;font-size:12px;cursor:pointer}.test-running input{accent-color:var(--green);margin-right:8px}.test-running form>.button{margin-top:22px}.sent-icon{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-size:30px;margin:0 auto}
@media(max-width:950px){.student-stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.test-row{grid-template-columns:48px 1fr auto}.test-row .button{grid-column:2/4}.login-page{grid-template-columns:1fr}.login-visual{display:none}}
@media(max-width:700px){.student-layout{display:block}.student-sidebar{position:fixed;left:-270px;width:250px;transition:.25s}.student-sidebar.open{left:0}.student-menu{display:grid;place-items:center;border:0;background:var(--soft);width:38px;height:38px;border-radius:10px;margin-right:12px}.student-topbar{padding:0 15px}.student-section{padding:24px 14px}.student-welcome{align-items:flex-start;flex-direction:column}.student-welcome .button{width:100%}.student-stats{grid-template-columns:1fr 1fr}.test-details{grid-template-columns:1fr}.full-schedule>div{grid-template-columns:1fr}.schedule-list>div{grid-template-columns:50px 1fr}.schedule-list em{grid-column:2}.test-row{grid-template-columns:45px 1fr}.test-row .status-badge{grid-column:2}.test-row .button{grid-column:1/3;width:100%}}
.assessment-list{display:grid;gap:14px}.assessment-card{position:relative}.assessment-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.assessment-scores div{background:var(--soft);border-radius:12px;padding:15px}.assessment-scores small,.assessment-scores strong{display:block}.assessment-scores small{font-size:9px;color:var(--muted)}.assessment-scores strong{font-size:20px;color:var(--blue);margin-top:6px}.assessment-total{display:flex;align-items:center;gap:16px;margin-top:12px;padding:16px;border-radius:12px;background:linear-gradient(110deg,#082c67,#0b569b);color:white}.assessment-total span{font-size:10px;text-transform:uppercase;font-weight:800}.assessment-total strong{font-size:26px;margin-left:auto}.assessment-total small{font-size:10px}.assessment-empty{margin-top:18px;color:var(--muted);font-size:12px}.demo-result-note{margin-top:12px;padding:10px;border-radius:9px;background:#fff4d7;color:#7a5500;font-size:9px;font-weight:700}
.revision-result{border-color:#b8dfca}.status-badge.revision{background:#e8f7ee;color:#087b3e}.revision-result-note{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#f2faf5;color:#37624a;font-size:.9rem}
@media(max-width:700px){.assessment-scores{grid-template-columns:1fr}.assessment-total{align-items:flex-start;flex-direction:column}.assessment-total strong{margin-left:0}}
.test-progress{position:sticky;top:0;z-index:5;background:white;padding:12px 0;border-bottom:1px solid var(--border)}.test-progress span{font-size:10px;font-weight:700}.test-progress progress{display:block;width:100%;margin-top:7px;accent-color:var(--green)}.test-section-title{margin:28px 0 4px;padding:13px;border-radius:10px;background:var(--blue);color:white;font-size:16px}.test-running fieldset{scroll-margin-top:85px}
