/*
Dashboard layout styles scoped to .eh-dashboard.
Colors reuse existing variables for theme consistency.
*/
.eh-dashboard {
  --heatmap-level-0: var(--bg-tertiary);
  --heatmap-level-1: rgba(67,56,202,0.3);
  --heatmap-level-2: rgba(67,56,202,0.6);
  --heatmap-level-3: var(--primary);
  --heatmap-level-4: var(--primary-hover);
}
.eh-dashboard .heatmap-day{width:18px;height:18px;}
.eh-dashboard .heatmap-day.level-0{background:var(--heatmap-level-0);}
.eh-dashboard .heatmap-day.level-1{background:var(--heatmap-level-1);}
.eh-dashboard .heatmap-day.level-2{background:var(--heatmap-level-2);}
.eh-dashboard .heatmap-day.level-3{background:var(--heatmap-level-3);}
.eh-dashboard .heatmap-day.level-4{background:var(--heatmap-level-4);}
.eh-dashboard .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border-radius:8px;overflow:hidden;}
.eh-dashboard .calendar-day{background:var(--bg-secondary);padding:0.75rem 0.5rem;min-height:120px;position:relative;transition:all 0.2s ease;}
.eh-dashboard .calendar-day.today{background:var(--primary-light);border:2px solid var(--primary);border-radius:4px;}
.eh-dashboard .day-number{font-size:0.875rem;font-weight:600;margin-bottom:0.5rem;color:var(--text-primary);}
.eh-dashboard .calendar-event{font-size:0.75rem;padding:0.25rem 0.5rem;border-radius:4px;margin-bottom:0.25rem;cursor:pointer;}
.eh-dashboard .calendar-event.exam{background:rgba(239,68,68,0.2);color:#fca5a5;border-left:3px solid var(--danger);}
.eh-dashboard .calendar-event.assignment{background:rgba(59,130,246,0.2);color:#93c5fd;border-left:3px solid var(--primary);}
.eh-dashboard .calendar-event.study{background:rgba(16,185,129,0.2);color:#6ee7b7;border-left:3px solid var(--success);}
.eh-dashboard .empty-state{color:var(--text-muted);font-size:0.875rem;margin-top:0.5rem;}
.progress-ring{position:relative;width:80px;height:80px;margin:0 auto 1rem;}
.progress-ring circle{fill:none;stroke-width:8;transform:rotate(-90deg);transform-origin:50% 50%;stroke-linecap:round;}
.progress-ring-bg{stroke:var(--bg-elevated);}
.progress-ring-value{stroke:var(--primary);transition:stroke-dashoffset .3s;}
.progress-tooltip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:0.875rem;font-weight:600;color:var(--text-primary);}
.deadline-item{padding:0.5rem 0;border-bottom:1px solid var(--border);}
.suggestions{list-style:none;padding-left:1rem;}
.suggestions li{position:relative;padding-left:0.5rem;margin-bottom:0.5rem;}
.suggestions li::before{content:'\2022';position:absolute;left:-0.5rem;color:var(--primary);}
.dashboard-banner{background:var(--bg-elevated);padding:0.5rem 1rem;border-radius:6px;font-size:0.875rem;color:var(--text-secondary);}
