
.stu-week{ display:grid; grid-template-columns:repeat(7,1fr); gap:8px; }
.stu-day{ background:#FBF6EC; border:1px solid #EAE2D4; border-radius:16px; padding:10px; min-height:150px; }
.stu-day.today{ border-color:#7d9e77; box-shadow:0 0 0 2px rgba(125,158,119,.15); }
.stu-day h4{
  margin:0 0 8px; font-size:.76rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase;
  color:#a8a496 !important; -webkit-text-fill-color:#a8a496 !important;
}
.stu-blk{
  background:#fff; border:1px solid #EAE2D4; border-radius:12px; padding:9px; margin-bottom:7px;
  cursor:pointer; text-align:left; width:100%; font:inherit; display:block;
}
.stu-blk:hover{ border-color:#7d9e77; }
.stu-blk:focus-visible{ outline:3px solid #CF9E3F; outline-offset:2px; }
.stu-blk b{ display:block; font-size:.8rem; color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
.stu-blk small{ font-size:.7rem; color:#78766c !important; -webkit-text-fill-color:#78766c !important; }
.stu-blk.kind-Exam{ border-left:4px solid #C6764F; }
.stu-blk.kind-Class{ border-left:4px solid #5b7fa6; }
.stu-blk.kind-Deadline{ border-left:4px solid #CF9E3F; }
.stu-blk.kind-Break{ border-left:4px solid #7d9e77; }
.stu-blk.kind-Personal{ border-left:4px solid #E8A9B8; }
.stu-blk.kind-Study{ border-left:4px solid #243447; }
.stu-cap{
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
  border-radius:16px; padding:14px 16px; margin-bottom:16px; border:1px solid;
}
.stu-cap b{ font-size:.98rem; }
.stu-cap.Light{ background:#F2F6FA; border-color:#D6E3EF; }
.stu-cap.Light b,.stu-cap.Light span{ color:#41628a !important; -webkit-text-fill-color:#41628a !important; }
.stu-cap.Balanced{ background:#EAF1E4; border-color:#C9DBC0; }
.stu-cap.Balanced b,.stu-cap.Balanced span{ color:#4d6a47 !important; -webkit-text-fill-color:#4d6a47 !important; }
.stu-cap.Busy{ background:#FBF1DC; border-color:#E8D9AE; }
.stu-cap.Busy b,.stu-cap.Busy span{ color:#8a6d2f !important; -webkit-text-fill-color:#8a6d2f !important; }
.stu-cap.Overloaded{ background:#F7E4DC; border-color:#EBC9B8; }
.stu-cap.Overloaded b,.stu-cap.Overloaded span{ color:#a8502a !important; -webkit-text-fill-color:#a8502a !important; }
@media (max-width:900px){
  .stu-week{ grid-template-columns:1fr; }
  .stu-day{ min-height:0; }
}
