.student-page-header{
  display:flex;
  align-items:center;
  gap:15px;
  margin:var(--mizan-space-2) 0 var(--mizan-space-5);
  padding:18px 0;
  border-bottom:1px solid var(--mizan-surface-soft);
}
.student-page-icon{
  width:52px;
  height:52px;
  flex:0 0 52px;
  display:grid;
  place-items:center;
  border:1px solid var(--mizan-primary-500-border);
  border-radius:var(--mizan-radius-15);
  background:var(--mizan-accent-tile-bg);
  color:var(--primary,var(--mizan-primary-500));
  font-size:var(--mizan-font-size-heading-sm);
}
.student-page-header span{
  display:block;
  color:var(--primary,var(--mizan-primary-500));
  font-size:var(--mizan-font-size-xs);
  font-weight:800;
  margin-bottom:3px;
}
.student-page-header h2{
  margin:0 0 var(--mizan-space-1);
  font-size:var(--mizan-font-size-2xl);
}
.student-page-header p{
  margin:0;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-compact);
}
.student-profile-card{
  display:flex;
  align-items:center;
  gap:var(--mizan-space-4);
  padding:22px;
  margin-bottom:var(--mizan-space-4);
  border:1px solid color-mix(in srgb,var(--mizan-primary-500) 20%,transparent);
  border-radius:var(--mizan-radius-2xl);
  background:var(--mizan-gradient-student-sidebar-profile);
  box-shadow:var(--mizan-shadow-student-sidebar-profile);
}
.profile-avatar{
  width:68px;
  height:68px;
  flex:0 0 68px;
  display:grid;
  place-items:center;
  border-radius:var(--mizan-radius-2xl);
  background:var(--mizan-gradient-student-sidebar-identity);
  font-size:27px;
  font-weight:900;
}
.profile-identity{
  min-width:0;
}
.profile-identity h3{
  margin:0 0 var(--mizan-space-1);
  font-size:var(--mizan-font-size-heading-sm);
}
.profile-identity p{
  margin:0 0 6px;
  color:var(--text-secondary,var(--mizan-muted-dark));
  overflow-wrap:anywhere;
}
.profile-identity span{
  font-size:var(--mizan-font-size-xs);
  font-weight:700;
}
.student-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--mizan-space-3);
  margin-bottom:var(--mizan-space-4);
}
.student-info-grid>div{
  padding:var(--mizan-space-inset-roomy);
  border:1px solid var(--mizan-surface-soft);
  border-radius:var(--mizan-radius-15);
  background:var(--mizan-glass-white-025);
}
.student-info-grid small{
  display:block;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-2xs);
  margin-bottom:6px;
}
.student-info-grid strong{
  display:block;
  overflow-wrap:anywhere;
}
.profile-logout-btn,
.profile-clear-btn{
  border:1px solid var(--mizan-primary-500-border);
  background:transparent;
  color:var(--primary,var(--mizan-primary-500));
  border-radius:var(--mizan-radius-sm);
  padding:9px 13px;
  cursor:pointer;
  font-weight:700;
}
.profile-stats-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--mizan-space-3);
  margin-bottom:18px;
}
.profile-stat-card{
  padding:var(--mizan-space-4) var(--mizan-space-inset-compact);
  text-align:center;
  border:1px solid var(--mizan-surface-soft);
  border-radius:var(--mizan-radius-wide);
  background:var(--mizan-glass-white-025);
}
.profile-stat-card span{
  display:block;
  font-size:var(--mizan-font-size-heading-sm);
  margin-bottom:6px;
}
.profile-stat-card strong{
  display:block;
  color:var(--primary,var(--mizan-primary-500));
  font-size:var(--mizan-font-size-heading-md);
}
.profile-stat-card small{
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-2xs);
}
.profile-panel{
  margin-bottom:var(--mizan-space-4);
  padding:18px;
  border:1px solid var(--mizan-surface-soft);
  border-radius:var(--mizan-radius-lg);
  background:var(--mizan-glass-white-025);
}
.profile-panel-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--mizan-space-3);
  margin-bottom:13px;
}
.profile-panel-heading h3{
  margin:0 0 var(--mizan-space-1);
}
.profile-panel-heading p{
  margin:0;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-compact);
}
.student-highlight-panel{
  text-align:center;
}
.student-big-score{
  display:block;
  color:var(--primary,var(--mizan-primary-500));
  font-size:48px;
  line-height:1;
  margin:var(--mizan-space-3) 0;
}
.student-highlight-panel p{
  color:var(--text-secondary,var(--mizan-muted-dark));
}
.exam-history-list{
  display:grid;
  gap:var(--mizan-gap-small);
}
.history-item{
  display:flex;
  align-items:center;
  gap:var(--mizan-space-3);
  padding:13px;
  border-radius:var(--mizan-radius-13);
  border:1px solid var(--mizan-glass-white-055);
  background:color-mix(in srgb,var(--mizan-primary-900) 28%,transparent);
}
.history-icon{
  font-size:var(--mizan-font-size-heading-md);
  width:35px;
  text-align:center;
}
.history-main{
  min-width:0;
  flex:1;
}
.history-main strong,
.history-main span,
.history-main small{
  display:block;
}
.history-main strong{
  margin-bottom:3px;
}
.history-main span{
  color:var(--primary,var(--mizan-primary-500));
  font-size:var(--mizan-font-size-xs);
}
.history-main small{
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-2xs);
  margin-top:3px;
}
.history-score{
  text-align:center;
  min-width:65px;
}
.history-score strong{
  display:block;
  color:var(--primary,var(--mizan-primary-500));
  font-size:19px;
}
.history-score span{
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-2xs);
}
.profile-empty{
  padding:25px var(--mizan-space-3);
  text-align:center;
  color:var(--text-secondary,var(--mizan-muted-dark));
}
.student-wrong-item{
  display:flex;
  gap:var(--mizan-space-3);
  padding:var(--mizan-space-inset-roomy);
  border:1px solid var(--mizan-glass-white-060);
  border-radius:var(--mizan-radius-md);
  background:color-mix(in srgb,var(--mizan-primary-900) 25%,transparent);
}
.student-wrong-number{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:var(--mizan-radius-sm);
  background:color-mix(in srgb,var(--mizan-deco-rose-61) 10%,transparent);
  color:var(--mizan-danger-500);
  font-weight:800;
}
.student-wrong-item strong{
  display:block;
  line-height:1.7;
}
.student-wrong-item span,
.student-wrong-item small{
  display:block;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-xs);
  margin-top:5px;
}
.student-wrong-item small{
  color:var(--mizan-accent-tile-fg);
}
.student-progress-list{
  display:grid;
  gap:17px;
}
.student-progress-top{
  display:flex;
  justify-content:space-between;
  gap:var(--mizan-space-3);
  margin-bottom:7px;
}
.student-progress-top span{
  color:var(--primary,var(--mizan-primary-500));
  font-weight:800;
}
.student-progress-bar{
  height:8px;
  border-radius:var(--mizan-radius-pill);
  background:var(--mizan-surface-soft);
  overflow:hidden;
}
.student-progress-bar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:var(--mizan-gradient-student-sidebar-active);
}
.student-progress-item small{
  display:block;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-2xs);
  margin-top:6px;
}
.student-empty-feature{
  text-align:center;
  padding:45px var(--mizan-space-5);
}
.student-empty-feature .coming-icon{
  font-size:38px;
}
.student-empty-feature h3{
  margin:var(--mizan-space-3) 0 6px;
}
.student-empty-feature p{
  margin:0;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-compact);
}
@media(max-width:800px){
  .profile-stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .profile-stats-grid .profile-stat-card:last-child{
    grid-column:1/-1;
  }
  .student-info-grid{
    grid-template-columns:1fr;
  }
  .student-info-grid>div{
    min-width:0;
  }
}
@media(max-width:560px){
        .student-page-header{
    gap:11px;
    padding:var(--mizan-space-inset-medium) 0;
  }
  .student-page-icon{
    width:46px;
    height:46px;
    flex-basis:46px;
  }
  .student-page-header h2{
    font-size:var(--mizan-font-size-xl);
  }
  .student-profile-card{
    padding:var(--mizan-space-4);
  }
  .profile-avatar{
    width:56px;
    height:56px;
    flex-basis:56px;
    font-size:var(--mizan-font-size-heading-md);
  }
  .profile-identity h3{
    font-size:var(--mizan-font-size-lg);
  }
  .profile-panel{
    padding:13px;
  }
  .profile-panel-heading{
    align-items:flex-start;
  }
  .history-item{
    align-items:flex-start;
  }
  .history-score{
    margin-inline-start:auto;
  }
  .student-wrong-item{
    padding:var(--mizan-space-3);
  }
  .student-big-score{
    font-size:40px;
  }
}
/* Login is shown beside the status message for signed-out visitors. */
.resume-exam-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--mizan-space-4);
  min-width:0;
  border-color:color-mix(in srgb,var(--mizan-deco-green-54) 28%,transparent);
  background:var(--mizan-gradient-student-sidebar-success);
}
.resume-exam-label{
  display:block;
  color:var(--mizan-success);
  font-size:var(--mizan-font-size-xs);
  font-weight:800;
  margin-bottom:5px;
}
.resume-exam-panel h3{
  margin:0 0 5px;
  overflow-wrap:anywhere;
}
.resume-exam-panel p{
  margin:0;
  color:var(--text-secondary,var(--mizan-muted-dark));
  font-size:var(--mizan-font-size-xs);
}
.profile-resume-btn{
  flex:1 1 auto;
  min-width:0;
  border:1px solid color-mix(in srgb,var(--mizan-deco-green-54) 35%,transparent);
  border-radius:var(--mizan-radius-sm);
  padding:var(--mizan-space-inset-compact) 13px;
  background:color-mix(in srgb,var(--mizan-deco-green-54) 12%,transparent);
  color:var(--mizan-success);
  cursor:pointer;
  font:inherit;
  font-weight:800;
  white-space:nowrap;
}
.profile-resume-btn:hover{
  background:color-mix(in srgb,var(--mizan-deco-green-54) 20%,transparent);
}
.resume-exam-list{
  display:grid;
  gap:var(--mizan-gap-compact);
}
.resume-exam-actions{
  display:flex;
  align-items:center;
  gap:var(--mizan-space-2);
  flex:0 0 auto;
  margin-inline-start:auto;
}
.resume-exam-panel .profile-delete-btn{
  width:46px;
  height:46px;
  flex:0 0 46px;
  font-size:var(--mizan-font-size-lg);
  border-radius:var(--mizan-radius-compact);
}
.profile-delete-btn{
  width:36px;
  height:36px;
  border:1px solid color-mix(in srgb,var(--mizan-deco-rose-61) 22%,transparent);
  border-radius:var(--mizan-radius-9);
  background:color-mix(in srgb,var(--mizan-deco-rose-61) 6%,transparent);
  color:var(--mizan-danger-500);
  cursor:pointer;
}
.profile-delete-btn:hover{
  background:color-mix(in srgb,var(--mizan-deco-rose-61) 16%,transparent);
  border-color:color-mix(in srgb,var(--mizan-deco-rose-61) 38%,transparent);
}
.history-item .profile-delete-btn{
  margin-inline-start:auto;
  flex:0 0 36px;
}
@media(max-width:560px){
  .resume-exam-panel{
    grid-template-columns:1fr;
    align-items:stretch;
    gap:var(--mizan-space-3);
  }
  .resume-exam-actions{
    width:100%;
    margin:0;
  }
  .profile-resume-btn{
    width:auto;
  }
  .resume-exam-panel .profile-delete-btn{
    width:46px;
    flex:0 0 46px;
  }
}
/* ===== Theme-aware student sidebar surfaces — merged ===== */
html[data-theme="light"] .profile-identity h3{
  color:var(--mizan-primary-800);
}
html[data-theme="light"] .profile-identity p,
html[data-theme="light"] .student-info-grid small,
html[data-theme="light"] .profile-stat-card small,
html[data-theme="light"] .profile-panel-heading p,
html[data-theme="light"] .history-main small,
html[data-theme="light"] .history-score span,
html[data-theme="light"] .profile-empty,
html[data-theme="light"] .student-wrong-item span,
html[data-theme="light"] .student-wrong-item small,
html[data-theme="light"] .student-progress-item small{
  color:var(--mizan-muted);
}
html[data-theme="light"] .student-info-grid>div,
html[data-theme="light"] .profile-stat-card,
html[data-theme="light"] .profile-panel{
  background:var(--mizan-surface);
  border-color:var(--mizan-text-dark);
}
html[data-theme="light"] .student-profile-card,
html[data-theme="light"] .resume-exam-panel{
  background:var(--mizan-gradient-student-sidebar-surface);
  border-color:var(--mizan-primary-500-paper);
}
html[data-theme="light"] .history-item,
html[data-theme="light"] .student-wrong-item{
  background:var(--mizan-bg-light);
  border-color:var(--mizan-text-dark);
}
html[data-theme="light"] .student-page-header{
  border-color:var(--mizan-text-dark);
}
html[data-theme="light"] .profile-name-editor-row input{
  background:var(--mizan-surface);
  color:var(--mizan-text);
  border-color:var(--mizan-border-light);
}
html[data-theme="light"] .student-profile-card{
  color:var(--mizan-text);
}
