/* R1.1.7 — Student desktop/laptop rail rhythm and dashboard polish.
   Mobile <=767px remains governed by the frozen top-navigation architecture. */

@media (min-width:768px){
  .shell>.rail{
    gap:12px;
    overflow:hidden;
    background:
      radial-gradient(circle at bottom right,rgba(199,154,59,.16),transparent 30%),
      linear-gradient(180deg,#073b2e,var(--green),#073b2e);
  }
  .shell>.rail .brand,
  .shell>.rail .student,
  .shell>.rail .rail-logout,
  .shell>.rail .nav{flex:0 0 auto}
  .shell>.rail .student{margin-top:2px}
  .shell>.rail .rail-logout{
    margin-top:0;
    min-height:42px;
    transition:background-color .16s ease,border-color .16s ease;
  }
  .shell>.rail .rail-logout:hover{
    background:rgba(255,255,255,.13);
    border-color:rgba(255,255,255,.32);
  }
  .shell>.rail .nav{
    margin-top:1px;
    padding-top:10px;
    border-top:1px solid rgba(255,255,255,.11);
    align-content:start;
  }

  .student-home .content{
    background:
      radial-gradient(circle at top left,rgba(199,154,59,.08),transparent 26%),
      radial-gradient(circle at bottom right,rgba(18,100,77,.055),transparent 28%);
  }
  .student-home .continue-card{
    border-color:#ddd3c1;
    box-shadow:0 16px 38px rgba(51,43,31,.07);
  }
  .student-home .stat{
    position:relative;
    overflow:hidden;
    border-color:#e2dacb;
  }
  .student-home .stat::after{
    content:"";
    position:absolute;
    width:74px;
    height:74px;
    left:-31px;
    bottom:-38px;
    border-radius:50%;
    background:rgba(199,154,59,.075);
  }
  .student-home .course-card,
  .student-home .next-step{
    border-color:#e0d6c5;
    box-shadow:0 10px 28px rgba(51,43,31,.055);
  }
}

@media (min-width:768px) and (max-width:1599px){
  .shell>.rail .rail-logout{
    font-size:0;
    display:grid;
    place-items:center;
    padding:8px;
  }
  .shell>.rail .rail-logout::before{
    content:"↪";
    font-size:20px;
    line-height:1;
  }
}

@media (min-width:1600px){
  .shell>.rail{padding-top:22px}
  .shell>.rail .nav a{min-height:46px}
}

.student-home .daily-plan{
  margin-top:16px;
  padding:20px;
  border-color:#ddd3c1;
  background:linear-gradient(135deg,#fffdf8,#f2f8f4);
}
.daily-plan-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.daily-plan-head h2{margin:3px 0 2px;color:var(--green);font-size:23px}
.daily-plan-head p{margin:0}
.daily-plan-progress{flex:0 0 auto;min-width:128px;padding:9px 13px;border:1px solid #dfd2b8;border-radius:13px;background:#fffaf0;text-align:center}
.daily-plan-progress span{display:block;color:var(--muted);font-size:12px}
.daily-plan-progress b{display:block;margin-top:2px;color:var(--green);font-size:17px}
.daily-plan-tasks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.daily-plan-task{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:88px;padding:13px;border:1px solid #e2dacb;border-radius:14px;background:rgba(255,255,255,.88)}
.daily-plan-step{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}
.daily-plan-copy h3{margin:0;color:var(--green);font-size:16px}
.daily-plan-copy p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.daily-plan-copy small{display:block;margin-top:5px;color:#7a6334;font-weight:700}
.daily-plan-action{justify-self:end}
.daily-plan-task.is-complete{background:#edf6f0;border-color:#bcd7c6}
.daily-plan-task.is-complete .daily-plan-step{background:#2b765d}
.daily-plan-complete{display:inline-flex;align-items:center;gap:5px;color:#176046;font-weight:900;white-space:nowrap}
.daily-plan-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;border:1px dashed #c9bea9;border-radius:14px;background:rgba(255,255,255,.72);color:var(--green)}

@media(max-width:900px){
  .daily-plan-tasks{grid-template-columns:1fr}
}
@media(max-width:520px){
  .student-home .daily-plan{padding:15px}
  .daily-plan-head,.daily-plan-empty{align-items:stretch;flex-direction:column}
  .daily-plan-progress{min-width:0;text-align:right}
  .daily-plan-task{grid-template-columns:34px minmax(0,1fr)}
  .daily-plan-action{grid-column:2;justify-self:start}
}
